Code
IGFF CSC 4203
Level
M1
Graduate
Graduate
Semester
Fall
Domain
Informatique
Program
Programme Ingénieur
Language
Français/French,Anglais/English
ECTS Credits
2,5
Class hours
24
Workload
48
Program Manager(s)
Department
- Informatique
Educational team
Organisation
Cours/TD/TP/projet/examen : 7 / 0 / 13 / 4 / 0Learning objectives
Utiliser Git et une forge logicielle pour un projet de développement collaboratif, notamment en mettant en œuvre un modèle de gestion du développement et un processus d'intégration continue (CI).
Dans le détail :
- Utiliser Git pour les opérations courantes d'un projet de développement mono-utilisateur
- Appliquer un modèle de développement et d'intégration à base de branches
- Utiliser Git et une forge logicielle (à travers l'exemple de GitLab) pour des projets de développement multi-utilisateurs
- Résoudre les situations classiques de conflits de contenu dans un dépôt Git
- Comprendre l'intérêt de l'approche Test Driven Development (TDD) dans la collaboration autour d'un projet de développement
- Concevoir une pipeline d'intégration continue (CI) adaptée à un projet de développement mené en TDD
- Mettre en place l'intégration continue (à travers l'exemple de GitLab) dans un projet de développement
- Comprendre le rôle de solutions de conteneurisation (à travers l'exemple de Docker) dans la mise en place de la CI, et la distribution des artefacts du projet.
Prerequisites
CSC3102
Content
Prise en main basique et intermédiaire de Git.
Introduction à la forge logicielle GitLab.
Utilisation basique et intermédiaire des branches.
Initiation au Test Driven Development (TDD) appliqué par l'utilisation de Git et GitLab.
Découverte et mise en œuvre basique et intermédiaire de l'intégration continue (CI).
Initiation aux conteneurs et à leur rôle dans la CI.
Mise en pratique du cours par un projet de développement en duo.
Evaluation
L'évaluation repose sur deux contrôles continus en séance (à 10%), et sur un projet de mise en pratique (en et hors séance) en binôme (à 90%).
Pas de rattrapage.
Assessment formula
0,1x(CC1+CC2) + 0,9xProjet
Pedagogical methods
Cours intégrés, travaux pratiques, projet