Le cours de Génie Logiciel forme aux méthodes et outils nécessaires au développement complet d’un logiciel tout au long de son cycle de vie.
Il permet d’apprendre la spécification, la conception et la modélisation des logiciels avec UML ainsi que la gestion des projets logiciels.
Les étudiants acquièrent des compétences en estimation de charge, gestion des risques, qualité logicielle, tests et maintenance.
Le cours aborde aussi les outils de gestion de versions comme Git et SVN ainsi que les méthodes de planification telles que Gantt et COCOMO.
Enfin, il développe une vision globale et professionnelle des processus de développement logiciel et de gestion de projet.

Le cours de Bases de Données et Systèmes d’Information forme à la conception, la gestion et l’exploitation des bases de données dans une architecture client-serveur.
Il permet d’apprendre la modélisation des systèmes d’information (MCD, MLD, MPD) et la conception de bases de données relationnelles.
Les étudiants maîtrisent le langage SQL pour créer, manipuler et interroger des bases de données de manière efficace.
Le cours aborde également le développement d’applications dynamiques en PHP connectées à des bases MySQL dans un environnement web sécurisé.
Enfin, les acquis sont appliqués à travers des projets pratiques de modélisation et de communication entre applications clientes et bases de données.

Le cours de Langages de Programmation et Compilateurs forme à la résolution de problèmes informatiques par la conception et le développement de logiciels.
Il permet d’acquérir les bases et les concepts avancés de la programmation orientée objet avec C++ et Java.
Les étudiants apprennent les étapes de développement logiciel, l’utilisation des IDE comme VSCode, Eclipse et Visual Studio, ainsi que les différents types d’applications (web, console, Android, distribuées).
Le cours introduit également les principes de conception des compilateurs et l’interaction avec les bases de données.
Enfin, il donne une vue d’ensemble des technologies Big Data et des systèmes utilisant les bases de données en mémoire (In-Memory).

Le cours d’Interfaces Homme-Ordinateur initie à la conception d’interfaces interactives ergonomiques, intuitives et adaptées aux besoins des utilisateurs.
Il aborde les principes d’utilisabilité, d’ergonomie, de multimodalité et l’intégration des aspects cognitifs et sociaux dans le design des interfaces.
Les étudiants apprennent à développer des interfaces graphiques avec Java (AWT/Swing) ainsi que des applications web modernes en HTML5, CSS3 et JavaScript.
Le cours traite également du responsive design, des animations web et de l’utilisation des APIs HTML5 interactives.
Enfin, il introduit l’interaction entre interfaces mobiles, capteurs et microcontrôleurs pour améliorer l’expérience utilisateur.