Accéder au contenu principal

Rédaction d'un document Cahier des Charges

Comment rédiger un Cahier des Charges


Pour rédiger un document cahier des charges d'un projet logiciel ou autre, nous proposons cette template qui pourrait servir éventuellement comme guide. Il s'agit de définir successivement les points suivants : Contexte et définition du projet, Objectifs, Scope, Parties Prenantes, Description des besoins à répartir entre les besoins fonctionnels et non fonctionnels.


Contexte et définition du problème

Dans cette rubrique, vous allez définir le problème pour bien clarifier la finalité du travail. Il est important de souligner aussi les besoins ainsi que les contraintes et ce de manière très sommaire. Par exemple, vous pouvez exposer la situation actuelle ou futur de votre système tout en mettant l’accent sur les problèmes auxquels vous voulez faire face.

Objectifs



Après avoir exposé le problème dans la première partie, ici vous allez exprimer quelles sont les attentes et les résultats escomptés. Normalement ces attentes et résultats (objectifs du projet) doivent être quantifiables. Par exemple vous voudriez passer d’un taux d’utilisation de 40 à 70%. Cela va vous permettre après de savoir si vous avez bien atteint les objectifs ou non.


Périmètre

Le périmètre (scope) d’un projet veut dire les limites que vous allez donner à votre projet. Vous pouvez par exemple à ce niveau bien identifier votre cible (target), est-ce que votre projet concerne les jeunes ou bien il est dédié uniquement aux enfants. Vous pouvez aussi souligner le type de plateforme (web, mobile, cloud etc). Un périmètre qui est bien défini va vous aider par après pour ne pas déborder sur les objectifs du projet et de se contenter uniquement du travail demandé.


Parties prenantes

Les parties prenantes (stakeholders) concernent toutes les parties qui ont un intérêt de près (direct) ou de loin (indirect) dans la réalisation de votre projet. Par exemple, si vous avez à réaliser une application de gestion de paiement de caisse au niveau d’un super marché, et que cette application va comptabiliser les ventes effectuées par les vendeurs à l’intérieur du super marché, alors les parties prenantes dans ce cas vont être : le caissier, le vendeur, le manager, etc. Il est important de connaître ses parties prenantes vu qu’ils va falloir les impliquer lors du recensement des besoins et donc lors de l’évaluation de votre projet.


Description des besoins

En principe on distingue deux types de besoins. Les besoins fonctionnels et les besoins non fonctionnels. On peut ajouter à cela les besoins d’ordre techniques (type de technologie utilisé, etc).


Besoins fonctionnels



Les besoins fonctionnels concernent tous les besoins recensés soit par le client, les utilisateurs ou par les parties prenantes. Ces besoins ont un rapport direct avec le métier (business). Si par exemple votre projet consiste à réaliser une application mobile pour la gestion du courrier électronique, alors un besoin fonctionnel pourrait être : envoyer un email.
Tous les besoins fonctionnels doivent être listés à ce niveau là en respectant par exemple la template suivante pour chacun de ces besoins :

• Objectif
• Description
• Contraintes/règles de gestion
• Priorité


Besoins non fonctionnels

Un besoin non fonctionnel n’est pas lié directement au métier. Il est plutôt lié aux normes de qualité en vigueur et aussi aux contraintes de réalisation. Par exemple, pour une application web, un besoin non fonctionnel pourrait être le temps de réponse d’une page web ne doit pas dépasser cinq secondes. Les besoins non fonctionnels en général sont définis comme étant des besoins de qualité. Ainsi, on peut avoir des besoins en terme de fiabilité, de robustness, de stabilité, etc. S’ils sont exprimés dans un document cahier des charges, c’est que on doit les prendre en considération lors de la réalisation de notre projet.

Voilà, j'espère que cela va pouvoir vous aider dans vos futurs travaux de rédaction de cahier des charges.

Commentaires

  1. Merci bien en tout cas sa m'a permis de clarifier le contenu d'un cahier de charges dans son scop.

    RépondreSupprimer

Enregistrer un commentaire

Posts les plus consultés de ce blog

Les Tests d'Acceptation sous Fitnesse

Introduction Fitnesse est un outil de test d’acceptation automatisé pour réparer les problèmes liés aux processus d’exigences très tôt. Les tests d’acceptation automatisés de Fitnesse présentent plusieurs avantages tels que : Avoir un retour très tôt sur chaque item du projet. Avoir un retour très fréquent sur chaque item du projet. Ces tests sont déterministes dans la mesure où ils sont soient verts soient rouges. Permettent d’emprunter de plus en plus de chemins par rapport à la logique métier. A l’inverse des tests unitaires tels que jUnit ou autres, les tests d’acceptation sous Fitnesse permettent de tester le métier et se concentrent beaucoup plus pour découler sur le bon code (the right code), le code ayant le plus de valeur métier. Atelier Dans cet atelier, nous allons mettre en pratique un projet de test d’acceptation sous Fitnesse. Pour ce faire, nous allons utiliser l’IDE Eclipse avec Maven. Nous commençons par créer un projet Maven sous Eclipse...

Ateliers de Génie Logiciel 2019-2020

Ateliers de Génie Logiciel Sommaire de gestion Objectif Les ateliers de génie logiciel constituent un atout majeur pour les élèves ingénieurs ou étudiants inscrits dans des filières IT et qui suivent le cours de Génie Logiciel. Ils correspondent à diverses technologies dans le domaine de l’industrie du logiciel et permettent de compléter la formation par rapport surtout aux aspects pratiques. Cela pourrait représenter la boîte à outils indispensable pour n’importe quel ingénieur de logiciel. Nous tenons à travers ces ateliers à consolider les savoirs en matière de technologie logicielle d’une part et doter chaque élève ou étudiant des outils nécessaires pour bien accomplir ses tâches et savoir choisir la technologie appropriée et adaptée au contexte d’autre part.  Buts Nous visons à cerner toutes les facettes technologiques liées au développement du logiciel selon les normes requises et en respectant les bonnes pratiques en la matière. Ces ateliers sont basés sur...