-
Filière :
DevOps & Infrastructure
-
Sous-filière :
CI/CD
-
Référence
UL-INT
-
Durée
3 jours (21 h)
-
Prix par personne HT
1 990 € HT
Objectifs pédagogiques
- Comprendre et maîtriser les principes de l’Intégration Continue
- Comprendre la notion de build et l’utilité de gestionnaire de contrôle des versions
- Savoir automatiser la production logicielle
- Mette en place un serveur d’Intégration Continue
- Configurer un projet sur un serveur d’intégration continue
Public cible
- Architectes
- Chefs de projets
- Développeurs
Pré-requis
Connaissances de base en développement logiciel
Programme de la formation
Introduction
- Les méthodes agiles
- Une histoire de déjà-vu ?
- L’intégration continue, la solution ?
L’intégration continue
- Définition, principes
- Notion de génie logiciel
- Bonnes pratiques
- La chaîne de fabrication logicielle
- L’intégration continue en trois étapes
- Les freins à l’intégration continue
Réduire les risques grâce à l’intégration continue
- Risque: Logiciel de faible qualité
- Scénario: Incapacité à Visualiser Software
- Scénario: Avez-vous obtenu la note ?
- Risque: manque de visibilité du projet
- Scénario: couverture de test
- Scénario: tests de régression
- Risque : découverte tardive des bugs
- Scénario : synchronisation des bases de données
- Scénario : ça fonctionne sur ma machine
- Risque : absence du déploiement
- Scénario: la norme de codage
- Scénario: le respect de l’architecture
- Scénario: la duplication du code
Le gestionnaire de contrôle de version
- Les fonctionnalités
- Le travail collaboratif
- Les différents gestionnaires de sources
- Versionning et migration de base de données (Flyway, Liquibase, etc)
- Les freins à l’intégration continue
L’automatisation de la construction du logiciel (Build)
- Comprendre le build (privé, buil d’intégration de jour/nuit)
- Différents types de builds
- Automatiser les builds
- Séparer les scripts de compilation à partir de votre IDE
- Créer une structure cohérente Directory
- Construire pour tout environnement
- Types, mécanismes de constructions et déclenchement des Builds
- Les outils de Build (Gradle, Maven, Ant…).
Automatiser le déploiement du projet
- Bonnes pratiques du déploiement
- Intégration et déploiement continus
L’automatisation des tests
- Les différents types de tests (tests unitaires, tests d’intégration, tests d’acceptation, tests de performance )
- Les environnements de tests
- Outils de test
- La mise en oeuvre de l’automatisation des tests
Le serveur d’intégration continue
- Le rôle du serveur d’intégration continue
- Les grandes fonctionnalités
- Les serveurs d’intégration continue (Hudson/Jenkins, CruiseControle, Bamboo…)
La mise en place de métriques
- La génération de rapports
- Les outils d’analyse et de reporting (PMD, Findbugs, Cobertura, Emma, Checkstyle…).
- La publication des résultats
Conclusion
- Avantages de l’intégration continue
- Evolution de l’intégration continue
- Difficultés de mise en place et interrogation
Qualité
Cette formation est accessible aux personnes en situation de handicap, nous contacter en cas de besoin d’informations complémentaires.
Programme mis à jour le