
Course Description:
This course introduces students to the fundamental principles, methods, and tools used in the engineering of large and complex software systems. It focuses on the systematic application of engineering approaches to software development, ensuring reliability, maintainability, and scalability. Students will learn about the software development life cycle (SDLC), from requirements analysis and design to implementation, testing, deployment, and maintenance.
Through practical projects and case studies, students will gain hands-on experience with modern development methodologies such as Agile and Scrum, as well as essential tools for version control, project management, and continuous integration. The course emphasizes teamwork, communication, and ethical responsibility in software development.
Assessment Methods:
-
Assignments and practical labs
-
Midterm and final exams
-
Group project with presentation and report
- Enseignant: Dr. HAMDANE Mohamed Elkamel

- Enseignant: tahoulit adel
- Enseignant: makhloufi seid
- Enseignant: mehamdi mohamed
- Enseignant: boubenna hadjer
- Enseignant: rehab seidali
- Enseignant: boumechaal hasna
- Enseignant: kolli manel