Skip to content
August 3, 2011 / David Bleeker

Working Ahead in Agile

There is more to think about than managing your backlog if you want a world-class Agile team.

Execution is paramount for Agile development teams. With two weeks to deliver a working system with new features there isn’t a moment to lose. Anything that serves to distract the team from doing what it needs to do in each iteration is waste. The right amount of planning can remove impediments and facilitate optimal execution.

Remember—anything that prevents the team from executing immediately introduces waste. I have a few suggestions for increasing your efficiency as a development team.

Eliminating Overhead

Every organization has it: department meetings, one-on-ones, etc. Every minute not spent directly delivering value is overhead. While there is indirect benefit to information sharing and team meetings, keep these to a minimum. Vigorously defend your development team from invasion from the outside. Keep your team focused and provide as much time as necessary each week.

Standards and Frameworks

Set the basic ground rules before your first project starts. You don’t need an exhaustive list. Subsequent releases and iterations are an opportunity to build on the foundation you set initially. Some things to consider:

  • Non-functional requirements. How fast should the web site render? What scale?
  • General architecture. What is the overall architecture? Which technology set? Which compilers, tools and testing frameworks? What level of cloud infrastructure is expected?
  • General UX design. Navigation, forms, fonts, spacing and colors. Just enough to allow developers to start working on the actual content. Fine tune later.
  • Integration capabilities. How will you move data to or from your application? What technologies?

Building Production Capacity Midstream

It is always gratifying to be in a position to pull stories forward and complete them ahead of schedule. Everyone feels good about the project when this happens. Consider balancing these opportunities to research and collect required information instead. By ensuring that the team is ready and the required information is available you protect your ability to execute in subsequent iterations. Otherwise the celebration is short-lived and your gains are negated by having to wait. Your overall throughput is much higher even though you did not capitalize on the opportunity to pull stories ahead of schedule.

Requirements Buildout

Requirements are multi-dimensional in that they address the requirements of multiple stakeholder groups. Good requirements don’t have to be defined all at once—they are built over time, with each new dimension added when it makes sense to add it. Consider how much information can and should be gathered ahead of time. Consult with the Product Owner to collect initial thoughts and direction for each story. That way, when the Product Owner rehearses the story with the team, the requirements are augmented instead of starting from scratch.

Operational Requirements

Consider also when in the process it makes sense to add operational requirements. Some of these are gathered from the standards and frameworks, and some are gathered by having the operations team interact with the daily build. The earlier the operations team can see the build, the more opportunity there is to build monitoring, logging and other operational requirements into the backlog. (These are typically afterthoughts.)

Execution is paramount. As a good development manager your role is to clear obstacles out of the path of your development team, including the absence of necessary information. Keep a keen eye out for opportunities to close the gap to ensure that your team is able to execute flawlessly.

Your thoughts?

Image source: Christophe Mallet

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: