Analyse et conception des Systèmes
d ’Information
La démarche Merise : La Maintenance
La maintenance
■ Place, spécificité, objectifs et principes directeurs
■ Niveaux et catégories de maintenance
■ Formes de maintenance
■ Déroulement de l'étape de maintenance
■ Organisation des équipes de maintenance
[Link]@[Link] La maintenance 2
La maintenance
■ Place, spécificité, objectifs et principes directeurs
■ Niveaux et catégories de maintenance
■ Formes de maintenance
■ Déroulement de l'étape de maintenance
■ Organisation des équipes de maintenance
[Link]@[Link] La maintenance 3
Place de la maintenance
■ En fin de cycle de vie du logiciel, après la production,
l'intégration et la mise en œuvre
Production Intégration Mise en Œuvre
Naissance Mort
Cycle de vie du logiciel
[Link]@[Link] La maintenance 4
Place de la maintenance
■ En fin de cycle de vie du logiciel, après la production,
l'intégration et la mise en œuvre
Maintenance
Production Intégration Mise en Œuvre
Naissance Mort
Cycle de vie du logiciel
[Link]@[Link] La maintenance 5
Place de la maintenance
■ En fin de cycle de vie du logiciel, après la production,
l'intégration et la mise en œuvre
Maintenance
Production Intégration Mise en Œuvre
Naissance Mort
Cycle de vie du logiciel
■ Avant un diagnostic d'obsolescence du SI
● (prévision du futur système d'information)
[Link]@[Link] La maintenance 6
Place de la maintenance
■ En fin de cycle de vie du logiciel, après la production,
l'intégration et la mise en œuvre
Maintenance
Production Intégration Mise en Œuvre
Naissance Mort
Cycle de vie du logiciel
Obsolescence
■ Avant un diagnostic d'obsolescence du SI
● (prévision du futur système d'information)
[Link]@[Link] La maintenance 7
La maintenance
■ Place, spécificité, objectifs et principes directeurs
■ Niveaux et catégories de maintenance
■ Formes de maintenance
■ Déroulement de l'étape de maintenance
■ Organisation des équipes de maintenance
[Link]@[Link] La maintenance 8
Spécificité
■ Trois aspects sont essentiels dans la maintenance :
Vi sibilité du logiciel
Traçabilité
Ergonomie de l ’activité
[Link]@[Link] La maintenance 9
Visibilité
■ Mise en évidence des stratégies de développement du système
d'information (schéma directeur)
■ Etablissement d'un dossier de choix lors de l'étude préalable
■ Définition d'une solution technique vue par l'utilisateur (étude
détaillée)
La maintenance est définie selon Boehm comme l'ensemble des opérations de
modification d'un logiciel opérationnel laissant intactes ses fonctionnalités de base.
[Link]@[Link] La maintenance 10
Traçabilité
■ Complémentaire à la visibilité,
■ Permet la remontée logique des programmes vers les éléments
de plus haut niveau,
■ Tout programme doit être amplement documenté.
[Link]@[Link] La maintenance 11
Gestion des configurations
■ Maintenance des nouvelles versions ou révision d'un logiciel en
fonction des modifications de l'environnement
● Machine, système d'exploitation, ...
■ Pour chaque configuration doit être spécifié :
● les fonctionnalités prises en compte,
● les besoins couverts des utilisateurs
● les contraintes de développement sélectionnées
● les produits logiciels la composant
[Link]@[Link] La maintenance 12
La maintenance
■ Place, spécificité, objectifs et principes directeurs
■ Niveaux et catégories de maintenance
■ Formes de maintenance
■ Déroulement de l'étape de maintenance
■ Organisation des équipes de maintenance
[Link]@[Link] La maintenance 13
Objectifs de la maintenance
■ Maintenir le système en fonctionnement
■ Rectifier les anomalies de fonctionnement et prendre en compte
les demandes d'évolution
■ Etablir un scénario de développement des versions
■ Planifier les corrections apportées au système pour minimiser les
coûts d'intervention
[Link]@[Link] La maintenance 14
Objectifs de la maintenance
■ S'assurer du bon fonctionnement des nouvelles révisions avant
tout nouvelle mise en exploitation
■ Procéder à cette mise en exploitation après l'accord des parties
prenantes
■ Assurer un bonne gestion des différents configurations du
logiciels par la tenue à jour de la documentation du système
[Link]@[Link] La maintenance 15
La maintenance
■ Place, spécificité, objectifs et principes directeurs
■ Niveaux et catégories de maintenance
■ Formes de maintenance
■ Déroulement de l'étape de maintenance
■ Organisation des équipes de maintenance
[Link]@[Link] La maintenance 16
Principes directeurs
■ Suivre
pour détecter les
anomalies de
L’expl
fonctionnement oi tation pour juger du caractère
opportun de la prise en
L’utilisation
compte de nouveaux
besoins
[Link]@[Link] La maintenance 17
Principes directeurs
$
Mener une politique de développement
$
■
$
$
● de versions et de révisions successives compte tenu d'un budget
■ Réactualisation d'une réflexion de planification à moyen et long
terme.
[Link]@[Link] La maintenance 18
Problèmes de maintenance
■ Conception difficile à comprendre, à modifier, à tester,
■ S S
Insuffisance de la documentation ou lacunes dans cette
E
documentation,
S L E
A U A
■
le code, C CI P
Inconsistance et non-correspondance entre la documentation et
● voire entre les listings et le code exécutable
I N
■
P R
Absence de mémorisation des opérations de maintenance
antérieure.
[Link]@[Link] La maintenance 19
Coûts de maintenance
150
■ Une même erreur coûtera
● une unité monétaire pour sa correction si elle est détectée lors
de la conception
● 40 fois plus cher si elle est détectée lors de la réalisation du
logiciel
● 125 à 150 fois plus cher, si elle n'est détectée que lors de
l'utilisation du logiciel
40
1
Conception Réalisation Utilisation
[Link]@[Link] La maintenance 20
Coûts de maintenance
■ Estimation de la charge globale de maintenance (nombre de
personne pour la maintenance)
KISL
P=
RKMP
KISL = Kilo Instructions Sources Livrées
RKMP = Ratio du nombre d'instructions sources maintenues par personne
[Link]@[Link] La maintenance 21
La maintenance
■ Place, spécificité, objectifs et principes directeurs
■ Niveaux et catégories de maintenance
■ Formes de maintenance
■ Déroulement de l'étape de maintenance
■ Organisation des équipes de maintenance
[Link]@[Link] La maintenance 22
Catégorie de maintenance
Corrective Adaptative
Maintenance
Perfective Préventive
[Link]@[Link] La maintenance 23
Maintenance corrective
■ Elle ne porte que sur le logiciel développé
● Elle ne remet pas en cause les modèles de données ou de
traitements
■ Corrections des erreurs du logiciels
■ Représente de 17 à 20% du temps de maintenance
Corrective
[Link]@[Link] La maintenance 24
Maintenance adaptative
■ Liée à l'environnement du logiciel
● contexte d'utilisation du logiciel,
● génération des ordinateurs,
● exploitation logiciel sur des matériels distincts
● ...
■ Evolution
● du modèle conceptuel des données
● du modèle conceptuel des traitements
Adaptative
■ Représente 18 à 25% du temps de maintenance
[Link]@[Link] La maintenance 25
Maintenance perfective
■ Catégorie de maintenance la plus fréquente (60%)
■ Consiste à améliorer les fonctionnement du logiciel
■ Entraîne une remise en question
● du modèle physique du logiciel
● du modèle organisationnel des traitements
Perfective
[Link]@[Link] La maintenance 26
Maintenance préventive
■ Diminuer le nombre des opérations de maintenance pour
en diminuer le coût si :
● le système est développé dans un esprit de maintenabilité
ultérieur,
● le système est continuellement amélioré pour faire face et
intégrer les nouvelles technologies
● le système est maintenu en pensant à la maintenance
ultérieur,.
Préventive
[Link]@[Link] La maintenance 27
La maintenance
■ Place, spécificité, objectifs et principes directeurs
■ Niveaux et catégories de maintenance
■ Formes de maintenance
■ Déroulement de l'étape de maintenance
■ Organisation des équipes de maintenance
[Link]@[Link] La maintenance 28
Formes de maintenance
■ Considération
● du temps
● de l'urgence des actions de maintenances
Problème
Maintenance à froid Maintenance à chaud
[Link]@[Link] La maintenance 29
Maintenance à chaud
■ Suscitée par un fonctionnement défectueux du système
d'information.
■ Liée à
Corrective
● la maintenance corrective
■ Exemple
● nouvelle version ou révision qui n'a pas pris en compte les
caractéristiques particulières d'un équipement.
[Link]@[Link] La maintenance 30
Maintenance à froid
■ Liée à
● la maintenance adaptative
Adaptative
● la maintenance perfective Perfective
■ Caractéristiques
● un grand laps de temps sépare le diagnostic de la phase de
réalisation des corrections/modifications.
● porte souvent sur la forme ou la présentation des résultats
[Link]@[Link] La maintenance 31
La maintenance
■ Place, spécificité, objectifs et principes directeurs
■ Niveaux et catégories de maintenance
■ Formes de maintenance
■ Déroulement de l'étape de maintenance
■ Organisation des équipes de maintenance
[Link]@[Link] La maintenance 32
Déroulement de l'étape de maintenance
Les Tâches
La fiche de
maintenance
Détail des
principales tâches
[Link]@[Link] La maintenance 33
Les tâches
■ recueil de l'information,
■ analyse des besoins,
■ (re)conception du logiciel, voire du système,
■ étude de l'impact de la modification,
■ planning de la production du code,
■ sollicitation de l'approbation des parties prenantes,
■ production du code,
■ test et intégration,
■ (re)qualification du système.
[Link]@[Link] La maintenance 34
la fiche de maintenance
identification de
l'anomalie de
fonctionnement diagnostic
1 (analyse de l'anomalie)
2
action à
3 entreprendre
La fiche de
maintenance 4
suivie
5
statistique
[Link]@[Link] La maintenance 35
la fiche de maintenance
■ Une partie identification de l'anomalie de fonctionnement
● identification de l'application
● N° de version, N° de révision
● environnement de l'application
● type ordinateur, configuration, description logiciel, …
● conclut sur une estimation de l'importance et de l'urgence de la
correction
identification de
l'anomalie de
fonctionnement
1
[Link]@[Link] La maintenance 36
la fiche de maintenance
■ Une partie diagnostic (analyse de l'anomalie)
● nature de l'anomalie, programmes incriminés
● variables ou outils en causes, raisons, ...
diagnostic
(analyse de l'anomalie)
2
[Link]@[Link] La maintenance 37
la fiche de maintenance
■ Une partie action à entreprendre
● exposé de l'action, identification des ressources prévues,
● coût estimé, moyens temporaires de contourner le problème
● date de prise en compte de l'anomalie, ...
action à
3 entreprendre
[Link]@[Link] La maintenance 38
la fiche de maintenance
■ Une partie suivie
● identification ressources utilisées, corrections effectuées
● liste des éléments modifiés, coût après correction
4
suivie
[Link]@[Link] La maintenance 39
la fiche de maintenance
■ Une partie statistique
● liste de classes d'erreurs
● indice des erreurs les plus fréquentes
● indice de temps de diagnostic et de réparation par erreurs
5
statistique
[Link]@[Link] La maintenance 40
Détail des principales tâches
■ Recueil de l'information
■ Analyse du besoin - diagnostic
■ (re)Conception
● individus, relations modifiés
● opérations, synchronisation, programmes retouchés
■ Etude d'impact
● identifie les actions à effecteur avant la mise en exploitation
d'une nouvelle version
■ Planning de la production du code
[Link]@[Link] La maintenance 41
Détail des principales tâches
■ Approbation des parties prenantes
● accord interne du service de maintenance
● accord des utilisateurs et des exploitants
■ Production du code
■ Test locaux et intégration globale
■ Approbation avant mise en œuvre
[Link]@[Link] La maintenance 42
La maintenance
■ Place, spécificité, objectifs et principes directeurs
■ Niveaux et catégories de maintenance
■ Formes de maintenance
■ Déroulement de l'étape de maintenance
■ Organisation des équipes de maintenance
[Link]@[Link] La maintenance 43
Organisation des équipes de maintenances
Organisation intégrée
Organisation séparée
Mode mixte
[Link]@[Link] La maintenance 44
Organisation des équipes de maintenances
■ Organisation intégrée
● l'équipe de maintenance n'a pas d'existence propre en tant que telle
● Elle fait partie intégrante de l'équipe ou des équipes de
développement
[Link]@[Link] La maintenance 45
Organisation des équipes de maintenances
■ Organisation séparée
● l'équipe de maintenance à une existence propre et à peu ou pas
de contact avec les équipes de développement
[Link]@[Link] La maintenance 46
Organisation des équipes de maintenances
■ Mode mixte
● un représentant de la maintenance est intégré dans les équipes de
développement
[Link]@[Link] La maintenance 47
Aspects humains
■ Une expérience étendue
● Grandes connaissances des langages
● A la fois concepteur et programmeur, ingénieur système
■ La patience
● Ecoute de l'utilisateur, ...
■ La motivation personnelle
■ Le sens des responsabilités
[Link]@[Link] La maintenance 48
Aspects humains
■ L'humilité
● Capacité à faire face à toute critique (héros inconnu)
■ Le sens de l'innovation
● Donner une nouvelle forme au produit tout en minimisant
l'impact des modifications
■ L'esprit "archiviste"
● garder trace des modifications successives
● reconnaître la version courante d'un logiciel
● reconstruire la version défaillante d'un logiciel pour un utilisateur donné
■ L'esprit méthode
● travail avec méthode
[Link]@[Link] La maintenance 49