Skip to content

CoforgeInsurance/Kanban-XP-DevProcess

Repository files navigation

Kanban-XP-DevProcess 🚀

Kanban + XP + Lean development process template with GitHub Copilot SWE agent optimization for BDD/TDD workflows

PLUS: Reference implementation - Ancient Wisdom API (C# .NET 8.0)

🎯 What is This?

This repository serves two purposes:

1️⃣ Process Template

A production-ready template implementing Kanban + XP + Lean methodologies with BDD/TDD workflows, optimized for GitHub Copilot SWE Agent and GitHub's native tooling.

Includes:

  • Kanban for flow-based work management
  • XP (Extreme Programming) for technical excellence
  • Lean for waste elimination
  • BDD/TDD for quality-first development
  • GitHub Copilot optimization for AI-assisted development
  • 9 automated workflows for maximum efficiency

2️⃣ Reference Implementation

Ancient Wisdom API - A real-world C# .NET 8.0 application demonstrating the agent-first development process in action.

Features:

  • RESTful API providing curated wisdom from 7 philosophical traditions
  • Clean Architecture (Domain/Application/Infrastructure/API layers)
  • Entity Framework Core 8.0 + PostgreSQL
  • Comprehensive BDD/TDD test suite (xUnit + SpecFlow)
  • Built incrementally using GitHub Copilot SWE Agent
  • Each feature tracked as copilot-ready issues

📖 View Architecture | View API Spec

Perfect for teams who want to move fast while maintaining high quality.

✨ Features

📋 Issue Templates

  • Feature Request: User stories with BDD scenarios (Gherkin format)
  • Bug Report: Structured reproduction steps
  • Technical Debt: Refactoring and improvements

All templates optimized for GitHub Copilot SWE agent assignment!

🤖 Automated Workflows

  • 9 GitHub Actions workflows for complete automation
  • Agent PR Metrics: Track Copilot success rate and cycle time
  • Auto-Approval: Fast-track high-quality agent PRs
  • Weekly Reports: Automated performance insights
  • Stale Cleanup: Auto-archive inactive issues/PRs
  • Dependabot Auto-Merge: Automatic safe dependency updates
  • CI/CD Pipeline: Quality gates on every change
  • Issue/PR Automation: Smart labeling and validation

📄 View Complete Workflow Documentation

📖 Comprehensive Documentation

🚀 Quick Start

1. Create GitHub Project Board

Columns: Backlog → Ready → In Progress → Review → Done

Setup:

  1. Go to your repository → Projects → New Project
  2. Choose "Board" layout
  3. Add columns as above
  4. Add custom fields:
    • Priority (High/Medium/Low)
    • Size (XS/S/M/L/XL)
    • Feature Area (dropdown)

2. Configure Branch Protection

Settings → Branches → Add rule for main:

  • ✅ Require pull request reviews (1 minimum)
  • ✅ Require status checks to pass
  • ✅ Require conversation resolution
  • ✅ Include administrators

3. Enable GitHub Copilot

Settings → Code & automation → Copilot:

  • ✅ Enable Copilot
  • ✅ Allow Copilot PR reviews
  • ✅ Enable Copilot suggestions

4. Create Your First Issue

Use the Feature Request template:

## User Story
As a developer
I want to set up the development environment
So that I can start contributing

## Acceptance Criteria
Scenario: Developer sets up environment
  Given I have cloned the repository
  When I run the setup script
  Then all dependencies are installed
  And tests pass successfully

📊 How It Works

Kanban Flow

┌──────────┐    ┌───────┐    ┌─────────────┐    ┌────────┐    ┌──────┐
│ Backlog  │ -> │ Ready │ -> │ In Progress │ -> │ Review │ -> │ Done │
└──────────┘    └───────┘    └─────────────┘    └────────┘    └──────┘
                               WIP Limit: 1-2

TDD/BDD Cycle

1. Write Test (Red)  →  2. Make Pass (Green)  →  3. Refactor
         ↑                                               │
         └───────────────────────────────────────────────┘

GitHub Copilot Integration

Issue with clear criteria
         ↓
Assign to @github-copilot
         ↓
Copilot creates PR
         ↓
Human review & merge

🎓 Best Practices

Issue Writing (for Copilot)

DO:

  • Include specific file paths
  • Define clear acceptance criteria (Given/When/Then)
  • Mention related functions/classes
  • Specify test framework
  • Keep issues small (< 1 day)

DON'T:

  • Write vague requirements
  • Create large, multi-day issues
  • Skip acceptance criteria
  • Forget technical hints

Pull Requests

  • XS/S (< 250 lines): ⭐ Ideal
  • M (250-500 lines): ✅ Acceptable
  • L/XL (> 500 lines): ⚠️ Split it up!

WIP Limits

  • Individual: 1-2 issues max
  • Team: 3-5 issues in progress
  • Respect limits to maintain flow

🛠️ Workflows Included

1. CI/CD Pipeline (ci.yml)

  • Runs tests on every push/PR
  • Configurable for multiple languages
  • Ensures code quality

2. Issue Automation (issue-automation.yml)

  • Auto-labels issues by content
  • Checks for acceptance criteria
  • Guides Copilot assignment

3. PR Automation (pr-automation.yml)

  • Auto-labels by changed files
  • Analyzes PR size
  • Verifies test coverage

4. Dependabot (dependabot.yml)

  • Weekly dependency updates
  • Automated security patches

📚 Documentation

🤝 Contributing

We welcome contributions! Please see CONTRIBUTING.md for:

  • How to create issues
  • TDD/BDD workflow
  • PR guidelines
  • Code standards
  • Working with Copilot

📈 Metrics We Track

Flow Metrics:

  • Cycle time (Ready → Done)
  • Throughput (issues/week)
  • WIP age

Quality Metrics:

  • Test coverage %
  • Build success rate
  • Production defect rate

We DON'T track:

  • Individual productivity
  • Velocity/story points
  • Time estimates

🎯 When to Use This

Perfect for:

  • ✅ Teams wanting to move fast with quality
  • ✅ Projects using GitHub Copilot
  • ✅ Agile teams without Scrum overhead
  • ✅ Projects requiring BDD/TDD
  • ✅ Continuous delivery workflows

Not ideal for:

  • ❌ Waterfall projects
  • ❌ Teams requiring fixed sprints
  • ❌ Projects without automated testing
  • ❌ Teams not using GitHub

🔧 Customization

Add Your Tech Stack

Edit .github/workflows/ci.yml and uncomment your language:

  • Node.js/TypeScript
  • Python
  • Rust
  • Java/Maven
  • Go
  • .NET

Adjust WIP Limits

Modify in DEVELOPMENT_PROCESS.md based on team size.

Add Custom Labels

In repository settings → Labels, add labels matching your needs.

📞 Support

  • Process Questions: See DEVELOPMENT_PROCESS.md
  • Technical Issues: Create an issue using templates
  • Suggestions: Open a discussion

📄 License

MIT License - Feel free to use this in your projects!

🌟 Acknowledgments

This process combines best practices from:

  • Kanban Method by David J. Anderson
  • Extreme Programming by Kent Beck
  • Lean Software Development by Mary & Tom Poppendieck
  • Behavior-Driven Development by Dan North
  • GitHub's recommended workflows

Ready to get started?

  1. ⭐ Star this repo
  2. 📋 Create your GitHub Project board
  3. 🎫 Create your first issue
  4. 🚀 Start delivering value!

Built for teams who value flow, quality, and continuous improvement. 💙

About

Kanban + XP + Lean development process template with GitHub Copilot SWE agent optimization for BDD/TDD workflows

Resources

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published