Culture devops-1 Présentation 👨‍🏫

Objectifs:
🎯 livrer son client au plus vite un logiciel/service de qualité.

Prérequis:
💡 N/A


boucle devops

Comme de nombreux domaines, les entreprises fournissants des services ou logiciels informatiques doivent subvenirs aux besoins de leurs clients de plus en plus vite. En plus de cette préssion d'être en capacité de livrer le produit rapidement s'ajoute le soucis de fournir un produit de qualité respectant toutes les normes exigées par le client ainsi que par l'industrie.

S'imprégner de la culture devops permet de comprendre les étapes de la conception et du développement d'un logiciel/service de bout en bout. Cela donne de la matière pour, par la suite appréhender plus facilement les différents outils devops pour les imbriquer au mieux et automatiser vos différentes étapes de conception et de développement logiciel en fonction des spécifitées de vos projets.

Je vais me concentrer exclusivement sur deux termes. Il me semble primordial de les avoir constamment en tête dans la vie d'un ingénieur / intégrateur devops: CI/CD.

Intégration Continue (CI):
Posséder une chaine d'intégration continue veut dire que l'on a une infrastructure qui permet d'automatiser les étapes de conception logiciel que l'on pourrait énumérer de manière non exhaustive comme suit:
- Récolter les besoins client 🗣️.
- Définir un calendrier projet 📅.
- Définir un cahier des charges 📓.
- Codage du logiciel 💻.
- Tests unitaires/intégrations 🧪.
- Mise à disposition des livrables aux ops 📦.

Pour résumer,
avoir une CI, correspond à être en capacité de pouvoir à tout moment compiler et stocker une version de votre logiciel, intégrant chaque modification de code apporté par chaque développeur. Avec des tests unitaires et des tests d'intégration du code veillant à s'assurer le bon fonctionnement, la non régréssion et la gestion des CVE. Tout cela sans aucune action manuelle.

Déploiement continu:
La partie déploiement continu de la boucle infinie devops veut dire qu'après la livraison de la version du logiciel, ce dernier sera automatiquement poussé dans l'environnement de production et donc les modifications seront directement poussées sur les machines des utilisateurs du logiciel.


Conclusion:
Appliquer la culture devops c'est rentrer dans une démarche d'apprentissage permanent et d'amélioration continue des étapes de conception et de développement logiciel.

L'amélioration se traduisant par la pratique d'évènements permettant de faciliter la gestion des projets (sprint, code review ...) et l'utilisation d'outils pour automatiser vos cycles de création de dévelopement logiciel.

Je vous invite à visiter la page suivante [ Culture devops-2: Catégorisation des outils devops ] pour en savoir plus sur les automatisations possibles grace aux outils devops. Je vous laisse le soin de faire vos recherches sur la partie évènements.