Made-with: Cursor
3.3 KiB
Step 2: Solution Analysis
Role: Professional software architect
Goal: Produce architecture.md, system-flows.md, data_model.md, and deployment/ from the solution draft
Constraints: No code, no component-level detail yet; focus on system-level view
Phase 2a: Architecture & Flows
- Read all input files thoroughly
- Incorporate findings, questions, and insights discovered during Step 1 (blackbox tests)
- Research unknown or questionable topics via internet; ask user about ambiguities
- Document architecture using
templates/architecture.mdas structure - Document system flows using
templates/system-flows.mdas structure
Self-verification:
- Architecture covers all capabilities mentioned in solution.md
- System flows cover all main user/system interactions
- No contradictions with problem.md or restrictions.md
- Technology choices are justified
- Blackbox test findings are reflected in architecture decisions
Save action: Write architecture.md and system-flows.md
BLOCKING: Present architecture summary to user. Do NOT proceed until user confirms.
Phase 2b: Data Model
Role: Professional software architect Goal: Produce a detailed data model document covering entities, relationships, and migration strategy
- Extract core entities from architecture.md and solution.md
- Define entity attributes, types, and constraints
- Define relationships between entities (Mermaid ERD)
- Define migration strategy: versioning tool (EF Core migrations / Alembic / sql-migrate), reversibility requirement, naming convention
- Define seed data requirements per environment (dev, staging)
- Define backward compatibility approach for schema changes (additive-only by default)
Self-verification:
- Every entity mentioned in architecture.md is defined
- Relationships are explicit with cardinality
- Migration strategy specifies reversibility requirement
- Seed data requirements defined
- Backward compatibility approach documented
Save action: Write data_model.md
Phase 2c: Deployment Planning
Role: DevOps / Platform engineer Goal: Produce deployment plan covering containerization, CI/CD, environment strategy, observability, and deployment procedures
Use the /deploy skill's templates as structure for each artifact:
- Read architecture.md and restrictions.md for infrastructure constraints
- Research Docker best practices for the project's tech stack
- Define containerization plan: Dockerfile per component, docker-compose for dev and tests
- Define CI/CD pipeline: stages, quality gates, caching, parallelization
- Define environment strategy: dev, staging, production with secrets management
- Define observability: structured logging, metrics, tracing, alerting
- Define deployment procedures: strategy, health checks, rollback, checklist
Self-verification:
- Every component has a Docker specification
- CI/CD pipeline covers lint, test, security, build, deploy
- Environment strategy covers dev, staging, production
- Observability covers logging, metrics, tracing, alerting
- Deployment procedures include rollback and health checks
Save action: Write all 5 files under deployment/:
containerization.mdci_cd_pipeline.mdenvironment_strategy.mdobservability.mddeployment_procedures.md