CPSC 449 - Ch2 pt.2 questions n
answers graded A+ already passed
Why is it important to understand design principles? - correct answer ✔✔Understanding design
principles helps in making informed decisions, creating value for the business, and preparing for the
future.
What is the role of a software engineer or architect in providing solutions? - correct answer ✔✔The role
involves offering solutions that are the best fit for the business under constraints of limited resources like
money, time, and future knowledge.
Why is keeping software simple difficult? - correct answer ✔✔It is difficult because simplicity is relative
and lacks a standardized measurement.
What questions should you ask when judging simplicity in software design? - correct answer ✔✔You
should ask whether it is simpler for you or your clients, and whether it is simpler to do now or maintain
in the future.
Give an example of applying simplicity in software design. - correct answer ✔✔Designing a basic website
that only shows necessary information without extra features.
What is the benefit of hiding complexity and building abstractions? - correct answer ✔✔Promoting
simplicity
How should you be able to understand a class? - correct answer ✔✔Quickly, without knowing all the
details of other remote parts of the system
How should you view a module? - correct answer ✔✔As a set of classes, disregarding the methods
What should you see when looking at the entire system? - correct answer ✔✔Only top-level applications
and their responsibilities, without caring about how they fulfill them
answers graded A+ already passed
Why is it important to understand design principles? - correct answer ✔✔Understanding design
principles helps in making informed decisions, creating value for the business, and preparing for the
future.
What is the role of a software engineer or architect in providing solutions? - correct answer ✔✔The role
involves offering solutions that are the best fit for the business under constraints of limited resources like
money, time, and future knowledge.
Why is keeping software simple difficult? - correct answer ✔✔It is difficult because simplicity is relative
and lacks a standardized measurement.
What questions should you ask when judging simplicity in software design? - correct answer ✔✔You
should ask whether it is simpler for you or your clients, and whether it is simpler to do now or maintain
in the future.
Give an example of applying simplicity in software design. - correct answer ✔✔Designing a basic website
that only shows necessary information without extra features.
What is the benefit of hiding complexity and building abstractions? - correct answer ✔✔Promoting
simplicity
How should you be able to understand a class? - correct answer ✔✔Quickly, without knowing all the
details of other remote parts of the system
How should you view a module? - correct answer ✔✔As a set of classes, disregarding the methods
What should you see when looking at the entire system? - correct answer ✔✔Only top-level applications
and their responsibilities, without caring about how they fulfill them