Professional Diploma in Software Engineering
Department of Software Engineering — Software Systems Development and Engineering
1. Program Overview:
This advanced and intensive professional program extends over 6 months and carries a total approved study load of 160 hours. It is designed to prepare and qualify professional software engineers with comprehensive knowledge of the entire Software Development Life Cycle (SDLC). The program covers requirements analysis, data structures and algorithms, Object-Oriented Programming (OOP), software architecture and Design Patterns, quality assurance and testing, Agile project management, and DevOps practices, including continuous integration and continuous delivery/deployment.
2. Key Objectives:
- Software lifecycle and requirements engineering: develop a thorough understanding of the software engineering lifecycle and gain the ability to analyze and document the requirements of complex software systems.
- Programming, data structures, and architecture: apply advanced Object-Oriented Programming, data structures and algorithms, model systems using UML, and design robust software architectures using established design patterns.
- Systems integration and databases: build and integrate databases and software services, while managing professional development workflows using Git and GitHub.
- Quality assurance and modern software delivery: apply software testing and Quality Assurance (QA) practices, manage projects using Agile and Scrum methodologies, and use DevOps tools for automation and Continuous Integration/Continuous Delivery (CI/CD).
3. Target Audience:
- Developers and programmers seeking to advance their skills to the professional level of a Software Engineer.
- Students and graduates of Software Engineering, Computer Science, and Information Systems programs.
- Technical team leaders, quality assurance professionals, and software project managers seeking deeper expertise in software architecture, Agile methodologies, and DevOps practices.
- Individuals interested in designing and developing large-scale, scalable, and maintainable software systems.
4. Study Plan Modules (15 Interactive and Applied Modules):
1. Introduction to Software Engineering and the Software Development Life Cycle (SDLC).
2. Requirements Analysis and Requirements Engineering.
3. Advanced Programming and Clean Code Principles.
4. Object-Oriented Programming (OOP).
5. Data Structures and Algorithms.
6. Software Systems Analysis and Design.
7. UML and Software Modeling.
8. Software Architecture.
9. Software Design Patterns.
10. Databases and Systems Integration.
11. Software Development and Version Control Using Git and GitHub.
12. Software Testing and Quality Assurance (Testing & QA).
13. Agile Methodologies and Software Project Management.
14. DevOps and Continuous Integration/Continuous Delivery (CI/CD).
15. Final Software Engineering Project.
5. Program Data and Assessment Framework:
- Field and subfield: Software Engineering / Software Systems Development and Engineering.
- Duration and sessions: 6 months, evening schedule; 50 lectures delivered at a rate of two lectures per week, with two hours per lecture, totaling 100 hours of direct training.
- Total approved study load: 160 hours, distributed as follows:
100 hours: interactive live online lectures.
40 hours: required readings and supplementary resources.
15 hours: chapter questions and self-assessment activities.
5 hours: final review and completion examination.
- Attendance and assessment requirements: a minimum attendance rate of 75% of interactive lectures, in addition to periodic assignments and projects.
- Final project and assessment: an online assessment consisting of 25 multiple-choice questions and 5 practical case-based questions, in addition to the development and submission of a complete applied software engineering project.
