Qu'est-ce qu'une exigence fonctionnelle en génie logiciel ?
Qu’est-ce qu’une exigence fonctionnelle ?
A Exigence fonctionnelle (FR) est une description du service que le logiciel doit offrir. Il décrit un système logiciel ou son composant. Une fonction n'est rien d'autre que des entrées dans le système logiciel, son comportement et des sorties. Il peut s'agir d'un calcul, d'une manipulation de données, d'un processus métier, d'une interaction utilisateur ou de toute autre fonctionnalité spécifique définissant la fonction qu'un système est susceptible d'exécuter. Les exigences fonctionnelles en génie logiciel sont également appelées Spécification fonctionnelle.
En génie logiciel et en ingénierie des systèmes, une exigence fonctionnelle peut aller de l'énoncé abstrait de haut niveau de la nécessité de l'expéditeur à des spécifications mathématiques détaillées d'exigences fonctionnelles. Logiciel fonctionnel Les exigences vous aident à capturer le comportement prévu du système.
Que doit contenir le document sur les exigences fonctionnelles ?
Voici comment rédiger un document d’exigences fonctionnelles :
Les exigences fonctionnelles d'un système doivent inclure les éléments suivants :
- Détails des opérations effectuées sur chaque écran
- La logique de traitement des données doit être entrée dans le système
- Il doit contenir des descriptions des rapports système ou d'autres résultats.
- Informations complètes sur les flux de travail effectués par le système
- Il doit clairement définir qui sera autorisé à créer/modifier/supprimer les données dans le système.
- La manière dont le système répondra aux besoins réglementaires et de conformité applicables doit être expliquée dans le document fonctionnel.
Avantages des exigences fonctionnelles
Voici les avantages/avantages de la création d’un document d’exigences fonctionnelles typique :
- Vous aide à vérifier si l'application fournit toutes les fonctionnalités mentionnées dans les exigences fonctionnelles de cette application.
- Un document d'exigences fonctionnelles vous aide à définir la fonctionnalité d'un système ou de l'un de ses sous-systèmes.
- Les exigences fonctionnelles ainsi que l’analyse des exigences aident à identifier les exigences manquantes. Ils aident à définir clairement le service et le comportement attendus du système.
- Les erreurs détectées lors de l’étape de collecte des exigences fonctionnelles sont les moins chères à corriger.
- Soutenir les objectifs, les tâches ou les activités des utilisateurs
Types d'exigences fonctionnelles
Voici les types d'exigences fonctionnelles les plus courants :
- Traitement des transactions
- Règles de gestion
- Exigences de certification
- Exigences de rapport
- Fonctions administratives
- Niveaux d'autorisation
- Suivi des audits
- Interfaces externes
- Gestion des données historiques
- Exigences légales et réglementaires
Exemple d'exigences fonctionnelles
Vous trouverez ci-dessous les exemples d’exigences fonctionnelles les plus courantes :
- Le logiciel valide automatiquement les clients par rapport au système de gestion des contacts ABC
- Le système de vente doit permettre aux utilisateurs d'enregistrer les ventes des clients
- La couleur d'arrière-plan de toutes les fenêtres de l'application sera bleue et aura une valeur de couleur RVB hexadécimale de 0x0000FF.
- Seuls les employés de niveau direction ont le droit de consulter les données sur les revenus.
- Le système logiciel doit être intégré à l'API bancaire
- Le système logiciel doit réussir Section 508 exigence d’accessibilité.
Exigences non fonctionnelles ou 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 |
Meilleure pratique des exigences fonctionnelles
Les meilleures pratiques importantes pour l’élaboration d’un document d’exigences fonctionnelles sont les suivantes :
- Ne combinez pas deux exigences en une seule. Gardez les exigences granulaires.
- Vous devez rendre chaque exigence aussi complète et précise que possible.
- Le document doit rédiger toutes les exigences techniques.
- Cartographier toutes les exigences avec les objectifs et les principes qui contribuent à une livraison réussie des logiciels
- Obtenez des exigences à l’aide d’entretiens, d’ateliers et de communications informelles.
- S’il existe une contrainte connue et vérifiée qui affecte matériellement une exigence, il s’agit alors d’un état critique qui doit être documenté.
- Il est nécessaire que vous documentiez toutes les hypothèses dans le document.
Erreurs lors de la création d'une exigence fonctionnelle
Voici quelques erreurs courantes commises lors de la création du document d’exigences de fonction :
- Insérer des informations supplémentaires injustifiées susceptibles de dérouter les développeurs
- Ne pas mettre suffisamment de détails dans le document d’exigence.
- Vous ajoutez des règles ou des exemples, des déclarations de portée ou des objectifs, sauf l'exigence elle-même.
- Oublié une information importante qui est absolument indispensable pour énoncer l'exigence de manière complète, précise et définitive.
- Certains professionnels commencent à défendre les exigences qu’ils ont documentées lorsque l’exigence est modifiée, au lieu de trouver la vraie vérité.
- Exigences qui ne correspondent pas à un objectif ou à un principe.
APPRENTISSAGES CLÉS
- Expliquer les exigences fonctionnelles en génie logiciel : les exigences fonctionnelles définissent un système ou ses composants.
- Le document sur les exigences fonctionnelles doit contenir une logique de traitement des données et des informations complètes sur les flux de travail effectués par le système.
- Les exigences fonctionnelles ainsi que l'analyse des exigences aident à identifier les exigences manquantes
- Les corrections, ajustements et annulations de transactions, les règles commerciales, les exigences de certification, les exigences de reporting, les fonctions administratives, les niveaux d'autorisation, le suivi des audits, les interfaces externes, la gestion des données historiques, les exigences légales ou réglementaires sont différents types d'exigences fonctionnelles.
- Il est recommandé de ne pas combiner deux exigences en une seule. Gardez les exigences granulaires.
- L'insertion d'informations supplémentaires injustifiées susceptibles de dérouter les développeurs doit être évitée dans le document d'exigences fonctionnelles. Pour comprendre comment ces exigences se traduisent en procédures de test réelles, vous souhaiterez peut-être explorer ce guide sur test fonctionel.