Débutant40 min25 XP
Objectifs de cette leçon
- Rédiger des spécifications claires pour l'IA
- Décomposer un projet en tâches exploitables
- Formuler des prompts efficaces
Rédiger les spécifications fonctionnelles 📋
Pourquoi les spécifications sont essentielles
Sans spécifications claires, même la meilleure IA ne peut pas vous aider efficacement. C'est comme demander à un constructeur de bâtir une maison sans plan.
Les 5 étapes de la spécification
Étape 1 : Définir le problème
Questions à se poser :
- Quel problème résolvons-nous ?
- Pour qui ?
- Quelle est la situation actuelle ?
- Quelle est la situation idéale ?
Exemple :
Problème : Les étudiants passent des heures à chercher des stages. Solution : Une plateforme qui centralise les offres et facilite les candidatures.
Étape 2 : Identifier les utilisateurs
| Profil | Besoin principal | Niveau de priorité |
|---|---|---|
| Étudiant | Trouver et postuler à des stages | Haute |
| Entreprise | Publier des offres et recevoir des candidatures | Haute |
| Administration | Gérer les comptes et valider les offres | Moyenne |
Étape 3 : Lister les fonctionnalités
Utilisez la méthode MoSCoW :
| Priorité | Fonctionnalité |
|---|---|
| Must | Inscription / Connexion |
| Must | Recherche de stages |
| Must | Candidature en ligne |
| Should | Messagerie entre étudiants et entreprises |
| Should | Tableau de bord administrateur |
| Could | Notifications par email |
| Could | Export des candidatures en PDF |
| Won't | Application mobile (pour la v1) |
Étape 4 : Définir les écrans
Accueil → Liste des stages → Détail d'un stage → Candidature ↓ Inscription → Connexion → Profil → Mes candidatures ↓ Admin → Gestion des utilisateurs → Gestion des offres
Étape 5 : Identifier les contraintes
| Type | Contrainte |
|---|---|
| Technique | Next.js + Laravel + MySQL |
| Fonctionnelle | Responsive (mobile + desktop) |
| Sécurité | Conformité RGPD |
| Délai | 3 mois |
| Budget | Hébergement VPS à < 20€/mois |
User Stories
Les user stories transforment les besoins en exigences testables :
EN TANT QUE [utilisateur] JE VEUX [action] AFIN DE [bénéfice] Exemples : - EN TANT QU'étudiant JE VEUX rechercher des stages par ville et domaine AFIN DE trouver des opportunités pertinentes - EN TANT QU'entreprise JE VEUX publier une offre de stage avec des critères AFIN DE recevoir des candidatures qualifiées - EN TANT QU'administrateur JE VALIDER ou refuser les offres publiées AFIN DE garantir la qualité des annonces
Le cahier des charges
CAHIER DES CHARGES — Plateforme de stages 1. CONTEXTE - Problème : Recherche de stages difficile - Solution : Plateforme centralisée - Public cible : Étudiants, entreprises, écoles 2. FONCTIONNALITÉS - Authentification (inscription, connexion, mot de passe oublié) - Recherche avancée (filtres, tri, pagination) - Système de candidature - Messagerie - Administration 3. ARCHITECTURE - Frontend : Next.js + Tailwind CSS - Backend : Laravel + MySQL - API : REST 4. SÉCURITÉ - Authentification JWT (Sanctum) - Protection CSRF - Validation des données - Conformité RGPD 5. DÉPLOIEMENT - Docker + Docker Compose - VPS Ubuntu + Nginx - SSL Let's Encrypt
Utiliser l'IA pour les spécifications
Bon prompt :
Rédige les user stories pour une application de gestion de bibliothèque. Utilisateurs : lecteur, bibliothécaire, admin. Fonctionnalités : inscription, recherche de livres, réservation, emprunt, retour, gestion du catalogue. Format : EN TANT QUE / JE VEUX / AFIN DE. Priorise avec MoSCoW.
Mauvais prompt :
Fais-moi les specs d'une appli
Exercices 🎯
- Spécifications : Rédigez les spécifications complètes pour une application de recipes (recettes de cuisine).
- User stories : Créez 10 user stories pour votre projet avec la méthode MoSCoW.
- IA : Utilisez un outil IA pour générer les user stories, puis comparez avec votre version.
Prochaine leçon : Concevoir l'architecture technique.
Constructeur de spécifications
5 étapes1. Définir le problème
Quel problème résout-on ? Pour qui ?
Ex : Les étudiants ne trouvent pas de stage facilement.
Identifier la douleur
Définir le contexte
Mesurer l'impact
Étape 1/5
Planificateur de fonctionnalités (MoSCoW)
Cliquez pour prioriserDoit avoir(3)
Devrait avoir(2)
Pourrait avoir(2)
N'aura pas(1)