Skip to the essays
All essays

Repeatability in software development (or why people are important)

Software development processes try to achieve the impossible: “repeatable success despite who implements them”. How about this thought: Repeatability comes from people, not from processes. Why? Software development processes are procedural rules to follow when developing software. Let’s, for the sake of argument, ignore the fact that those rules rarely focus on the actual work, …

Software development processes try to achieve the impossible: “repeatable success despite who implements them”.

How about this thought: Repeatability comes from people, not from processes. Why?

Software development processes are procedural rules to follow when developing software. Let’s, for the sake of argument, ignore the fact that those rules rarely focus on the actual work, but rather on the management of that work.

Even if processes would be “perfect” definitions procedures to develop software, before they can be applied they have to be understood by a less than perfect mind. Project team members will read the process documentation, make their own assumptions, based on their own experience and on input from people they value and then proceed to implement their own flavor of a process.

Even if you have a “perfect” software development process it is still true that people will do the actual process implementation, it is also trivially true that people are different, so the logical conclusion is that repeatability can only be achieved by maintaining the same people doing the same job.

Consider the alternative: define a process so that there is only one, and only one way to understand and apply it. (Does this sound like “complete requirements”?, it probably is the same: a mirage crafted by people with little understanding of what software development really is).

Having people at the center of a software development process is according to the Agile values (which value people and interactions over processes and tools), but it is completely against the old-school thought that people are and must be replaceable.

The people issue

Having read many books on the issue of “managing people” I still believe that the best advice to people working in software development is: talk to your people, learn to know them, listen constantly and you will definitely become a better manager!

If you do that and stick with your best people you will be given the “repeatable successes” you have so long be looking for.

For some good reading on “managing people” take a look at these:

First, Break all the rules; Marcus Buckingham et al; Simon & Schuster (Trade Division), 2001
Peopleware: Productive Projects and Teams; Tom DeMarco et al.; Dorset House Publishing Co, 1999
Maverick!; Ricardo Semler; Random House Business Books, 2001

Read next

Is IBM changing ?

Keep the conversation going

The essays work best in company. Join the community to keep the questions coming.

The #NoEstimates book and its companion volumes

Chapter 1 · Free PDF

What if better planning started with a different question?

The first chapter of #NoEstimates argues that the “deliver on time” challenge is answered by a different question. Read it, and see whether it changes how you plan the next piece of work.

Free PDF of chapter 1. No purchase, no library access. How we handle your details