MODULE No 16 |
Titre : Exigences ? |
But : Fixer un cadre terminologique pour les exigences. |
Antécédents : Avoir terminé le TP1 |
Corps : La norme ISO 12207 est un cadre de référence pour les processus en GL : elle présente une terminologie et une structuration des activités pour la création d’un logiciel. Nous allons continuer dans la même approche mais avec quelques autres éléments. Dans le cadre de notre cours où l’on n’aborde que la partie de compréhension et de spécification de ce que les parties prenantes veulent (le « quoi », les exigences) il est fondamental de nous entendre sur ce qu’est une exigence. Voici les deux définitions de la norme IEEE Std. 610.12 : 1. Une condition ou une capacité dont un utilisateur a besoin pour résoudre un problème ou atteindre un objectif. 2. Une condition qui doit être satisfaite ou une capacité que doit être possédée par un système ou par un composant d’un système pour satisfaire un contrat, un standard, une spécification, ou d’autres documents officiels. Donc une exigence est quelque
chose que l’on « attend impérativement »
de la machine que l’on doit construire (surtout logiciel en ce qui nous
concerne). Ces définitions, comme
toutes les définitions, ont une certaine utilité
théorique et sont un moyen pour ne pas trop s’éloigner du
sujet. Mais, si on veut quelque chose de vraiment utile pour un travail
technique, il faut « creuser » les définitions,
les structurer et donner des méthodes qui montrent comment, dans le
travail concret, on peut réaliser ce que la définition nous
indique. S’il y a une chose que l’on
a appris en quarante ans de GL, c’est bien que, pour diminuer les
risques d’avoir un produit final qui ne satisfait pas les parties
prenantes (et, en particulier, les utilisateurs), il faut que dans le
développement des exigences on n’oublie aucune de ces quatre
activités : 1. Élicitation
des exigences :
il s’agit d’une activité fondée sur l’écoute
et qui permet de connaître ce dont les parties prenantes ont besoin. On
a déjà parlé plusieurs fois d’élicitation
dans le cours. 2. Analyse
des exigences :
il s’agit d’analyser les exigences pour les structurer, pour voir
s’il est possible de les réaliser (faisabilité), pour
donner des priorités. À ce propos vous avez vu les
éléments des fiches des exigences dans votre TP1 qui favorise l’analyse :
champs, Der, Sta, Nec, Pri, Ea… 3. Spécification
des exigences :
il s’agit de décrire le plus formellement possible, dans des artefacts
officiels (documents et/ou prototypes), les exigences élicitées
et analysées. 4. Validation
des exigences :
il s’agit de s’assurer que les exigences spécifiées
sont bien les exigences que la machine doit aider à satisfaire. Note Cette structuration du
développement des exigences facilite sans doute la vie, mais elle n’est
pas très utile si on ne « touche » pas à
ce que cela implique. C’est afin d’apprendre via la pratique que
dans le cours nous faisons le TP en classe. Fin de la note Dans la suite du module nous allons détailler
les quatre activités, sans aucune prétention d’être
exhaustifs. Élicitation
des exigences :
Analyse des
exigences :
Spécification
des exigences :
Validation des
exigences :
Note Tout cela peut sembler
très théorique, et en effet sans du travail concret cela ne
sert pas à grande chose. Pour vraiment l’assimiler vous devez donc
essayer de « lier » tous ces concepts à votre
travail concret dans le TP2 Fin de la note |
Conséquent :
Avoir un cadre terminologique qui permet de
situer les activités pratiques liées aux exigences. |
Note : |
|