- Select the next logical feature
- Create a task for it
- Create some initial subtasks for it
- Create a branch
- Create the module/interface/package and insert it where it needs to go
- Document it
- Write integration tests
- Ensure tests red
- Implement subfeatures in pre-order, remembering YAGNI
- Until green
- Meaningful pull request
- Merge if CI passes
- Identify where your feature will go and what it is
- Ensure there is a subtask for it
- Create the interface and insert it where it needs to go
- Document the interface
- Write tests
- Ensure tests red
- Implement in pre-order, remembering YAGNI
- Until green
- Meaningful commit