Files
template/docs/workflow.md
T
2026-06-28 09:40:40 +02:00

2.7 KiB

Development Workflow

This document defines the default path from idea to released change.

For branch policy, see branching.md. For release execution, see release-process.md. For task quality gates, see CHECKLISTS.md.

Workflow Overview

flowchart LR
    Idea["Idea or Issue"]
    Clarify["Clarify Scope"]
    Design["Design or Plan"]
    Implement["Implement"]
    Validate["Validate"]
    Review["Review"]
    Merge["Merge"]
    Release["Release"]
    Learn["Review Outcome"]

    Idea --> Clarify
    Clarify --> Design
    Design --> Implement
    Implement --> Validate
    Validate --> Review
    Review --> Merge
    Merge --> Release
    Release --> Learn

1. Clarify Scope

Before implementation:

  • Define the objective.
  • Identify users or systems affected.
  • Confirm acceptance criteria.
  • Identify non-goals.
  • Note security, data, migration, and deployment risk.

If the task is ambiguous, resolve ambiguity before writing code.

2. Design Or Plan

Use a lightweight plan for most changes.

Create or update an ADR in DECISIONS.md when the change affects:

  • Architecture style.
  • Module boundaries.
  • Data ownership.
  • Security model.
  • Deployment strategy.
  • Public contracts.
  • Long-term operating cost.

3. Implement

Implementation expectations:

  • Work in a focused branch unless the project policy says otherwise.
  • Read existing code before editing.
  • Follow CONVENTIONS.md.
  • Keep commits logically grouped.
  • Update documentation with behavior, setup, or architecture changes.

4. Validate

Use the strongest practical validation for the change:

  • Build or type checks.
  • Unit tests.
  • Integration tests.
  • End-to-end tests.
  • Manual UI or API checks.
  • Documentation link checks.

Record validation evidence in the pull request or final work summary.

5. Review

Review should answer:

  • Does the change solve the stated problem?
  • Is it consistent with ARCHITECTURE.md?
  • Does it follow CONVENTIONS.md?
  • Are risks and rollback needs clear?
  • Is validation sufficient?

6. Merge

Before merge:

  • Required checks pass.
  • Review comments are resolved.
  • Branch is up to date according to project policy.
  • Release notes or changelog entries are added when relevant.

7. Release

Follow release-process.md.

Release work should include:

  • Final readiness check.
  • Deployment.
  • Smoke test.
  • Monitoring.
  • Rollback readiness.

8. Review Outcome

After meaningful releases or incidents:

  • Capture what worked.
  • Capture what failed.
  • Update checklists, docs, tests, or runbooks.
  • Add ADRs for decisions that emerged during delivery.