Maintenance du logiciel

Un article de Wikipédia, l'encyclopédie libre.

En Génie Logiciel, la Maintenance du Logiciel (ou maintenance logicielle) désigne les modifications d'un logiciel après sa mise en œuvre, et ce pour en corriger les fautes, en améliorer l'efficacité ou autres caractéristiques, ou encore l'adapter à un environnement modifié (ISO/IEC 14764). Cette norme internationale distingue six processus de maintenance logicielle :

  1. L'implémentation;
  2. L'analyse et la résolution de problèmes;
  3. La modification du logiciel;
  4. L'acceptation de la modification par le demandeur;
  5. La migration;
  6. Et finalement, la mise à la retraite.

Il y a un certain nombre de processus qui sont propres à la maintenance du logiciel, par exemple:

  • La transition: la passation coordonnée du logiciel de l'équipe de développement à l'équipe de maintenance;
  • Les ententes de services applicatives;
  • La prioritisation des requêtes de modifications et des rapports de problèmes;
  • L'acceptation ou le rejet d'une demande de modification lorsque la taille ou le type doit être pris en charge par un projet de développement.

Une idée répandue est que le maintenanceur ne fait que réparer des pannes. Pourtant bon nombre d'études ont montré que plus de 80% des efforts de la maintenance sont consacrés à l'amélioration du logiciel (Pigosky 1997).

Le domaine de la maintenance a été étudié au tout début par le Dr. Lehman en 1969. Au bout de vingt ans, ses recherches ont abouti a la formulation de huit règles de l'évolution d'un logiciel en maintenance. La maintenance est un processus d'évolution qui se complexifie sans cesse à moins d'une action spécifique qui vise à réduire sa complexité.

E.B. Swanson a identifié trois catégories de maintenance: corrective, adaptative et perfective. Ces catégories ont été mises à jour par l'équipe de ISO/IEC 14764 :

  • Maintenance corrective
  • Maintenance adaptative
  • Maintenance perfective
  • Maintenance préventive

Les problèmes de la maintenance du logiciel sont autant gestionnels que techniques. Les problèmes de gestion sont: alignement sur les priorités de la clientèle, choix des employés, à qui confier la maintenance, justifier la valeur ajoutée et les coûts de l'équipe. Les problèmes techniques sont : compréhension limitée du logiciel, faible documentation, environnements de tests et mesure de la maintenabilité.

Les modèles de maturité du savoir-faire qui visent spécifiquement la maintenance du logiciel sont : le modèle de maturité de la maintenance du logiciel S3M (avril 2006) et le modèle de maturité de la maintenance corrective (Kajko-Mattsson 2001).

[modifier] Références

  • April & Abran (2006). Améliorer la maintenance du logiciel. Montréal: Loze-Dion éditeur. ISBN 2-921-180-88-X.  [1]
  • Pigosky T.M. (1996). Practical Software Maintenance. New York: John Wiley & Sons. ISBN 0-471-17001-1. 
  • Martin Fowler, Kent Beck, Refactoring: Improving the Design of Existing Code, Addison-Wesley Professional, 1999, 464 p., ISBN 0201485672
  • Bensoussan A. (1993). La maintenance des systèmes informatiques et le droit. Paris: Hermes, 236. 

[modifier] Voir Aussi

[modifier] Liens Externes