Workflow professionnel de développement backend

VérifiéPrudence

Workflow complet pour la construction d'API backend, bases de données, authentification, microservices, des exigences au déploiement, avec programmation défensive et séparation des préoccupations.

Spar Skills Guide Bot
DeveloppementAvancé
24/07/2026
Claude Code
#backend#api-design#database-schema#authentication#microservices

Recommandé pour

Synthèse automatique

Encadre le développement backend en un flux de travail en six phases, de la clarification des besoins au durcissement de la sécurité, aux tests et à la revue finale.

Points forts

  • Découpage explicite en phases avec artefacts de sortie JSON à chaque étape (exigences, architecture)
  • Implémentation guidée de l'intérieur vers l'extérieur : Repository → Service → Handler
  • Phase sécurité dédiée couvrant authentification, autorisation, validation des entrées, prévention des injections, limitation de débit et CORS/CSP
  • Pyramide de tests précise, avec priorité donnée aux chemins d'erreur
  • Revue finale structurée sur la concurrence, les performances (N+1, index, pagination), l'observabilité et la documentation OpenAPI

Limites

  • Description et déclencheurs très larges : le skill s'active pour presque toute tâche serveur, avec un risque de bruit
  • Fortement orienté code : pas de réelle automatisation des vérifications, chaque phase repose sur la discipline de l'agent
  • Le contenu est en chinois et la liste de références externes est tronquée, ce qui gêne la vérification des compléments annoncés
Quand l'utiliser

À utiliser lorsqu'on démarre ou restructure un service backend et qu'on veut un cadre reproductible couvrant conception, sécurité, tests et revue.

Quand l'éviter

À éviter pour une correction ponctuelle d'une ligne ou une question ciblée sur un framework, où le déroulé complet en six phases est disproportionné.

Analyse de sécurité

Prudence
Score qualité88/100

The skill is a legitimate backend-development workflow and contains no malicious, obfuscated, exfiltration, or safety-disabling instructions. However, its broad tool permissions and deployment/CI-CD scope mean an agent could execute commands and modify files, so it warrants caution rather than being treated as purely read-only.

Points d'attention
  • •Declared tools include Bash, Write, Edit, and WebFetch, allowing command execution and file modification during backend scaffolding/deployment.
  • •Workflow covers deployment, Docker/CI-CD, and writing server code, so it can legitimately execute or alter project infrastructure.
  • •No explicit guardrails are provided around secrets handling, destructive shell commands, or human approval before deployment.
Comment cette analyse est faite

Exemples

Design a REST API
Build a REST API for a task management app in FastAPI with PostgreSQL — design the schema, lay out the endpoints and implement JWT authentication.
Secure an existing service
Review my Express backend for security gaps: input validation, rate limiting, authorization on admin routes and sensitive data leakage in logs.
Prepare backend tests
Write unit and integration tests for my NestJS service layer and repository methods, covering error paths and boundary cases.

name: backend-dev description: | This skill should be used when the user asks to "build a backend API", "design a database schema", "implement authentication", "create a REST endpoint", "develop a microservice", "set up server-side logic", "write API routes", "design system architecture", "implement business logic", "connect to database", "set up middleware", "configure ORM", "write server tests", "deploy backend service", or discusses backend-related tasks including API design, database design, authentication/authorization, server architecture, middleware, error handling, logging, performance optimization, or backend testing. Also triggered by technology-specific requests mentioning "Express", "FastAPI", "Spring Boot", "Django", "Rails", "Gin", "Fiber", "NestJS", "GraphQL", "gRPC", "WebSocket", "PostgreSQL", "MongoDB", "Redis", "JWT", "OAuth", "OpenAPI", "Swagger", "Docker compose backend", or "CI/CD pipeline".

【中文触发场景】

  • "写后端接口"、"开发API"、"设计数据库"、"实现登录"
  • "搭建后端服务"、"写服务器代码"、"实现业务逻辑"
  • "数据库设计"、"表结构设计"、"API文档"
  • "后端架构设计"、"微服务拆分"、"接口规范"
  • "权限系统"、"中间件"、"错误处理"、"日志"
  • "后端测试"、"单元测试"、"集成测试"
  • "部署后端"、"Docker化"、"CI/CD配置" allowed-tools: Read, Write, Edit, Bash, Glob, Grep, WebFetch, TaskCreate, TaskUpdate, TaskList

