Software Engineering

Overview of the Program

Language       English

Duration        3 Years

Level          Undergraduate

Approach      Hybrid

The Software Engineering program is designed to give students a thorough understanding of the specification, development, implementation, testing, maintenance, and evolution of software systems ranging from embedded systems to large information systems. Training in the core traditional areas of computer science and engineering is coupled with exposure to emerging trends and computing models such as cloud computing, sensor networks, and big data. Graduates also benefit from a solid training in business management and entrepreneurship. During the final year of the program, students can select one of three potential specialization tracks: (i) Web and Mobile Development, (ii) Artificial Intelligence, or (iii) Cybersecurity & BlockChain.

Admission requirements

Students can join the engineering program through one of several possible avenues. The first is successfully completing the foundational pre-engineering program at MUST. The second is completing the pre-engineering program at an accredited Tunisian university and then passing the national pre-engineering exam. In this case, students must also demonstrate sufficient command of the English language as demonstrated by a good performance in one of the international standardized tests such as TOEFL or TOEIC. Additionally, students can apply to join the engineering program after successfully completing a Licence degree in a related discipline while demonstrating a strong academic record.

Program objectives

After successful completion of the program, students shall be qualified to:

  • Master the various stages of the software life cycle from requirements analysis to design, implementation, testing, and maintenance.
  • Lead a team to design innovative software solutions to complex engineering and business problems.
  • Evaluate, select, integrate and maintain complex software applications to achieve business objectives.

Target careers

Within a few years of successfully completing the Software Engineering program, graduates are expected to be:

  • Employed in industry and demonstrating career advancement through leadership responsibility, significant technical achievement, or other recognition of their contributions.
  • Continuing their formal education towards a graduate degree or other professional certification in the field, or leading their own technology venture.
  • Applying gained knowledge and expertise to design, develop, implement, and maintain complex software applications and systems.
  • Working as software engineers, analysts, architects, and consultants as well as research engineers, or information system managers.
  • Demonstrating an in-depth understanding of the software development challenges faced by industry and society and the state-of-the-art approaches, concepts, techniques, and tools that can be used to elaborate software applications to specifications, on time, and within budgets. Responsible, thanks to an understanding of the ethical, privacy and sustainable development issues for today’s industry and society.


Graduates of the software engineering program often acquire a number of professional certifications in parallel with their engineering training thanks to the courses offered by MUST’s centre for professional and executive education.

Certifications are available in various areas including system & network management, cloud computing, cybersecurity, data science, and database management.

Program course description

Semester 1
Course CodeCourse TitleCreditsCoefficientMode
TMATH 348Graph Theory & Applications55Hybird
CS 303Operating Systems66Hybird
CS 331Database Management Systems66Hybird
TCS 321Principles of Software Engineering55Hybird
TCS 370User Interfaces and Human Computer Interaction33Hybird
ACC 101Principles of Accounting55Hybird
Semester 2
Course CodeCourse TitleCreditsCoefficientMode
CS 420Design and implementation of programming languages55Hybird
CS 411Computer Networks55Hybird
CS 425Web Application Development55Hybird
CS 421Software Modeling and Analysis55Hybird
CS 428Software Testing and Quality Assurance55Hybird
H.ELECTVHumanities Elective55Hybird
Semester 3Web and Mobile Development Track
Course CodeCourse TitleCreditsCoefficientMode
CS 423Software Design and Architecture55Hybird
CS 442Advanced Algorithm Design and Analysis55Hybird
CS 424E-Commerce Application Development55Hybird
CS 412Computer and Network Security55Hybird
ISS 485Entrepreneurial Design Thinking55Hybird
P.ELECTVEntrepreneurship and Practical Training Elective55Hybird
Semester 4Web and Mobile Development Track
Course CodeCourse TitleCreditsCoefficientMode
CS 422Software Requirements Analysis and Specification55Hybird
CS 441Theory of Computation & complexity55Hybird
CS 426Mobile Application Development55Hybird
CS 451Distributed Systems55Hybird
CS 429Software Process & Project Management55Hybird
H.ELECTVHumanities Electives55
Semester 5
Course CodeCourse TitleCreditsCoefficientMode
T.ELECTVTechnical Elective55Hybird
T.ELECTVTechnical Elective55Hybird
PHIL 422Contemporary Issues in Ethics55Hybird
MGMT 281Leadership Development 55Hybird
S.ELECTVSocial Analysis and Decision-Making Elective55Hybird
P.ELECTVEntrepreneurship and practical training elective55Hybird
Semester 6
Course CodeCourse TitleCreditsCoefficientMode
ISS 522Capstone Project 3030