πΎDevelopment Cycle
P2PU Roadmap
We use the P2PU Roadmap to keep track of the discrete projects at P2PU. Projects should not be exclusively software development-related and should include discrete initiatives and tasks we are undertaking.
The idea is that we keep track of what we are working on, ideas we've had in the past, and prioritized ideas we need to flesh out.
The document itself describes the process it follows. At this writing, the sections are inbox, in-progress, on-deck, brainstorm, ice-box and completed.
When adding a new idea or feature:
Scan other sections for existing ideas related to the feature
If none exists, add the new idea to the Inbox section
If the new idea seems urgent, schedule a discussion for it
A few times a year we will talk about the Roadmap in order to
Discuss new ideas and integrate them into the roadmap
Prioritize projects
Update any existing projects with new information
Move completed projects to the completed section
Project process
At some point, a project transitions from a few sentences in the roadmap to something on its own. For this we create a project document where we describe the project, keep notes of discussions related to the project and capture any decisions made. The feature template is provided as a starting point for this project document.
At this transition point, most projects require a meeting with the whole team to agree on the overall project goals and implementation.
For some projects, a single feature document is sufficient, but sometimes other tools are needed. The project document should serve as a dashboard for these documents and make it easy for someone looking at the project document to quickly gather the required context and an overview of the current status/activity.
It is the responsibility of the project owner to create and maintain this document.
A quick cheat sheet:
Copy the feature template
Schedule a meeting with the team
Update the top part of the template with the latest agreed-upon information
Keep notes at the bottom of the feature template
Link any relevant documentation / tools
Link to the project document from the relevant line items in the WIP document
For project involving a substantial part of software development, a GitHub project should be created with the following columns: "Prioritize", "To-do", "Doing" and "Done". New items are added as notes to the "Prioritize" column and then moved to the "To-do" column by the person responsible for the project.
Many projects require some for of documentation at completion. For software project, this typically means release notes, but other projects have their own requirements or other forms of documentation that is more appropriate.
Release notes should be user focused and closer to the style of a user guide rather than a bulleted list of updates items.
Ongoing maintenance and bugs
Not all activity matches the project flow. (e.g. software bugs and support inquiries). For software-related issues, we use the General Prioritized project board.
Add a note to the "New" column of the project
Prompt the relevant person via email/IM if the matter is urgent, or bring it up during the next WIP meeting
Once new issues are clarified and prioritized, it will be moved to the "Prioritized" column
Once work is started, it will be moved to the "In Progress" column
Once done, it is moved on the "Review" column
During each weeks WIP meeting, the items in the "Review" column are checked to ensure the issue has been resolved and then moved to the "Done" column.
Last updated