Publié le 31 janvier 2018
  • Intermédiaire
  • Performance

…Ou Docker et plus si affinités…

Intéressant cet article ?

[Total : 7    Moyenne : 3.9/5]

De quoi s’agit-il ?

Selon le CNRT (Centre National de Ressources Textuelles et Lexicales), l’industrialisation se définit comme ceci :

Processus complexe qui permet d’appliquer à un secteur, à une branche de l’économie, des techniques et des procédés industriels qui apportent rationalisation et hausse de productivité.

 Gif Perceval c'est pas faux

Dans notre contexte d’agence, l’industrialisation vient donc se greffer sur nos procédures de production.

En agence

Le contexte s’y prête : une agence rencontre de nombreux clients, d’autant plus de projets, à cela s’ajoute une grande variété de technologies et tout autant d’environnements adaptés à ces technologies. Un développeur doit donc composer avec toutes ces variables, et sans industrialisation, cela peut vite s’avérer coûteux.

L’objectif de “rationalisation et de hausse de productivité” est sain. Il s’agit d’éviter de perdre du temps sur l’organisation de la production, pour se focaliser sur l’essentiel : le produit.

Au-delà des bénéfices pour l’entreprise, c’est une démarche positive pour accompagner les développeurs. Pour ce faire, nous nous appuyons sur des outils existants, enrichis par nos soins pour s’adapter à notre ADN.

Docker

Chez JETPULP, l’industrialisation passe d’abord par une homogénéisation des outils de développements. Pour cela, nous utilisons notamment Docker.

logo docker

Docker est un outil qui permet de créer un container virtuel. Ce container pourra s’exécuter sur n’importe quelle machine – un poste de développement par exemple -, en ayant des caractéristiques similaires à un serveur de production. On limite ainsi les effets de bords liés aux différences d’environnements lorsque le site est déployé

Docker se caractérise par un fonctionnement par “briques” appelées “images” (dont chaque instance est appelée “container”). Ce principe lui assure de pouvoir s’adapter à chaque contexte, et d’aller jusqu’à personnaliser son installation dans les moindres détails.

illustration fonctionnement brique docker

Si certaines images sont des standards de technologies et d’infrastructures, certains outils complémentaires utilisés lors de la phase de développement doivent être agrégés pour aboutir à une configuration complète. L’ajout de ces outils (mailhog, xdebug ou blackfire par exemple) nécessite une image plus complète intégrant leurs installations respectives.

Après Docker

Docker n’est pas le seul moyen de contribuer à l’industrialisation. Ce qui se fait en matière d’intégration continue y contribue également (notre papier sur le sujet). Pour parfaire le tout, l’agence enrichit cet écosystème par des outils propres à son organisation.

Par exemple, la mise à disposition de jeux de données pour éviter de travailler sur une coquille vide est forcément dépendant de l’activité du client. Le mécanisme de récupération des données est spécifique à notre organisation. Pour bénéficier de cette fonctionnalité, des scripts personnalisés, couplés à Docker, viennent compléter nos besoins.

Conclusion

S’industrialiser est une démarche avantageuse. Elle nécessite néanmoins des investissements puisqu’il ne s’agit pas simplement de savoir s’entourer des bons outils, il faut aussi les adapter à notre besoin, et plus important encore, à ceux de nos clients.

Cet investissement est ensuite largement rentabilisé par la “hausse de productivité”… et le confort de travail 😉

Victor. A

La-qualité-une-responsabilité-collective
0 Commentaires
Répondre
Se joindre à la discussion ?
Vous êtes libre de contribuer !
Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *