Projet pour les professionnels
Convient aux professionnels souhaitant améliorer leur efficacité au travail. Grâce aux processus de développement en entreprise et à la refactorisation de systèmes hérités, vous maîtriserez l’utilisation pratique des outils d’IA en environnement professionnel et comprendrez l’importance de la collaboration en équipe et de la gestion des connaissances.
Projet 1 : développement d'outils internes
Aperçu du projet
Analyse du choix technique : pourquoi choisir Spec-driven + Cursor + Skill ?
Piloté par la spec : le pont entre les exigences et le code
- • Clarification des besoins:Grâce au Reverse Interview et aux user stories, s'assurer de bien comprendre les besoins réels
- • Rédaction du PRD : clarifier les utilisateurs cibles, les exigences fonctionnelles et les exigences non fonctionnelles
- • API Spec: Avec la spécification OpenAPI, l’IA peut générer du code directement
- • UI Spec:Décrire en détail l’interface et les interactions pour réduire les retours en arrière
- • Décomposition WBS: Décomposer les grandes tâches en petites tâches réalisables
- • Définition du DoD: Clarifier les critères d’achèvement afin de garantir la qualité
Cursor : développement assisté par IA
- • Du cahier des charges au code:Générer automatiquement la structure du code à partir du Spec
- • Mise en œuvre des fonctionnalités: utiliser le mode Agent pour implémenter des fonctionnalités complexes
- • Optimisation du code:appliquer les meilleures pratiques et les modèles de conception
- • Correction de bugs:Identifier et corriger rapidement les problèmes
Compétence : réutilisation des connaissances et collaboration en équipe
- • Capitalisation des connaissances: Regroupez les bonnes pratiques sous forme de Skill pour un partage en équipe
- • Réutilisation rapide:Utilisez Skill pour implémenter rapidement des fonctionnalités courantes
- • Garantie de cohérence:utiliser Skill pour garantir la cohérence du style et des modèles de code
- • Collaboration d’équipe: La bibliothèque Skill devient un actif de connaissance de l’équipe
Synergie des outils: Le développement piloté par la Spec garantit des exigences claires et une bonne orientation du développement, Cursor prend en charge une implémentation efficace, et Skill est responsable de la réutilisation des connaissances et de la collaboration en équipe. Cette combinaison permet un processus de développement complet de niveau entreprise, de l’exigence à la livraison, en garantissant à la fois l’efficacité du développement, la qualité du code et la collaboration d’équipe.
Processus de développement complet
Phase 1 : clarification des besoins (3 à 4 heures)
Technique d’entretien inversé:
- • Demandez « pourquoi » plutôt que « quoi » : comprendre les raisons derrière les vrais besoins
- • Demander « quand » : comprendre les scénarios d’utilisation et la fréquence
- • Demander « qui » : comprendre les utilisateurs cibles et les utilisateurs
- • Demander « et si... ? » : explorer les cas limites et la gestion des exceptions
Rédaction d’histoires utilisateur:
Je veux pouvoir consulter rapidement les données de vente,
Afin de suivre en temps opportun l’état de l’activité et de prendre des décisions.
Critères d'acceptation :
- Peut consulter les ventes du jour/de la semaine/de ce mois
- Permet de filtrer les données par catégorie de produit
- Le délai de mise à jour des données ne dépasse pas 5 minutes"
Phase 2 : rédaction du Spec (4 à 6 heures)
Rédaction du PRD:
- • Utilisateurs cibles : chefs de produit, analystes métier
- • Exigences fonctionnelles : affichage des données, filtrage, export
- • Exigences non fonctionnelles : performance (temps de chargement <2 secondes), disponibilité (99,9 %), sécurité
API Spec(OpenAPI):
UI Spec: décrivez en détail la disposition de l’interface, le flux d’interaction et les changements d’état
Phase 3 : Décomposition WBS (2 à 3 heures)
Principes de décomposition des tâches:
- • Contrôle de la granularité: chaque tâche se termine en 2 à 4 heures
- • Dépendances: Définir clairement les dépendances entre les tâches
- • Testabilité: chaque tâche a des critères d’acceptation clairs
Exemple de WBS:
Phase 4 : Définition du DoD (1 heure)
Normes de qualité:
- • Qualité du code : vérifié par ESLint, aucun avertissement grave
- • Couverture des tests : couverture des tests unitaires >80%
- • Documentation complète : la documentation API et le manuel utilisateur sont complets
Critères d’acceptation:
- • Validation fonctionnelle : toutes les fonctionnalités sont implémentées selon la Spec et les tests sont réussis
- • Acceptation des performances : temps de chargement de la page <2 secondes, temps de réponse de l’API <500 ms
- • Validation sécurité : scans de sécurité réussis, sans vulnérabilités à haut risque
Phase 5 : mise en œuvre du développement (8 à 12 heures)
1. Utiliser Cursor Agent pour générer la structure du projet à partir de la Spec
2. Utiliser Skill pour implémenter rapidement des fonctionnalités courantes :
- • Utiliser "Data Query Skill" pour implémenter la logique de requête API
- • Utiliser la "compétence de composant de graphique" pour créer des composants de visualisation
- • Utiliser le « Error Handling Skill » pour uniformiser la gestion des erreurs
3. Utiliser Cursor Agent pour implémenter une logique métier complexe
4. Revue de code et optimisation
5. Rédiger des cas de test
Phase 6 : test et livraison (2-3 heures)
1. Exécuter les cas de test et corriger les bugs
2. Test d’acceptation utilisateur (UAT)
3. Déployer en production
4. Rédiger des manuels utilisateur et des guides d’utilisation
5. Formation de l’équipe et partage des connaissances
Collaboration d’équipe et gestion des connaissances
Construction de la bibliothèque de compétences
- • Créer une compétence: Encapsuler les fonctions courantes sous forme de Skills, comme « Data Query Skill » et « Chart Component Skill »
- • Documentation Skill: rédiger des instructions d'utilisation et des exemples pour chaque Skill
- • Gestion des versions de Skill: Utiliser Git pour gérer les versions de Skill, avec prise en charge du retour à une version précédente
- • Partage de compétences: partager la bibliothèque de compétences au sein de l’équipe pour améliorer la réutilisation
Capitalisation des connaissances
- • Document des bonnes pratiques: Consigner les meilleures pratiques tout au long du processus de développement
- • Solution au problème: Consigner les problèmes courants et les solutions
- • Compte rendu de revue de code: consigner les problèmes détectés lors de la revue de code et les suggestions d’amélioration
- • Rétrospective du projet: à la fin du projet, effectuer une rétrospective et résumer les enseignements tirés
Liste de contrôle du projet
Projet 2 : refonte d’un système existant
Aperçu du projet
Analyse du choix technologique : pourquoi choisir Windsurf + Cursor Agent + Fabric ?
Windsurf : analyse de grands codebases
- • Technologie Fast Context: Comprendre rapidement la structure et la logique d’une grande base de code
- • Questions-réponses sur la base de code:Comprendre les fonctionnalités et les dépendances du code grâce à des questions-réponses
- • Analyse de l'architecture: Identifier les modèles d'architecture système et les problèmes de conception
- • Analyse des dépendances: Analyser les dépendances entre les modules
Cursor Agent : conception d’architecture et refactorisation
- • Conception d’architecture : Concevoir une nouvelle architecture sur la base des résultats de l’analyse
- • Migration de code: Migrer l’ancien code vers une nouvelle architecture
- • Mise en œuvre des fonctionnalités: implémenter de nouvelles fonctionnalités ou améliorer les fonctionnalités existantes
- • Génération de tests:Générer des cas de test pour s’assurer que la fonctionnalité est correcte
Fabric : optimisation de la qualité du code
- • Revue de code: Examiner la qualité du code refactorisé
- • Optimisation des performances:Optimiser les performances du code et améliorer l'efficacité du système
- • Bonnes pratiques:Appliquer les meilleures pratiques modernes de développement
- • Audit de sécurité: Vérifier les vulnérabilités et les risques de sécurité
Synergie des outils: Windsurf est chargé de comprendre le système existant, Cursor Agent de concevoir et d’implémenter le nouveau système, et Fabric d’optimiser la qualité du code. Cette combinaison permet un processus de refactoring complet, de l’analyse au refactoring puis à l’optimisation, garantissant à la fois la justesse du refactoring et la qualité du nouveau système.
Stratégie de refactorisation
Stratégie 1 : analyse de la base de code (avec Windsurf Fast Context)
1. Utiliser Windsurf pour analyser l’ancienne base de code :
- • Comprendre l’architecture globale du système et la répartition des modules
- • Identifier la logique métier principale et les flux de données
- • Analyser la structure de la base de données et le modèle de données
- • Identifier la dette technique et les problèmes de conception
2. Générer le rapport d’analyse du système :
- • Schéma d’architecture : modules du système et dépendances
- • Liste des fonctionnalités : liste de tous les modules de fonctionnalités
- • Modèle de données : structure et relations des tables de base de données
- • Liste des problèmes : dette technique et points de risque
Stratégie 2 : conception d’architecture (utiliser Cursor Agent)
1. Utilisez Cursor Agent pour concevoir une nouvelle architecture :
- Adopter une architecture de microservices, découpée par modules métier
- Utiliser Express.js comme framework Web
- Utiliser Prisma comme ORM
- Utiliser PostgreSQL comme base de données
- Implémenter la conception d’une API RESTful
- Ajouter la documentation API (Swagger)
- Implémenter l’authentification et l’autorisation (JWT)"
2. Concevoir un plan de migration des données :
- • Mappage des modèles de données : des modèles PHP vers les modèles Node.js
- • Script de migration des données : migrer les données historiques
- • Validation des données : garantir l’intégrité des données
Stratégie 3 : refactorisation progressive (avec Fabric Patterns)
1. Adopter le modèle Strangler Fig :
- • Remplacer progressivement les anciennes fonctionnalités au lieu de tout réécrire d’un coup
- • Faire fonctionner les anciens et les nouveaux systèmes en parallèle, puis transférer progressivement le trafic
- • Réduire les risques de refactorisation et garantir la continuité de l'activité
2. Optimiser le code avec Fabric Patterns :
- • Modèles de conception d’application
- • Modèle d’optimisation des performances d’application
- • Pattern des meilleures pratiques de sécurité des applications
Stratégie 4 : couverture des tests (méthode TDD)
1. Écrivez d’abord les tests, puis l’implémentation :
- • Rédiger des cas de test pour chaque fonctionnalité
- • S’assurer que les nouvelles fonctionnalités se comportent de manière cohérente avec les anciennes
- • Utiliser le développement piloté par les tests (TDD)
2. Types de tests :
- • Tests unitaires : tester des fonctions et modules individuels
- • Tests d’intégration : tester l’intégration entre les modules
- • Tests de bout en bout : tester le flux métier complet
Analyse des risques et stratégies d'atténuation
Risque 1 : interruption des activités
Stratégie de réponse: Adopter une refactorisation progressive, faire fonctionner les anciens et nouveaux systèmes en parallèle, puis basculer progressivement le trafic. Mettre en place un mécanisme de retour arrière et revenir immédiatement en arrière en cas de problème.
Risque 2 : échec de la migration des données
Stratégie de réponse:Rédigez des scripts détaillés de migration des données et testez-les de manière approfondie. Mettez en place des mécanismes de validation des données pour garantir l’intégrité des données. Conservez des sauvegardes des anciennes données.
Risque 3 : baisse des performances
Stratégie de réponse: Effectuer des tests de performance pour identifier les goulots d’étranglement. Utiliser Fabric pour optimiser les performances du code. Mettre en place une surveillance des performances afin de détecter rapidement les problèmes.
Risque 4 : fonctionnalités manquantes
Stratégie de réponse:Analyser en détail les fonctionnalités de l’ancien système et établir une liste des fonctionnalités. Utiliser Windsurf pour ne rien oublier. Effectuer des tests fonctionnels approfondis.
Liste de contrôle du projet
Résultats d’apprentissage
À la fin de ce chapitre, vous pourrez :
- 1Maîtriser le processus complet du développement d’entreprise (clarification des besoins → rédaction de la Spec → découpage WBS → définition du DoD → développement → tests → livraison)
- 2Comprendre la méthodologie du développement piloté par les spécifications et savoir rédiger des PRD, des API Specs et des UI Specs clairs
- 3Maîtriser les méthodes de collaboration d’équipe et de gestion des connaissances, être capable de constituer une bibliothèque de compétences et de capitaliser les bonnes pratiques
- 4Comprendre les stratégies et les risques de la refactorisation des systèmes legacy, et être capable d’élaborer un plan de refactorisation raisonnable
- 5Dispose de capacités de gestion de projet et de contrôle qualité de niveau entreprise, permettant d’assurer la livraison réussie des projets