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.

  • (I.e. Définition: Une exigence fonctionnelle, également appelée spécification fonctionnelle, énonce ce que le système doit faire — entrées, comportement et sorties, décrit du point de vue de l'utilisateur ou de l'entreprise.
  • 📄 Portée du document : Un document de spécifications fonctionnelles couvre les opérations à l'écran, la logique de traitement des données, les rapports, les flux de travail, les autorisations et la conformité réglementaire.
  • 🇧🇷 Types communs: Gestion des transactions, règles métier, reporting, fonctions administratives, niveaux d'autorisation, audit tracroi, interfaces externes et exigences légales.
  • 💡 Exemples : La validation des connexions, l'enregistrement des ventes, la visualisation des revenus en fonction des rôles, l'intégration des API bancaires et la conformité en matière d'accessibilité font toutes partie des exigences fonctionnelles.
  • ???? Contraste non fonctionnel : Les exigences fonctionnelles décrivent ce que fait un système ; les exigences non fonctionnelles décrivent comment il le fait — performance, sécurité et facilité d'utilisation.
  • Meilleures pratiques : Veillez à ce que les exigences soient précises, testables et alignées sur un objectif commercial, et recueillez-les par le biais d'entretiens et d'ateliers.

Exigences fonctionnelles en génie logiciel

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

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.

FAQ

Les outils d'IA regroupent les notes d'entretien, génèrent des ébauches de scénarios utilisateurs, signalent les formulations ambiguës et détectent les doublons dans de vastes ensembles d'exigences. Les analystes métier continuent de valider chaque suggestion au regard des besoins réels des parties prenantes avant son intégration à la version de référence approuvée.

Copilot et GPT génèrent des ébauches de récits utilisateurs, de critères d'acceptation et d'énoncés de spécifications à partir de brèves instructions. Un analyste métier vérifie la testabilité de chaque élément et confirme sa conformité aux objectifs métier avant la revue formelle.

Un besoin métier explique la raison d'être d'un projet, par exemple la croissance du chiffre d'affaires ou la mise en conformité. Un besoin fonctionnel décrit ce que le système doit faire pour atteindre cet objectif, comme valider un paiement ou générer un rapport.

Utilisez un sujet clair, le mot « doit », et une seule action vérifiable par instruction. Évitez les termes ambigus comme « rapidement » et concentrez-vous sur un seul comportement afin que l’exigence puisse être testée par un simple test de réussite ou d’échec.

EARS (Easy Approach to Requirements Syntax) propose cinq modèles : omniprésent, événementiel, état, fonctionnalité optionnelle et comportement indésirable. Chacun impose une structure testable, par exemple : « Lorsque le déclencheur est activé, le système doit répondre. »

Une spécification des exigences logicielles est le document de référence décrivant les fonctionnalités requises par un système. Les exigences fonctionnelles constituent la section la plus importante, aux côtés des interfaces, des exigences non fonctionnelles, des cas d'utilisation et des contraintes.

Les exigences fonctionnelles déterminent les cas de test pour les tests système, d'intégration, de bout en bout, d'API et d'acceptation utilisateur. Chaque exigence correspond à au moins un cas de test. TracLa matrice de compatibilité confirme la couverture avant la publication.

Les équipes agiles expriment les exigences fonctionnelles sous forme de récits utilisateurs, selon le format suivant : « En tant que rôle, je souhaite une fonctionnalité, donc cette fonctionnalité apporte de la valeur. » Les critères d’acceptation associés au récit transforment l’exigence en une définition testable de ce qui est terminé.

Résumez cet article avec :