writing-use-cases
Create structured use case documentation with sequence diagrams for backend systems. Use when documenting API endpoints, service interactions, event flows, or system behaviors. Triggers on requests like "document this use case", "create use case for X endpoint", "write flow documentation", or "explain how X feature works".
When & Why to Use This Skill
This Claude skill automates the generation of structured backend use case documentation, integrating Mermaid sequence diagrams to visualize complex system behaviors. It helps developers and architects document API endpoints, service-to-service interactions, and event-driven flows with precision, ensuring technical consistency and reducing manual documentation overhead.
Use Cases
- API Endpoint Documentation: Automatically trace controller logic to create sequence diagrams and key point summaries for RESTful or gRPC services.
- System Integration Mapping: Visualize interactions between microservices, external APIs, and databases to clarify architectural dependencies and data flow.
- Event-Driven Architecture Tracing: Document asynchronous message flows across systems using platforms like SNS, Kafka, or RabbitMQ to track event publishing and consumption.
- Business Logic & State Transitions: Map out complex validation rules and entity state changes within a feature to provide a clear audit trail for stakeholders and new team members.
| name | writing-use-cases |
|---|---|
| description | Create structured use case documentation with sequence diagrams for backend systems. Use when documenting API endpoints, service interactions, event flows, or system behaviors. Triggers on requests like "document this use case", "create use case for X endpoint", "write flow documentation", or "explain how X feature works". |
Writing Use Cases
Create use case markdown files that document backend flows with mermaid sequence diagrams.
Discovery Workflow
- Identify entry point - Find the controller/handler for the endpoint
- Trace the flow - Follow method calls, service interactions, external calls
- Find events - Look for message publishing (SNS, Kafka, RabbitMQ, etc.)
- Map state transitions - Identify entity state changes
- Note validations - Document validation rules and constraints
Output Structure
# {Feature Name} Use Case
## Overview
{1-2 sentences: what this use case does and when it's triggered}
## Flow
{mermaid sequence diagram - see references/mermaid-patterns.md}
## Key Points
- **Entry Point:** `{HTTP method} {path}` ([`{ControllerName}`]({relative-path}))
- **Request Model:** [`{DtoName}`]({relative-path})
- **State Transition:** {from} → {to}
- **Event:** `{EventName}` published to {destination}
- **Validation:** {key validation rules}
Output File
- Use the
docs/{use case name}-use-case.mdas output file location (DEFAULT). - Ask the User, if the default is fine or another location should be used.
Writing Guidelines
- Keep overview concise (1-2 sentences)
- Use relative links to source files
- Include all actors and systems in the diagram
- Group related operations with
Note overblocks - Use
alt/elsefor conditional flows - Document both success and error paths when relevant
Mermaid Patterns
See references/mermaid-patterns.md for sequence diagram syntax and examples.