CPSA Exam Practice Test

CPSA Software Design Principles Questions and Answers

Free · Instant Results

A software architect is designing a system where a `ReportGenerator` class needs access to customer data. Instead of allowing `ReportGenerator` to directly instantiate a `CustomerRepository` class, the architect mandates that `ReportGenerator` must depend on an `ICustomerRepository` interface. The concrete implementation will be provided at runtime. Which SOLID principle is primarily being applied?
▶ Start Practice Test