Invited Talk

Donald G. Firesmith
Sr. Member of the Technical Staff
Acquisition Support Program
Software Engineering Institute
Carnegie Mellon University

Achieving Quality Requirements with Reused Software Components: Challenges to Successful Reuse
When reusing software, the challenges associated with achieving functional requirements are relatively well known and understood. However, reusing software components including COTS products is an architectural decision, and architecture is typically influenced far more by a system's quality requirements than by its functional requirements. And whereas negotiating and compromising on the functional requirements to meet those implemented by available reusable components is considered an industry best practice, the quality requirements such as performance, reliability, safety, security, and scalability are often far less negotiable. Even if the reusable components are claimed to achieve such quality requirements, it is far more difficult and expensive to verify such claims than it is for verifying functional requirements. By clarifying this natural tension between quality requirements and reuse, this keynote warns architects and their managers of some important pitfalls that can prevent reuse from achieving its promised benefits.