Files
016-oop-coffee-machine/docs/project-plan.md
T
TirsvadandClaude Sonnet 5.5 28ec0e85d8
CI / test (push) Successful in 46s
CI / test (pull_request) Successful in 46s
Resolve pending commit links and add framework submodule
Replace `pending` in the Version History of the planning documents and
review records with the link to commit c24f412, and add the framework
gitlink that was missing from that commit.

Refs #1
Refs #2
Refs #3
Refs #4
Refs #5

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 10:45:17 +08:00

86 lines
3.5 KiB
Markdown

# Project Plan: OOP Coffee Machine
## Metadata
| Key | Value |
| --- | --- |
| ID | PP-001 |
| CrossReference | [BC-001], [SA-001], [MIL-001], [MIL-002], [MIL-003] |
| Language | en |
| Domain | it |
## Version History
| Date | Status | Author | Reviewer | Change | Commit |
| --- | --- | --- | --- | --- | --- |
| 2026-10-07 | Deprecated | Jens Tirsvad Nielsen | S01 | Initial version | [c24f412] |
| 2026-10-07 | Accepted | Jens Tirsvad Nielsen | S01 | Accepted after RC-006 (Go) | [c24f412] |
---
## Purpose
Schedules the three phases that deliver the coffee machine repository, as
required by [BC-001], with the communication cadence of [SA-001].
## Planning Assumptions
- Start date 2026-10-07; one phase per week or less, each ending in a pull request.
- S01 is owner and reviewer of every phase; S02 and S03 are informed through the README.
- Nothing under `src/` or `tests/` is written until the milestones are `Accepted` with a `Go` review.
## Gateway Schedule
| Gateway | Document | Window | Decision date | Owner | Stories | Main deliverable | Milestone |
| --- | --- | --- | --- | --- | --- | --- | --- |
| Phase 1: Project Setup | [MIL-001] | 2026-10-07 to 2026-10-09 | 2026-10-09 | S01 | None | Skeleton, `pyproject.toml`, Doxyfile, CI | |
| Phase 2: Coffee Machine Program | [MIL-002] | 2026-10-10 to 2026-10-14 | 2026-10-14 | S01 | None | Menu, CoffeeMaker, MoneyMachine, main loop, tests | |
| Phase 3: Documentation and Publication | [MIL-003] | 2026-10-15 to 2026-10-16 | 2026-10-16 | S01 | None | README, Doxygen docs, repository description and topics | |
## Timeline diagram
```plantuml
@startgantt
Project starts 2026-10-07
[Phase 1: Project Setup] starts 2026-10-07 and ends 2026-10-09
[Phase 2: Coffee Machine Program] starts 2026-10-10 and ends 2026-10-14
[Phase 3: Documentation and Publication] starts 2026-10-15 and ends 2026-10-16
[Phase 1: Project Setup] -> [Phase 2: Coffee Machine Program]
[Phase 2: Coffee Machine Program] -> [Phase 3: Documentation and Publication]
@endgantt
```
## Scope Coverage
| Business Case scope item | Gateway |
| --- | --- |
| Package, tests, `pyproject.toml`, `.gitignore`, `constants.py`, Doxyfile | [MIL-001] |
| Coffee machine program and tests | [MIL-002] |
| README, Doxygen build | [MIL-003] |
| Repository description and topics | [MIL-003] |
## Dependencies
[MIL-001] precedes [MIL-002], which precedes [MIL-003]. A No-Go on a phase moves every later date by the rework time.
## Plan Risks
| Risk | Impact | Mitigation |
| --- | --- | --- |
| Review of each document delays the next phase | Medium | S01 reviews in the same session as the draft |
| The git host token cannot set topics through the API | Low | Set the description and topics by hand in the web UI |
## Open Issues
- Dates are proposals; S01 confirms or changes them.
- Tasks are all plain tasks: the course supplies the design, so no use case or user story is modelled. S01 may ask for a use case "User orders a drink".
- `PP` has no QC checklist yet; the plan is validated against the Go / No-Go criteria of each milestone.
- Which remote receives the repository description and topics (`git.tirsystem.com`, GitHub mirror, or both) is for S01 to confirm; both remotes exist.
---
[BC-001]: ./business-case.md
[SA-001]: ./stakeholder-analysis.md
[MIL-001]: ./milestones/mil-001-setup.md
[MIL-002]: ./milestones/mil-002-core.md
[MIL-003]: ./milestones/mil-003-docs.md
[c24f412]: https://git.tirsystem.com/Tirsvad-Udemy-100_days_of_code/016-oop_coffee_machine/commit/c24f41207fb15f39b0ad6501e1f3126d3bd9232e