D284 ITSW 2226 Software Engineering
Finals Assessment Review
(Questions & Solutions)
2025
©2025
, Q1. Which software process model is best suited for projects with
rapidly changing requirements?
A. Waterfall
B. Agile
C. V-Model
D. Incremental
ANS: B (Agile)
Rationale: Agile methodologies especially accommodate frequent
requirement changes through iterative development, continuous
stakeholder feedback, and flexible planning.
---
Q2. Which quality metric best reflects the maintainability of a software
system by measuring the complexity of its control flow?
A. Function Point Analysis
B. Cyclomatic Complexity
C. Defect Density
D. Response Time
ANS: B (Cyclomatic Complexity)
Rationale: Cyclomatic Complexity quantifies the number of linearly
independent paths through a program’s source code, thereby serving as
a proxy for maintainability.
---
Q3. Which of the following is not one of the SOLID principles in object-
oriented design?
A. Single Responsibility Principle
B. Open/Closed Principle
C. Liskov Substitution Principle
D. Overloading Principle
©2025
, ANS: D (Overloading Principle)
Rationale: The SOLID principles consist of Single Responsibility,
Open/Closed, Liskov Substitution, Interface Segregation, and
Dependency Inversion. Overloading is a language feature not a design
principle.
---
Q4. What is the primary objective of process improvement models like
CMMI in Software Engineering?
A. To reduce development cost exclusively
B. To ensure process standardization and improve software quality
C. To automate testing and eliminate manual processes
D. To enforce strict adherence to a single development method
ANS: B
Rationale: Models such as CMMI (Capability Maturity Model
Integration) aim to standardize processes, enhance process maturity, and
ultimately improve the quality and reliability of software products.
---
Q5. Which architectural pattern emphasizes dividing a software system
into layers where each layer has a specific responsibility?
A. Monolithic Architecture
B. Microservices Architecture
C. Layered (n-tier) Architecture
D. Event-Driven Architecture
ANS: C (Layered Architecture)
Rationale: Layered architecture segments system functions into distinct
layers (e.g., presentation, business logic, data access), promoting
separation of concerns and easier maintenance.
---
Q6. In risk management, what quantitative metric is most commonly
©2025
Finals Assessment Review
(Questions & Solutions)
2025
©2025
, Q1. Which software process model is best suited for projects with
rapidly changing requirements?
A. Waterfall
B. Agile
C. V-Model
D. Incremental
ANS: B (Agile)
Rationale: Agile methodologies especially accommodate frequent
requirement changes through iterative development, continuous
stakeholder feedback, and flexible planning.
---
Q2. Which quality metric best reflects the maintainability of a software
system by measuring the complexity of its control flow?
A. Function Point Analysis
B. Cyclomatic Complexity
C. Defect Density
D. Response Time
ANS: B (Cyclomatic Complexity)
Rationale: Cyclomatic Complexity quantifies the number of linearly
independent paths through a program’s source code, thereby serving as
a proxy for maintainability.
---
Q3. Which of the following is not one of the SOLID principles in object-
oriented design?
A. Single Responsibility Principle
B. Open/Closed Principle
C. Liskov Substitution Principle
D. Overloading Principle
©2025
, ANS: D (Overloading Principle)
Rationale: The SOLID principles consist of Single Responsibility,
Open/Closed, Liskov Substitution, Interface Segregation, and
Dependency Inversion. Overloading is a language feature not a design
principle.
---
Q4. What is the primary objective of process improvement models like
CMMI in Software Engineering?
A. To reduce development cost exclusively
B. To ensure process standardization and improve software quality
C. To automate testing and eliminate manual processes
D. To enforce strict adherence to a single development method
ANS: B
Rationale: Models such as CMMI (Capability Maturity Model
Integration) aim to standardize processes, enhance process maturity, and
ultimately improve the quality and reliability of software products.
---
Q5. Which architectural pattern emphasizes dividing a software system
into layers where each layer has a specific responsibility?
A. Monolithic Architecture
B. Microservices Architecture
C. Layered (n-tier) Architecture
D. Event-Driven Architecture
ANS: C (Layered Architecture)
Rationale: Layered architecture segments system functions into distinct
layers (e.g., presentation, business logic, data access), promoting
separation of concerns and easier maintenance.
---
Q6. In risk management, what quantitative metric is most commonly
©2025