CPSA-FL practice question 1 of 10
Which two of the following statements about quality characteristics are most accurate? (Choose two.)
Full set: 43 questionsThis question evaluates the understanding of relationships and trade-offs between software quality characteristics.
Statement C is fundamentally correct. Simplicity in a system's design and implementation (e.g., low complexity, clear structure) is a primary driver for its comprehensibility. A system that is easier to understand is also easier to analyze, maintain, and evolve.
Statement A describes a common trade-off in software engineering. Increased flexibility often implies more features, configuration options, and execution paths. This leads to a combinatorial increase in the number of states to be tested, making it significantly more difficult and costly to achieve thorough test coverage. Therefore, flexibility can negatively impact, or "reduce," practical testability.
B. Increased flexibility improves robustness: This is generally incorrect. Flexibility and robustness are often conflicting quality goals. Increasing flexibility can introduce more complexity and potential points of failure, thereby making the system harder to secure and potentially less robust.
D. Increased efficiency results in reduced performance: This statement is contradictory. In software quality models like ISO/IEC 25010, "Performance efficiency" is a key characteristic. Efficiency (resource utilization) and performance (time-behavior) are positively correlated; improving efficiency typically improves performance, it does not reduce it. ---
1. For Correct Option C (Simplicity increases comprehensibility):
Van Vliet
H. (2008). Software Engineering: Principles and Practice. 3rd Edition. John Wiley & Sons. Chapter 7
Section 7.3
on design heuristics
emphasizes that simplicity and low complexity are crucial for creating understandable and maintainable systems. It states
"A simple design is easy to understand and easy to maintain."
2. For Correct Option A (Flexibility reduces testability):
Patton
R. (2006). Software Testing. 2nd Edition. Sams Publishing. Chapter 1 discusses the testing axiom "The more complex the software
the more bugs it will have." Flexibility adds to this complexity. The book explains how a multitude of options and configurations (a hallmark of flexibility) exponentially increases the number of test cases required
making exhaustive testing impossible and practical testability more challenging.
3. For Incorrect Option B (Flexibility vs. Robustness):
International Software Architecture Qualification Board (iSAQB). (2019). Curriculum CPSA-Foundation Level
Version 2.0.1 DE. Page 19
Section 2.3. This official curriculum explicitly lists "Flexibilität vs. Stabilität/Robustheit" (Flexibility vs. Stability/Robustness) as a well-known example of conflicting quality requirements. This directly contradicts the claim that one improves the other.
4. For Incorrect Option D (Efficiency vs. Performance):
ISO/IEC 25010:2011. Systems and software engineering — Systems and software Quality Requirements and Evaluation (SQuaRE) — System and software quality models. Section 4.2 describes the "Performance efficiency" characteristic
which includes sub-characteristics like "Time-behaviour" and "Resource utilization." The standard defines them as related components of the same high-level quality attribute
indicating they are not in opposition.
Keep practicing
Take the free CPSA-FL practice test
Ten exam-style questions with answers and explanations, plus the exam facts and study guides.
More questions
Other CPSA-FL practice questions
- Question 2Which of the following principles apply to testing? (Choose two.)
- Question 3For which quality characteristics is the software architect responsible? Please name the …
- Question 4In a customer project the architecture shall be based on components. The requirements hav…
- Question 8Which of the following statements are correct? (Choose two.)
