Concept: Traçabilité
La traçabilité est la capacité de rattacher un élément de projet à d'autres éléments de projet liés, particulièrement ceux se rapportant aux exigences.
Relations
Description principale

Introduction

La traçabilité est la capacité de rattacher un élément de projet à d'autres éléments de projet liés, particulièrement ceux se rapportant aux exigences. Les éléments de projet concernés par la traçabilité sont appelésélément de traçabilités.  Les éléments de traçabilité typiques comprennent différents types d'exigences, éléments de modèle de conception et d'analyse, produits de test, ainsi que la documentation d'aide à l'utilisateur final et les supports de formation, comme indiqué dans la figure ci-dessous.

Spécification des exigences logicielles Eléments de traçabilité Séries de tests Modèle de conception Spécifications supplémentaires Modèle de cas d'utilisation Vision Demandes des parties prenantes Diagramme décrit dans le texte d'accompagnement.

Hiérarchie de traçabilité.

Chaque élément de traçabilité possède son propre ensemble d'attributs associés (Voir : Attributs d'exigences), ce qui s'avère utile pour le suivi du statut, des avantages, des risques, etc. associés à chaque élément.

Objet de la traçabilité

La traçabilité a pour objet de :

  • Comprendre la source des exigences
  • Gérer la portée du projet
  • Gérer les changements dans les exigences
  • Evaluer l'impact d'un changement d'exigence sur votre projet
  • Evaluer l'impact de l'échec d'un test sur les exigences (si un test échoue, les exigences peuvent ne pas être remplies)
  • Vérifier que toutes les exigences du système sont remplies avant l'implémentation.
  • Vérifier que l'application remplit uniquement les fonctions souhaitées.

La traçabilité vous aide à comprendre et à gérer la façon dont les entrées des exigences, comme les règles métier et les demandes des parties prenantes, sont traduites en un ensemble de besoins utilisateur/partie prenante et de caractéristiques système, comme indiqué dans le document Vision. De son côté, le modèle de cas d'utilisation décrit la manière dont ces caractéristiques sont traduites en fonctionnalités du système. La manière dont le système interagit avec le monde extérieur est indiquée dans les cas d'utilisation, avec d'autres exigences importantes telles que les exigences non fonctionnelles et les contraintes de conception dans les Spécifications supplémentaires. La traçabilité vous permet de suivre la manière dont ces spécifications détaillées sont traduites en termes de conception, comment celle-ci est testée et comment elle est documentée pour l'utilisateur. Pour un système de grande envergure, les cas d'utilisation et les spécifications supplémentaires peuvent être regroupés pour définir une spécification des exigences logicielles(SRS) pour une "fonctionnalité" particulière ou un autre groupement de sous-systèmes.

Un concept clé pour la gestion des changements dans les exigences est celui de lien de traçabilité "suspect". Lorsqu'une exigence (ou autre élément de traçabilité) change, à l'une des extrémités d'un lien de traçabilité, tous les liens associés à cette exigence seront marqués comme "suspects". Ceci indique au responsable qu'il doit revoir le changement et déterminer si les éléments associés doivent également changer. Ce concept aide également à analyser l'impact des changements potentiels.

Par exemple, la traçabilité peut être établie pour aider à répondre à la série de demandes suivante :

  • Montrez-moi les besoins utilisateur qui ne sont pas liés à des fonctionnalités du produit.
  • Montrez-moi le statut des tests de tous les cas d'utilisation dans l'itération n°n.
  • Montrez-moi toutes les exigences supplémentaires liées à des tests dont le statut est "non testé".
  • Montrez-moi les résultats de tous les tests échoués, par ordre de gravité.
  • Montrez-moi les fonctionnalités prévues pour cette édition, à quels besoins des utilisateurs elles répondent, et leur état.

Exemple :

Pour un système de machine de recyclage, le document Vision spécifie la fonctionnalité suivante :

  • FEAT10 : La machine de recyclage doit permettre l'ajout de nouveaux types de bouteilles.

Cette fonctionnalité est rattachée à un cas d'utilisation "Ajouter nouveau type de bouteille" :

  • Le cas d'utilisation Ajouter nouveau type de bouteille permet à l'opérateur d'apprendre à la machine de recyclage à reconnaître de nouveaux types de bouteilles.

Cette traçabilité nous aide à vérifier que toutes les fonctionnalités ont été prises en compte dans des cas d'utilisation et des spécifications supplémentaires.

Traçabilité typique

Les éléments de traçabilité les plus importants sont :

Les besoins des utilisateurs/parties prenantes (à partir de la Vision, peuvent être rattachés à des demandes de parties prenantes individuelles).
La fonctionnalité du produit (à partir de Vision). 
Les exigences supplémentaires (à partir des Spécifications supplémentaires.) 
Les cas d'utilisation.
La section Cas d'utilisation (sections d'un cas d'utilisation détaillé).
L'élément de conception (à partir du Modèle de conception).
Les suites de tests (ou potentiellement Cas de test).

D'autres éléments, comme les règles métier et les problèmes, peuvent également être inclus dans la traçabilité.

Une traçabilité type est présentée dans le diagramme suivant :

Diagramme décrit dans le texte d'accompagnement.

Ce diagramme ne montre que la traçabilité par rapport aux exigences.  Une autre traçabilité peut également exister, mais elle n'est pas présentée dans le diagramme : les éléments de conception sont rattachés aux éléments d'implémentation, des cas de test sont prévus pour la conception et l'implémentation, etc.