Lessons from Developing Nonfunctional Requirements for a Software Platform
Xiping Song, Beatrice Hwong, Johannes P. Ros · IEEE Software · 2011
Employing a software platform is an approach to achieve a higher degree of software reuse by enabling multiple software products to share the platform-provided services. However, platform development usually involves stakeholders from different application domains. Their application situations vary widely and thus nonfunctional requirements (NFRs) for the software platform must address a wider range of needs than those for a single product. This article describes lessons learned in developing NFRs for a large software platform, the challenging issues, and the techniques used to address them. The techniques are pragmatic and helped with NFR reconciliation and management. The improved quality of the NFR specifications has permitted automation of platform performance testing for the past two years.