Contexte
Du développement à la production, en passant par la synchronisation des systèmes connexes et par les tests de qualité, les entreprises ont besoin de main-d’œuvre qualifiée tout au long de leurs processus. C’est pourquoi le déploiement rapide de processus d’amélioration en continu est primordial en entreprise.
La formation « Amélioration continue rapide » a été créée de sorte à aider les participants à bien définir leurs processus « devops » afin qu’ils puissent être automatisés. Au terme de ce cours, vous aurez les outils nécessaires afin de raccourcis votre cycle de développement tout en augmentant son efficacité. Votre temps est précieux ; nous vous aiderons à le maximiser.
Les objectifs de la formation
Les formations que nous avons développées pour les « devops » permettent aux participants de faire l’apprentissage d’acquis à la fois versatiles et efficaces.
Au terme de ces formations, les participants auront appris les concepts, les processus et les systèmes nécessaires à la gestion, à l’automatisation et à la délégation des processus en entreprise.
Prérequis
Participants débutants :
- Formation développeur : Utiliser un environnement de travail efficace [Complet] (recommandé)
- Formation développeur : Programmation et techniques de développement [Débutants] (recommandé)
Participants avancés :
- Formation développeur : Devops ou comment s’améliorer rapidement et de façon continue [Débutants]
Approche de formation
Cette courte formation est divisée en trois volets pour les participants débutants et avancés. Au terme de ce cours, vous aurez les outils nécessaires à la mise en place d’une structure et des processus fréquemment utilisés pas les « devops ». Vous serez aussi à même de réduire le temps alloué au cycle de développement, et ce, de manière continue.
Les thèmes à l’étude sont les suivants :
1-Tester son programme
Avant même de songer au développement de nouveaux éléments, il est important de s’assurer du bon fonctionnement du programme existant, pour les usagers et du bon fonctionnement logique. Plusieurs passent des heures à tester les multitudes de fonctionnalités d’un programme. D’autres apprennent à automatiser les tests. Lorsque vous aurez automatisé le processus de test de votre programme, vous ne vous en passerez plus.
2-Automatisation des processus
En automatisant vos processus, vous parviendrez à déployer, synchroniser vos systèmes et lancer des tâches de manière automatiques ; permettant ainsi à vos programmes d’opérer en toute autonomie. Conséquemment, vous épargnerez des heures de travail et maximiserez votre productivité. Les participants auront l’opportunité d’apprendre les différentes étapes de la mise en production automatisée d’un projet ainsi que les manières de synchroniser plusieurs plateformes automatiquement.
3-Savoir déléguer
Il va de soi: le travail d’un développeur le mène à collaborer avec une panoplie d’individus impliqués dans les processus de l’entreprise. Dans le cadre de son rôle, le développeur est souvent appelé à expliquer aux divers intervenants comment utiliser les processus ; bien que ceux-ci soient souvent peu familiers avec le monde du développement. Il est donc primordial pour les développeurs de savoir comment communiquer adéquatement l’information technique avec les autres parties prenantes de l’entreprise.
Plan de cours ( pour débutant )
Tester son programme
- Utilisateurs « fonctionnels »
o Créer ses propres étapes | « steps »
o Créer une étape « step » simple
o Librairies des étapes « steps »
o Environnement de tests spécialisé
o Sauvegarde des résultats | « Log »
o Création d’un testeur « Behat : Out of the Box »
o Tests « Driven Development » (TDD)
-
-
- Spécifications « Unitaires »
- Création de tests avec « phpunit »
-
Gestion et virtualisation d’un environnement
- Serveurs
- Concepts avancés
- Multiserveurs
- Virtualisation avancée
- Utilisation et création d’images « Docker »
- Automatisation des processus
- Déploiement en production automatisée
- Interlogiciel « pont » (Middleware)
- Tâches | « Jobs »
- Mise en pratique
Questions et réponses
Conclusion
Plan de cours ( Pour les avancés )
Tester son programme
Tests fonctionnels
- À quoi servent ces tests ?
- Étude des concepts et de l’approche
- Création d’un test fonctionnel avec « Behat »
- Révision du code
- « Git Merge requests »
Analyse des processus
- Processus A => B
o Temps et inclusions
- Analyse
o Analyse de cas
Agir en fonction des résultats
- Défi et dangers
Tests
- « Debug »
- Rapport
Faire le suivi des applications
- « Network » / « Debug Latency »
- « Ping » / Notifications
- Profilage
- « AMP » (Application Monitoring Performance)
- Ex. NewRelic
Gestion et virtualisation d’un environnement
- Serveurs
- Les bases d’un serveur
- Intégration continue
- Outils
- Techniques
- « DNS » / « CDN »
- « Cloudflare »
- « Stacks » technologiques
- « LAMP »
- « WAMP »
- Virtualisation
- Utilisation et création d’images « Docker »
Regrouper en paquets, déployer et distribuer
- Gestion des paquets
- « Git »
- « Packagist »
- Autres
- Création et diffusion des paquets
- Processus de déploiement d’applications
- Déploiement des sources
- Déploiement d’un « container »
- Migration des versions
- Outils
- Techniques
Automatisation des processus
- Déploiement automatisé
- Utilisation de vos tests à titre d’autorisation pré déploiement
- Pipelines – Intégration CI/CD
- Inter logiciels (Middleware)
- Tâches
Savoir déléguer
- Délégation des tâches
- Savoir simplifier le cas
- Savoir identifier les acteurs potentiels du cas
- Présenter/déléguer le cas aux acteurs concernés
- Documenter le cas et faire les suivis appropriés
- Mise en pratique
Questions et réponses
Conclusion
Voir également
Pour vous inscrire ou demandez plus d’information !
"*" indicates required fields