In large software systems, the achievement of qualities such as performance, security, and modifiability is dependent not only on code-level practices but also on the overall software architecture. Thus, it is in developers' best interests to determine, at the time a system's software architecture is specified, whether the system will have the desired qualities.
With the sponsorship of the U.S. Coast Guard's Deepwater Acquisition Project the SEI has developed the concept of a Quality Attribute Workshop in which system stakeholders focus on the analysis and evaluation of system requirements and quality attributes. The purpose of the workshop is to identify scenarios from the point of view of a diverse group of stakeholders and to identify risks (e.g., inadequate performance, successful denial-of-service attacks) and possible mitigation strategies (e.g., replication, prototyping, simulation). Stakeholders include architects, developers, users, maintainers, and people involved in installation, deployment, logistics, planning, and acquisition. This special report describes the process we use to conduct a workshop, information required, suggested tools, and expected outcomes of a workshop.