Développement d’applications selon la méthode classique VS Développement Agile

Développement d’applications sur-mesure selon la méthodologie agile. De quoi s’agit-il ?

Chez Telio, nous développons des applications informatiques sur-mesure pour vous. Pour vous satisfaire pleinement, nous avons remarqué par expérience que la méthodologie agile s’avérerait plus efficace que la méthodologie, disons, classique.

Comment se déroule le développement sur-mesure selon la méthodologie classique ?

Vous êtes une entreprise et vous avez un problème, disons de gestion de factures. Vous avez besoin d’une application spécifique à votre business, vous faites alors appel à une société informatique, SolutionsMiracles (SM) qui fait du développement sur-mesure classique. Vous et les représentants de cette société vous vous rencontrez et pendant un certain laps de temps (1 à 3 jours) vous discutez de votre problème de gestion de factures. Leur rôle, à ce stade,  est de comprendre votre problème au mieux pour développer la meilleure application pour vous. Cela se passe en temps 0.

Ensuite, les chefs de projet de SM vous disent qu’ils ont bien compris votre problème et ont alors besoin de 10 jours pour faire une étude, une sorte de devis. De cette étude ressort un bloc de 150 pages décrivant dans les moindre détails l’application que vous allez recevoir (le bouton en haut  gauche de l’interface « reçu de facture » sera jaune, la police d’écriture sera Arial, etc.) ainsi que la durée du projet et un prix, par exemple 180 jours homme et 100 000€.

classic methodology

De quoi dépend le prix te la durée d’un projet ?

De la qualité point de vue compétence de la main d’œuvre et du nombre de personnes affectées au projet. Si une seule personne est active sur le projet, il va durer 180 jours, si 2 personnes y sont actives, il durera 90 jours, etc. De plus, si le projet est complexe, alors les informaticiens doivent être très compétents ce qui implique un coût plus élevé (pour ces profils techniques hautement qualifiés).

Dans notre exemple, les employés de SM et notre société cliente ne se voient donc plus avant 180 jours date fixée de la livraison de l’application. Du à cette longue absence de communication, le risque est de ne pas obtenir l’application parfaitement adaptée à vos besoins. En effet, les 150 pages du cahier des charges sont longues et complexes. De plus, il est dur de lire le fonctionnement d’une application. C’est plus facile de la toucher, l’utiliser pour juger si elle nous convient ou pas.

Donc si après 180 jours, l’application qui vous est délivrée ne vous convient pas parce que, en fait, vous encoder vos factures par jour et pas par mois mais vous ne vous en étiez pas rendu compte avant. Vous pouvez demander des modifications sans problème à condition de les payer.

Comment se déroule le développement sur-mesure selon la méthodologie agile ?

La méthodologie agile a une approche très différente.

Vous êtes une entreprise et vous avez un problème, disons de gestion de factures. Vous avez besoin d’une application spécifique à votre business, vous faites alors appel à une société informatique, Telio qui fait du développement sur-mesure selon la méthodologie agile. Vous   rencontrer l’équipe IT de Telio et pendant un certain laps de temps (1 à 3 jours), on discute de votre problème de gestion de factures. Comme pour le développement classique, notre rôle, à ce stade,  est de comprendre votre problème et aussi de le couper en morceaux pour développer la meilleure application pour vous. Cela se passe en temps 0.

Agile Développement

Qu’est ce que signifie le fait de découper un projet en plusieurs  itérations ?

Nous allons par exemple découper le problème du client en 10 petits problèmes en demandant au client de trier les minis problèmes par ordre de priorité. Des 150 pages, nous essayons d’isoler les 10 pages les plus importantes. Après avoir décortiquer le problème et discuter ensemble pendant un jour ou deux, nous rendons au client 2 pages écrites de manière très informelle et souple dans lesquelles nous expliquons à notre client que nous avons compris où il veut aller et nous nous engageons sur la première étape/itération du projet. Nous y décrivons aussi combien de temps va durer cette première itération et combien va-t-elle coûter.

La méthodologie agile correspond à une suite d’itération d’une durée fixe et à un prix fixe. Après chaque itération le client reçoit une partie fonctionnelle du projet final qu’il peut alors testé, jugé et par la suite réorienté son projet de base en fonction de ce qu’il a pu toucher du début du projet.

Agile Methodology

Il y a 2 avantages de la méthodologie agile :

1. Généralement, à la fin le client a une application qui lui convient parfaitement.
2. Le coût du projet est moindre car si vous tout au long du développement, la relation Telio-client permet de voir le totale d’itération diminuer, car on se centre sur la priorité. Le client paie donc moins. De plus, si le client expérience une crise financière, il peut arrêter le projet sans pour autant se retrouver les mains vides. En effet, il aura le produit des itérations qu’il aura déjà payé.

La condition nécessaire à la méthodologie agile est la confiance. Il faut que le client aie confiance en nous.

Classique vs agile : schéma

développement classique vs développement agile

Le schéma ci-dessus illustre les différences entre les deux méthodes de travail.

Méthode classique (en rouge) :

Selon la méthode classique (ligne « a »), l’équipe de développement est établie, les deadline pour la livraison sont fixés, le développement se base sur le cahier des charges dans le but d’obtenir le résultat prédéterminé entre le client et la société informatique. Les priorités concernent les processus et les outils employés, le respect de la documentation exhaustive et un travail sur base de la négociation contractuelle. Cette méthode ne garanti pas la livraison de l’application fonctionnelle dans le temps. Et le résultat obtenu n’est pas toujours celui espéré par le client. Ici le travail de développement s’applique selon un plan préétabli avec le client.

Méthode agile (en vert) :

Dans le développement agile, la priorité se place sur la réactivité par rapport au changement, plutôt qu’à la conformité par rapport à un plan. Ici, on préconise la réalisation de projet par itération où l’on doit livrer à la fin de chacune de ces itérations une partie fonctionnelle et testée de l’application. La collaboration et les interactions avec le client occupent la place centrale. Le développement agile permet de réévaluer le projet, durant sa programmation, et de le réorienter. Le client veut arriver au résultat « b ». On délivrera alors les itérations nécessaires pour y arriver. Mais il est possible qu’en cours de développement, on se réoriente complètement pour obtenir un résultat « c » qui correspond encore mieux aux attentes du client.

Leave a comment

Your email will not be published. Required fields are marked *.