Contribution à l’évolution des exigences et son impact sur la sécurité

Contribution à l’évolution des exigences et son impact sur la sécurité

Les objectifs de l’ingénierie des exigences 

Ci-dessous, nous allons présenter les objectifs des processus de l’ingénierie d’exigences: • L’identification des parties prenantes, • L’éliçitation des exigences, • L’analyse des exigences • La formalisation des exigences, • La vérification/ validation des exigences, • La modification des exigences. 

 L’identification des parties prenantes 

Selon [GIB-04], on remarque qu’il faut identifier les parties prenantes du système avant de le développer, C’est à dire autrement la connaissance des personnes liées au développement du système. Alors, lorsqu’on commence à exécuter le processus d’identification des parties prenantes, on répond explicitement à la question suivante: Qui fait Quoi ? Plusieurs définitions existent dans la littérature pour expliquer la signification des parties prenantes, mais pour faciliter la compréhension on peut dire que : les parties prenantes signifient l’ensemble des personnes ou des groupes qui sont mises en relation avec un produit au cours de son cycle de vie. Parmi les parties prenantes on peut rencontrer: le développeur, le vérificateur, le concepteur, les clients, le fournisseur, etc.

 L’élicitation des exigences

 Après l’identification de toutes les parties prenantes, il faut exécuter le deuxième processus de l’ingénierie d’exigences qui est le processus d’élicitation d’exigences4 [SAH-02a]. La majeure partie de l’effort dans le cycle du développement des systèmes n’entre pas dans le processus d’écriture d’exigences (vue la diversité des technologies existantes), mais dans le 4 Eliciter : expliquer, capturer, rendre explicite, et permettre la compréhension de l’information. OBJECTIF DE L’IE Modifier les exigences Identification des parties prenantes Élicitation des exigences Analyse des exigences Modification des exigences Vérification t et validation d exigences Impact du modification formalisation des exigences des / Chapitre I- Introduction de la Problématique -18- processus de découverte, en essayant de répondre à la question “qu’est ce que doit faire le système?” et non pas “comment faut-il le faire ?”. Ce processus de découverte et d’élicitation des exigences est souvent vu par beaucoup de chefs de projets comme trop laborieux, trop long, ou trop difficile à entreprendre. Il est quelque fois négligé comme si les exigences sont déjà présentes, et qu’il suffit de les exprimer. Mais, si les exigences sont intangibles, contradictoires, ou imprécises, il devient très difficile d’estimer le temps qu’il faut dépenser durant la conception et l’implémentation. Actuellement, plusieurs approches existent pour faciliter l’exécution de ce processus. Les travaux de C.Coulin [COU-05a] [COU-5b], ont porté sur cet aspect de manière spécifique et le développement d’un outil correspondant, MUSTER [COU-05c]. Mais ce n’est pas un processus automatique, et les exigences ne seront présentées qu’avec le langage naturel. La plupart des chercheurs pensent que ce processus doit obligatoirement contenir deux types de méthodes : Brainstorming (séance de réflexion) et Interview. 

A) Brainstorming

La première méthode d’élicitation des exigences, est la séance de réflexion ou brainstorming. En effet, cette méthode est une manière efficace d’inventer, car c’est un moyen pour obtenir des idées intéressantes, et claires. Pour que la session soit efficace, la plupart des chercheurs dans le domaine de l’ingénierie des exigences indiquent qu’il faut d’abord préciser l’objectif de la session [ROB-04], puis regarder des exemples des produits semblables. Durant la session il faut numéroter les idées pour que les participants puissent se référer à elles facilement, les expliciter, chaque idée de n’importe quel participant peut être intéressante, mais il faut toujours que les idées servent l’objectif final de la session. Dans [ROB-04] ils ont précisé l’importance d’utilisation des tableaux, des papiers, la numérotation de toutes les idées. Et, ils ont suggéré que dans ce type de session, parfois l’écriture des idées sur des tableaux sera beaucoup plus efficace que l’utilisation des écrans d’ordinateurs, car il est plus intéressant que chaque participant puisse regarder toutes les idées produites. 

