Introduction to Roadmapping
This is a short writing/thinking exercise. It is best done with a project co-lead or small group of key contributors, but you can also work alone.
Open science project leads and Mozilla Study Group leads seeking to attract and grow communities of contributors around their projects
- Your favourite browser
- GitHub account
- Open source project on GitHub
When you're starting on an open source project, it's important to record what your community (this might just be you at the beginning) decides to work on! A roadmap organizes the tasks that nees to be done on a project around milestones. This helps potential contributors understand the current status of your poject and where it's going next.
A roadmap can also express your vision for the project. Make sure you clearly state why you are taking on certain chunks of work or adding certain feautures. This will help get people excited about joining the project.
This can be as simple as a collection of issues in your issue tracker, or a detailed timeline complete with milestones. It's up to you to choose what works best for your community! At the Mozilla Science Lab, we break our Roadmaps into three sections:
1. Project Mission & Summary - Welcome and orient visitors to your project. Users may have been linked directly to the Roadmap, it's important to help them understand where they are.
2. How to Get Involved - New contributors might want to jump in right away! This points them to parts of the project they can immediately work on.
3. Timeline - The star of the roadmap! This section organizes tasks needed to complete your project around milestones, mapping out what you're working on now and where it's going next.
Steps to Complete
Add your "Project Mission & Summary"
Use this space to orient and welcome new visitors. Start with the project name along with your mission statement or a clear summary of what you are doing. If you've already written a README, you can adapt the project summary and add a shorter version here.
For more information on writing a project mission statement or summary, see the Writing a README Exercise.
Write "How to Get Involved"
New contributors might want to jump in right away! This points them to parts of the project they can work on immediately.
Depending on your project, milestones can vary from development goals to events. Here are some types of milestones you can use:
Project Status Goals
Are you working to implement your MVP (minimum viable product) or a specific feature? Your milestones can be completing a feature or a release.
examples: Get your project on Collaborate, build an MVP
If you have deadlines or a set time to work on this project, use this as a milestone!
If you'll be sprinting or demoing your project at an event, it's helpful to know what you'll need to complete before and during the event.
examples: Mozilla Science Lab Global Sprint prep work, MozFest sprint tasks
Short, Medium & Long Term
When working with volunteers, it can be difficult to set hard deadlines. When unsure, you can use short, medium and long term milestones.
Short term - things you are working on now
Medium term - things contributors can start working on that is not currently being worked on
Long term - you can describe where your project is going here
List Tasks to Complete for Each Milestone
Take time here to explain why you are doing this task. This will enforce your vision for the projects.
A document outlining the schedule of work to be done on a project.
An event or state marking a specific stage in development on the project.