Spécifications fonctionnelles : comment les travailler avec votre agence de développement ?

Publié le 21 avril 2020 par Vincent Luycx | stratégie

Cet article est publié sous licence CC BY-NC-SA

Les spécifications fonctionnelles représentent sur le papier le produit fini qui sera mis à disposition de vos clients, collaborateurs, ou tout autre utilisateur de votre logiciel.

Si elles ne sont pas cohérentes ou manquent de sens, la direction globale du produit ne sera pas celle que vous attendez et, sans compter les impacts financiers, la déception sera au rendez-vous.

Alors, comment concevoir les spécifications fonctionnelles de votre application ? Quel niveau de précision adopter ? Finalement, comment concevoir un document de spécification utile (et utilisé !) pour assurer la réussite de votre projet ? On vous livre quelques éléments de réponse.

et établir la feuille de route de votre application <<

Niveau d'écriture des spécifications fonctionnelles

Toute application web "sur mesure" nécessite d'être décrite de façon suffisamment atomique, pour qu'elle corresponde réellement à votre besoin.

Par contre, comme dans le cas de la confection d'un costume sur mesure, certains éléments peuvent être décrits sans trop rentrer dans les détails, là où d'autres doivent être exprimés très précisément.

Par exemple, la couleur, la forme du veston, le modèle du pantalon devront être choisis avec attention. Tandis que les autres décisions sur le type de piqûre, d'ourlet ou encore le nombre de boutons de manchette peuvent être choisis dans un catalogue plus restreint, avec un accompagnement plus directif de votre couturier préféré.

detail-costume-tailleur

Dans le cas de la création d'une application web, certaines fonctionnalités n'ont pas le même besoin de description (même si elles sont tout autant importantes !).

Prenons par exemple le système d'authentification, la gestion des mots de passe, l'envoi des notifications, l'administration des utilisateurs...

Ces fonctionnalités sont essentielles, mais avant de passer du temps à les décrire dans le menu détail, mieux vaut que vous consacriez vos premiers efforts à définir ce qui fera la valeur ajoutée de votre nouvelle application, sa différence avec la concurrence ou tout simplement sa valeur ajoutée dans votre process métier.

De notre point de vue, on ne va jamais trop loin, mais la complexité réside plutôt dans la cohérence et la cohésion de ces spécifications, afin de garantir que toutes les fonctionnalités de même criticité ou importance seront décrites sensiblement de la même façon.

Comme nous l'évoquions, avant de définir le "comment", nous trouvons important de comprendre le pourquoi : la valeur métier que toute fonctionnalité apporte, sa criticité et globalement son usage idéal.

Comment rédiger vos spécifications fonctionnelles ?

Une méthode couramment utilisée consiste à décrire chacune de ces fonctionnalités sous le format d'une "user story" ou d'une exigence (fonctionnelle ou non).

Ces user stories regroupent trois dimensions, et se résument à cette phrase :

"En tant que X, je souhaite Y afin de Z"

  • X est le rôle que vous visez, du type "client", "administrateur", "client" avec certains droits...
  • Y est l'action que vous souhaitez que X puisse accomplir
  • Z est le bénéfice attendu de l'action Y

 

Exemple de user story

Exemple d'une user story conçue pour décrire
une des fonctionnalités d'une plateforme web

Cette façon de rédiger ses spécifications fonctionnelles permet de toujours les orienter vers l'utilisateur (interne ou externe) et d'exprimer clairement ce qu'il peut faire en détaillant son objectif ou sa plus-value.

Ceci permettra à terme de prioriser les user stories selon leur degré de bénéfice ou de "valeur métier" (business value).

Les étapes clés pour concevoir vos spécifications fonctionnelles

Chez Synbioz, nous abordons les spécifications fonctionnelles en trois temps :

  1. une première discussion ouverte, qui vise à évoquer avec le commanditaire du projet l'ensemble des dimensions de celui-ci. Cet échange a pour but d'extraire la vision du projet, ses enjeux majeurs, les attentes principales et les mécaniques globales à mettre en oeuvre 

  2. nous poursuivons ensuite avec une étape de prototypage au travers de maquettes. Ces maquettes auront vocation à formaliser l'aspect fonctionnel de l'application et les parcours principaux des utilisateurs

  3. nous validons avec vous que ces maquettes représentent bien la réalité attendue, puis nous enchaînons alors sur une description détaillée de l'ensemble des fonctionnalités attendues.

Exemple de maquettes / prototype détaillé d'une application

Exemple de maquettes / prototype détaillé d'une application

L'ensemble de ces livrables constitue pour nous les éléments minimaux de vos spécifications fonctionnelles.

D'autres livrables seront importants comme les maquettes définitives, la charte graphique, tous les éléments visuels (logos, icônes, images...), les traductions éventuelles, etc.

Mais globalement, même si essentiels, ces livrables peuvent arriver en cours de projet.

Selon le type de projet, les spécifications fonctionnelles pourront êtres loties pour concentrer les efforts sur les premières fonctionnalités attendues dans le cadre du MVP (Minimum Viable Product) que nous aurons défini ensemble.

Validation des spécifications fonctionnelles

Ces spécifications seront bien entendu soumises à validation avant le démarrage de l'implémentation, et pourront faire l'objet d'adaptations en cours de route.

Mais un cadre cohérent sera alors défini, permettant à chaque interlocuteur de se projeter beaucoup plus aisément sur cette nouvelle application en devenir.

Ecrire de bonnes spécifications est une étape clé dans la réussite de votre projet : n'hésitez pas à vous faire accompagner dans cette démarche !

Construire la vision de votre produit : le guide pas à pas