Chez TX2 CONCEPT, nous accordons une attention particulière à la qualité des livrables produits ainsi qu’à la réactivité nécessaire pour les faire vivre. Afin d’atteindre ces objectifs de qualité et de réactivité, notre méthode de gestion de projet s’appuie sur l’application conjointe d’une méthodologie agile et de méthodes DevOps.
Nous appliquons cette méthodologie en phase de développement mais également en phase de recette et d’exploitation.
Mais qu’est-ce qu’une gestion de projet en mode Agile ? Et à quoi correspondent les méthodes DevOps ?
Gestion de projet traditionnelle : le Cycle en V
Issue du modèle dit « en cascade » ou « waterfall », la méthode « cycle en V » s’utilise traditionnellement pour le management de projet. Ce modèle a fait son apparition dans l’industrie avant d’être appliqué, dans les années 80, aux projets informatiques.
Lorsque l’on utilise cette méthode, on découpe un projet en 9 étapes qui vont se succéder. Ces phases correspondent à l’analyse des exigences et besoins, aux étapes de conception et de mise en œuvre ainsi qu’aux phases de tests et d’intégration. On est alors sur une approche séquentielle et linéaire.
On parle de « V » car elle est organisée de la manière suivante : un flux d’activité descendant qui détaille le produit jusqu’à sa réalisation et un flux ascendant qui assemble le produit et vérifie sa qualité. De plus, le « V » fait également référence au fait que chaque phase de développement est accompagnée d’une phase de Validation. Cela implique qu’un problème en phase de Tests système entraine une remise en question du livrable dès la phase Analyse. Potentiellement, cela peut impliquer de nombreuses modifications.
Souvent décrite comme « 100% projet », on oppose au cycle en V les méthodes Agiles dîtes « 100% produit ».
Historique de la méthode Agile
Contrairement à la gestion de projet traditionnelle qui se veut séquentielle, la méthodologie agile est quant à elle itérative.
Les travaux sur le cycle de production itératif datent des années 1930-1940. Mais il a fallu attendre la fin des années 50 pour qu’ils soient appliqués à l’informatique, notamment dans le cadre du projet Mercury.
Les méthodes agiles sont l’aboutissement de nombreux travaux tels que ceux de Tom Gilb sur le cycle de vie évolutif (1981) ou ceux de Scott Shultz sur la production en itérations rapides. La toute première méthode dite « agile » serait la méthode EVO12 élaborée et publiée par Tom Gilb en 1976.
Mais le terme « agile » n’a fait son apparition qu’en 1991 lorsque James Martin a proposé une méthode de développement rapide d’application (RAD). Celle-ci repose sur une structure itérative, incrémentale et adaptative. Ce modèle est d’ailleurs très proche de ce que nous appelons aujourd’hui les méthodes agiles.
La méthode Agile a été popularisée en 2001 grâce au Manifeste pour le développement agile de logiciel. Ce texte a été écrit aux Etats-Unis par 17 développeurs de logiciels reconnus tels que Ward Cunningham, le créateur du Wiki, Kent Beck, l’inventeur de l’extreme programming ou encore Ken Schwaber, le concepteur de la méthode Scrum. Ces développeurs considéraient que le fort taux d’échec des projets de développement de logiciels était dû à la rigidité et la lourdeur de la gestion de projet traditionnelle.
Ce manifeste décrit les valeurs et principes des méthodes agiles.
Les valeurs et principes du Manifeste Agile
Ce Manifeste pour le développement agile de logiciel repose sur 4 valeurs. Il met l’accent sur :
- Les individus et leurs interactions plutôt que les processus et les outils
- Un logiciel fonctionnel plutôt qu’une documentation exhaustive
- La collaboration avec les clients plutôt que la négociation contractuelle
- L’adaptation au changement plutôt que l’exécution d’un plan
Ces 4 grandes valeurs sont détaillées par 12 principes tels que de faire de la satisfaction client une priorité, de responsabiliser les équipes ou encore de livrer régulièrement des versions opérationnelles du livrable.
Certains signataires du Manifeste Agile ont créé l’Agile Alliance qui a pour objectif de défendre et promouvoir ces valeurs et principes.
Gestion de projet EDI : Pourquoi privilégier les méthodes agiles ?
Le postulat de base est simple, il est parfois contre-productif de planifier un projet dans les moindres détails. En mode agile, on privilégie les objectifs à court terme. C’est-à-dire, qu’on va diviser un projet en sous-projets. Une fois un sous-projet accompli, on passe au suivant jusqu’à la réalisation de l’objectif final. Cette approche est plus flexible que la gestion de projet traditionnelle. Cette souplesse facilite l’adaptation aux changements.
La méthode Agile permet une meilleure collaboration avec les clients mais également entre les équipes. En mettant l’accent sur la communication, on améliore la réactivité des équipes. Le fait de mettre le client au cœur du projet permet d’améliorer la relation de confiance entre les clients et leur prestataire.
Comme expliqué précédemment, la gestion de projet Agile donne au client une meilleure visibilité sur l’avancement du projet. Cela lui permet de demander des ajustements en fonction de l’évolution de ses besoins. L’équipe projet peut ainsi réagir et s’adapter en temps réel afin d’effectuer des modifications en cours de développement pour améliorer le livrable. Cette forte adaptabilité permet également une meilleure gestion des risques.
La gestion de projet en mode Agile est donc idéale si vous évoluez dans un environnement complexe qui évolue rapidement, comme c’est notamment le cas pour les projets informatiques.
En revanche, dans certaines situations où le projet nécessite d’être fortement cadré la gestion de projet traditionnelle peut être plus pertinente.
Attention cependant lors du passage à une nouvelle gestion de projet en mode agile. Celle-ci peut conduire à des régressions ou des développements anarchiques si elle est mal exécutée. Il faut pour cela avoir les bons outils et les bonnes méthodes de travail.
La méthode DevOps : C’est quoi ?
La méthode DevOps a pour objectif d’appliquer les méthodes Agiles au développement informatique. Elle repose sur la collaboration entre les développeurs logiciels (Dev) et les administrateurs de systèmes et d’architectures (Ops). Ces premiers ont pour but de créer et faire évoluer des applications et les seconds se chargent de la mise en production.
Le défi est de prendre en considération les contraintes de déploiement dès l’étape de la programmation. La méthode DevOps va ainsi permettre d’automatiser et de monitorer la totalité du cycle de vie du livrable. Cela améliore ainsi la performance des équipes et des livrables.
La gestion de projet informatique avec TX2 CONCEPT
TX2 CONCEPT applique une méthodologie agile permettant de délivrer des solutions dans des cycles de vie courts. Cette méthodologie est couplée avec le respect des méthodes DevOps afin de garantir l’atteinte des objectifs de qualité et de réactivité. Ce couple s’articule notamment sur :
- Un versionnage systématique et rigoureux de tout livrable, en phase de développements comme de recette et d’exploitation ;
- L’emploi de chaînes de production logicielles personnalisées automatisant les transitions entre les phases de vie du livrable ;
- L’intégration complète dans une plateforme DevOps avec intégration continue et déploiement continu.
Les périmètres couverts par cette méthodologie sont le développement, ainsi que les maintenances corrective et évolutive.
Chaque version d’un livrable implique un cycle DevOps. Celui-ci comprend, en plus des phases évoquées dans la section précédente, des phases de travail en collaboration, consolidation, tests et déploiement automatiques. L’automatisation de ces tâches garanti sa qualité tout en diminuant la durée de son cycle de vie. Ce qui permet des livraisons rapides.
- Les outils de travail collaboratif utilisés permettent un suivi précis et une revue par les pairs des développements effectués et des changements introduits ;
- La construction du livrable supprime le risque d’erreur statique ;
- Les tests automatiques garantissent à tout moment le respect des spécifications projet initiales ou actualisées ainsi que la non-régression de fonctionnalités ;
- Le déploiement automatique permet de passer rapidement le livrable d’un environnement développement « Dev » à un environnement exploitation « Ops », également de façon accélérée et avec un risque réduit lié à la suppression de tâches manuelles et répétitives.
Nous appliquons cette méthodologie de travail à tous nos projets, qu’il s’agisse d’EDI, de Web EDI ou encore de dématérialisation des factures.
Si vous souhaitez avoir davantage d’informations sur la gestion de projet chez TX2 CONCEPT, n’hésitez pas à nous contacter. Nous répondrons à toutes vos interrogations.
Vous pouvez nous contacter par :
- Mail : commercial@tx2.fr
- Téléphone : +33 2 38 69 65 43
- Prendre directement un rendez-vous