Which of the following is a key principle of software design and implementation ?

A. Separation of concerns
B. Writing aspects
C. Finding code complexity
D. None of the mentioned
✅ The correct answer is option A.
Explanation: The separation of concerns is a key principle of software design and implementation. It means that you should organize your software so that each element in the program (class, method, procedure, etc.) does one thing and one thing only.

Which of the following is not project management goal ?

A. Keeping overall costs within budget
B. Delivering the software to the customer at the agreed time
C. Maintaining a happy and well-functioning development team
D. Avoiding customer complaints
✅ The correct answer is option D.
Explanation: Projects need to be managed because professional software engineering is always subject to organizational budget and schedule constraints.

The process of requirements discovery consists of the following activities, except_______________?

A. requirements management
B. sampling of existing documentation, forms and files
C. requirements discovery
D. problem discovery and analysis
✅ The correct answer is option B.