maitrisez votre gestion de configuration logiciel resume table des
Transcription
maitrisez votre gestion de configuration logiciel resume table des
MAITRISEZ VOTRE GESTION DE CONFIGURATION LOGICIEL DOMINIQUE JACQUIN RESUME Un logiciel est un produit complexe qui demande une organisation rigoureuse des moyens, des hommes et du temps. La gestion de configuration permet ainsi de maintenir la cohérence d ‘un projet logiciel durant tout son cycle de vie (depuis l’expression du besoin à la maintenance) : « Gérer en configuration, c’est prendre une assurance contre le désordre dans vos projets logiciels. ». Ce livre s’appuie très largement sur les concepts de la norme ISO 10 007 (management de la qualité et éléments de système qualité, partie7 : les lignes directrices pour la gestion de configuration). Il présente la mise en place d’un système complet de gestion de configuration avec plusieurs exemples pratiques. Il donne les critères de choix d’un outil de gestion et de gestion de parc informatique, ainsi qu’une description des principaux outils du marché. Cet ouvrage est destiné aux professionnels : développeurs logiciel, responsables de projets logiciels, responsables qualité – dans le cadre de la certification ISO9001 – et responsables de services informatiques soucieux d’appréhender les concepts de la gestion de configuration de logiciel. Il intéressera aussi les étudiants en informatique, en génie logiciel et en qualitique. TABLE DES MATIERES Remerciements v Chapitre 1 Introduction 1.1 A qui cet ouvrage s'adresse-t-il ? 1.2 Le contenu de cet ouvrage 1.3 Comment accéder rapidement au sujet qui vous intéresse 1 2 4 5 Chapitre 2 Présentation de la GCL 2.1 La complexité du développement logiciel 2.2 Que faut-il gérer en configuration 2.3 Pourquoi gérer en configuration? 2.4 Définition de la gestion de configuration 2.4.1 Le contenu de l'ISO 10007 2.4.2 Activité de soutien de projet 2.4.3 Les objectifs 2.4.4 Le vocabulaire commun 2.4.5 La gestion de configuration et la gestion de production 2.4.6 L'approche détaillée et l'approche globale 2.4.7 La gestion des évolutions 7 8 10 10 13 13 13 13 14 15 15 16 Chapitre 3 Les enjeux de la GCL 3.1 La gestion de configuration et la certification ISO 9001 3.1.1 Les enjeux économiques de la certification (le label ISO 9000) 3.1.2 L'ISO 9000 et le logiciel 3.1.3 La gestion de configuration et l'ISO 9000 3.1.4 La gestion de configuration et les autres normes 3.1.5 La démarche au sein de la société 17 18 18 20 23 25 29 3.2 La gestion de configuration au sein d'un projet 29 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 Le coût 3.3.1 29 30 30 31 31 33 33 33 34 34 3.3 Les activités de soutien La position privilégiée de la GCL au sein d'un projet Le plan de gestion de configuration La gestion de configuration et les cycles de développement La gestion des évolutions La gestion de production La livraison La maintenance de la gestion de configuration Démarche investissement retour sur investissement 3.4 3.5 3.6 3.3.1 Démarche investissement retour sur investissement 3.3.2 Investissements a caractère général 3.3.3 Investissements a caractère spécifique 3.3.4 Coûts de la gestion de configuration dans les projets Les gains attendus 3.4.1 L 'homogénéité des développements 3.4.2 L'organisation de la production 3.4.3 La qualité des produits réalisés 3.4.4 La performance du cycle des évolutions Les coûts cachés de la gestion de configuration Le marché de la gestion de configuration 34 34 35 35 35 35 36 36 37 37 38 Chapitre 4 La norme ISO 10007 4.1 Ses références 4.2 Son aspect normatif 4.2.1 Ses avantages 4.2.2 Ses inconvénients 4.3 Son vocabulaire 4.4 Son caractère général 4.5 Ses points importants 4.5.1 L'identification des activités de GCL 4.5.2 La mise en œuvre du système de GCL 4.6 Le cycle de gestion de configuration 39 40 40 41 41 41 42 43 43 43 44 Chapitre 5 La mise en place au sein de la société 5.1 Généralités 5.1.1 Rappels 5.1.2 Formalisme de représentation 5.1.3 Identification des activités 5.2 Identifier la configuration 5.2.1 Décomposer le produit en constituants 5.2.2 Identifier les articles et les relations entre les articles 5.2.3 Règles d'identification et d'évolution des articles 5.2.4 La liste et le contenu des configurations de références 5.3 Maîtriser la configuration 5.3.1 Introduction 5.3.2 Gérer la production 5.3.3 Gérer les évolutions 5.4 Enregistrer la configuration 5.4.1 Introduction 5.4.2 Mise en référence d'une configuration de référence 5.4.3 Editer les rapports de configuration 5.5 Contrôler la configuration 5.5.1 Introduction 5.5.2 Les audits de configuration 5.5.3 Audit du système de gestion de configuration 5.5.4 Les sauvegardes 5.5.5 Le retour d 'expérience 5.6 Mise en pratique 45 46 46 46 47 48 48 51 56 59 63 63 63 66 69 69 69 71 72 72 72 72 73 74 74 Chapitre 6 Les activités de la GCL 6.1 La nécessité d'une démarche globale structurée 6.1.1 Deux niveaux d'approche: le niveau société et le niveau projet 6.1.2 Une démarche progressive 6.1.3 Degré de maturité 6.1.4 Identification des étapes 6.2 Le diagnostic 6.3 La détermination d'une stratégie société 6. 3.1 Le contexte société 6. 3.2 La démarche 6.4 L'organisation du système société 6.4.1 Les objectifs 6.4.2 L'organisation proposée 6. 4.3 Identification des tâches à réaliser 6. 4.4 Les avantages et inconvénients de l'organisation proposée 6.5 La conception du système société 6.5.1 L'organisation des projets 6.5.2 L 'établissement de procédures 6.5.3 La réalisation de guides méthodologiques 6.5.4 Le choix d'un outil de gestion de configuration 6.5.5 Le kit de formation pour la sensibilisation des agents 6.6 La mise en place de la GCL au sein des projets 6.6.1 Le choix d'un projet pilote 6.6.2 La généralisation a l'ensemble des projets 6.7 Le suivi et le soutien fonctionnels 6.7.1 La formalisation du retour d 'expérience 6.7.2 La formation et la sensibilisation des développeurs 6.7.3 L'achat d'outils et la fourniture de licences 6.8 Quelques conseils généraux pour la mise en œuvre 6 8.1 La nécessite de s'appuyer sur un consultant externe 6.8.2 Le respect des équilibres 76 77 77 78 79 79 80 80 80 80 81 81 81 82 83 83 83 87 87 89 90 91 91 91 92 92 92 93 93 93 94 6.8.2 6.8.3 Le respect des équilibres Les attitudes caractéristiques Chapitre 7 Aide à la rédaction d'un plan de GCL 7.1 Plan-type du plan de gestion de configuration 7.2 Contenu du plan de gestion de configuration 94 94 96 97 99 Chapitre 8 Le choix d'un outil 8.1 Généralités et objectifs 8.1.1 Pourquoi se doter d'un outil de gestion de configuration? 8.1.2 L'importance de la méthode 8.1.3 L'objectif de cet ouvrage vis-à-vis des outils de GCL 8.1.4 L'acquisition d'un outil 8.2 Les critères de choix .2.1 Le principe d'évaluation d'un outil de GCL 8.2.2 Les différentes classes de projet logiciel 8.2.3 Les critères techniques 8.2.4 Les autres critères 8.3 L'évaluation des principaux outils du marché 8.3.1 Les objectifs de cette évaluation 8.3.2 La méthode d'évaluation 8.3.3 La liste des principaux outils évalués 8.3.4 Les principales conclusions 8.3.5 Les fiches outils 126 127 127 128 128 128 128 128 129 130 133 134 134 134 135 135 136 Chapitre 9 Gestion de configuration des autres produits 9.1 La gestion de configuration des matériels 9.2 La gestion de configuration des systèmes 9.3 La gestion de configuration des composants logiciels réutilisables 9.4 La gestion de parc informatique 9.4.1 Le contexte 9.4.2 Les fonctionnalités d'un outil de gestion de parc 9.4.3 L'état du marché 9.4.4 La liste des principaux outils du marché 9.4.5 Les principales conclusions 9.4.6 Les « fiches outil » 152 153 153 154 154 154 155 156 156 156 157 Chapitre 10 Exemples 10.1 Introduction 10.2 La GCL d'un système d'information (SI) 10.2.1 La description du contexte 10.2.2 La décomposition du produit en constituants 10.2.3 Le choix des articles de configuration 10.2.4 L'identification des relations 10.2.5 L'identification des configurations de référence 10.2.6 Les rapports de configuration 10.2.7 La gestion des espaces 10.2.8 Le choix des outils 10.3 La GCL d'un simulateur de procède industriel 10.3.1 La description du contexte 10.3.2 La décomposition du produit en constituants 10.3.3 Le choix des articles de configuration 10.3.4 L'identification des configurations de référence 10.3.5 Les autres points 164 164 165 165 167 168 169 170 170 171 173 173 173 173 174 177 179 Chapitre 11 Annexes 11.1 F orma1isme de représentation des actigrammes 11.2 Etablissement du diagnostic société 11.2.1 Poste QUALITE-Mesure de la satisfaction des exigences des clients 11.2.2 Poste PRODUCTIVITE-Mesure des économies réalisables 11.2.3 Poste ORGANISATION -Mesure de la maÎtrise des concepts de GCL 11.2.4 Poste POTENTIEL HUMAIN-Mesure de la maturité des équipes 11.3 Critères d'évaluation d'un outil de GCL 11.3.1 Généralités 11.3.2 La classe de l'outil évalue 11.3.3 Poste gestion des configurations 11.3.4 Le poste gestion de production 11.3.5 Le poste gestion de l 'environnement 11.3.6 Les autres critères 11.4 La GCL et les cycles de développement 11.4.1 Généralités 11.4.2 Le cycle de vie des systèmes d'information 11.4.3 Le cycle de prototypage évolutif 11.4.4 Le cycle de vie d'un système expert 180 181 181 181 182 183 184 184 184 185 185 187 189 190 191 191 192 193 194 Conclusion 195 Liste des illustrations 197 Glossaire 199 Sigles et abréviations 201 Index 203 Bibliographie 207 CONTENTS Acknowledgements v Chapter 1 Introduction 1.1 Who is this book aimed at? 1.2 Contents of the book 1.3 Finding the subject you're interested in 1 2 4 5 Chapter 2 Presentation of the Software Configuration Management 2.1 Complexity of software production 2.2 Components of the software configuration 2.3 Why configuration management? 2.4 Definition of the configuration management 7 8 10 10 13 Chapter 3 Stakes of the SCM 3.1 Configuration management and ISO 9001 certification 3.2 SCM within a project 3.3 Cost of configuration management 3.4 Expected improvements 3.5 Hidden costs of the configuration management 3.6 Market of the configuration management 17 18 29 34 35 37 38 Chapter 4 39 International standard ISO 10007 4.1 4.2 4.3 References Standard aspect Vocabulary 40 40 41 4.4 4.5 4.6 General applications Main characteristics The SCM cycle 42 43 44 Chapter 5 Implementation orthe SCM system in a company 5.1 General points 5.2 Configuration identification 5.3 Configuration control 5.4 Configuration recording 5.5 Configuration evaluation 5.6 Implementation 45 46 48 63 69 72 74 Chapter 6. Software configuration management activities 6.1 Looking for a global and structured process 6.2 Diagnosis 6.3 Deciding a strategy in the company 6.4 Organization of the company system 6.5 Company system design 6.6 SCM implementation in projects 6.7 Functional tracking and supporting 6.8 Sorne general advice for implementation 76 77 80 80 81 83 91 92 93 Chapter 7 Help in drawing up an SCM 7.1 Configuration management model plan 7.2 Contents of the configuration management plan 96 97 99 Chapter 8 Choosing a tool 8.1 General points and objectives 8.2 How to choose a tool 8.3 Evaluating the main tools on the market 126 127 128 134 Chapter 9 Configuration management of other products 9.1 Configuration management of materials 9.2 Configuration management of systems 9.3 Configuration management of reusable software components 9.4 Configuration management of computing equipement 152 153 153 154 154 Chapter 10 Examples 10.1 Introduction 10.2 SCM in an information system (lS) 10.3 SCM of an industrial process simulator 164 164 165 173 Chapter 11 180 Appendices 11.1 11.2 11.3 11.4 SADT representation Making a diagnosis of the company Criteria to evaluate an SCM tool SCM and software life cycIe 181 181 184 191 Conclusion 195 Liste of figures 197 Glossary 199 Acronyms and abbreviations 201 Index 203 Bibliography TOP 207