Jan

7

Agile Concept of the Week: Maximize Work Not Done

Posted by Keith McMillan

January 7, 2013 | Leave a Comment

The Principles Behind the Agile Manifesto includes among it’s many good ideas the following: Simplicity – the art of maximizing the amount of work not done – is essential. What’s that about, then?Software project management is a messy and complicated business. Over time, we tend to accumulate practices that we thought might be effective, or that were effective at one time (perhaps on another project). These practices aren’t always necessary any more.

Here’s a real example from a recent project of mine: some of the team thought we should track the open trouble tickets, then associate the tickets with an incident in the GIT source code control system. This would allow us to easily review the changes in source code for a given incident by just clicking the issue in the GIT system.

Unfortunately, the corporation required that the actual trouble tickets get logged into a different system. No problem! We just create the actual issue in the official system, then update that system with the GIT issue, then associate the checkin with the issue we created it GIT. Simple!

As the astute reader will have noticed, we’ve created two issue tracking systems, one in the required system, one in GIT, and taken on the work of keeping them in sync manually. People forgot to create  GIT issue, or they forgot to include the issue in the official trouble ticket system, and to ice the cake, the result weren’t really used. People didn’t use what we’d created, and so our effort was wasted. Eventually we determined that we were spending time and effort on something that didn’t pay for itself. Simply including the incident number from the official system in the GIT checkin comments allowed us to eliminate an entire issue tracking system (GIT’s), while preserving the ability to search for code associated with a given issue.

The lesson you should take from this is: the further you get from working source code, the more skeptical you have to be about how much time you should spend.  Always ask yourself, is what we’re doing just barely sufficient for our needs? Are we producing something that’s most useful with the least amount of work? If not, you need to change your process: stop doing what’s wasting your time, or change it to take as little effort as possible, while still achieving your needs.


Comments

RSS feed | Trackback URI

Comments »

No comments yet.

Name (required)
E-mail (required - never shown publicly)
URI
Your Comment (smaller size | larger size)
You may use <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> in your comment.

Blogroll