Une exigence est définie comme étant "une condition ou une capacité que le système doit satisfaire".

Il y a plusieurs types d'exigences. Un des moyens de les répertorier est le modèle FURPS+ [GRA92], l'acronyme FURPS désignant les principales catégories d'exigences, avec leurs sous-catégories, comme présenté ci-après.

Le "+" dans FURPS+ vous rappelle d'inclure également d'autres exigences, comme :

(Voir également [IEEE Std 610.12.1990].)

Les exigences fonctionnelles spécifient les actions qu'un système doit être capable d'accomplir, sans prendre en considération les contraintes physiques. Celles-ci sont généralement décrites dans le modèle de cas d'utilisation et dans des cas d'utilisation. Les exigences fonctionnelles spécifient ainsi le comportement en entrée et en sortie du système.

Les exigences qui ne se rapportent pas aux fonctionnalités, comme celles énumérées ci-après, sont parfois appelées exigences non fonctionnelles. Plusieurs exigences sont non fonctionnelles et décrivent uniquement les attributs du système ou les attributs de l'environnement du système. Même si certaines de ces exigences peuvent être capturées dans les cas d'utilisation , celles qui ne le sont pas peuvent être précisées dans les Spécifications supplémentaires. Les exigences non fonctionnelles sont celles qui traitent de questions comme celles décrites ci-après.

Une définition complète des exigences logicielles, des cas d'utilisation et des spécifications supplémentaires peut être combinée pour définir la Spécification des exigences logicielles(SRS) pour une "fonctionnalité" particulière ou pour tout autre groupement de sous-systèmes.

Fonctionnalité Haut de la  page

Les exigences fonctionnelles peuvent comprendre :

  • des ensembles de fonctionnalités
  • des capacités
  • la sécurité

Convivialité Haut de la page

Les exigences de convivialité peuvent comprendre les sous-catégories suivantes :

Fiabilité Haut de la page

Les exigences de fiabilité à prendre en considération sont :

  • fréquence et gravité des défaillances
  • possibilité de récupération
  • présivibilité
  • exactitude
  • temps moyen entre défaillances (MTBF)

Performance Haut de la page

L'exigence de performance impose des conditions aux exigences fonctionnelles. Par exemple, pour une action donnée, des paramètres de performance peuvent être spécifiés pour :

  • la vitesse
  • l'efficience
  • la disponibilité
  • l'exactitude
  • le débit
  • le temps de réponse
  • le temps de récupération
  • l'utilisation des ressources

Prise en charge Haut de la page

Les exigences de prise en charge peuvent comprendre :

  • l'aptitude au test
  • la capacité d'extension
  • la capacité d'adaptation
  • la facilité de maintenance
  • la compatibilité
  • la configurabilité
  • la facilité d'entretien
  • la capacité d'installation
  • la localisation (internationalisation)

Exigence de conception Haut de la page

Une exigence de conception, souvent appelée contrainte de conception, spécifie ou limite la conception d'un système.

Exigence d'implémentation Haut de la page

Une exigence d'implémentation spécifie ou limite la programmation ou la construction d'un système. Nous citerons les exemples suivants :

  • les normes exigées
  • les langues d'implémentation
  • les règles d'intégrité de la base de données
  • les limites de ressources
  • les environnements de fonctionnement

Exigence d'interface Haut de la page

Une exigence d'interface spécifie :

  • un élément externe avec lequel le système doit interagir
  • des contraintes de formats, de chronologie ou d'autres facteurs utilisés par de telles interactions

Exigence physique Haut de la page

Une exigence physique spécifie une caractéristique physique qu'un système doit traiter ; par exemple :

  • le support
  • la forme
  • la taille
  • le poids

Ce type d'exigence peut être utilisé pour représenter les exigences matérielles, telles que les configurations physiques de réseau exigées.

Plus d'informations

Pour plus d'informations sur ce sujet, voir :



RUP (Rational Unified Process)   2003.06.15