Qu'est-ce qu'une exigence fonctionnelle en génie logiciel ?
⚡ Résumé intelligent
Les exigences fonctionnelles décrivent chaque service qu'un système logiciel doit offrir, en recensant les entrées, les comportements et les sorties, afin que les développeurs, les testeurs et les parties prenantes partagent une définition unique et vérifiable de ce que le produit doit réellement faire.
Qu’est-ce qu’une exigence fonctionnelle ?
A Exigence fonctionnelle Les exigences fonctionnelles (EF) décrivent le service que le logiciel doit offrir. Elles décrivent un système logiciel ou l'un de ses composants. Une fonction est définie par des entrées, un comportement et des sorties. Il peut s'agir d'un calcul, d'une manipulation de données, d'un processus métier ou d'une interaction utilisateur qui définit ce que le système doit faire. En génie logiciel, les exigences fonctionnelles sont également appelées… Spécification fonctionnelle.
Une exigence fonctionnelle peut aller d'un besoin de haut niveau exprimé par une partie prenante à une spécification mathématique détaillée. Logiciel fonctionnel Les exigences décrivent le comportement attendu du système.
Que doit contenir un document de spécifications fonctionnelles ?
Voici ce que doit contenir un document d'exigences fonctionnelles :
Exemple d'exigences fonctionnelles
Un document d'exigences fonctionnelles comprend généralement :
- Détails des opérations effectuées sur chaque écran
- Logique de traitement des données que le système doit appliquer
- Descriptions de rapports système et autres résultats
- Informations complètes sur les flux de travail exécutés par le système
- Qui est autorisé à créer, modifier ou supprimer des données dans le système ?
- Comment le système répond aux besoins réglementaires et de conformité applicables
Avantages des exigences fonctionnelles
Les principaux avantages d'un document de spécifications fonctionnelles bien rédigé sont les suivants :
- Vérifie que l'application remplit toutes les fonctions spécifiées.
- Définit la fonctionnalité du système et de ses sous-systèmes en un seul endroit.
- Associées à l'analyse des besoins, les exigences fonctionnelles permettent d'identifier les besoins non satisfaits et de clarifier le comportement attendu du système.
- Les erreurs détectées au stade de la définition des besoins sont les moins coûteuses à corriger.
- Soutient les objectifs, les tâches et les activités des utilisateurs
Types d'exigences fonctionnelles
Les catégories courantes d'exigences fonctionnelles comprennent :
- Traitement des transactions
- Règles de gestion
- Exigences de certification
- Exigences de rapport
- Fonctions administratives
- Niveaux d'autorisation
- Audit Tracking
- Interfaces externes
- Gestion des données historiques
- Exigences légales et réglementaires
Exemples d'exigences fonctionnelles
Vous trouverez ci-dessous des exemples concrets d'exigences fonctionnelles :
- Le logiciel validera automatiquement les clients par rapport au système de gestion des contacts ABC.
- Le système de vente permettra aux utilisateurs d'enregistrer les ventes aux clients.
- La couleur de fond de toutes les fenêtres de l'application doit être bleue avec la valeur RGB hexadécimale 0x0000FF.
- Seuls les employés de niveau cadre auront le droit de consulter les données relatives aux revenus.
- Le système logiciel devra s'intégrer à l'API bancaire.
- Le système logiciel doit répondre aux exigences. Section 508 exigences d'accessibilité.
Exigences fonctionnelles et non fonctionnelles
Voici les principales différences entre les exigences fonctionnelles et non fonctionnelles dans Génie logiciel:
| Paramètres | Exigence fonctionnelle | Exigence non fonctionnelle |
|---|---|---|
| Ce que c'est | Verbe | Attributs |
| Exigence | C'est obligatoire | Ce n'est pas obligatoire |
| Type de capture | Il est capturé dans le cas d'utilisation. | Il est capturé comme un attribut de qualité. |
| Résultat final | Caractéristique du produit | Propriétés du produit |
| Capture | Facile à capturer | Difficile à capturer |
| Objectif | Vous aide à vérifier la fonctionnalité du logiciel. | Vous aide à vérifier les performances du logiciel. |
| Domaine d'intérêt | Se concentrer sur les besoins des utilisateurs | Se concentre sur les attentes de l'utilisateur. |
| Documentation | Décrire ce que fait le produit | Décrit le fonctionnement du produit |
| Type de test | Tests fonctionnels comme le système, l'intégration, de bout en bout, Test d'API, etc. | Tests non fonctionnels comme les performances, le stress, la convivialité, Tests de sécurité, etc. |
| Exécution des tests | L'exécution des tests est effectuée avant les tests non fonctionnels. | Après les tests fonctionnels |
| Information sur le produit | Caractéristiques du produit | Propriétés du produit |
Meilleures pratiques pour la rédaction des exigences fonctionnelles
Les meilleures pratiques les plus importantes pour la rédaction d'un document d'exigences fonctionnelles sont les suivantes :
- Ne combinez pas deux exigences en une seule ; veillez à ce que chaque exigence reste distincte.
- Veillez à ce que chaque exigence soit aussi complète et précise que possible.
- Rédigez l'ensemble des exigences techniques dans le document.
- Associez chaque exigence aux objectifs et aux principes qui sous-tendent la réussite du développement logiciel.
- Recueillir les besoins par le biais d'entretiens, d'ateliers et de conversations informelles.
- Documentez toutes les contraintes connues et vérifiées qui affectent sensiblement une exigence.
- Consignez chaque hypothèse dans le document.
Erreurs courantes lors de la rédaction des exigences fonctionnelles
Les erreurs courantes commises lors de la création d'un document d'exigences fonctionnelles comprennent :
- Ajouter des informations supplémentaires injustifiées qui perturbent les développeurs
- Omettre les détails dont les développeurs ont besoin pour créer la fonctionnalité.
- Règles de mixage, exemples, scoping intégrer des déclarations ou des objectifs dans l'exigence elle-même.
- Omettre des informations essentielles pour énoncer l'exigence de manière complète et précise.
- Défendre une exigence existante lorsqu'une demande de modification arrive, au lieu de trouver la bonne réponse.
- Rédiger des exigences qui ne sont rattachées à aucun objectif ni principe.


