Génie logiciel
- Enseignant(s)
- Alban GREAU
- Type de matière
- INFORMATIQUE
- Correspondant
- Ludovic DENEUVILLE
- Module
-
SDDP - UE2 Développement d'application et dataOps
- Nombre d'ECTS
- 2
- Code matière
- 3A-Att-STD-02-1
- Répartition des enseignements
-
Heures de cours : 27
- Langue d'enseignement
- Français
- Modalités d'évaluation
- TP noté
Objectifs
L’objectif de ce cours est d’introduire les moyens de concevoir, développer et déployer des applications informatiques respectant l’état de l’art des exigences de qualité.rnLe cours est proposé de manière interactive et pratique en mêlant présentations théoriques et applications pratiques dans la foulée avec des exercices de bout en bout. L’interactivité permet de ne pas laisser les étudiants en séance buter sur des problèmes de configuration.rnIl permet de connaître toutes les étapes à mettre en oeuvre pour assurer la maintenabilité et la qualité, avec une application poussée sur la conteneurisation, l’accès aux données, les tests manuels et automatiques, l’utilisation des patrons de conception, les principes d’intégration et de déploiement continu.rnLes applications pratiques sont faites principalement sur Java-Springboot, PostgreSQL, Gitlab et AWS.rnLe cours explicite les problématiques contemporaines de la production logicielle en s’appuyant sur des exemples réels et variés de génie logiciel.rn
Plan
Le génie logicielrn1. Introduction au génie logiciel et bonne pratique de conception.rn2. Architecture logicielle et modèle en couchern3. Quelques rappels techniques : git, dockerrn4. Principaux patrons de conception, principe et mise en œuvre.rni. Applications en javarnII. Tests automatisésrn1. introduction aux tests et de leur nécessitérn2. les tests unitairesrni. Application en junitrn3. les tests d’intégrationrni. Les mocksrn4. Outils : jenkins, sonarqubern5. Gherkin et TDDrnIII. CICDrn1. Génèsern2. L’intégration continuerni. Application avec gitlab et java springbootrn3. Le déploiement continurni. Application avec gitlab, AWS et java springbootrn
Prérequis
– SQLrn- Javarn- Gitrn- Dockerrn