Autour de ce sujet

Dans ce blog lisez également:
Les causes de l'échec : Seulement 1 projet sur 3 réussi! On peut s'interroger sur les raisons de ces échecs. On apprend alors que 30% à 50% des projets initialisés sont abandonnés avant leur achèvement pour les raisons suivantes :
  • non conformité (non-respect du cahier des charges),
  • inadéquation de la réalisation par rapport au besoin final,
  • retard trop important,
  • 90% dépassent le budget (50% ont coûté 2 fois plus cher)
Dans ces raisons, on distingue 2 ensembles. Le premier ensemble des raisons d'échec est la réponse offerte par le projet au besoin. Le second ensemble est lié à l'organisation du projet. Les processus de création d'un logiciel ne sont pas encore industrialisés. Aujourd'hui, les constructeurs automobiles ou les avionneurs maîtrisent les processus de développement d'un nouveau produit. Mais l'automobile à plus d'un siècle, l'aviation également. L'informatique est une discipline beaucoup plus jeune (le PC a 15 ans). Il est intéressant d'identifier les causes et les solutions des dérapages des projets. L'expression du besoin est une étape capitale. Une mauvaise expression du besoin provoque la non-conformité. L'adéquation du projet au besoin qu'il doit satisfaire conditionne forcément la réussite du projet. Même si l'expression de besoin est bonne à l'origine, elle peut être altérée par les transmissions successibles. On estime qu'à chaque transfert d'information 10% est perdu.
(illustration) Pour maîtriser les charges et les délais, il est crucial que le travail déjà accompli à une étape du projet soit vérifié et validé. L ’expérience a montré que plus une erreur est détectée tardivement dans le processus de développement et plus le coût de sa correction est élevé . En effet, soit 1 le coût de la correction d’une incompréhension de la spécification du logiciel au début du projet de développement, elle coûte : 10 lors du codage du logiciel (à mi-projet en général) 100 lors de la validation du produit final (à la fin du projet)
Ces erreurs peuvent coûter très cher :
  • 1996 1er vol d'Ariane 5 : 38 Milliards de Francs
  • 1999 la sonde Mars Climate Orbiter, erreur de conversion : 120 millions de dollars
  • 2000 le bug aurait coûté 500 milliards de francs (pour la France uniquement)
  • 2004 Bouygues Telecom en panne : 20 millions d'euros
  • ...
Les projets web ne peuvent pas faire l'économie des méthodologies et des outils qui font leurs preuves pour les projets informatiques. D'autant que les méthodes sont parfaitement applicables aux projets Web. Nalis met en oeuvre, ces méthodes pour garantir les coûts, les délais et la qualité de ces projets. L'ingénierie logicielle vise à rationaliser le processus de développement du logiciel à l'aide de méthodes, procédures et outils. Caractéristiques de qualité d’un logiciel sont normalisées par la norme ISO-9126 http://www.issco.unige.ch/ewg95/node1.html Autrement dit, le génie logiciel est ``l'art'' de produire de bons logiciels, au meilleur rapport qualité/prix. Il utilise pour cela des principes d'ingénierie et comprend des aspects à la fois techniques et non techniques: le génie logiciel est basé sur des méthodologies et des outils qui permettent de formaliser et même d'automatiser partiellement la production de logiciels, mais il est également basé sur des concepts plus informels, et demande des capacités de communication, d'interprétation et d'anticipation. Les applications concrètes des recommandations de la norme sont la mise en place d'éléments structurant le projet. Un plan de développement découpant d'une manière cohérente les différentes étapes permet de jalonner efficacement le projet. Un Atelier de Génie Logiciel apporte un cadre aux étapes de conception, de maquettage, de codage et de tests en rationalisant les transferts d'informations et en automatisant la production.

Bien que peu de statistiques existent sur le sujet, l'implication des utilisateurs dès les phases amont du projet conditionne fortement l'aboutissement du projet. L'implication des utilisateurs est souvent présentée comme une cause de succès. De nombreux projets techniquement et fonctionnellement réussis ont été abandonnés du fait du rejet des utilisateurs à cause d'une mauvaise conduite du changement. Des exemples célèbres sont présentés par le Standish Group :
  • California DMV ("California Department of Motor Vehicles") a lancé en 1987 un grand projet pour introduire les nouvelles technologies dans la gestion des permis de conduire. Le projet a été arrêté en 1993, après avoir coûté 45 millions de dollars. En fait, le projet était volontariste ; il n'avait convaincu ni les dirigeants ni les utilisateurs et ses spécifications étaient confuses.
  • Les hôtels Hyatt ont réussi leur système de réservation en impliquant les utilisateurs, avec le soutien des dirigeants, des spécifications claires et une définition modulaire du projet.
La capitalisation et les enseignements tirés des échecs ont été profitables. Grace l'ingénierie logiciel et au génie logiciel les projets informatiques sont mieux maîtrisés. le taux d'échec des projets diminue: 31% en 1995 18% en 2004. Il convient de continuer dans cette voie en appliquant et améliorant ces méthodes.