Skip to content

03. Workflow Overview (Description)

verenx edited this page Feb 9, 2026 · 2 revisions

This section describes the end-to-end workflow used in the SheCounts project, from creating a user story to completing it. The workflow is implemented using GitHub Issues + GitHub Projects (Kanban/Table), feature branches, pull requests, mandatory reviews, and CI/CD automation.


High-level End-to-End Workflow (User Story → Completion)

  1. User story is created as a GitHub Issue and added to the GitHub Project (SheCounts Kanban/Table).
  2. The user story is assigned to a developer and moved to the appropriate Kanban status (e.g. To Do / In Progress).
  3. The developer creates a feature branch for the user story.
  4. The developer implements the changes locally (backend/frontend as needed), then commits and pushes the changes to the feature branch.
  5. The developer creates a Pull Request (PR) and links the PR to the Issue.
  6. A CI/CD pipeline runs automatically on the PR (build + checks).
    • If the pipeline fails, the PR cannot be merged until fixed.
  7. A second person reviews the PR (review is mandatory via GitHub repository settings).
    • If changes are requested, the developer updates the branch and the pipeline runs again.
  8. After successful CI/CD + approved review, the PR is merged using Merge Commit.
  9. After merging, the linked Issue is automatically moved to Done in the GitHub Project.

Roles Involved

  • Developer

    • Creates/updates the feature branch
    • Implements the user story
    • Commits and pushes changes
    • Opens PR and links it to the Issue
    • Applies review feedback and fixes CI/CD failures
  • Reviewer (mandatory second person)

    • Reviews the PR
    • Approves or requests changes
    • Ensures quality before merge

Workflow Diagram (Mermaid)

flowchart TD
    A[Create User Story<br/>GitHub Issue] --> B[Add to Project<br/>SheCounts Kanban/Table]
    B --> C[Assign Issue to Developer]
    C --> D[Create Feature Branch<br/>feature/*]
    D --> E[Implement Locally<br/>Backend/Frontend]
    E --> F[Commit & Push<br/>to feature branch]
    F --> G[Create Pull Request<br/>Link PR to Issue]
    G --> H[CI/CD runs automatically<br/>PR checks]
    H --> I{CI/CD successful?}
    I -- No --> E
    I -- Yes --> J[Mandatory Review<br/>2nd person]
    J --> K{Approved?}
    K -- No (changes requested) --> E
    K -- Yes --> L[Merge using Merge Commit]
    L --> M[Automation moves Issue<br/>to Done in Project]

Loading

Clone this wiki locally