B) Interview

La deuxième méthode d’élicitation des exigences est les interviews. Cette méthode est très répandue dans le milieu industriel, car l’application de cette méthode n’exige pas beaucoup de temps comme la séance de réflexion présentée ci-dessus, vu que la plupart des personnes qui Chapitre I- Introduction de la Problématique -19- utilisent cette méthode sont des spécialistes d’analyse commerciale ou des ingénieurs des exigences qui sont déjà familiers avec ce type de méthode. 

 L’analyse des exigences

 Après l’exécution du processus d’élicitation. Il faut lancer le processus d’analyse d’exigences en étudiant l’ensemble des exigences soumis par les parties prenantes pour les analyser, les compléter, les arranger, les tracer, et pour éliminer l’ambiguïté et la redondance entre les exigences [MAC-01]. Tous cela pour obtenir à la fin un document cohérent, qui sera présenté en langage naturel (contenant parfois des diagrammes d’UML5 ). En fait, ce document définit les exigences que devra respecter le système qu’il faut réaliser selon le point de vue du maître d’ouvrage6 , mais après une validation par le maître d’œuvre7 . La spécification présentée dans ce document définit complètement le problème auquel les activités de conception devront apporter une solution, son importance est capitale car elle engage directement la quasi-totalité du coût du système. C’est souvent à ce niveau, que le projet joue un rôle en termes de rentabilité pour le maître d’œuvre, et en termes de satisfaction pour le maître d’ouvrage. Les échecs au niveau du projet sont le plus souvent dus à une spécification non figée conduisant à des nombreuses remises en cause. Les échecs au niveau de la mise en œuvre sont presque toujours dus à une spécification inadéquate, et à une mauvaise exécution de ce processus. Enfin, ce processus est le processus le plus critique pour tout au long du cycle du développement du système. Ce n’est pas du point de vue sécurité qu’il est critique, mais c’est à ce niveau qu’il faut détecter la majorité des erreurs de développement. En fait, après ce processus, les développeurs s’engagent pour lancer effectivement le développement du système. Alors, on peut en conclure que, plus la qualité de ce processus sera prise en considération plus la qualité du produit sera améliorée. 

Table des matières

