Thursday, July 12, 2007

On the nature of work... or what's the relationship between Mozart, Parkinson, and agility?

Does more time lead to better work?
"I need an extension to submit my paper" Jane asks. "OK, but I can only give you one more day" Peter replies. "Well, if I had one more week, the quality of the paper will be significantly better..."
How many times have you heard similar conversations or have been part (on either side of the fence) in some similar debate. Not just for writing but any types of creative works. In today's continuous work environment and Web time, does more time lead to better work?

A positive answer to this question would seem to imply simply that one would spend more time on the tasks at hand, revising, researching, and improving it, now that one has more time... interesting. In Software Engineering there is a principle called (interestingly enough) Parkinson's law or principle that says (paraphrase) that total work tends to grow to fill the time allotted. This phenomenon, known for decades, and observed in many contexts and certainly in software, helps explain a lot of why software tends to be late, along with other human tasks... The rational for why the Parkinson's law applies so broadly has to do with human nature and also to the dynamics of human tasks and their non-linearlity. In particular the non-linearity of human inspirations (important). I believe that this principle is universal to any type of creative works.

Now this may not be your case. However, for me, any deadline extensions means that I end up pushing some of the work later and address other top priority items now. Naturally, sometimes it could also mean that I spend more time on a given item and improve it's quality. However, in almost 90% of my tasks I am starting to be like (unfair comparison though more like an aspiration) Amadeus and deliver my tasks (papers, code, presentation, and so on) without much revisions---basically as they came to me.

Again, not to compare one with the genius of Mozart, aspiring to be like him though maybe a cool thing. We are all stretched thin and under pressure, so learning how to get things done the first time and also done well is a skill that can pay really big, though clearly also incurs a certain amount of risks that could cost dearly.

The agile software development movement solve this problem in a similar fashion while reducing the risks with delivering tasks without revisions and by reducing wastes. Essentially, in agile methodologies, iterations are an integral part of all tasks while early-and-often delivery is also a primary activity. Agile teams deliver their tasks quickly and revise them often while focusing on what is more important at the time by allowing the stakeholders to drive (i.e., direct the priorities) which help reduce efforts that are not important or potentially wasteful.

Can this approach be successfully applied to other human tasks? Is this a good thing? Are there alternatives that also allow one to remain competitive?

No comments: