One thing I have been working hard to continue to grow and refine with each cycle is how I manage my team at Canonical, the projects that we are working on, and how we coordinate ours and other projects with the wider community. As I have focused on improving this project management approach, I have been working to help better structure and plan our projects.
While I started doing this with my team specifically, I was keen to see if I could improve this in the wider community too. As such, at the last Ubuntu Developer Summit I worked to better socialize the idea of teams developing a firm idea of what they want to achieve in a cycle, planning that work out, assigning the work across the wider team and making steady progress on those goals throughout the cycle.
To do this I encouraged teams to build roadmaps with a core set of goals, divide those goals into blueprints and to track actions inside those blueprints. Some teams embraced this more structured approach and were successful in achieving their goals.
As part of this work I approved a set of blueprints that I would manage as part of my team. This core set of blueprints, a mix of my team’s and other community goals, set the primary goals and workflow for my team throughout the cycle, and my role was to keep everything on track.
At the start of the Ubuntu 10.04 Lucid Lynx cycle I blogged about these plans for my team in Lucid. They included these blueprints:
Engage in outreach with targeted upstreams to build support for Application Indicators into their code
https://blueprints.launchpad.net/ubuntu/+spec/community-lucid-application-indicators-outreachHelp communicate needs of upstreams to Launchpad team
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-launchpad-upstream-improvementsContinued documentation for Upstreams
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-upstream-documentationUpstream Contacts
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-upstream-contactsAdopt-an-Upstream initiative
https://blueprints.launchpad.net/ubuntu/+spec/community-lucid-adopt-an-upstreamGet Harvest more production ready
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-harvest-next-stepsImprove Kernel community patch flow
https://blueprints.edge.launchpad.net/ubuntu/+spec/kernel-lucid-bugs-with-patchesFacilitate transition of Permissions Reorganisation
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-permissions-reorg-process-changesHelp the IRC Council in being effective
https://blueprints.edge.launchpad.net/ubuntu/+spec/irc-council-lucid-plansImprove translation status reporting
https://blueprints.launchpad.net/ubuntu/+spec/community-lucid-improving-translation-status-reportingIncrease community participation in coordinating translations
https://blueprints.launchpad.net/ubuntu/+spec/community-lucid-community-participation-in-coordinating-translationsDefinition of translations best practices and policies
https://blueprints.launchpad.net/ubuntu/+spec/community-lucid-translations-best-practices-and-policiesImprove Quality Assurance on translations
https://blueprints.launchpad.net/ubuntu/+spec/lucid-qa-community-testing-translationsIncrease community developer contributions in Launchpad Translations
https://blueprints.launchpad.net/ubuntu/+spec/community-lucid-increasing-lp-translations-dev-community-contributionsRaise awareness of LoCo team work
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-loco-storiesHelp the LoCo council to be successful
https://blueprints.launchpad.net/ubuntu/+spec/loco-council-lucid-plansMake LoCo Directory usable for the LoCo Community
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-loco-directory-developmentLoCo Council
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-loco-council-nominationsEMEA Membership Board
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-emea-board-changesAmericas
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-americas-board-changesAsia/Oceania
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-asia-board-changesKubuntu
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-kubuntu-council-changesUbuntu Open Week
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-ubuntu-open-weekUbuntu Developer Week
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-ubuntu-developer-weekRelease Party Coordination
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-release-party-coordinationUbuntu Global Jam
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-ubuntu-global-jamUbuntu Free Culture Showcase
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-ubuntu-free-culture-showcaseImprove UDS Scheduling
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-summit-improvementsTeam Sprint Planning
LoCo Docs Day(s)
Release Name Announcement
Governance Assessments
LoCo Week
Debian Relationship
LoCo Stories
UDS Planning
DebConf
Desktop EventsThe Fridge
https://blueprints.edge.launchpad.net/fridge/+spec/community-lucid-fridge-improvementssummit.ubuntu.com
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-summit-improvementsLoCo Directory
https://blueprints.edge.launchpad.net/loco-directory/+spec/community-lucid-loco-directory-development and https://blueprints.edge.launchpad.net/loco-directory/+spec/loco-directory-event-registrationHarvest
https://blueprints.edge.launchpad.net/harvest/+spec/community-lucid-harvest-next-steps
So, we had a large set of blueprints with an even larger set of actions and I was keen to ensure I could provide as much support guidance across these different communities and blueprints.
I did by using the burndown chart approach that we in the Ubuntu platform management team have been experimenting with recently. I decided to trial this for the Lucid cycle to see if it would help me provide a sense of perspective and oversight over the team, and more importantly, help optimize my team and the community for success.
As we draw the Lucid cycle to a close, the burndown looks like this:

For those unfamiliar with a burndown chart, the Y axis is the number of committed actions in all of the projects I am managing, and the X axis is the time until the end of the cycle. Each bar on the chart indicates the number of items yet to do (red), the number of completed actions (green), and the number of postponed actions (orange). To use the chart effectively I need to keep the number of completed actions under the thick black line; this then provides a constant stream of progress across the collection of actions.
Doing this effectively is not as simple as saying “make sure you complete two actions every day until the end of the cycle”. Some actions take seconds to achieve, some actions take days to achieve. As such, while using the chart, I found myself developing a better awareness of the size and scope of tasks so I could better plan for the team. This was particularly important around vacations, holiday periods and other downtime.
I already have a pretty structured way of managing the team; we have weekly calls, I sent out call notes, create new actions, review outstanding actions etc, and the burndown just factored into our weekly workflow in a fairly non-invasive way.
While the burndown is primarily a useful tool for me, when I look at that chart I am hugely proud at how the team was responsive to keep the various projects on track. While this certainly applies to horsemen Castro, Holbach, and Planella, this also applies to the wider community. Take a look at the assignment summaries:

Let me explain what we have here. Across all of the blueprints that we committed to with their included actions, this is a list of who had actions assigned that affect the burndown. Naturally Jorge, Daniel, David and I have the largest assignments, but I am hugely proud to see that (a) we had lots of community participation and (b) those who did participate were hugely successful in completing their actions. Even there many folks only had a few actions to complete, this experiment demonstrated to me that the tool is useful for helping raise the opportunity for success.
As such, in the Maverick cycle I am going to use the same approach, but continue to encourage more community participation in these structured blueprints. I think that the burndown approach not only helps me guide all these projects and keep them on track with a regular flow of achievements, but it also helps raise my visibility on the different actions which helps me easily identify the next pieces of low-hanging fruit and coordinate with the community around completion of those tasks and unblocking any problems.
So, in a nutshell, I am proud of everyone’s achievements and I look forward to even more success in the Maverick cycle 🙂

You maybe proud of everyone’s achievements but we are just as proud of yours. Yours enthusiasm and efforts are very appreciated all around the world. Congratulations on this excellent release cycle.