← Retour au portail

Fiche 4 - Rédiger un cahier des charges

Maîtriser la rédaction d'un cahier des charges : définition, objectifs, structure type (contexte, périmètre, exigences fonctionnelles et non fonctionnelles, contraintes, planning, budget), méthodes de recueil des besoins et pièges à éviter.

Intermédiaire — BTS SIO / SISR 2ème année ⏱️ 25 min 📁 Gestion de projet

🎯 Objectifs de la fiche

  1. Définition et objectifs du cahier des charges — Document contractuel entre le maître d'ouvrage et le maître d'œuvre
  2. Structure type d'un cahier des charges — Présentation, contexte, périmètre, objectifs, exigences, contraintes
  3. Recueil et analyse des besoins — Interviews, questionnaires, ateliers, diagrammes de cas d'usage
  4. Exigences fonctionnelles vs non fonctionnelles — Ce que le système doit faire vs ses qualités (performance, sécurité, maintenabilité)
  5. Contraintes et critères d'acceptation — Techniques, budgétaires, juridiques, planning, validation
  6. Erreurs fréquentes et bonnes pratiques — Ambiguïté, oublis, absence de priorisation, manque de précision

Prérequis

Aucun prérequis technique spécifique, mais une familiarité avec le vocabulaire de base de la gestion de projet est utile (planning, ressources, livrables).

1. Qu'est-ce qu'un cahier des charges ?

Le cahier des charges (CDC) est un document de référence qui formalise l'ensemble des besoins, des contraintes et des objectifs d'un projet. Il sert à la fois de contrat entre le maître d'ouvrage (MOA – celui qui exprime le besoin) et le maître d'œuvre (MOE – celui qui réalise), et de guide pour l'équipe de réalisation. Ses principaux objectifs : - Clarifier et fixer le périmètre du projet. - Servir de base à la réponse (appel d'offres) ou à la planification. - Éviter les malentendus et les dérives (gloutonnement des exigences). - Constituer un référentiel pour la recette et la validation finale.

ℹ️ Dans un contexte agile, le cahier des charges peut être plus léger et évolutif (ex: backlog produit), mais les fondamentaux restent les mêmes.

2. Structure type d'un cahier des charges

Bien qu'il n'existe pas de modèle unique, un cahier des charges complet comporte généralement les sections suivantes :

SectionContenu typique
1. PrésentationNom du projet, auteurs, destinataires, historique des versions.
2. Contexte et enjeuxRaison du projet, problèmes à résoudre, opportunités.
3. Objectifs du projetObjectifs stratégiques, opérationnels et critères de réussite.
4. PérimètreCe qui est inclus / exclu (fonctionnalités, utilisateurs, sites).
5. Exigences fonctionnellesDétail des fonctionnalités attendues (cas d'usage).
6. Exigences non fonctionnellesPerformances, sécurité, disponibilité, évolutivité, maintenabilité.
7. ContraintesTechniques, budgétaires, légales, réglementaires, temporelles.
8. Livrables et jalonsListe des livrables et échéances principales.
9. Planning prévisionnelCalendrier, ressources, étapes clés.
10. Budget et modalités financièresCoût estimé, pénalités, conditions de paiement.
11. Critères de validation / recetteTests de conformité, procédures d'acceptation.
💡 Adaptez la structure à la taille du projet. Un petit projet interne peut se contenter d'une version simplifiée avec un tableau des exigences.

3. Recueil des besoins – méthodes et outils

Avant de rédiger, il faut recueillir et analyser les besoins des parties prenantes. Les techniques les plus courantes : - Entretiens individuels : approfondis, permettent de comprendre les attentes implicites. - Questionnaires / sondages : utiles pour recueillir des avis nombreux et standardisés. - Ateliers de co-conception : réunissent MOA et MOE pour prioriser les fonctionnalités. - Observation terrain : comprendre les processus réels (parfois différents des processus décrits). - Analyse documentaire : examiner les procédures existantes, les cahiers des charges précédents. Une fois les besoins collectés, on les structure en exigences claires, non ambigües, vérifiables et traçables.

Exemple d'expression d'un besoin (approche SMART) :
❌ Ambigu : "L'application doit être rapide."
✅ Précis : "Le temps de réponse moyen pour une requête de recherche doit être inférieur à 200 ms en condition de charge nominale (100 utilisateurs simultanés)."

4. Exigences fonctionnelles et non fonctionnelles

La distinction entre ces deux types d'exigences est fondamentale : - Fonctionnelles : décrivent ce que le système doit faire (actions, traitements, interactions utilisateur). Exemple : « Le système doit permettre la création d'un compte utilisateur avec email et mot de passe. » - Non fonctionnelles : décrivent les qualités du système (comment il le fait). Exemple : « Le système doit supporter 500 connexions simultanées avec une disponibilité de 99,9 %. »

CatégorieExemples d'exigences
FonctionnellesAuthentification, gestion de panier, export PDF, recherche avancée, workflow de validation.
PerformanceDébit, latence, temps de réponse, temps de chargement.
SécuritéChiffrement des données, gestion des rôles, journalisation (logs), protection contre les injections.
DisponibilitéTaux de disponibilité (SLA), temps de reprise (RTO), temps de restauration (RPO).
ÉvolutivitéCapacité à monter en charge, à ajouter de nouvelles fonctionnalités.
MaintenabilitéModularité, documentation, tests unitaires, facilité de correction et d'évolution.
Ergonomie / UXTemps d'apprentissage, nombre de clics pour une tâche, conformité aux normes d'accessibilité (RGAA).
ℹ️ Les exigences non fonctionnelles sont souvent négligées, mais elles sont cruciales pour la qualité du projet. Ne les oubliez pas.

5. Contraintes et critères d'acceptation

Les contraintes sont des limites imposées au projet, indépendantes du besoin fonctionnel. Elles peuvent être : - Techniques : langage de programmation imposé, environnement (Windows/Linux), compatibilité avec des systèmes existants. - Budgétaires : enveloppe maximale pour le développement, le matériel, les licences. - Réglementaires : RGPD (protection des données), normes sectorielles (ex: santé, banque). - Temporelles : date butoir, jalons intermédiaires obligatoires. Les critères d'acceptation définissent les conditions précises pour que le livrable soit validé par le client. Ils doivent être objectifs et mesurables (ex: « Tous les cas de test du plan de recette doivent passer sans anomalie bloquante. »).

6. Planning, ressources et budget

Le cahier des charges doit esquisser le planning et les ressources nécessaires, même si les chiffres seront précisés dans la réponse du prestataire : - Planning : diagramme de Gantt, étapes clés (kick-off, recette, déploiement), dépendances. - Ressources humaines : profils requis (chef de projet, développeurs, testeurs, administrateurs système). - Infrastructure : serveurs, bases de données, réseau, hébergement. - Budget : coût estimé, décomposition par poste (études, développement, tests, formation, maintenance).

💡 Prévoyez toujours une marge de manœuvre (ex: 15-20 %) pour les imprévus – technique, retard, évolutions de dernière minute.

7. Erreurs fréquentes et bonnes pratiques

Erreurs à éviter : - Exigences trop vagues ou non vérifiables (« interface intuitive », « système robuste »). - Oublier des parties prenantes (utilisateurs finaux, services supports). - Négliger les contraintes techniques ou légales. - Confondre solution technique et besoin métier (« il nous faut une base de données Oracle » au lieu de « il nous faut un stockage fiable et performant »). - Absence de priorisation (tout est « urgent » ou « prioritaire »). Bonnes pratiques : - Impliquer les utilisateurs finaux dès le début. - Utiliser des cas d'usage ou des user stories pour décrire les fonctionnalités. - Hiérarchiser les besoins (MoSCoW : Must have, Should have, Could have, Won't have). - Faire relire le document par différentes personnes pour détecter les incohérences. - Versionner le document et gérer les évolutions (amendements).

