5 Astuces pour appliquer le DevOps dans votre entreprise

13 Février 2017

En début d’année dernière, nous avions publié un article intitulé « DevOps : Un Mouvement Établi ou Simple Tendance? » qui traitait des grandes lignes de ce qu’était le DevOps ainsi que sur les impacts que le DevOps peux avoir en entreprise.

Un an plus tard, beaucoup de travail a été fait sur le DevOps et c’est maintenant bien plus qu’une simple tendance. Nous pensons donc que le moment est opportun un an plus tard de revenir sur le DevOps plus en détails et de vous donner quelques astuces sur comment l’appliquer en entreprise.

1) Misez sur la Transparence et la Collaboration:

L’idée maitresse du DevOps est que les côtés développement, produisant du code et les équipes Ops ou opérations, s’assurant du bon fonctionnement des systèmes ne communiquaient pas assez, ou même pas du tout. Un manque de partage des informations des deux côtés peut amener des visions différentes et des goulots qui ralentissent les processus (ex: un seul développeur comprenant une partie du code du projet). Le partage des connaissances et la transparence des processus est donc vitale à une bonne livraison.

Le DevOps est avant tout une question de culture d’entreprise, amenant une collaboration accrue et continuelle, autant du côté développement que du côté opérations. La communication claire et le partage d’information entre les équipes est donc le principal changement qui se produit dans le travail en DevOps, amenant une plus grande compréhension des besoins des deux côtés. La culture d’entreprise doit donc incorporer cette facette, sans quoi tout effort de travail en DevOps sera vain.

Pour amener cette collaboration, un moyen pratique d’y arriver est d’inclure les administrateurs système dans le processus de développement Agile, dont découle le DevOps. Ou encore, envoyer des développeurs au support, ce qui les confrontent à leur code et à ses impacts et ultimement, les transforment en meilleurs codeurs. Pour faciliter le partage, il est primordial de documenter vos projets et vos processus. Sans information, il est bien difficile de la partager! Instaurez donc cette habitude à documenter dans votre entreprise s'il elle n'y est pas déjà.

2) Apprenez à connaître les gens autour de vous 

Discussion

 La collaboration passe aussi par la connaissance des gens avec qui l’on travaille.  Tentez de savoir ce qui motive vos équipes, ce qui les motivent moins. Cela permettra de trouver la manière de travailler qui est la plus efficace. Impliquez ces gens et transformez-les en acteurs dans votre démarche DevOps. Cette communication est autant valable lorsque l’on interagit avec le client, qui lui aussi doit être impliqué dans le processus.

L’implication de tous les acteurs, allant du développeur au client, leur permet de bien comprendre les besoins clients et par conséquent, de non-seulement rendre des livrables plus rapidement, mais aussi rendre le bon livrable.

La tendance nécessite aussi une diversification des compétences des équipes. On ne peut plus, en DevOps, n’avoir que des développeurs qui ne font que rester devant un écran à écrire des blocs de code, ou un directeur qui n’a pas au moins une base en programmation.  Le DevOps, pour bien fonctionner, a besoin de gens avec des connaissances autant Dev que des connaissances Ops. Ce sont ces gens qui seront capables de construire des ponts et d’établir les bases de la collaboration tant importante en DevOps.

3) Concentrez-vous sur les goulots

C’est la clé pour avoir une livraison de plus rapide et pas seulement en DevOps. N’hésitez pas à revoir vos processus pour corriger les endroits où le processus de livraison est bloqué.  Souvent, du temps peut être perdu à attendre des approbations dans un processus de changement, ou à chercher un responsable dans une gestion d’incidents. Une meilleure communication et transparence en DevOps, comme dit plus haut, permet de réduire ces goulots liés au processus.

Plus encore, le travail en DevOps doit faire en sorte non seulement que le travail soit bien fait, mais qu’il soit bien fait du premier coup. Cela évite de devoir retravailler sur des projets que l’on pensait derrière et de perdre temps et efficacité. Trop souvent auparavant voyait-on une différence entre le besoin client et la correction appliquée par le développeur. Avec le DevOps, qui apporte, par la communication une vision claire des besoins clients, une nouvelle efficacité aux équipes TI.

Cycle DevOps - Source : keywordsuggest.org

De plus, le DevOps n’est pas une philosophie exclusive, ou en contradiction avec d’autres méthodes de travail: une méthodologie Agile par exemple, peut s’imbriquer à une philosophie DevOps. Il faut toutefois prendre bonne note que le DevOps n’est pas une solution qui règle tout les problèmes d’un coup de baguette magique. L’application du DevOps demande beaucoup de travail et d’adaptation

4) Connaissez vos processus, éliminez les distractions et utilisez de bonnes méthodes

Il y a également un aspect technologique important requis pour le bon fonctionnement du DevOps et cela passe par l’automatisation.  Nous avons tous connu l'exemple classsique du projet fonctionnant en environnement de test, puis en l’envoyant en production chez le client, de nouveaux bugs apparaissaient.

Les équipes TI ne peuvent pas être constamment occupées à éteindre des feux et corriger des bugs en DevOps, autrement, la communication qui est tant importante au travail en DevOps en souffre.  C’est là où l’automatisation entre en jeux. En automatisant les processus de déploiement, de test et d’intégration, moins de temps est perdu à éteindre ces feux. 

Documentez également ces processus! Vous pourrez les modifier et les adapter plus facilement si vous avez l'information a portée de main.

Go to the next service desk level

5) Le DevOps est une Approche continuelle

On en parle depuis le début, mais il est important d’insister sur ce point ; L’amélioration continue est partie intégrante de l’approche DevOps. Prenez du temps dans une semaine pour rencontrer vos équipes, de faire un retour sur les dernières activités, savoir ce qui a bien fonctionné et moins bien fonctionné (sans pointer du doigt ou blâmer les gens). Discutez ensuite des prochaines actions à prendre et des livrables de la semaine. 

La continuité est à la base du DevOps, le processus ne s’arrête vraiment jamais. Les tests sont constants, les mises à jours et livraisons sont rapides et les canaux de communication sont constamment ouverts. Avec de bons processus DevOps vient la resposabilité de les maintenir.