Objectifs
Au terme de ce cours, l'étudiant.e sera en mesure d’appliquer des méthodes de développement agile, à l’aide d’outils modernes pour le contrôle de version, la gestion des dépendances, ainsi que les tests et le déploiement automatisé.
Contenu
Méthodes de développement et de gestion de projet agiles. Travail d’équipe, revues de code. Réingénierie (refactoring). Contrôle de version (git, github), gestion des dépendances (Maven, Gradle, etc.). Environnements de développement et de production, outils de virtualisation et conteneurs. Construction et déploiement automatisés (make, ant, etc.), gestion de la configuration. Automatisation des tests et intégration continue (Jenkins, Circle CI, etc.). Approche DevOps. Ce cours comporte des séances obligatoires de travaux dirigés (TD).