L'autre jour, quelqu'un a publié un post dans le groupe Whatsapp des développeurs Python. Cette personne voulait tout juste savoir comment on rédige un cahier des charges pour un site web. C'est alors que j'ai eu l'idée de publier ce mercredi un article qui répond à cette préoccupation.
Tout d'abord, il faut savoir qu'un cahier des charges est un document dans lequel on rédige les spécificités globales d'un projet, bref ce que sera le projet et comment on va le réaliser. Généralement, il est rédigé par le client qui l'envoie au prestataire dans le but de permettre à ce prestataire de mieux accomplir sa mission : il peut s'agir d'une mission de création d'un site web, de développement d'une application, etc. Le client rédige alors ce document dans lequel il explique comment il voit son produit et le prestataire le réalise conformément au cahier des charges.
Néanmoins, il est aussi important de noter qu'il n'y a pas une règle dite << standard >> pour la rédaction du cahier des charges (CDC). Tous dépens du projet et de la compréhension de celui qui le rédige. Toutefois, il est très important de commencer un projet par un cahier des charges, puisqu'il permet de délimiter le périmètre du projet et évite d'avoir une mission interminable.
Dans la suite de cet article, je présente les parties d'un cahier des charges pour un projet lambda : il peut s'agir d'un projet d'étude en ce qui concerne les étudiants, ou bien même un produit quelconque qu'on veut tout simplement présenter à une personne ou un client.
Comment se présente un cahier des charges ?
Un CDC est un document simple à rédiger qui comporte plus ou moins les parties suivantes :
1. Introduction
Ici, on explique en globalité ce qu'on veut faire et pourquoi, on présente de façon sommaire le site web.
2. Présentation de l'entreprise
C'est ici qu'on doit présenter en quelques lignes l'entreprise (prestataire de service). L'étudiant présentera l'entreprise dans laquelle il a fait son stage, alors que l'entrepreneur parlera tout juste de son entreprise. Ceci permet au client de connaître ladite entreprise et d'être plus ou moins confiant.
3. Produits de l'entreprise
Ici, on présente les produits que l'entreprise vend.
4. Analyse de l'existant
L'analyse de l'existant ou étude de l'existant est le fait d'expliquer les processus actuels du client et les solutions qu'il utilise pour remédier à son problème. Il est important ici de rappeler le problème, de proposer sa solution et les cibles qui pourraient utiliser cette solution.
4.1. Quels sont les problèmes rencontrés actuellement ?
4.2. Solution apportée : le site web
4.3. Les cibles
5. Les concurrents
Souvent, il est important de ressortir les solutions concurrentes tout en montrant ce que votre solution apporte comme valeur ajoutée.
6. Développement de la solution
Dans cette section, on explique comment sera organisé le site web. Quelles sont ses caractéristiques, ses fonctionnalités, comment il sera structuré, etc.
6.1. Caractéristiques
6.2. Fonctionnalités
6.3. Structure du logiciel
Quelle est l'architecture du site web, comment communique-t-il avec l'extérieur
6.3.1. Module 1
On présente le premier module du site, par exemple les authentification.
6.3.2. Module 2
On présente le deuxième module du site web.
6.4. Contraintes
En parlant des contraintes, il faut ressortir les aspects les plus importants liés au site : SEO, sécurité, tests etc. Il s'agit des éléments obligatoires sans lesquelles le site ne serait pas un << bon site >>
7. Design et charte graphique du site web
Il faut dans cette partie présenter le design du site et sa charte graphique
8. Les spécificités et les livrables
Ici, on explique ce qui rend le site spécifique et les éléments qu'on va livrer au client : code source, documents techniques, cahier des charges, etc.
8.1. Les livrables
8.2. Planning
Il faut ressortir un planning global du projet avec un calendrier << provisoire >>
Conclusion
Le cahier des charges est un outil indispensable avant de commencer un projet client. Il permet de définir ce qui sera fait dans le projet et comment il sera mis sur pied.