INTRODUCTION GENERALE
CHAPITRE I : INTRODUCTION GENERALE
1. INTRODUCTION
2. EVOLUTION DU SYSTEME
3. VOLATILITE DES EXIGENCES
3.1. L’effet de la volatilité des exigences
3.2. Etude statistique sur la volatilité
3.3. Volatilité et densité de défaut
4. LE COUT D’UNE CORRECTION
5. INGENIERIE SYSTEMES
5.1. Etude à travers l’EIA-632
5.2. Processus de l’EIA-632
5.2.1. Processus d’acquisition et de fourniture
5.2.2. Processus du management
5.2.3. Processus de conception
5.2.4. Processus de réalisation
5.2.5. Processus technique d’évaluation
6. INGENIERIE DES EXIGENCES
6.1. Les objectifs de l’ingénierie des exigences
6.1.1. L’identification des parties prenantes
6.1.2. L’élicitation des exigences
6.1.3. L’analyse des exigences
-viii6.1.4. La formalisation des exigences
6.1.5. La vérification/ validation des exigences
6.1.6. La modification des exigences
6.2. Description du SRS
6.2.1. Buts testables
6.2.2. Exigences testables
6.3. Caractéristiques des exigences
6.3.1. Différents types d’exigences
6.3.2. Liens entre les exigences
7. IMPACT DU CHANGEMENT
8. CONCLUSION
CHAPITRE II : ETAT DE L’ART ET PROBLEMATIQUE
1. INTRODUCTION
2. APPROCHES DE LA RECHERCHE D’IMPACT
2.1. Processus d’Analyse
2.2. Analyse basée sur un modèle de traçabilité
2.3. Spécification intentionnelle
3. LA STRUCTURE SELON L’EIA-632
3.1. Développement descendant.
3.2. Réalisation ascendante 35
4. DEVELOPEMENT SELON L’EIA-632
5. METHODES D’ANALYSES
5.1. Analyse préliminaire du risque
5.2. AMDEC
5.3. Analyse du risque opérationnel
6. GESTION DE LA SECURITE
-ix6.1. Processus d’analyses et leurs occurrences
6.2. La norme du DOD
6.3. La norme de l’IEC
7. LA TRACABILITE
7.1. Liens de traçabilité
7.2. Pré/Post traçabilité
8. SPECIFICATION FORMELLE
8.1. Les attributs d’une Spécification formelle
8.2. Méthodes de vérification
8.2.1. Preuve automatique
8.2.2. Model-Checking
8.3. Spécification Semi Formelle/Formelle
8.3.1. UML/PVS
8.4. Spécification formelle avec RAISE
8.4.1. La méthode RAISE
8.4.2. Langage de spécification RAISE : RSL
8.4.3. D’UML vers RSL
8.4.4. De RSL vers SAL
9. CONCLUSION
CHAPITRE III : METHODOLOGIE
1. INTRODUCTION
2. RELATIONS ET TRACES
2.1. Relations durant le développement
2.2. Les traces dans un module
3. SYSTEME DE SECURITE
3.1. Exigences Sécuritaires
-x3.1.1. Sécurité fonctionnelle
3.1.2. Sécurité non fonctionnelle
4. DEMARCHE
4.1. Les catégories de la demande de changement
4.2. Règles à suivre
4.3. L’Approche Générale
4.3.1. Gestion de la modification
4.3.2. Analyse d’impact sur la sécurité
5. CYCLE DE VIE D’UNE MODIFICATION
5.1. Phase d’initialisation
5.1.1. Processus d’identification
5.1.2. Processus de Soumission
5.2. Phases d’évaluation
5.2.1. Processus de Traçabilité
5.2.2. Processus d’évaluation d’impact
5.2.3. Processus de Classification
5.2.4. Processus d’approbation de la demande
5.3. Phase de réalisation
5.3.1. Application de la modification
5.3.2. Nouveaux liens de traçabilité
5.4. Phase de validation
5.4.1. Processus de test
5.4.2. Validation de la modification
6. SYSTEME D’INFORMATION
7. CONCLUSION
CHAPITRE IV : SPECIFICATION ET OUTILLAGE
1. INTRODUCTION
2. ARCHITECTURE DE L’OUTIL
2.1. Diagramme de cas d’utilisation
2.2. Diagramme de classes
3. UML VERS RSL
3.1. Les types
3.2. Système
3.3. Projet
3.4. Produit Capacitants
3.5. Les fichiers
3.6. Exigences Techniques
3.7. Enabling Technology
3.8. Demande de changement.
3.8.1. Différents types de demande
3.8.2. Fonction d’initialisation
3.8.3. Fonction d’évaluation
4. SPECIFICATION DE LA SECURITE
4.1. Lien avec la sécurité
4.2. Analyse d’impact
5. IMPLEMENTATION DE L’OUTIL
5.1. Développement avec JAVA
5.1.1. L’aspect orienté objet
5.1.2. Indépendance vis-à-vis de la plateforme
5.1.3. Le Swing
5.2. L’environnement Eclipse
-xii6. ETUDE DE CAS
6.1. Présentation
6.2. Feux de croisement (S1)
6.2.1. La décomposition selon l’EIA-632
6.2.2. Le système de sécurité
6.3. Feux de croisement après évolution (S2)
6.3.1. Le cycle de vie de la demande
6.4. Outillage
7. CONCLUSION
CONCLUSION GENERALE
BIBLIOGRAPHIES
ANNEXE
ANNEXE A
1. ELICITATION DE L’OUTIL
1.1. Les buts primaires
1.2. Les cas d’utilisation
ANNEXE B
1. L’ALGORITHME DE CHANGEMENT
ANNEXE C
1. BUT
2. MODULE
3. STAKEHOLDER
4. PRODUIT FINAL
ANNEXE D
1. PRINCIPES DE SECURITE

projet fin d'etudeTélécharger le document complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *