Software Architecture

Quality Attribute Workshop

Quality Attribute Workshops (QAWs) provide a method for identifying a system's architecture-critical quality attributes, such as availability, performance, security, interoperability, and modifiability, that are derived from mission or business goals. The QAW does not assume the existence of a software architecture. It was developed to complement the SEI Architecture Tradeoff Analysis Method (ATAM) in response to customer requests for a method to identify important quality attributes and clarify system requirements before there is a software architecture to which the ATAM could be applied.

Challenges

  • How can you determine which quality attribute requirements are important before a system is built?
  • How can you find out stakeholders' needs and expectations in an organized and effective way?
  • How do you improve and increase communication among stakeholders?

Description

In the QAW, an external team facilitates meetings among stakeholders during which scenarios representing the quality attribute requirements are generated, prioritized, and refined (i.e., adding additional details such as the participants and assets involved, the sequence of activities, and questions about quality attributes requirements). The process of refining the scenarios allows stakeholders to communicate among themselves, thereby exposing assumptions that may not have surfaced during requirements elicitation. The refinement also provides insights as to how these attributes interact, forming a basis for making tradeoffs between these attributes.

There may be more than one scenario-generation workshop, depending on the number and type of organizations and stakeholders involved in the development, maintenance, or use of the system. The QAW process ends with the list of prioritized, refined scenarios. The refined scenarios can be used in different ways, for example as seed scenarios for ATAM or as test cases in an acquisition effort.

The QAW involves these steps:

  1. QAW Presentation and Introductions: QAW facilitators describe the motivation for the QAW and explain each step of the method.
  2. Business/Programmatic Presentation : A representative of the stakeholder community presents the business and/or programmatic drivers for the system.
  3. Architectural Plan Presentation: A technical stakeholder presents the system architectural plans as they stand with respect to early documents, such as high-level system descriptions, context drawings, or other artifacts that describe some of the system's technical details.
  4. Identification of Architectural Drivers : Architectural drivers often include high-level requirements, business/mission concerns, goals and objectives, and various quality attributes. During this step, the facilitators and stakeholders reach a consensus about which drivers are key to the system.
  5. Scenario Brainstorming: Stakeholders generate real-world scenarios for the system. Scenarios comprise a related stimulus, an environmental condition, and a response. Facilitators ensure that at least one scenario addresses each of the architectural drivers identified in Step 4.
  6. Scenario Consolidation : Scenarios that are similar in content are consolidated.
  7. Scenario Prioritization: Stakeholders prioritize the scenarios through a voting process.
  8. Scenario Refinement: The top four or five scenarios are further clarified and the following are described:
  • the business/programmatic goals that are affected by those scenarios
  • the relevant quality attributes associated with those scenarios

In addition, stakeholders get a chance to ask questions and raise any concerns they have about those scenarios.

Organizations can use the QAW results to

  • update the organization’s architectural vision
  • refine system and software requirements
  • guide the development of prototypes
  • exercise simulations
  • understand and clarify the system’s architectural drivers
  • influence the order in which the architecture is developed
  • describe the system’s operation

In addition, after the architecture is created, the scenarios can be used as seed scenarios during an ATAM evaluation.

Benefits

The QAW helps you determine the right qualities for your system before it is developed—something that is crucial for system success and for your stakeholders' satisfaction. Clarifying those requirements and then achieving them in the first version of your system saves money and avoids future rework. The QAW provides a structured and efficient setting for communicating with your stakeholders and supports analysis and testing throughout the life of the system.

The QAW provides a forum for a wide variety of stakeholders to gather in one room at one time early in the development process. It is often the first time such a meeting takes place and generally leads to the identification of conflicting assumptions about system requirements.

Who Would Benefit

Organizations that are in the early stage of system development and need to clarify the system’s quality attribute requirements and stakeholders’ expectations for the system.

Availability

SEI staff is available to conduct a QAW for your organization. Contact us using the link in the For more information box at the bottom of this page.

Software Architecture Training and Publications

Software Architecture Training at the SEI

Software Architecture Publications

Further Reading

SEI blog posts about Quality Attribute Workshops

Reasoning About Software Quality Attributes

Impact of Army Architecture Evaluations, Robert L. Nord, John K. Bergey, Stephen Blanchette, Jr., & Mark H. Klein

Integrating the Quality Attribute Workshop (QAW) and the Attribute-Driven Design (ADD) Method , Robert L. Nord, William G. Wood, & Paul C. Clements

Quality Attribute Workshops, Third Edition, M. Barbacci, R. Ellison, A. Lattanze, J. Stafford, C. Weinstock, & W. Wood

Use of Quality Attribute Workshops (QAWs) in Source Selection for a DoD System Acquisition: A Case Study, John K. Bergey & William G. Wood

Find Us Here

Find us on Youtube  Find us on LinkedIn  Find us on twitter  Find us on Facebook

Share This Page

Share on Facebook  Send to your Twitter page  Save to del.ico.us  Save to LinkedIn  Digg this  Stumble this page.  Add to Technorati favorites  Save this page on your Google Home Page 

For more information

Contact Us

info@sei.cmu.edu

412-268-5800

Help us improve

Visitor feedback helps us continually improve our site.

Please tell us what you
think with this short
(< 5 minute) survey.