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).

Publications

How Do Software Architects Specify and Validate Quality Requirements?

Related resources:

For further information, please contact Andrea Caracciolo