Backend Development Professional Workflow

专业后端开发工作流 —— 从需求到部署,结构化、可追溯、可审查。

核心原则

  1. 防御性编程 —— 所有外部输入不可信,边界条件显式处理
  2. 关注点分离 —— 分层架构(Handler → Service → Repository),每层只做一件事
  3. 显式优于隐式 —— 依赖注入、配置外部化、错误显式传播
  4. 渐进式交付 —— 先可运行,再优化;先核心路径,再边缘场景

工作流总览

Phase 0: 需求澄清与约束定义  ──→  明确边界、性能目标、部署环境
    ↓
Phase 1: 架构设计             ──→  分层/模块/数据流/技术选型 & 决策记录
    ↓
Phase 2: 核心实现(增量)      ──→  Repository → Service → Handler 由内向外
    ↓
Phase 3: 安全加固             ──→  认证/授权/输入校验/注入防护/速率限制
    ↓
Phase 4: 测试覆盖             ──→  单元 → 集成 → 契约测试(含边界与异常)
    ↓
Phase 5: 审查与改进           ──→  自审查清单 → 性能评估 → 文档收尾

每个阶段的 prompt 模板在 prompts/ 目录中,按需引用。

阶段详细说明

Phase 0: 需求澄清与约束定义

执行 prompts/phase0-clarify.md 中的提问框架,收齐以下信息:

| 维度 | 必须明确的点 | |------|-------------| | 上下文 | 业务场景、用户群体、预期流量 (QPS) | | 技术栈 | 语言/框架/数据库/运行时版本 | | 约束 | 部署方式(容器/Serverless/VM)、团队规模、时间线 | | 接口风格 | REST / GraphQL / gRPC / WebSocket / 混合 | | 数据要求 | 一致性级别、数据量级、是否需要事务 | | 非功能要求 | P99延时、可用性 SLA、审计合规 |

输出文件:.backend-dev/phase0-requirements.json

Phase 1: 架构设计

执行 prompts/phase1-arch.md,输出以下工件:

  • 分层架构图 —— Handler / Service / Repository / 中间件栈
  • 模块划分 —— 每个模块的职责、边界、依赖方向
  • 数据模型 —— 核心 Entity 定义、表关系(ER)、索引策略
  • 接口契约草案 —— 端点路径、请求/响应结构、状态码
  • 技术选型决策记录 (ADR) —— 每次选型附理由和替代方案
  • 风险与缓解 —— 识别数据热点、单点瓶颈、降级策略

输出文件:.backend-dev/phase1-architecture.json

Phase 2: 核心实现

按 Repository → Service → Handler 由内向外顺序,逐层实现:

Request  →  [Middleware]  →  Handler  →  Service  →  Repository  →  DB
                                            │
                                            ↓
                                        外部服务 / 缓存 / 消息队列

每条实现遵循:

  1. 先定义接口(interface/trait/type),再实现
  2. 显式错误类型 —— 定义领域错误码,不在运行时拼字符串
  3. 完备的日志 —— 每个外部调用的入口和出口都记录结构化日志
  4. 幂等性考虑 —— 写操作的幂等键(idempotency key)设计

Phase 3: 安全加固

执行 prompts/phase3-security.md 中的安全检查清单,逐项验证:

  • 认证策略(JWT / Session / OAuth / API Key)
  • 授权模型(RBAC / ABAC / ACL)
  • 输入校验(结构化校验库 + 白名单策略)
  • 注入防护(参数化查询 / ORM / 输出编码)
  • 速率限制与防滥用
  • 敏感数据(加密存储、响应脱敏、日志脱敏)
  • CORS / CSP / HTTPS 强制

Phase 4: 测试覆盖

执行 prompts/phase4-testing.md,按金字塔模型覆盖:

        ╱╲              手动探索测试
       ╱  ╲             E2E 测试 (关键用户路径)
      ╱    ╲            集成测试 (模块间契约)
     ╱______╲           单元测试 (核心逻辑 + 边界)

