Modernsoftwaresystemsincreasinglyusecommercial-o?-the-shelf(COTS)so- ware products as building blocks. In some cases, major software systems are assembled with virtually no custom code in the system. The use of COTS software products as components o?ers the promise of rapid delivery to end users, shared development costs with other customers, and an opportunity for expanding mission or business capabilities and performance as improvements are made...