A while ago I posted a question on Reddit about “Getting to 1.0.” This post was prompted by my own struggles with scope creep and getting further away from “done” rather than closer to it. I wanted to share what I’ve used so far to help keep my project on the rails.
Roadmap / Scope
I found that a mind map was the most intuitive way to visualize the game scope because the scope is like a tree that grows more branches and leaves as features are added. Also, it is a great way to visualize what’s in each release. I assign each feature a number that represents the release in which that feature was added. Below is the current mind map, which includes all the features in Releases 1 and 2 and some of the features planned for Release 3. I’m using XMind to maintain the mind map.
Next to the mind map is the release roadmap. This defines the overall schedule in terms of the releases. Each release has the following attributes:
- Goal: The primary goals of the release.
- Key Features: The high-level scope of the features added in the release.
- Target Audience: To whom the release will be available; this is either Developer (me), Private (a small list of invited players), or Public (available to everyone).
- Completed/ETA: The completion date of completed releases, or the target date for future releases.
I track issues/tasks in Trello because Trello’s simple and fast. I have experience with more robust issue trackers, such as Jira, but those tools were too heavyweight for my needs.
My Trello lists are setup as follows:
- Release Roadmap: Major milestones to complete the next release. These would be comparable to epics in Agile.
- Todo This Week: Tasks I’m currently working on. The goal is to clear this list each week. This list is very dynamic; I start with a set of items at the beginning of the week, and tend to add or move items almost daily.
- Completed This Week: Tasks that have been completed in the current week. I name this list based on the week’s date range. At the end of the week, I archive the list and create a new one with the dates for the next week.
- Todo – Bug Fixes, Enhancements, Refactoring, Optimization: These are the complete lists of todo’s, with a separate list for each todo category. I occasionally review these and move items into the Todo This Week list.
- Ideas: When an idea pops into my head, I put it here. It may never get into the game, but this list ensures I don’t forget about it.
The biggest drawback with Trello has been a lack of analytics – I can’t see the number of issues being completed by week, number of issues by category, burndown charts, etc. So, I may move to a more formal issue tracker in the future. Other than that, using a mind map for defining scope and Trello for issue tracking has worked well so far.