每条测试准则:

  • 每个 Repository 方法对应一个集成测试
  • 每个 Service 公共方法对应单元测试(mock 依赖层)
  • 每条 Handler 路径(成功/鉴权失败/参数错误/404)各一个测试
  • 错误路径优先级 ≥ 成功路径

Phase 5: 审查与改进

执行 prompts/phase5-review.md,逐项审查:

  1. 正确性审查 —— 并发竞态、事务边界、状态机状态遗漏
  2. 性能审查 —— N+1 查询、缺少索引、未使用连接池、未分页
  3. 可观测性 —— 结构化日志、指标埋点、健康检查端点、追踪上下文传播
  4. 文档补全 —— API 文档 (OpenAPI)、README 运行说明、环境变量清单

交叉引用清单

  • references/api-design.md —— REST / GraphQL / gRPC 设计规范与对比
  • references/db-best-practices.md —— 表设计、索引策略、迁移、连接池
  • references/error-handling.md —— 错误类型体系、结构化错误响应、全局异常处理
  • references/security-baseline.md —— 安全基线检查表(OWASP Top 10 映射)
  • references/struct-export.md —— 阶段间结构化数据传递格式定义

输出规范

所有中间产出统一存放于 .backend-dev/ 目录,按阶段命名:

.backend-dev/
├── phase0-requirements.json    # 需求与约束
├── phase1-architecture.json    # 架构设计方案
├── phase2-impl-record.md       # 实现过程记录
├── phase3-security-report.md   # 安全审查报告
├── phase4-test-report.md       # 测试覆盖报告
├── phase5-review-report.md     # 最终审查报告
└── adr/                        # 架构决策记录(每项决策一个 markdown)
    ├── 001-use-postgresql.md
    └── 002-adopt-repository-pattern.md

注意事项

  1. 增量交付 —— 不要一次性生成所有代码。每次围绕一个功能点的完整分层实现(Handler → Service → Repository),提交后继续下一个
  2. 不重复造轮子 —— 优先使用框架内建机制和社区稳定库,仅在确有必要时自定义
  3. 兼容性优先 —— 接口变更时保持向后兼容(字段添加不删除、可选参数扩展)
  4. 不假设运行环境 —— 所有路径引用使用相对路径,配置使用环境变量 + 默认值

Du fichier au premier essai

Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.

Consulter la source et ses fichiers annexes

Ce téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.

1. Télécharger le fichier

Télécharger SKILL.md

Depuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/backend-development-professional-workflow-mryiqgar/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.

Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.

mkdir -p '.skill-downloads/backend-development-professional-workflow-mryiqgar' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/backend-development-professional-workflow-mryiqgar/download' --output '.skill-downloads/backend-development-professional-workflow-mryiqgar/SKILL.md.part' && mv '.skill-downloads/backend-development-professional-workflow-mryiqgar/SKILL.md.part' '.skill-downloads/backend-development-professional-workflow-mryiqgar/SKILL.md'

2. Vérifier les prérequis

Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.

Outils déclarés par l’auteur (à vérifier dans votre agent) : Read, Write, Edit, Bash, Glob, Grep, WebFetch, TaskCreate, TaskUpdate, TaskList

Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.

Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.

3. Charger la skill

Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.

Claude Code
test -f '.skill-downloads/backend-development-professional-workflow-mryiqgar/SKILL.md' && test -s '.skill-downloads/backend-development-professional-workflow-mryiqgar/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/backend-dev' && cp -R '.skill-downloads/backend-development-professional-workflow-mryiqgar' '.claude/skills/backend-dev'

OpenSkills

OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.

Installation officielle d’OpenSkills
openskills install './.skill-downloads/backend-development-professional-workflow-mryiqgar'

openskills read 'backend-development-professional-workflow-mryiqgar'

La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.

Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.

openskills sync

Mode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.

4. Faire un premier essai

Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :

Lis .skill-downloads/backend-development-professional-workflow-mryiqgar/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.

Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.

Skills similaires