Problem to Solve
The Agile Manifesto, embraced by software developers for over a decade, values responding to change over following a plan. Yet scaling agile in large organizations beyond individual SCRUM teams to manage groups of coordinated, agile teams is a relatively new concept. To better align the teams’ work to investment priorities, the annual cycle of funding business initiatives and constructing a roadmap for delivering marketable features is being augmented with a quarterly ceremony for inspecting and adapting the plan to respond to market pressures.
To effectively steer quarterly planning efforts, executives and product managers want to know: Are the teams planning the highest priority work? How many of the features can we confidently expect to deliver this quarter, and which are at risk? What’s the impact to teams if we change priorities? Better yet, how can we avoid an end of release “death march,” with teams working around the clock to hit their deadline, sacrificing quality and cutting scope in order to ship a less than desirable, minimal viable product?
Rally is widely recognized as a thought leader in agile methodology, and it was essential to align the capacity planning solution in our product with Rally’s coaching practices. This effort was part of a larger Program Journey, and the UI would need to scale up to support longer-range portfolio planning, and down to planning within a single agile team. A brand new UI framework was also adopted at this time, with UI patterns and development standards for reusable components evolving almost daily. Initially, one team was dedicated to the initiative, a remote development team in Seattle. Later, the effort was shared by 4 development teams in Denver, Boulder and Raleigh.
I collaborated with the Seattle team to design and build a working prototype with real customer data. The Enterprise Lean Startup method provided us with a framework to co-create a solution with a handful of customers and validate market needs through constant feedback cycles. We conducted a series of ongoing customer interviews with program/portfolio managers and engineering directors to better understand their pain points, and how they attempted to solve the problem through Excel. Based on our weekly feedback calls with customers, we iterated until we discovered what functionality the minimum viable product should provide.
Below is an example of the prototype showing prioritization and estimation of work, with a cutline to calculate how much work will fit in the planning timeframe based on overall capacity:
The next step was to integrate the functionality into the existing Rally platform. I began by collaborating with the product manager on designing paper mockups, which culminated in a wall of stickies on a whiteboard that we used internally to build Rally’s own quarterly plan. Remote teams were not too keen on the plan being located on a physical wall that they could not access; there was no way to track who moved what; and the math to calculate the amount of work allocated to any given team in comparison to their capacity was still painstakingly manual.
Next, we refined the initial concept of the design with the development team in Denver during a white-boarding session. An alternative design was proposed through this collaboration with the developers, and mockups of both options were tested with our Beta customers and internal stakeholders (primarily coaches). The selected design focused on an interactive way to allocate features to dev teams with instant visual feedback measuring the teams’ capacity to deliver the planned features.
We tested various ways visualize and interact with the data through drag and drop, expanding panels, and draggable cutlines:
We started building the UI to support visualizing capacity across teams for a single plan, conducting biweekly feedback calls with customers. In subsequent iterations we added the ability to create multiple “what if” scenarios, exporting, publishing a plan, and various configuration options.
Rally made a big splash at RallyON!, the annual user conference, announcing the launch of Capacity Planning as part of the Program Journey. Several of our Beta customers presented their story of how capacity planning has impacted their organization. I became teary-eyed when a very large customer reflected on how the quality of life for team members was drastically improved by Rally’s ability to surface data to show executives what was really possible to deliver, instead of their usual planning of 6x the work that could be completed. Their organizations could trust the plan they built was realistic, achievable, and focused on the top priority features.
The Beta delivered provides real data to encourage conversations around what work will fit in a planning timeframe and most importantly, what will not, based on team capacity and feature sizing. Instead of wasting developers’ time over-planning work that can’t realistically be delivered, product management can enter planning better prepared and focused on the right priorities.
Many thanks to the collaborative design efforts of:
— Stephanie Tanner, Product Manager
— Val Zolyak, Product Owner
— Theresa Chen, User Experience Designer
— Catherine Connor, Solutions Marketing Manager