Différence entre cahier des charges et spécifications fonctionnelles détaillées

mercredi 5 juin 2013
Michel Leroy
AMOA en informatique de gestion
Saint-sébastien-sur-loire, France
Bonjour,

Pourrions nous avoir un échange entre votre perception de ces deux livrables?
Que met-on dans chacun d'eux?
Comment le formule-ton?
Où est la frontière? Quelle granularité?

Exemple :
mon client souhaite une solution de création de contrat.
Pour cela, il veut une nouvelle solution qui s'interface avec son SI existant pour reprendre par exemple sa base de données client.
Un contrat contient un certain nombre de données à remplir, il doit être pré-rempli par l'opérateur puis signé par le client pour être valide.
Une fois signé, l'opérateur indique cette information dans l'IHM puis un échéancier est calculé et est édité.
Le système doit à chaque échéance prélever le montant sur la carte bleue du client qui a été demandé à la création

Voila sur ce petit exemple, que mettriez vous dans le CDC et dans les SFD? sous quelle forme syntaxique?

Je sais que nous sommes nombreux à se poser ces questions et j'aimerais faire avancer le schmilblik... :o)

En vous remerciant de vos retours d'expériences

Michel
10
mercredi 4 septembre 2013
Jean-Marc Soulé
Directeur des Moyens de Paiement, Banque Palatine
Paris, France
Bonjour Michel,

Le cahier des charges est le recueil des exigences fonctionnelles demandées par la maîtrise d'ouvrage, il décrit des règles de gestion et de traitement dans le langage du métier (vue externe du système, c'est la vision utilisateur).
Les spécifications fonctionnelles détaillées sont rédigées par la maîtrise d'oeuvre après réception et analyse du cahier des charges. C'est la traduction du cahier des charges en termes plus techniques (données en entrée, données en sortie, description des écrans de l'IHM, règles de calcul, de transformation des données, ...) dont le but est de décrire de façon détaillée comment les exigences fonctionnelles vont être implémentées dans le SI, et donc permettre le développement du logiciel. Les SFD doivent être validées par la maîtrise d'ouvrage, elles constituent donc le point d'articulation entre la demande et la solution qui y répond et doivent être compréhensibles par les 2 parties.
Pour revenir à ton exemple, ta formulation est assez proche de celle d'un cahier des charges (il faudrait détailler un peu plus quand même !). Les SFD vont préciser le découpage en traitements, pour chacun d'entre eux la description des écrans si traitement transactionnel, les données en entrée (saisies par un utilisateur ou contenues dans un fichier), leur description et format, les règles de contrôle à appliquer avant traitement, les règles de traitement, les données en sortie, etc...

Jean-Marc
mercredi 11 septembre 2013
Mikaël SOURDIOUX
Directeur Marketing BA.lab, TELYS
Longjumeau, France
Bonjour Jean-Marc, Bonjour Michel,

Nous constatons tous qu'il est courant de confondre implicitement ce que l'on met dans les Spécifications techniques détaillées et Spécifications Fonctionnelles Détaillées. Une bonne pratique est de se mettre d'accord sur ce qui est vraiment du fonctionnel de ce qui ne l'ai pas et créera ainsi une séparation beaucoup plus saine des responsabilités sur les livrables du projet. Il est donc extrêmement commode de répondre aux exigences fonctionnelles par des exigences techniques (cf Jean Marc sur les découpage en traitements)
Petites précision quand même, Jean-Marc, vous mentionnez une formule de calcul comme nécessairement à la main de la MOE. Prenons alors l'exemple d'une formule de calcul du montant de la TVA à taux variable, nécessaire sur un libellé d'écran.
1) Est-elle du fonctionnel ? Je crois que l'exemple le montre bien.
2) Le métier peut-il l'expliquer : théoriquement, c'est bien lui qui a la parfaite connaissance des textes pour être conforme à la réglementation, donc oui.
3) Le métier peut-il l'écrire sans ambiguïté pour la maitrise d'oeuvre ? pas forcément, car il n'est pas formé à l’algorithmie... ni à la pédagogie...
4) la MOE peut-elle faire valider son algorithme par le métier ? Comment une personne non formée à l'algorithmie peut-elle s'engager ?

Cet exemple montre bien qu'une formule est maitrisée par le métier, mais que celui-ci ne peut valider un algorithme formel. Ce qu'il peut valider en revanche, c'est une formule mathématique décrite, que la MOE elle, traduira en algorithme. Dès lors, je pense que la formule mathématique du montant de la TVA, engageante pour le métier doit s'encrer dans les Spécifications Fonctionnelles Détaillées, et l'algorithme y répondre dans les Spécifications techniques détaillées. Nous avons ainsi une nette séparation besoins/solutions sans engager le métier sur la solution (l’algorithme mal conçu n'est pas de leur fait).

Enfin bien sur, je prêche pour notre métier, objet de ce hub : n'est-ce pas à l’assistance à maitrise d'ouvrage d'aller chercher la formule mathématique auprès du métier et de d'assurer à la fois de la validation du client et de la compréhension de la MOE ?

Mikaël