Ce cours de Conception de logiciels du semestre 6 de la formation en Génie Logiciel a pour objectif de doter les étudiants des compétences essentielles pour concevoir des logiciels robustes, évolutifs et centrés sur l'utilisateur. Il couvre les fondements de la conception logicielle, les patrons de conception (Design Patterns), les architectures logicielles (comme MVC et PAC), ainsi que les approches modernes telles que l’Ingénierie Dirigée par les Modèles (IDM) et l’Architecture Dirigée par les Modèles (MDA). Une attention particulière est portée à la scalabilité, à l’expérience utilisateur (UX) et à la réutilisabilité des solutions. Le cours s'appuie sur des prérequis en programmation orientée objet et en génie logiciel.

Le cours « Conception d’applications web avancées » s’adresse aux étudiants de Master 1 en informatique (spécialités ILTI et TI). Il a pour objectif de fournir une compréhension approfondie et pratique des techniques modernes de développement d’applications web, en mettant l’accent sur l’utilisation du langage XML dans la conception des applications web.

Aujourd'hui, la cryptographie est une discipline scientifique à part entière, au carrefour des mathématiques, de l'informatique, et même de la physique. Elle joue un rôle crucial dans un monde où la protection des données est devenue un enjeu stratégique, économique et parfois géopolitique. Depuis l'Antiquité jusqu'à l'ère numérique, la maîtrise du secret reste un outil de pouvoir, de sécurité, et de confiance.