Exemple de priorisation MoSCoW pour un site e-commerce :
- M (Must) : Catalogue, panier, paiement sécurisé.
- S (Should) : Système de recommandation, avis clients.
- C (Could) : Chat en ligne, programme de fidélité.
- W (Won't) : Interface en réalité virtuelle (hors périmètre initial).
Quelle est la principale différence entre une exigence fonctionnelle et une exigence non fonctionnelle ?
  • La première est obligatoire, l'autre facultative
  • La première décrit une action, la seconde décrit une qualité
  • La première concerne les utilisateurs, l'autre les développeurs
  • La première est écrite en langage naturel, l'autre en langage technique

✅ Réponse : La première décrit une action, la seconde décrit une qualité

Qui est le maître d'œuvre (MOE) dans un projet ?
  • Le commanditaire du projet
  • L'équipe qui réalise le projet (prestataire, service interne)
  • L'utilisateur final
  • Le chef de projet MOA

✅ Réponse : L'équipe qui réalise le projet (prestataire, service interne)

Parmi ces exigences, laquelle est non fonctionnelle ?
  • Le système doit permettre la création de comptes utilisateurs
  • Le temps de réponse moyen doit être inférieur à 300 ms
  • Le système doit envoyer un email de confirmation
  • Le système doit permettre la recherche par mot-clé

✅ Réponse : Le temps de réponse moyen doit être inférieur à 300 ms

Que signifie l'acronyme MoSCoW utilisé dans la priorisation ?
  • Must, Should, Could, Won't
  • Major, Standard, Common, Weak
  • Minimum, Standard, Complete, Wide
  • Model, Structure, Code, Workflow

✅ Réponse : Must, Should, Could, Won't

Quelle section du cahier des charges décrit ce qui est inclus et ce qui est exclu ?
  • Le contexte
  • Le périmètre
  • Les contraintes
  • Les livrables

✅ Réponse : Le périmètre

Quelle est l'une des meilleures pratiques pour rédiger une exigence ?
  • Être vague pour laisser de la flexibilité
  • Utiliser des termes subjectifs comme 'ergonomique'
  • Rendre l'exigence vérifiable et mesurable
  • Décrire la solution technique plutôt que le besoin

✅ Réponse : Rendre l'exigence vérifiable et mesurable

À quoi sert le plan de recette dans un cahier des charges ?
  • À définir le budget
  • À décrire les critères d'acceptation et les tests de validation
  • À lister les contraintes juridiques
  • À planifier les ressources humaines

✅ Réponse : À décrire les critères d'acceptation et les tests de validation

Quel document sert de référentiel tout au long du projet ?
  • Le procès-verbal de réunion
  • La convention de stage
  • Le cahier des charges
  • La fiche de poste

✅ Réponse : Le cahier des charges

Quelle méthode de recueil des besoins est la plus adaptée pour comprendre en profondeur les attentes d'un petit groupe de parties prenantes ?
  • Questionnaire en ligne diffusé à grande échelle
  • Entretiens individuels semi-directifs
  • Analyse des logs systèmes
  • Benchmark concurrentiel

✅ Réponse : Entretiens individuels semi-directifs

Quelle erreur est fréquemment commise lors de la rédaction d'un cahier des charges ?
  • Détailler trop finement les exigences
  • Oublier de définir les critères de validation
  • Prévoir une marge pour les imprévus
  • Impliquer les utilisateurs finaux

✅ Réponse : Oublier de définir les critères de validation

🎯 Passer l'évaluation de cette fiche