Exigence fonctionnelle : Spécifie une fonction que le système doit accomplir
Exigence non fonctionnelle : Spécifie une contrainte de performance ou de qualité
- Analyser le cahier des charges ou les besoins exprimés
- Identifier les fonctions principales attendues
- Relever les contraintes techniques et réglementaires
- Classer les exigences selon leur nature
Robot Aspirateur - Analyse
• Se déplacer de manière autonome
• Détecter les obstacles
• Retourner à sa base de charge
• Vider le bac à poussière
• Autonomie : minimum 60 minutes
• Temps de charge : maximum 4 heures
• Résistance aux chocs
• Facilité d'entretien
L'utilisateur souhaite un nettoyage automatique des sols sans intervention humaine.
Le robot doit effectuer des actions spécifiques : nettoyer, naviguer, charger.
Des limitations techniques et d'expérience utilisateur existent : bruit, autonomie, sécurité.
Exigences non fonctionnelles : NF1, NF2, NF3
Fonctionnelles : nettoyer, naviguer, détecter obstacles, retourner à base
Non fonctionnelles : bruit ≤ 60dB, autonomie ≥ 60min, résistance aux chocs
• Séparation : Distinction claire entre ce que le système fait et comment il le fait
• Clarté : Chaque exigence doit être précise et mesurable
• Complétude : Couvrir toutes les fonctions et contraintes
Hiérarchisation : Organisation des exigences selon leur importance critique pour le projet
- Identifier les exigences critiques pour la sécurité
- Évaluer l'impact fonctionnel de chaque exigence
- Considérer les contraintes légales et réglementaires
- Classer par ordre d'importance : Critique > Haute > Moyenne > Basse
Système de Freinage Automobile
• Fiabilité maximale du système
• Sécurité des occupants
• Distribution équilibrée de la force de freinage
• Performance dans différentes conditions climatiques
• Coût de maintenance
• Esthétique des éléments visibles
Identifier les exigences liées à la sécurité des occupants et à la prévention des accidents.
Évaluer l'impact de chaque exigence sur le fonctionnement global du système.
Affecter une priorité en fonction de la criticité, de la réglementation et de l'impact.
Priorité 1 : Sécurité, fiabilité, arrêt d'urgence
Priorité 2 : Réaction rapide, distribution équilibrée
Priorité 3 : Durée de vie, coût de maintenance
• Sécurité avant tout : Les exigences de sécurité sont prioritaires
• Impact fonctionnel : Considérer l'importance pour le fonctionnement du système
• Réglementation : Respecter les normes légales en vigueur
IDEF0 : Méthode de modélisation fonctionnelle qui décrit les processus du système (Input, Process, Output, Control).
- Identifier le processus principal (Process)
- Déterminer les entrées (Input)
- Définir les sorties (Output)
- Identifier les contrôles (Control)
Système de Domotique - IDEF0
• Surveiller la sécurité
• Gérer le confort thermique
• Capteurs (température, mouvement, luminosité)
• Informations météo
• Alarme de sécurité
• Notifications à l'utilisateur
• Règles de sécurité
• Limites de consommation énergétique
Identifier le processus principal : "Gérer les équipements domestiques"
Déterminer les données nécessaires au processus : commandes, capteurs, informations externes.
Identifier les résultats du processus : actions, alertes, états du système.
Énumérer les règles, contraintes et normes qui régissent le processus.
Processus : Gestion domotique | Entrées : Commandes, capteurs | Sorties : Actions, notifications | Contrôles : Règles, programmation
• Clarté : Chaque élément IDEF0 doit être précisément défini
• Complétude : Tous les aspects du système doivent être couverts
• Hiérarchie : Utiliser des sous-processus pour détailler
Validation : Processus de vérification que les exigences sont complètes, cohérentes, réalisables et non redondantes.
- Vérifier la complétude : toutes les exigences sont-elles présentes ?
- Tester la cohérence : aucune contradiction entre les exigences
- Évaluer la réalisabilité : les exigences sont-elles techniquement possibles ?
- Confirmer la non-redondance : chaque exigence est-elle unique ?
Drone de Surveillance - Validation
• Caméra HD 1080p
• Transmission vidéo en direct
• Système de détection d'obstacles
• Vitesse de vol : 10-60 km/h
• Altitude de vol : 10-120 mètres
• Moteurs brushless 1400KV
• Caméra CMOS 1/3"
Vérifier si toutes les fonctions nécessaires sont spécifiées : vol, caméra, transmission, navigation.
Comparer les exigences entre elles : autonomie vs vitesse, altitude vs sécurité.
Vérifier si les technologies existent pour satisfaire les exigences.
S'assurer qu'aucune exigence ne duplique une autre fonction.
Exigences validées : complètes, cohérentes, réalisables, non redondantes
• CHAMP : Complétude, Cohérence, Hiérarchie, Acceptabilité, Mesurabilité, Précision
• Testabilité : Chaque exigence doit être testable
• Atomicité : Chaque exigence doit être unique
Traçabilité : Maintenir les liens entre les exigences et les besoins, conceptions, tests et livrables.
- Numéroter chaque exigence de manière unique
- Associer chaque exigence à un besoin spécifique
- Créer un tableau de traçabilité
- Mettre à jour la traçabilité à chaque modification
Application Mobile - Matrice de traçabilité
| ID Exigence | Description | Besoin associé | Statut |
|---|---|---|---|
| REQ_001 | L'utilisateur peut créer un compte | BES_001 | Implémenté |
| REQ_002 | L'utilisateur peut ajouter des tâches | BES_002 | Implémenté |
| REQ_003 | Les tâches peuvent être classées par priorité | BES_003 | En cours |
| REQ_004 | Temps de réponse < 2 secondes | BES_004 | Validé |
• Identifier les impacts des modifications
• Assurer la conformité aux besoins
• Faciliter les audits et validations
Attribuer un identifiant unique à chaque exigence (REQ_001, REQ_002, ...)
Lier chaque exigence à un besoin spécifique (BES_001, BES_002, ...)
Créer un tableau avec les relations entre besoins, exigences et statuts.
Maintenir la traçabilité à jour pendant tout le cycle de vie du projet.
Matrice de traçabilité complète avec liens entre besoins et exigences
• Unicité : Chaque exigence a un ID unique
• Complétude : Toutes les exigences sont tracées
• Maintenance : La traçabilité est maintenue durant le projet
- IDEF0 : Modélisation fonctionnelle (Input, Process, Output, Control)
- SysML : Diagrammes de blocs, cas d'utilisation, exigences
- MoSCoW : Classification Must, Should, Could, Won't
- QFD : Quality Function Deployment pour relier besoins à exigences
- Les exigences doivent être exprimées en langage clair et non ambigu
- Chaque exigence doit être unique et atomique
- La traçabilité permet de suivre l'évolution et les impacts
- La validation garantit la cohérence et la réalisabilité
- Concises : Courtes et directes
- Compréhensibles : Accessibles aux parties prenantes
- Complètes : Sans omission d'information
- Cohérentes : Sans contradictions internes
- Correctes : Fidèles aux besoins exprimés