-- Séance 12 -- Traçabilité des exigences et gestion du changement o Objectifs: Comprendre l importance des documents de vision et delta-vision. Comprendre la notion de la traçabilité des exigences. Savoir les facteurs critiques qui influencent la traçabilité. Comprendre ce qu est la gestion des changements. Identifier et discuter les facteurs de succès des changements. 1
La vision n est pas forcement la même 2
La vision n est pas forcement la même (Sommerville) o Conséquences: Le problème peut être mal défini. Par conséquent, plus d effort pour l elicitation. La solution peut ne pas être appropriée. 3
Document de vision o Décrit globalement le système à développer incluant: Le marché cible, Les utilisateurs, Les fonctionnalités de l application. o Définit, à un haut niveau d abstraction, le problème et la solution. o Permet de s assurer que toute personne qui intervient dans le projet travail pour atteindre les mêmes objectifs. o Sert de référence pour trouver le consensus lors des débats. o Le document delta-vision se concentre sur les éléments qui ont changé. 4
Delta-vision o Le document de vision doit rester aussi court et concis que possible, o Lorsque la vision évolue, il n est pas intéressant de reprendre le contenu de la version de base. D où le delta-vision. o Doit contenir au moins les éléments suivants: Les informations d introduction générale, La description des utilisateurs et du marché, Les fonctionnalités de la version 1.0 qui ont changées, Autres exigences de réglementation ou d environnement, Les fonctionnalités qui viennent d être élicitées. 5
Gestion des exigences: traçabilité o Gestion du changement pour maintenir l accord sur les exigences. o Gestion des relations entre les exigences. o Gestion des dépendances entre le document des exigences et d'autres documents produits durant l avancement du processus de développement. o Gestion des changements des exigences qui peut être dûs aux erreurs et aux malentendus dans le processus d élicitation, de conception ou d implémentation. o Gestion des nouvelles exigences qui peuvent émerger pendant que le client développe une vision plus profonde. Pour gérer les exigences, nous devons maintenir la traçabilité!!! 6
Gestion des exigences o Une exigence est traçable si on peut découvrir : Qui a suggéré l exigence? Pourquoi elle existe? Quelles sont les autres exigences qui dépendent d elle? Comment cette exigence est-elle liée aux autres informations (conception, implémentation, documentation, etc.)? o La traçabilité aide à découvrir quel est l impact du changement d une exigence sur le reste des informations. 7
Définition de la traçabilité o Lacapacitédedécrireetdesuivrelavied'uneexigence,danslesdeux directions amont et avale d un projet, c.-à-d., de ses origines en passant par son développement et sa spécification, à son déploiement et son utilisation dans les phases suivantes tout en considérant les périodes d'amélioration et d'itération émanant d autres phases (conception, construction, test ). [Gotel et Finkelstein, 1994] o An SRS is traceable if the origin of each of its requirements is clear and if it facilitates the referencing of each requirement in future development or enhancement documentation. [IEEE Standard 830-1998] 8
Pourquoi la traçabilité o Pour faciliter/maîtriser l évolution du système dans le futur o Pour vérifier/valider la solution proposée o Pour justifier sa propre solution o Pour s assurer de la cohérence des développements confiés à différents concepteurs/réalisateurs o Pour faciliter la prise en compte des évolutions des exigences o Pour anticiper les risques de non-atteinte des exigences 9
Constat o Il est normal que les exigences exprimées en amont d un projet ne soient ni stables ni complètes. o Instables parce qu elles reposent elles-mêmes sur des hypothèses d utilisation et d environnement et sur des choix stratégiques définis à un temps donné. Tracer les exigences requiert également de tracer les hypothèses et les décisions sur lesquelles elles reposent. o Incomplètes parce que le système que l on développe n est jamais complètement autonome. Tracer les exigences requiert également la possibilité de les compléter. o Établir des «retours» maîtrisés sur l expression initiale des besoins. 10
Exemple 11
Facteurs critiques qui influencent la traçabilité Traçabilité De quoi? (Information) ET Avec quelle méthode? (Accès et présentation de l information) Dépend de Qui la demande (Utilisateur) Pourquoi et quand il la veut (Tâche) Caractéristique du projet 12
Traçabilité vue de façon hiérarchique o [Figure 27-3, p. 323] 13
Relation entre exigences et code o Les deux sous-processus sont complets de leurs points de vue, mais nécessitent le maintien d une relation bidirectionnelle Exigences Code 14
Matrice de Traçabilité UC 1 UC 2 UC 3 Fonctionnalité 1 X Fonctionnalité 2 Fonctionnalité 3 X X X Fonctionnalité n X o Exemple : Lier les fonctionnalités aux cas d utilisations 15
Comment maintenir la traçabilité? o Utilisation des matrices, o Utilisation de simples liens hyperliens, o Utilisation d une base de données relationnelle, o Utilisation d un outil spécialisé : Exp: RequisitePro; Linksets/Link/attributs dans Doors; Poirot: TracMaker; SLATE; Marconi RTM; Teamwork/RQT, RDD-100; RTS; Rtrace; 16
Bénéfices de la traçabilité o Valider que les fonctionnalités du système répondent aux exigences, o Vérifier qu aucune fonctionnalité superflue n a été implémentée, o Analyser l impacte suite à un changement d une exigence du client, o Améliorer la communication entre les membres de l équipe du projet, o S assurer que la contribution de chaque membre a bien passé, o Améliorer la gestion du changement. 17
Outils commerciaux: RequisitePro o Personnalisation Type de document Type d exigence Attributs des exigences 18
RequisitePro Visualisation de l information pour la traçabilité 19
RequisitePro On peut voir les liens de traçabilité en utilisant des vues. 20
Modèle de traçabilité Modèle des exigences Traçabilité des exigences Modèle d architecture Modèle d implément ation La traçabilité permet une Meilleure gestion du projet (contrôle, impact, etc.) 21
Gestion des changements -- Définition La gestion des changements concerne les mesures à prendre pour limiter les effets nocifs des changements sur l échéance globale ou le budget total du projet dans le but de maximiser les effets positifs sur la valeur de l extrant. 22
Constat o Les exigences changent même si on les définit soigneusement. o Un certain changement des exigences est souhaitable : Signifie que votre équipe engage bien les parties prenantes. L équipe est assez flexible pour s adapter aux changements des besoins. o Changer n'est pas le vrai problème, c est la gestion du changement qui est problématique. 23
Pourquoi les exigences changent-elles? o Facteurs externes qui sont hors de notre contrôle : Changement des paramètres du problème du à des raisons: Économiques. Changement de lois. Évolution des marchés. Changement des préférences du consommateur. Changement du contexte technologique. L utilisateur change de perception. Changement de l environnement externe avec l ajout de nouvelles contraintes. o Facteurs internes : La bonne question n est pas posée à la bonne personne au bon moment. L interaction avec la phase de conception peut nécessiter un accommodement. 24
Sous processus de la gestion des changements o La gestion du changement des exigences inclut (mais n'est pas limitée) les activités suivantes : Maintient de l'historique de chaque exigence. Établissement des rapports de traçabilité entre les exigences liées. Commande de gestion de version. 25
Réaction au changement de façon générale Adhésion au changement / Performance Avec la gestion de changement Réaction naturelle Temps Source: LeClair, 2004 26
Étapes de l adoption du changement Engagement Adoption Institutionnalisation Compréhension Sensibilisation Utilisation Éducation Renforcement Accompagnement Contact Communication Temps 27
Gestion du changement Facteurs de succès o Vision claire et partagée o Engagement de tous les intervenants o Stratégie adaptée et intégrée o Partage de la responsabilité o Connaissance des enjeux de chaque acteur (partie prenante) o Analyse de l impact o Mobilisation des détenteurs d intérêt o Planification de la transition o Mesure de performance o Ajustement continu o Utilisation d outils spécialisés 28
Étapes d une démarche de gestion des changements o 1 : Reconnaître que le changement est inévitable, il faut le planifier. o 2 : Gérer les versions des exigences (Baseline). o 3 : Contrôler les changements. o 4 : Utiliser un système de contrôle de la gestion des changements. o 5 : Gérer les changements de façon hiérarchique. 29
La traçabilité -- Questionnement o La Traçabilité fait-elle référence à la trace entre : les besoins et la solution, ou la trace des choix, ou à la logique de déclinaison des exigences selon l arborescence technique, ou à une logique de validation, ou preuve de la pertinence de la solution? o Tracer les exigences requiert fondamentalement une approche systématique et systémiqueremplaçant chaque choix dans son environnement: technique, organisationnel et temporel. 30
Traçabilité suite o La traçabilité contribue expressément à la qualité des applications en permettant de répondre aux questions suivantes : De quelle manière est réalisée mon exigence? Qu'est-ce qui justifie cette décision d architecture? Est-ce que toutes mes exigences sont satisfaites? Peut-on prouver que cette partie de l application a bien été testée? 31