ITA - Information Technology Architecture Architectural Quality Attributes Questions and Answers — Questions and Answers
Question 1: An e-commerce platform for a major sporting event is preparing for a ticket sale that is expected to cause a massive, short-term surge in user traffic for a few hours. Which quality attribute BEST describes the system's ability to automatically provision resources to handle this peak load and then de-provision them afterwards to minimize costs?
- Availability
- Scalability
- Elasticity (Correct answer)
- Fault Tolerance
Correct answer: Elasticity
Elasticity is the specific quality attribute that refers to a system's ability to dynamically and automatically add or remove resources to match fluctuating workload demands in real-time. While related to scalability, elasticity is distinct in its automated, on-demand nature, which is crucial for handling sudden traffic spikes and optimizing costs. [2, 5, 9]
Question 2: An IT architect is explaining system quality attributes to a project stakeholder. Which statement best distinguishes 'Availability' from 'Reliability'?
- Availability is a measure of system uptime, while Reliability is a measure of how quickly the system can be repaired.
- Availability is the probability that a system is operational at any given moment, while Reliability is the probability it will operate correctly without failure over a specified duration. [15, 17] (Correct answer)
- Reliability focuses on preventing all failures, whereas Availability is only concerned with network accessibility.
- Reliability is measured in 'nines' (e.g., 99.99%), while Availability is measured by Mean Time Between Failures (MTBF).
Correct answer: Availability is the probability that a system is operational at any given moment, while Reliability is the probability it will operate correctly without failure over a specified duration. [15, 17]
Availability refers to a system's readiness to perform its function at a specific point in time, often expressed as a percentage of uptime. Reliability, on the other hand, measures the likelihood of a system performing its function without failure for a continuous period under stated conditions. A system can be highly available but not very reliable if it fails frequently but recovers instantly. [15, 17]
Question 3: An enterprise is struggling with a legacy monolithic application where fixing bugs or adding new features has become excessively slow and expensive, often introducing new defects. This operational difficulty points to a significant degradation of which architectural quality attribute?
- Performance
- Maintainability (Correct answer)
- Portability
- Security
Correct answer: Maintainability
Maintainability is the quality attribute that describes the ease with which a system can be modified to correct faults, improve performance, or adapt to a changed environment. [4, 24] High costs, long timelines, and the introduction of new defects during modification are classic signs of poor maintainability.
Question 4: To meet stringent data protection regulations, an architect designs a system to perform multiple layers of data encryption and cryptographic signing for every transaction. This design choice is most likely to create a negative trade-off with which other critical quality attribute?
- Performance (Correct answer)
- Reliability
- Availability
- Modularity
Correct answer: Performance
Security measures, particularly computationally intensive ones like multi-layer encryption and digital signatures, add processing overhead. For each transaction, the system must perform extra work, which increases latency and reduces overall throughput. This creates a common trade-off where enhancing security can negatively impact performance. [1]
Question 5: An organization is building a new solution that must integrate and exchange data with several existing systems from different vendors, including a cloud-based CRM and an on-premise ERP. The ability of these disparate systems to successfully exchange and make use of information is defined by which quality attribute?
- Reusability
- Portability
- Modifiability
- Interoperability (Correct answer)
Correct answer: Interoperability
Interoperability is the quality attribute that measures the ability of two or more systems or components to exchange information and to use the information that has been exchanged. [6, 14] It is a primary concern when designing solutions that involve integrating multiple, heterogeneous systems.
Question 6: During the design of a complex system, the lead architect insists that every major component must be designed in a way that allows it to be verified independently through automated scripts and that it exposes diagnostic endpoints. This practice directly enhances which quality attribute?
- Security
- Scalability
- Usability
- Testability (Correct answer)
Correct answer: Testability
Testability refers to the degree to which a system or component facilitates the creation and execution of tests to determine if it meets its specified requirements. [7, 11] Designing for independent verification and including diagnostic endpoints are key architectural tactics to improve a system's overall testability.
An e-commerce platform for a major sporting event is preparing for a ticket sale that is expected to cause a massive, short-term surge in user traffic for a few hours.
Which quality attribute BEST describes the system's ability to automatically provision resources to handle this peak load and then de-provision them afterwards to minimize costs?