Software Engineering

Explore the programs and courses offered by Software Engineering

Browse Programs Admission Information

Program Overview

The Software Engineering (SE) specialization aims to train Master's graduates in computer science in the fields of software engineering, particularly in component engineering, software architectures, and models, working in current environments such as intranet, networks, web, and information systems security.

The program is designed to equip future graduates with the skills necessary to manage the heterogeneity of platforms, components, and protocols (interoperability issues, standards, web services), design and manage projects, and continuously evolve their expertise.

Upon completion of their training, students should be able to take on roles as development engineers, project managers, designers, and software architects. Thus, the objectives of this program can be summarized as follows:

1- Develop complex software, from requirements specification to validated code,

2- Master and implement components, software architectures, and models,

3- Manage heterogeneous systems (interoperability issues, standards, web services),

4- Solve problems related to the industrialization and migration of software,

5- Automate the production of software families.


Teaching Language : English

Curriculum Highlights

Core Courses

Semester 1

1- Advanced Databases

2- Object-Oriented Modeling

3- Algorithms and Complex Data Structures


Semester 2

1- Advanced Object-Oriented Techniques

2- Development Paradigms

3- Distributed Systems


Semester 3

1- Advanced Mobile Application Development

2- Formal Development Methods

3- Model Engineering


Semester 4

Final Year Project


Advanced Topics

1- Object-Oriented Modeling

2- Advanced Object-Oriented Techniques

3- Development Paradigms

4- Formal Development Methods

5- Model Engineering

Admissions Information

All Computer Science bachelor's degrees before and after standardization.

Apply Now