Module 6: Final Project¶
Learning Objectives¶
Apply the complete AI-assisted development workflow end-to-end
Demonstrate TDD/BDD discipline with CI/CD evidence
Build professional documentation with Sphinx and GitHub Pages
Deliver a complete, tested, documented, and deployable kata project
Overview¶
The final project brings together everything from Modules 1–5. You will complete your coding kata using all AI agents, with full TDD discipline, CI/CD pipelines, and professional documentation.
Project Requirements¶
⚠️ PR Reviews: During the project phase, do NOT request instructor review on every story PR. Merge your own story PRs as you go. Only add the instructor as reviewer on your final Module 6 PR when everything is complete and ready for grading.
1. Complete All User Stories¶
Use your AI agents to implement all remaining kata user stories.
IMPORTANT: Before starting, fix your requirements-agent to enforce
localhost Docker deployment and regenerate all INFRA scenarios.
Follow the implementation order for each story: INFRA → BE → FE → E2E
2. TDD Discipline with CI/CD Evidence¶
Practice RED → GREEN → REFACTOR cycles
Commit on every GREEN stage — CI/CD must show this evidence
Each commit references the Story/Scenario ID
CI/CD pipeline triggers on every push with passing tests
3. Organize Documentation¶
Move your architecture/ folder under docs/ (if not already there):
docs/
├── architecture/ # All arc42 chapters + diagrams
└── user-stories/ # Story inventory + all bundles
4. Sphinx Documentation Site¶
Build a static documentation site that includes:
Project README
Architecture documentation (all arc42 chapters)
User Stories (inventory + all story bundles)
Starter files are provided in modules/module-6-project/starter/.
Copy them to your docs/ folder and customize:
cp -r modules/module-6-project/starter/* docs/
Then edit docs/conf.py (project name, author, GitHub URL) and
docs/index.rst (add your architecture chapters and user story files).
See modules/module-6-project/starter/README.md for detailed setup
instructions.
Optional: Create a Sphinx agent (
.kiro/agents/sphinx-agent.json) to help you maintain the documentation site.
5. Documentation CI/CD Pipeline¶
A starter workflow is provided at modules/module-6-project/starter/docs-deploy.yml.
mkdir -p .github/workflows
cp modules/module-6-project/starter/docs-deploy.yml .github/workflows/
Then enable GitHub Pages:
gh api repos/{owner}/{repo}/pages -X PUT -f build_type=workflow
Or manually: Settings → Pages → Source → GitHub Actions.
The workflow triggers on README.md and docs/** changes, builds the
Sphinx site, and deploys to GitHub Pages.
6. Professional README¶
Once all stories are implemented and tests pass, create a root README.md:
Project title and description
What the kata solves
Tech stack and architecture overview
How to build and run locally (
docker build+docker run)How to run tests
Link to live Sphinx documentation site
Project structure overview
Author information
7. License¶
Add a LICENSE file (MIT recommended) to the repository root.
Timeline¶
Day |
Activity |
|---|---|
Mon 20.4. |
Project consultation (not mandatory) |
Wed 22.4. |
Project consultation (not mandatory) |
Fri 24.4. |
Project presentations (mandatory) |
Grading (45 pts)¶
Criterion |
Points |
|---|---|
Kata is functional ( |
15 |
All user stories implemented (tests GREEN) |
10 |
TDD discipline visible in CI/CD history |
10 |
Sphinx documentation site on GitHub Pages |
5 |
Professional README + LICENSE |
5 |
Deliverables¶
PR with all implemented user stories
Kata functional:
docker build && docker runCI/CD pipeline showing TDD commit history
Live Sphinx documentation site
Documentation CI/CD workflow deploying to GitHub Pages
Professional README + LICENSE
Exercise Checklist¶
Module 6: Final Project — Exercise Checklist¶
Part 1: Fix Requirements and Complete Stories¶
Step 1: Update Requirements Agent¶
Updated
requirements-agent.jsonto enforce Docker deploymentINFRA stories reference Docker containers (not Lambda/DynamoDB)
Regenerated all INFRA scenarios with updated agent
Step 2: Implement All User Stories¶
For each story, followed INFRA → BE → FE → E2E order
Each scenario has RED → GREEN → REFACTOR cycle
Committed on every GREEN stage with Story/Scenario ID reference
All E2E scenarios pass
All BE scenarios pass
All FE scenarios pass (if applicable)
All INFRA scenarios pass
Kata is functional:
docker build && docker runworks
Part 2: CI/CD Evidence¶
CI/CD pipeline triggers on every push
Pipeline history shows incremental GREEN commits
No commits with failing tests in history
Test names include Story/Scenario IDs
All tests have GIVEN-WHEN-THEN comments
Part 3: Documentation¶
Step 1: Organize Docs¶
docs/architecture/contains all arc42 chaptersdocs/user-stories/contains all story bundlesdocs/user-stories/README.mdhas story inventory
Step 2: Build Sphinx Documentation Site¶
Copied starter files to
docs/:cp -r modules/module-6-project/starter/* docs/Updated
docs/conf.pywith project name, author, GitHub URLUpdated
docs/index.rstwith architecture chapters and user story filesInstalled dependencies:
pip install -r docs/requirements.txtSphinx site builds locally without errors:
cd docs && make html(Optional) Sphinx agent created at
.kiro/agents/sphinx-agent.json
Step 3: Documentation CI/CD¶
Copied workflow:
mkdir -p .github/workflows && cp modules/module-6-project/starter/docs-deploy.yml .github/workflows/Enabled GitHub Pages:
gh api repos/{owner}/{repo}/pages -X PUT -f build_type=workflow(or Settings → Pages → Source → GitHub Actions)Triggers on changes to
README.mdanddocs/**Builds Sphinx site and deploys to GitHub Pages
Documentation site is live at
https://<username>.github.io/<repo>/
Part 4: Polish¶
Step 1: Professional README¶
Project title and description
What the kata solves
Tech stack and architecture overview
How to build and run locally
How to run tests
Link to Sphinx documentation site
Project structure overview
Author information
Step 2: License¶
LICENSEfile at repository root (MIT recommended)
Part 5: Create Pull Request¶
PR title must include
Module 6(e.g.#14 [FEAT] Module 6: Final project)PR body has
Closes #Nlinking the project issueInstructor added as reviewer (
gh pr edit --add-reviewer momokrunic)
SDP · AI Agents