Employing a software platform is an approach to achieve a higher degree of software reuse since multiple software products can share the platform-provided services. However, the platform development usually involves stakeholders from different application domains. Their application situations vary widely and thus Non-Functional Requirements (NFRs) for the software platforms must address a wider range of needs than those for a single product. This paper describes our practical experiences in developing NFRs for a large software platform, the challenging issues we faced, and the techniques we used to address those issues. Our pragmatic techniques helped with NFR reconciliation and management, and improved the quality of the NFR definitions. The quality of the NFR specifications has permitted automation of the platform performance testing for the past two years.
展开▼