4

Click here to load reader

Diagramme des exigences - jltimin.free.frjltimin.free.fr/STI2D/doc/ET_SysMl_1/1_Diagramme_des_exigences... · On les trouve à côté de plusieurs types d’éléments graphiques

  • Upload
    letruc

  • View
    212

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Diagramme des exigences - jltimin.free.frjltimin.free.fr/STI2D/doc/ET_SysMl_1/1_Diagramme_des_exigences... · On les trouve à côté de plusieurs types d’éléments graphiques

Diagramme des exigences, jltimin 1

(source: pairformance)

Diagramme des exigences

I. Rôle et objectif

C'est un outil qui permet d'exposer les différentes contraintes que doit respecter le système. Il est une traduction du cahier des charges sous forme d’une décomposition en exigences. L’objectif de ce diagramme:

Recenser toutes les exigences auxquelles le système doit se plier.

Morceler toutes les exigences afin d’en avoir une vue plus précise, et surtout plus logique et moins éparpillée, à travers différents documents.

Améliorer la communication entre différents services (par exemple marketing et technique) afin de s’écarter le plus possible du langage naturel, source d’ambiguïté.

II. Structure du diagramme des exigences

Exemple de diagramme d’exigences de la Balance HALO:

Commentaires sur le diagramme

Normalement ce diagramme comprend de nombreuses exigences (techniques, marketing, financières, etc...). Dans un premier temps, afin de mieux les organiser, on peut les disposer comme proposé ci-dessous dans une vue arborescente.

Page 2: Diagramme des exigences - jltimin.free.frjltimin.free.fr/STI2D/doc/ET_SysMl_1/1_Diagramme_des_exigences... · On les trouve à côté de plusieurs types d’éléments graphiques

Diagramme des exigences, jltimin 2

(source: pairformance)

Méthodologie

Pour commencer à écrire les diagrammes, vous pouvez utiliser la méthode suivante :

Vous écrivez l’exigence principale, type « écriture sur une nappe de comptoir »

permettant de poser dans un langage très libre ce qu’on veut faire.

Vous placez (autour) par la suite des groupes d’exigences qu’on risque de retrouver

surement à chaque fois, c’est-à-dire :

o Exigences marketing

o Exigences fonctionnelles

o Exigences

environnementales

o Exigences techniques

o Exigences économiques

Vous poser par la suite les premières exigences générales pour chacune de ces

catégories puis vous continuez en précisant par d’autres exigences secondaitres si

nécessaires.

III. Traduction littérale du diagramme des exigences

A. L'exigence

Une exigence peut-être assimilée à un post-it que l’on pose sur une feuille,

elle se représente donc simplement par un rectangle :

On trouve plusieurs informations:

Le type d'exigence (<<requirement>> ).

L'identifiant (Id) représentant l'ordre affecté à cette exigence. Le texte, qui décrit l’exigence, doit être concis. On doit y retrouver tous les éléments du cahier des

charges.

B. Les liens entre les blocs d'exigence

Ces liaisons sont de 3 types et permettent de poser un lien logique entre 2 exigences.

Le lien de contenance : il indique que l’exigence du côté du rond contient l’exigence à

l’autre extrémité. Il se représente par :

Le lien de précision (<<refine>>) : l’exigence pointée par la flèche est précisée par celle à

l’autre extrémité. Ce lien se représente par :

Page 3: Diagramme des exigences - jltimin.free.frjltimin.free.fr/STI2D/doc/ET_SysMl_1/1_Diagramme_des_exigences... · On les trouve à côté de plusieurs types d’éléments graphiques

Diagramme des exigences, jltimin 2

(source: pairformance)

Le lien de dérivation (<<derive>>) : indique que l’exigence pointée par la flèche induit

l’exigence en queue de flèche. Il se représente par :

Autres liens possibles entre les exigences : http://forge.modelio.org

La liste suivante représente les "stéréotypes" décrivant les liens disponibles dans les diagrammes exigences SysML :

Allocate: Creates an Allocate dependency / Crée une dépendance d’attribution : ‘alloué à’

Part: Creates a Part dependency / Crée un lien 'partition'.

Derive: Creates a Derive link / Crée un lien de contenance.

Copy: Creates a Copy dependency / Crée un lien de ‘copie’

Satisfy: Creates a Satisfy dependency / Crée un lien de satisfaction

Verify: Creates a Verify dependency / Crée un lien de vérification

Refine: Creates a Refine dependency / Crée un lien de précision

Trace: Creates a Traceability link / Crée un lien de tracabilité

IV. Lien entre les exigences

1. Exigences marketing

DesignRequirement

2. Exigences fonctionnelles

FonctionalRequirement

3. Exigences environnementales

'Rationale' (rappel des normes...)

4. Exigences techniques

UsabilityRequirement PerformanceRequirement PhysicalRequirement

5. Exigences économiques

BusinessRequirement

V. Tracabilité

Le diagramme des exigences ne sert pas

seulement à placer des contraintes dans le

modèle. Il permet aussi de ramener des éléments

venant d’autres diagrammes du modèle et ainsi de

vérifier qu’une exigence a bien été prise en compte

de quelque manière que ce soit, que ce soit:

par un cas d’utilisation (donc

prise en compte d’une exigence par

une fonctionnalité),

Page 4: Diagramme des exigences - jltimin.free.frjltimin.free.fr/STI2D/doc/ET_SysMl_1/1_Diagramme_des_exigences... · On les trouve à côté de plusieurs types d’éléments graphiques

Diagramme des exigences, jltimin 2

(source: pairformance)

par un bloc (prise en compte par un élément

structurel),

ou autre (prise en compte par un élément

comportemental par exemple).

Ainsi une exigence ne peut pas rester seule, ce

qui indiquerait qu’il manque quelque chose dans

une vue du modèle.

Au final, elles doivent toutes être satisfaites.

Sur le diagramme de la balance (incomplet dans ce document), on peut voir qu’il y a 1 block

Plateau en lien avec une exigence. Cela indique que l’exigence a été satisfaite par un élément

matériel (ici un bloc).

Il existe ainsi d’autres types de liens propres aux éléments venant des autres diagrammes (qui ne

sont pas toujours des blocs) et connectés aux exigences. En fonction de la nature de cet élément,

le stéréotype du lien change.

Les stéréotypes

Les stéréotypes sont tous les mots encadrés par des doubles chevrons comme ceci : <<block>>.

On les trouve à côté de plusieurs types d’éléments graphiques SysML. L’objectif étant d’être facile

à lire (en plus d’avoir une syntaxe précise), il est hors de question d’inventer des symboles pour

chacun d’eux. On va donc retrouver plusieurs fois le même symbole mais avec un stéréotype

différent, ce qui permet de les différencier. On trouvera par exemple des flèches identiques mais

accompagnées d’un stéréotype :

Derive : une ou plusieurs exigences dérivent d’une exigence

Satisfy : un ou plusieurs éléments du modèle permettent de satisfaire une exigence

Verify : un ou plusieurs éléments du modèle, par exemple des "test cases", permettent de

vérifier et valider une exigence

Refine : un ou plusieurs éléments du modèle, par exemple un cas d’utilisation, redéfinissent

une exigence

Problem : commentaire dont la description pose le problème, ou au sujet du besoin qui a

donné lieu à la création de l'association (ou de l'élément associé)

Rationale: commentaire dont la description indique la raison ou la justification par

rapport à l'association (ou à l'élément associé)

Note : Crée un commentaire

Constraint : Crée une contrainte