Year
Year 1
Semester
First Semester
Credit
3
Program Description
Application of object-oriented principles for scalable software architecture.
About this course
This course teaches you how to apply object-oriented principles to build scalable software architecture. You will move beyond basic coding syntax to understand how to structure large systems using modular classes, inheritance, and polymorphism. The focus is on creating designs that are maintainable, extensible, and efficient.
Students will work through practical case studies, evaluating existing codebases for design flaws and refactoring them for better performance. You will also learn to document software architecture using standard design diagrams, a key skill for professional developers.
Who takes this course
Credits: 3 · Hours: 45
Prerequisites
Learning outcomes
- Apply object-oriented design principles to solve complex software problems.
- Construct modular classes with proper encapsulation, inheritance, and polymorphism.
- Evaluate existing codebases for design flaws and refactor for scalability.
- Document software architecture using standard design diagrams and models.
Evaluation
| Component | Weight (%) |
| Object design assignments | 40 |
| Midterm examination | 20 |
| Final architecture project | 40 |