Cette UE est destinée à donner un panorama complet des principales techniques et méthodes de base permettant de mettre en oeuvre et de déployer des logiciels dont le principe est qu'ils fonctionnent correctement conformément aux besoins de ses utilisateurs.
Pour tirer le meilleur parti de ce cours il est souhaitable de connaître les connaissances de base en informatique, dispensées en L1, L2.
Une connaissance générale, acquise dans d'autres cours ou dans la pratique, de la programmation, des systèmes d'exploitation et de l'architecture sera un plus.
Maîtriser le cycle de vie complet d'un logiciel et appliquer les bonnes pratiques du génie logiciel pour produire, déployer et maintenir des logiciels de qualité.
Examen 3h.
Ce cours est articulé sur la compréhension en profondeur du processus de développement logiciel de façon qu'un auditeur puisse se couler sans difficulté dans les différentes techniques et méthodes qu'il rencontrera dans sa vie professionnelle.
Il couvre l'ensemble du cycle de vie d'un produit logiciel, depuis l'expression du besoin jusqu'à son exploitation en environnement Cloud, en intégrant les dimensions architecturales, organisationnelles et opérationnelles. L'objectif est de permettre aux étudiants de maîtriser les pratiques actuelles du génie logiciel.
Cette UE est organisée selon le cycle de vie d'un produit logiciel moderne :
Il sera souligné l'importance de l'architecture et des concepts architecturaux. Une attention sera portée à la prise en compte des aspects non fonctionnels du logiciel dans leur développement.
A ces modules, pour compléter le panorama, s'ajoutent un module de sensibilisation : Exploiter et maintenir (Qualité & Observabilité), concernant l'assurance qualité logicielle. Concept transverse indispensable à prendre en compte dans tous les projets informatiques.
Cette UE apparaît dans les diplômes et certificats suivants :