How Do Software Architects Specify and Validate Quality Requirements?
Software architecture is the result of a design effort aimed at ensuring a certain set of quality attributes. As we show, quality requirements are commonly specified in practice but are rarely validated using automated techniques. In this paper we analyze and classify commonly specified quality requirements after interviewing professionals and running a survey. We report on tools used to validated those requirements and comment on the obstacles encountered by practitioners when performing such activity (e.g., insufficient tool-support; low suitability of current tools). Finally we discuss opportunities for increasing the adoption of automated tools based on the information we collected during our study (e.g., using a business-readable notation for expressing quality requirements; increasing awareness by monitoring non-functional aspects of a system).
Qualitative study - Interviews:
Quantitative study - Survey:
- : Document containing a copy of the pages composing the survey
- : spreadsheet containing all survey results
- : spreadsheet containing a complete summary of the survey results
- Reported Testing Tools: link reference for the tools cited in the paper
For further information, please contact Andrea Caracciolo