CMA - Certified Master Architect Quality Attribute Analysis Questions and Answers 1 — Questions and Answers
Question 1: An architect is designing a new financial trading platform. The business stakeholders have emphasized two critical requirements: transaction processing must be completed in under 150 milliseconds (Performance), and every transaction attempt, successful or not, must be immutably logged for regulatory compliance (Auditability/Security). Initial analysis reveals that the intensive logging mechanism required for auditability introduces a 50ms latency, threatening the performance target. What is the most appropriate initial action for the architect?
- Select a high-throughput, low-latency logging framework and proceed with the design.
- Document the conflict and ask the business stakeholders to prioritize one quality attribute over the other. (Correct answer)
- Implement an asynchronous logging mechanism to decouple it from the main transaction thread.
- Proceed with a design that meets the performance target by logging only successful transactions.
Correct answer: Document the conflict and ask the business stakeholders to prioritize one quality attribute over the other.
The architect's primary role in this situation is to facilitate a business-driven decision. The conflict between performance and auditability represents a classic architectural trade-off. Before selecting a technical solution (like asynchronous logging or a specific framework), the architect must present the trade-off to the business stakeholders with quantified impacts. They are the only ones who can make an informed decision on whether a slight performance degradation is acceptable for enhanced auditability, or vice-versa. This ensures the final architecture aligns with the most critical business goals.
Question 2: During a Quality Attribute Workshop (QAW) for a new cloud-based healthcare portal, stakeholders are brainstorming scenarios. Which of the following represents the MOST well-formed, testable quality attribute scenario for availability?
- The system should be highly available and resilient to failures.
- Under normal operational conditions, the system must achieve 99.99% uptime, measured monthly, with any unplanned outage lasting no more than 4 minutes. (Correct answer)
- The system must utilize redundant servers and automated failover in the cloud.
- In case of a database failure, the system should recover quickly to prevent data loss.
Correct answer: Under normal operational conditions, the system must achieve 99.99% uptime, measured monthly, with any unplanned outage lasting no more than 4 minutes.
A well-formed quality attribute scenario is specific, measurable, and testable. Choice B provides a precise stimulus (normal operational conditions), a quantifiable response measure (99.99% uptime measured monthly), and a constraint on the environment (unplanned outage lasting no more than 4 minutes). Choice A is a vague goal. Choice C describes a technical solution (a tactic), not a requirement scenario. Choice D is better than A, but 'recover quickly' is not as specific or measurable as the details in B.
Question 3: Which of the following best describes the primary purpose of the Attribute-Driven Design (ADD) method?
- To evaluate a completed architecture to find risks and sensitivity points.
- To use quality attribute requirements as the primary input for making and iterating on architectural decisions. (Correct answer)
- To create a detailed project plan and timeline based on functional requirements.
- To document stakeholder business goals before any technical work begins.
Correct answer: To use quality attribute requirements as the primary input for making and iterating on architectural decisions.
The Attribute-Driven Design (ADD) method is a systematic approach where architectural design decisions are a direct response to the system's quality attribute requirements. It uses these attributes to choose architectural patterns and tactics in a recursive decomposition process. Evaluating a completed architecture for risks is the primary purpose of the Architecture Tradeoff Analysis Method (ATAM), not ADD. While business goals and functional requirements are inputs, the core of ADD is using the *quality attributes* to drive the design process itself.
Question 4: In quality attribute analysis, a design decision that improves security by adding multi-layered encryption and extensive validation often leads to increased latency and CPU usage. This situation is a prime example of a(n):
- Architectural tactic
- Functional requirement
- Architectural trade-off (Correct answer)
- Sensitivity point
Correct answer: Architectural trade-off
This scenario perfectly describes an architectural trade-off, which is a situation where a design decision made to improve one quality attribute (Security) has a negative impact on another (Performance). Architects must constantly analyze and balance these trade-offs based on stakeholder priorities. A sensitivity point is a property of a component that is critical for achieving a particular quality attribute response, while a tactic is a design decision that influences a quality attribute. The trade-off is the relationship between the conflicting attributes.
Question 5: A Certified Master Architect is leading the analysis for a system that will be deployed in multiple countries with varying regulatory requirements and user interface languages. Which quality attribute is MOST directly concerned with the system's ability to be adapted for these different locations and regulations?
- Scalability
- Interoperability
- Modifiability (Correct answer)
- Portability
Correct answer: Modifiability
Modifiability is the quality attribute concerned with the ease and cost of making changes to a system. In this context, adapting the system for different regulations and languages are types of modifications. While Portability (moving between environments) and Interoperability (exchanging data with other systems) are related, Modifiability specifically addresses the internal structure of the system and its capacity to be changed to meet new requirements, such as localization and compliance rules.
Question 6: The primary output of a successful Quality Attribute Workshop (QAW) is a:
- Completed and approved software architecture diagram.
- Prioritized list of refined and testable quality attribute scenarios. (Correct answer)
- Detailed implementation plan and resource allocation.
- List of all functional requirements for the system.
Correct answer: Prioritized list of refined and testable quality attribute scenarios.
The Quality Attribute Workshop (QAW) is a method used early in the lifecycle, often before an architecture exists. Its purpose is to engage stakeholders to elicit, analyze, prioritize, and refine the system's quality attribute requirements into concrete scenarios. The main deliverable is this prioritized list of scenarios, which will then serve as the key input for architectural design methods like Attribute-Driven Design (ADD).
An architect is designing a new financial trading platform.
The business stakeholders have emphasized two critical requirements: transaction processing must be completed in under 150 milliseconds (Performance), and every transaction attempt, successful or not, must be immutably logged for regulatory compliance (Auditability/Security).
Initial analysis reveals that the intensive logging mechanism required for auditability introduces a 50ms latency, threatening the performance target.
What is the most appropriate initial action for the architect?