Course Objective: Understand the principles of object-oriented programming and 
design. 
Learn how to analyze and model real-world systems using object-oriented 
techniques. 
Gain hands-on experience with modeling tools and software development using 
OOAD. 
Course Learning Outcomes 
By the end of this course unit the student should be able to; 
1. Explain the principles, concepts, and processes of Object-Oriented Analysis and Design (OOAD). 
2. Apply UML concepts and notation to model software systems and their requirements. 
3. Develop appropriate UML diagrams, including use case, class, object, sequence, activity, state machine, 
and deployment diagrams. 
4. Analyze system requirements and translate them into appropriate object-oriented models. 
5. Design software systems using suitable OOAD techniques and modeling principles. 
6. Evaluate and communicate software models effectively for system development and documentation.