CPSA Quality Attributes and Scenarios 5 — Questions and Answers
Question 1: Which technique is commonly used alongside quality scenarios to systematically evaluate how well an architecture meets quality goals?
- Entity-Relationship Modeling
- Architecture Trade-off Analysis Method (ATAM) (Correct answer)
- Unified Modeling Language (UML) class diagrams
- Test-Driven Development (TDD)
Correct answer: Architecture Trade-off Analysis Method (ATAM)
ATAM uses quality attribute scenarios as input to identify architectural risks, sensitivity points, and trade-offs in the proposed architecture.
Question 2: In a performance quality scenario, 'the system processes 1,000 transactions per second under peak load' is the:
- Stimulus
- Environment
- Response measure (Correct answer)
- Artifact
Correct answer: Response measure
The response measure is the quantifiable criterion that determines whether the system's response meets the quality goal.
Question 3: Which quality attribute is MOST relevant when a system must continue operating correctly even if one of its microservices fails?
- Portability
- Reliability — specifically fault tolerance (Correct answer)
- Usability
- Maintainability
Correct answer: Reliability — specifically fault tolerance
Fault tolerance, a sub-characteristic of Reliability, ensures the system continues to operate correctly despite component failures.
Question 4: The concept of 'sensitivity points' in ATAM refers to:
- Security vulnerabilities that need patching
- Architectural decisions that have a significant impact on one or more quality attributes (Correct answer)
- Requirements that are too sensitive to share with stakeholders
- Database columns storing personally identifiable information
Correct answer: Architectural decisions that have a significant impact on one or more quality attributes
Sensitivity points are architectural decisions where a small change significantly affects one or more quality attribute responses.
Question 5: Which quality attribute scenario would BEST help an architect decide between a monolithic and a microservices architecture?
- A security scenario about preventing SQL injection attacks
- A modifiability scenario where a single team must deploy a new feature independently without affecting other teams (Correct answer)
- A usability scenario about error messages shown to end users
- A portability scenario about running on Windows vs. Linux
Correct answer: A modifiability scenario where a single team must deploy a new feature independently without affecting other teams
Independent deployability and team autonomy are modifiability concerns that strongly favor a microservices architecture over a monolith.
Question 6: ISO 25010 replaces which older standard for software product quality characteristics?
- ISO 9001
- ISO/IEC 9126 (Correct answer)
- ISO 27001
- ISO 12207
Correct answer: ISO/IEC 9126
ISO/IEC 9126 was the predecessor to ISO 25010 (SQuaRE), which expanded and reorganized its quality model.
Question 7: A quality tree (or utility tree) in ATAM is used to:
- Model the system's class hierarchy for object-oriented design
- Organize and prioritize quality attribute scenarios from general utility down to concrete, measurable scenarios (Correct answer)
- Document the dependency graph between microservices
- Map user personas to functional requirements
Correct answer: Organize and prioritize quality attribute scenarios from general utility down to concrete, measurable scenarios
A quality/utility tree decomposes system utility into quality attributes, then into refined attribute concerns, and finally into specific concrete scenarios with business and technical priority ratings.
Which technique is commonly used alongside quality scenarios to systematically evaluate how well an architecture meets quality goals?