Cette formation, sous forme d'ateliers, vous permettra d'aborder les processus complexes liant l'intégration, la livraison et le déploiement, leurs avantages pour votre entreprise et comment vous pouvez les adapter et les appliquer en fonction des applications et des scénarios de votre situation de travail. Vous apprendrez les process d'intégration continue.

  • Tarif sur demande.
  • Prochaine session : à la demande.
  • Formation accessible aux personnes en situation de handicap.
  • 70% de pratique et 30% de théorie en moyenne.
  • Nombreuses activités pratiques pour une évaluation constante.
  • Supports, exercices et corrections à disposition en ligne pendant et après la formation.
  • Délai d'accès minimum : 1 semaine.
  • Formation 100% distanciel (téléprésence).
  • Evaluation par le formateur à travers les activités pratiques.
  • Public Développeurs, analystes, Gestionnaires, Toute personne travaillant dans un environnement d'intégration continue
  • Prérequis Connaissances de base en développement logiciel

Lors de cette formation, les participants suivent 3 jours de formation.

  • Introduction
      Différencier les environnements de développement, de recette et de productionGérer les configurations système et applicativeLe conteneur applicatif Docker, un mot sur les autresCentraliser les configurations avec Puppet ou Ansibl.Industrialiser les déploiements Mise en place d'une plateforme d'intégration continue
  • Aperçu de l'Intégration Continue
      Qu'est-ce que l'intégration continue ?Qu'est-ce qu'un build ?Principes clés de l'Intégration ContinueTerminologie Pourquoi adopter un processus CI ?Avantages de l'intégration continueRéduire les risques dans le développement de logiciels
  • Gérer les versions
      Les fonctionnalités Source centralisée ou distribuée ? Les différents gestionnaires de sourcesProblèmes soulevés par l'intégration des changementsRôle des branches et des tagsTravaux pratiques : manipuler un dépôt Git
  • Le processus CI et notion de build
      La construction de logiciels Notion de build et procédure générale de travailNeuf pratiques clésRéaliser des commits fréquents de son codeNe pas réaliser de commits sur du code non-fonctionnelExécuter des builds privés d'abordRéparer immédiatement les builds cassésÉviter de casser les buildsÉcrire des tests de développement automatisésTous les tests doivent être réussisAutomatiser autant que possiblePropriété partagéeLes outils de Build : exemple avec Maven.Plug-ins, profils, modules.Exercice pratique : mettre en place la construction d'un projet simple avec Maven
  • Gérer les dépôts
      Les gestionnaires de dépôts et types : public, interne.Gérer les livrables : releases, snapshots, déploiement et organiser les dépôts selon les environnementsIntégration des gestionnaires des dépôts, outils de Build et outils de gestion des tâches.Tour d'horizon des solutions existantes. Focus sur Nexus et ArtifactoryExercice pratique : publier des artefacts dans Nexus.
  • L'Intégration Continue et les tests
      Que devez-vous tester ?Types de testsQuels sont les outils à utiliser ?Tests à l'aide de mocks / stubsOutils Mock Object (JMock/Easy Mock etc.)Relation entre CI et le Test Driven Development (TDD)Relation entre CI et Behaviour Driven Development (BDD)Mise en œuvre de l'automatisation des testsExercice pratique : mettre en place des tests automatisés avec JUnit
  • Serveur d'intégration continue
      Rôle et fonctionnalités du serveur d'intégration continue.La gestion des tâches (jobs) et dépendanceExemples de serveurs : Hudson/Jenkins, CruiseControle, etc.Exercice pratique : configurer un projet sur un serveur d'intégration continue Jenkins.
  • Métriques et feedback
      Générer des rapportsOutils pour l'analyse et le reporting (PMD, Findbugs, Cobertura, Emma, Checkstyle...)Publication des résultatsExercice pratique : mettre en place des outils de métriques Gérer le feedbackGérer un cycle complet.Traçabilité des changements.Exercice pratique : utiliser Sonar
  • Adopter l'Intégration Continue
      Qu'est-ce qui empêche les équipes d'utiliser l'Intégration Continue ?Mon projet est trop important / J'ai une application existante / Elle est trop complexe, etc.Comment réaliser le projet
  • Introduction
      Différencier les environnements de développement, de recette et de productionGérer les configurations système et applicativeLe conteneur applicatif Docker, un mot sur les autresCentraliser les configurations avec Puppet ou Ansibl.Industrialiser les déploiements Mise en place d'une plateforme d'intégration continue
  • Aperçu de l'Intégration Continue
      Qu'est-ce que l'intégration continue ?Qu'est-ce qu'un build ?Principes clés de l'Intégration ContinueTerminologie Pourquoi adopter un processus CI ?Avantages de l'intégration continueRéduire les risques dans le développement de logiciels
  • Gérer les versions
      Les fonctionnalités Source centralisée ou distribuée ? Les différents gestionnaires de sourcesProblèmes soulevés par l'intégration des changementsRôle des branches et des tagsTravaux pratiques : manipuler un dépôt Git
  • Le processus CI et notion de build
      La construction de logiciels Notion de build et procédure générale de travailNeuf pratiques clésRéaliser des commits fréquents de son codeNe pas réaliser de commits sur du code non-fonctionnelExécuter des builds privés d'abordRéparer immédiatement les builds cassésÉviter de casser les buildsÉcrire des tests de développement automatisésTous les tests doivent être réussisAutomatiser autant que possiblePropriété partagéeLes outils de Build : exemple avec Maven.Plug-ins, profils, modules.Exercice pratique : mettre en place la construction d'un projet simple avec Maven
  • Gérer les dépôts
      Les gestionnaires de dépôts et types : public, interne.Gérer les livrables : releases, snapshots, déploiement et organiser les dépôts selon les environnementsIntégration des gestionnaires des dépôts, outils de Build et outils de gestion des tâches.Tour d'horizon des solutions existantes. Focus sur Nexus et ArtifactoryExercice pratique : publier des artefacts dans Nexus.
  • L'Intégration Continue et les tests
      Que devez-vous tester ?Types de testsQuels sont les outils à utiliser ?Tests à l'aide de mocks / stubsOutils Mock Object (JMock/Easy Mock etc.)Relation entre CI et le Test Driven Development (TDD)Relation entre CI et Behaviour Driven Development (BDD)Mise en œuvre de l'automatisation des testsExercice pratique : mettre en place des tests automatisés avec JUnit
  • Serveur d'intégration continue
      Rôle et fonctionnalités du serveur d'intégration continue.La gestion des tâches (jobs) et dépendanceExemples de serveurs : Hudson/Jenkins, CruiseControle, etc.Exercice pratique : configurer un projet sur un serveur d'intégration continue Jenkins.
  • Métriques et feedback
      Générer des rapportsOutils pour l'analyse et le reporting (PMD, Findbugs, Cobertura, Emma, Checkstyle...)Publication des résultatsExercice pratique : mettre en place des outils de métriques Gérer le feedbackGérer un cycle complet.Traçabilité des changements.Exercice pratique : utiliser Sonar
  • Adopter l'Intégration Continue
      Qu'est-ce qui empêche les équipes d'utiliser l'Intégration Continue ?Mon projet est trop important / J'ai une application existante / Elle est trop complexe, etc.Comment réaliser le projet