• Aide
  • Eurêkoi Eurêkoi

Livre

Applications logicielles certifiables. 2 , Processus supports

Résumé

L'auteur décrit les étapes de réalisation d'une application logicielle. Ce volume est dédié à la description des processus supports. Il présente la gestion des ressources humaines et de la configuration, l'archivage, la vérification et la validation du logiciel, ainsi que l'impact de l'utilisation des composants sur étagère et des logiciels préexistants. ©Electre 2017


  • Éditeur(s)
  • Date
    • cop. 2017
  • Langues
    • Français
  • Description matérielle
    • 1 vol. (264 p.) : ill. en coul., graph.; ; 24 cm
  • Collections
  • Sujet(s)
  • ISBN
    • 978-1-78405-248-5
  • Indice
  • Quatrième de couverture
    • La série Applications logicielles certifiables présente de manière concrète et critique les étapes de réalisation d'une application logicielle, un processus complexe nécessitant un travail d'équipe.

      Ce deuxième volume est dédié à la description des processus supports. Il en couvre les principales thématiques : la gestion des ressources humaines et de la configuration, l'archivage, la vérification et la validation du logiciel. Cet ouvrage analyse également l'impact de l'utilisation des composants sur étagère (COTS) et des logiciels préexistants sur les applications certifiables.

      En s'appuyant sur les définitions présentées dans le premier volume de la série, le lecteur trouvera ici une description essentielle et complète des processus supports qui doivent être mis en oeuvre pour réaliser une application logicielle.


  • Tables des matières
      • Applications logicielles certifiables 2

      • Jean-Louis Boulanger

      • iste

      • Introduction13
      • Chapitre 1. Réalisation d'une application logicielle15
      • 1.1. Introduction15
      • 1.2. Qu'est-ce que le logiciel ?18
      • 1.3. Le logiciel au sein d'un système18
      • 1.4. Différents types d'applications logicielles20
      • 1.4.1. Différents types de logiciels20
      • 1.4.2. Différents types d'utilisations20
      • 1.5. Cycle de vie21
      • 1.6. Choix de la stratégie de développement de l'application logicielle22
      • 1.7. Conclusion24
      • 1.8. Annexe A : structure d'un plan d'assurance qualité logiciel25
      • Chapitre 2. Mise en oeuvre de l'assurance qualité27
      • 2.1. Introduction27
      • 2.2. Système de management de la qualité27
      • 2.3. Caractérisation d'une étape29
      • 2.4. Processus30
      • 2.5. Eléments d'entrée30
      • 2.5.1. Identification du besoin30
      • 2.5.2. Spécification du besoin31
      • 2.5.3. Spécification des exigences de sécurité32
      • 2.6. Descriptions des étapes de la réalisation32
      • 2.6.1. Planification des activités32
      • 2.6.1.1. Objectif32
      • 2.6.1.2. Entrées32
      • 2.6.1.3. Procédures et guides applicables32
      • 2.6.1.4. Sorties33
      • 2.6.1.5. Description33
      • 2.6.2. Spécification de l'application logicielle35
      • 2.6.2.1. Objectif35
      • 2.6.2.2. Entrées35
      • 2.6.2.3. Procédures et guides applicables35
      • 2.6.2.4. Sorties35
      • 2.6.2.5. Description36
      • 2.6.3. Architecture de l'application logicielle38
      • 2.6.3.1. Objectif38
      • 2.6.3.2. Entrées38
      • 2.6.3.3. Procédures et guides applicables38
      • 2.6.3.4. Sorties39
      • 2.6.3.5. Description39
      • 2.6.4. Conception des composants de l'application logicielle41
      • 2.6.4.1. Objectif41
      • 2.6.4.2. Entrées42
      • 2.6.4.3. Procédures et guides applicables42
      • 2.6.4.4. Sorties42
      • 2.6.4.5. Description42
      • 2.6.5. Codage de l'application logicielle43
      • 2.6.5.1. Objectif43
      • 2.6.5.2. Entrées43
      • 2.6.5.3. Procédures et guides applicables43
      • 2.6.5.4. Sorties43
      • 2.6.5.5. Description43
      • 2.6.6. Tests des composants logiciels44
      • 2.6.6.1. Objectif44
      • 2.6.6.2. Entrées44
      • 2.6.6.3. Procédures et guides applicables44
      • 2.6.6.4. Sorties44
      • 2.6.6.5. Description44
      • 2.6.7. Tests d'intégration du logiciel45
      • 2.6.7.1. Objectif45
      • 2.6.7.2. Entrées45
      • 2.6.7.3. Procédures et guides applicables46
      • 2.6.7.4. Sorties46
      • 2.6.7.5. Description46
      • 2.6.8. Tests d'ensemble du logiciel47
      • 2.6.8.1. Objectif47
      • 2.6.8.2. Entrées47
      • 2.6.8.3. Procédures et guides applicables47
      • 2.6.8.4. Sorties47
      • 2.6.8.5. Description47
      • 2.7. Vocabulaire et mode d'expression48
      • 2.8. Plan d'assurance qualité du logiciel : PAQL48
      • 2.9. Conclusion50
      • Chapitre 3. Processus supports51
      • 3.1. Introduction51
      • 3.2. Processus transversaux54
      • 3.3. Processus supports55
      • 3.4. Processus principaux56
      • 3.5. Gestion de projet56
      • 3.6. Conclusion56
      • Chapitre 4. Organisation59
      • 4.1. Introduction59
      • 4.2. Premiers besoins59
      • 4.3. Réalisation d'une application logicielle61
      • 4.3.1. Organisation61
      • 4.3.2. Rôle63
      • 4.4. Conclusion63
      • Chapitre 5. Gestion des ressources humaines65
      • 5.1. Introduction65
      • 5.2. Définition des rôles66
      • 5.3. Gestion des compétences70
      • 5.4. Gestion de la sous-traitance71
      • 5.5. Externalisation72
      • 5.6. Gestion des apprentissages73
      • 5.7. Conclusion73
      • Chapitre 6. Maîtrise des versions75
      • 6.1. Introduction75
      • 6.2. Définition de la version76
      • 6.2.1. Présentation du besoin76
      • 6.2.1.1. Processus76
      • 6.2.1.2. Approche itérative77
      • 6.2.1.3. Approche incrémentale78
      • 6.2.1.4. Mise en place de versions spécifiques80
      • 6.2.2. Mise en oeuvre81
      • 6.3. Gestion du changement82
      • 6.3.1. Présentation du besoin82
      • 6.3.2. Traitement d'une demande de changement83
      • 6.3.2.1. Présentation83
      • 6.3.2.2. Contrôle et classification de la demande85
      • 6.3.2.3. Analyse d'impact85
      • 6.3.2.4. Evaluer la demande de changement86
      • 6.3.2.5. Acceptation de la demande de changement86
      • 6.3.2.6. Suivi de la demande de changement86
      • 6.3.3. Analyse d'impact86
      • 6.3.4. Comité de contrôle des changements88
      • 6.4. Livraison89
      • 6.4.1. Présentation du besoin89
      • 6.4.2. Mise en oeuvre89
      • 6.5. Conclusion91
      • 6.6. Annexe A : demande d'évolution91
      • 6.7. Annexe B : fiche de version du logiciel92
      • Chapitre 7. Gestion de la configuration95
      • 7.1. Introduction95
      • 7.2. Gestion de configuration96
      • 7.2.1. Principes96
      • 7.2.2. Formalisation97
      • 7.3. Gestion de configuration d'une application logicielle97
      • 7.3.1. Introduction97
      • 7.3.2. Configuration d'un composant logiciel99
      • 7.3.3. Ligne de produits99
      • 7.3.4. Composants préexistants100
      • 7.3.5. Logiciel générique et logiciel instancié101
      • 7.4. Mise en oeuvre102
      • 7.5. Conclusion104
      • Chapitre 8. Archivage105
      • 8.1. Introduction105
      • 8.2. Processus d'archivage105
      • 8.2.1. Principe105
      • 8.2.2. Archivage des sources et autres produits liés à l'application logicielle106
      • 8.2.3. Archivage des outils107
      • 8.2.4. Archivage des machines107
      • 8.2.5. Archivage des documents108
      • 8.3. Conclusion109
      • Chapitre 9. Maintenance d'une application logicielle111
      • 9.1. Introduction111
      • 9.2. Principes112
      • 9.3. Réalisations de la nouvelle version113
      • 9.3.1. Processus113
      • 9.3.2. Contrainte liée à la maintenance et au déploiement114
      • 9.3.2.1. Protection de l'exécutable114
      • 9.3.2.2. Statique versus dynamique114
      • 9.3.2.3. Identification de l'exécutable115
      • 9.3.3. Fiche de version de l'application logicielle115
      • 9.4. Conclusion116
      • Chapitre 10. Déploiement d'une application logicielle117
      • 10.1. Introduction117
      • 10.2. Principes117
      • 10.3. Mise en oeuvre118
      • 10.4. En réalité120
      • 10.5. Conclusion121
      • Chapitre 11. Vérification et validation123
      • 11.1. Introduction123
      • 11.2. Concept124
      • 11.2.1. Vérification126
      • 11.2.1.1. Présentation126
      • 11.2.1.2. Activité de vérification127
      • 11.2.2. Validation128
      • 11.3. Techniques, méthodes et pratiques129
      • 11.3.1. Vérification statique129
      • 11.3.1.1. Présentation129
      • 11.3.1.2. Analyse statique manuelle130
      • 11.3.1.3. Analyse statique outillée134
      • 11.3.2. Vérification dynamique154
      • 11.3.2.1. Analyse d'exécution155
      • 11.3.2.2. Test155
      • 11.3.3. Validation159
      • 11.4. Plan de vérification et de validation : PVV159
      • 11.5. Nouvelles problématiques de la VetV159
      • 11.6. Conclusion161
      • Chapitre 12. Gestion des outils163
      • 12.1. Introduction163
      • 12.2. Liste des outils164
      • 12.3. Description des machines164
      • 12.4. Processus de génération165
      • 12.5. Gestion de configuration des outils167
      • 12.6. Qualification des outils167
      • 12.7. Conclusion168
      • Chapitre 13. Qualification des outils169
      • 13.1. Introduction169
      • 13.2. Qualification des outils169
      • 13.2.1. Présentation169
      • 13.2.2. Synthèse des normes170
      • 13.2.2.1. DO 178170
      • 13.2.2.2. IEC 61508172
      • 13.2.2.3. ISO 26262172
      • 13.2.2.4. CENELEC EN 50128173
      • 13.3. Processus de qualification176
      • 13.3.1. Dossier de qualification177
      • 13.3.2. Processus de qualification178
      • 13.3.3. Mise en oeuvre du processus de qualification179
      • 13.3.3.1. Identification179
      • 13.3.3.2. Justification de la classe181
      • 13.3.3.3. Spécification184
      • 13.3.3.4. Preuve de conformité184
      • 13.4. Adéquation du besoin188
      • 13.4.1. Méthode de conception188
      • 13.4.2. En cas d'incompatibilité189
      • 13.4.3. Génération de code189
      • 13.5. Gestion des versions190
      • 13.5.1. Identification des versions190
      • 13.5.2. Analyse des défauts191
      • 13.5.3. Changement de version191
      • 13.6. Processus de qualification192
      • 13.6.1. Dossier de qualification192
      • 13.6.2. Au final192
      • 13.6.3. Qualification des outils non commerciaux192
      • 13.7. Conclusion193
      • Chapitre 14. Paramétrage par les données195
      • 14.1. Introduction195
      • 14.2. Problématique196
      • 14.3. Système paramétré par les données198
      • 14.3.1. Présentation de la problématique198
      • 14.3.2. Caractérisation des données202
      • 14.3.3. Inhibition de service203
      • 14.3.4. Synthèse205
      • 14.4. Du système au logiciel206
      • 14.4.1. Besoin206
      • 14.4.2. Ce que ne dit pas le référentiel CENELEC208
      • 14.5. Processus de préparation des données210
      • 14.5.1. Contexte210
      • 14.5.1.1. Assurance qualité du logiciel210
      • 14.5.1.2. Management de l'assurance sécurité211
      • 14.5.2. Présentation de la section 8 de la norme CENELEC en 50128 : 2011212
      • 14.5.2.1. Cycle de vie212
      • 14.5.2.2. Problème de circularité213
      • 14.6. Processus de préparation des données215
      • 14.6.1. Maîtrise du processus de préparation des données215
      • 14.6.1.1. Planification215
      • 14.6.1.2. Intégration entre les données et le logiciel générique217
      • 14.6.1.3. Processus de production des données218
      • 14.6.1.4. Entrées du processus de préparation des données221
      • 14.6.1.5. Etude de sécurité du processus des données222
      • 14.6.1.6. Synthèse222
      • 14.6.2. Vérification223
      • 14.6.3. Phase de spécification223
      • 14.6.3.1. Description de l'étape223
      • 14.6.3.2. Spécification des exigences de l'application224
      • 14.6.3.3. Tests d'ensemble de la préparation des données226
      • 14.6.3.4. Vérification227
      • 14.6.4. Phase d'architecture227
      • 14.6.4.1. Description de l'architecture et de la conception227
      • 14.6.4.2. Tests d'intégration229
      • 14.6.4.3. Rapport de vérification230
      • 14.6.5. Production des données230
      • 14.6.5.1. Conception des algorithmes230
      • 14.6.5.2. Tests des algorithmes232
      • 14.6.5.3. Vérification des données233
      • 14.6.5.4. Vérification de l'activité234
      • 14.6.5.5. Synthèse234
      • 14.6.6 Intégration de l'application et acceptation des tests236
      • 14.6.6.1. Activités236
      • 14.6.6.2. Vérification de l'activité236
      • 14.6.6.3. Synthèse236
      • 14.6.7. Validation et évaluation de l'application237
      • 14.6.8. Procédure et outils de préparation de l'application237
      • 14.6.8.1. Périmètre237
      • 14.6.8.2. Synthèse238
      • 14.6.9. Développement du logiciel générique238
      • 14.7. Conclusion239
      • Chapitre 15. Audit241
      • 15.1. Introduction241
      • 15.2. Audit241
      • 15.3. Conclusion242
      • Conclusion et perspectives243
      • Glossaire245
      • Bibliographie251
      • Index257
      • Sommaire du volume 1259
      • Introduction11
      • Chapitre 1. Système, équipement et logiciel15
      • 1.1. Introduction15
      • 1.2. Impact sur la sûreté de fonctionnement15
      • 1.3. Système de contrôle et de commande17
      • 1.4. Système22
      • 1.5. Processus de réalisation25
      • 1.6. Sécurité : du système au logiciel27
      • 1.7. Application logicielle30
      • 1.7.1. Qu'est-ce que le logiciel ?30
      • 1.7.2. Générique, spécifique ou dédiée31
      • 1.7.3. Différents types de logiciels31
      • 1.7.4. Différents types d'utilisation32
      • 1.8. Conclusion32
      • 1.9. Glossaire33
      • 1.10. Bibliographie34
      • Chapitre 2. Application logicielle35
      • 2.1. Introduction35
      • 2.2. Application logicielle versus logiciel35
      • 2.3. L'application logicielle dans son contexte38
      • 2.3.1. Cadre général38
      • 2.3.2. Réutilisabilité, maintenabilité et continuité de service39
      • 2.3.3. Architecture modulaire41
      • 2.4. Logiciel générique et logiciel paramétré42
      • 2.5. Module et composant46
      • 2.6. Composant réutilisé et COTS51
      • 2.7. Ligne de produit52
      • 2.8. Conclusion54
      • 2.9. Glossaire54
      • 2.10. Bibliographie55
      • Chapitre 3. Principe de la sûreté de fonctionnement57
      • 3.1. Introduction57
      • 3.2. Sûreté de fonctionnement58
      • 3.2.1. Concepts de base58
      • 3.2.2. Entrave à la sûreté de fonctionnement59
      • 3.2.3. Moyen64
      • 3.2.4. Exemple d'entrave65
      • 3.2.5. Classification des fautes67
      • 3.2.6. Adaptation aux applications logicielles68
      • 3.3. Description des erreurs du logiciel73
      • 3.4. Mise en sécurité d'une application logicielle73
      • 3.4.1. L'évitement des fautes74
      • 3.4.2. L'élimination des fautes75
      • 3.4.3. La tolérance aux fautes75
      • 3.4.4. La prévision des fautes76
      • 3.4.5. Bilan77
      • 3.5. Conclusion77
      • 3.6. Glossaire78
      • 3.7. Bibliographie78
      • Chapitre 4. Maîtrise de la sécurité d'une application logicielle81
      • 4.1. Introduction81
      • 4.2. Approche générale83
      • 4.3. Danger, événement redouté, accident, risque84
      • 4.3.1. Définitions84
      • 4.4. Sécurité du système90
      • 4.4.1. Définition90
      • 4.4.2. Maîtrise de la sécurité93
      • 4.4.3. Intégrité de la sécurité99
      • 4.4.4. Gestion des SIL102
      • 4.4.5. Niveau d'intégrité de la sécurité103
      • 4.4.6. Cycle global de la sécurité107
      • 4.5. Plan d'assurance sécurité113
      • 4.6. Dossier de sécurité113
      • 4.6.1. Structure du dossier de sécurité113
      • 4.6.2. Contraintes exportées114
      • 4.6.3. Produit115
      • 4.7. Fiabilité, disponibilité et maintenabilité116
      • 4.7.1. Besoin116
      • 4.7.2. De la problématique particulière de l'utilisation de composants sur étagère117
      • 4.7.3. Plan de FDM118
      • 4.8. Système critique118
      • 4.9. Conclusion119
      • 4.10. Annexe : plan d'assurance sécurité119
      • 4.11. Glossaire120
      • 4.12. Bibliographie121
      • Chapitre 5. Sécurité d'une application logicielle125
      • 5.1. Introduction125
      • 5.2. Approche générale127
      • 5.2.1. Fiabilité du logiciel127
      • 5.2.2. Disponibilité129
      • 5.2.3. Maintenance130
      • 5.2.4. Sécurité130
      • 5.2.5. Impact du logiciel132
      • 5.3. Niveau de sécurité133
      • 5.4. Activité de démonstration de la sécurité d'une application logicielle134
      • 5.4.1. Analyse de sécurité134
      • 5.4.2. Analyse du code140
      • 5.4.3. Respect des exigences de sécurité142
      • 5.4.4. Analyse des anomalies143
      • 5.5. Conclusion143
      • 5.6. Plan type d'un PASL144
      • 5.7. Glossaire145
      • 5.8. Bibliographie146
      • Chapitre 6. Technique de sécurisation d'une application logicielle149
      • 6.1. Introduction149
      • 6.2. Techniques de sécurisation d'une application logicielle150
      • 6.2.1. Introduction150
      • 6.2.2. La gestion des erreurs150
      • 6.2.3. Le recouvrement d'erreurs153
      • 6.2.4. La programmation défensive159
      • 6.2.5. La double exécution de l'application logicielle167
      • 6.2.6. La redondance des données175
      • 6.3. D'autres diversités178
      • 6.3.1. La diversité temporelle179
      • 6.3.2. La diversité d'allocation en mémoire179
      • 6.4. Conclusion179
      • 6.5. Glossaire180
      • 6.6. Bibliographie181
      • Chapitre 7. Evaluation et certification183
      • 7.1. Introduction183
      • 7.2. Produit184
      • 7.3. Evaluation184
      • 7.4. Certification188
      • 7.4.1. Certification de produit188
      • 7.4.2. Evaluation et certification de logiciel190
      • 7.4.3. Cross-acceptance192
      • 7.4.4. Maîtrise des évolutions192
      • 7.4.5. Essais193
      • 7.5. Conclusion195
      • 7.6. Glossaire195
      • 7.7. Bibliographie196
      • Chapitre 8. Plusieurs domaines et différents référentiels normatifs199
      • 8.1. Introduction199
      • 8.2. Présentation des standards par domaine199
      • 8.2.1. Système E/E/EP199
      • 8.2.2. Domaine ferroviaire204
      • 8.2.4. Aéronautique212
      • 8.2.4. Spatial215
      • 8.2.5. Nucléaire216
      • 8.2.6. Automobile216
      • 8.3. Quelques contraintes220
      • 8.4. Niveau de sécurité220
      • 8.5. Conclusion221
      • 8.6. Glossaire221
      • 8.7. Bibliographie222
      • Chapitre 9. Maîtrise de la qualité227
      • 9.1. Introduction227
      • 9.2. Amélioration continue228
      • 9.3. Management, mais aussi contrôle de la qualité229
      • 9.4. Maîtrise de la qualité229
      • 9.4.1. Introduction229
      • 9.4.2. ISO 9000230
      • 9.4.3. ISO 9001230
      • 9.4.4. Autres233
      • 9.4.5. Manuel d'assurance qualité, MAQ237
      • 9.4.6. Qualité projet238
      • 9.5. Qu'est-ce que la qualité d'une application logicielle ?239
      • 9.6. Réalisation d'une application logicielle240
      • 9.7. Qualité logiciel241
      • 9.7.1. Caractéristiques d'une application logicielle241
      • 9.7.2. Objectif qualité242
      • 9.8. Mesure de la complexité d'une application logicielle246
      • 9.9. Cycle de réalisation246
      • 9.9.1. Introduction246
      • 9.9.2. Différents cycles de vie247
      • 9.9.3. Cycle en V249
      • 9.9.4. Vérification et validation251
      • 9.10. Vocabulaire et mode d'expression252
      • 9.11. Organisation252
      • 9.11.1. Introduction252
      • 9.11.2. Organisation type253
      • 9.11.3. Gestion des compétences255
      • 9.12. Maîtrise de la gestion de la configuration258
      • 9.13. Management de l'assurance sécurité259
      • 9.14. Plan d'assurance qualité du logiciel (PAQL)261
      • 9.15. Gestion des anomalies263
      • 9.16. Maintenance d'une application logicielle266
      • 9.17. Conclusion266
      • 9.18. Annexe : structure d'un plan d'assurance qualité logiciel267
      • 9.19. Glossaire268
      • 9.20. Bibliographie269
      • Chapitre 10. Management des exigences271
      • 10.1. Introduction271
      • 10.2. Phase d'acquisition des exigences272
      • 10.2.1. Introduction272
      • 10.2.2. Elucidation des exigences273
      • 10.2.3. Processus d'analyse et de documentation280
      • 10.2.4. Vérification et validation des exigences287
      • 10.3. Spécification des exigences290
      • 10.3.1. Caractérisation des exigences290
      • 10.3.2. Caractérisation de la spécification des exigences295
      • 10.3.3. Expression des exigences295
      • 10.3.4. Validation des exigences300
      • 10.4. Réalisation des exigences300
      • 10.4.1. Processus300
      • 10.4.2. Vérification301
      • 10.4.3. Traçabilité302
      • 10.4.4. Gestion des changements306
      • 10.5. Gestion des exigences309
      • 10.5.1. Activités309
      • 10.5.2. Deux approches310
      • 10.5.3. Mise en place d'outils311
      • 10.6. Conclusion313
      • 10.7. Glossaire313
      • 10.8. Bibliographie314
      • Conclusion317
      • Index319

  • Origine de la notice:
    • Electre
  • Disponible - 681.40 BOU 2

    Niveau 3 - Informatique