What is needed for an adaptive organization? a truly agile (nimble, flexible) organization? It needs a model that considers the complexity of organizations without utilizing things like one size fits all tools. A focus on these tools stifles creativity and innovation and it won’t make an organization agile.
Iterative and Incremental project or product development can create early value by releasing parts of the product early and continued evolutionary enhancements after that. Iterative and Incremental development is frequently considered to be a set standardized period of time (Scrum for example), but it doesn’t always have to be that and it shouldn’t exclusively be that.
Iterative really just means a repetitive process used to generate an outcome; like ITIL or Continuous Improvement. Agile doesn’t demand iterations and it certainly doesn’t demand a consistent one size fits all time frame.
Continuous Improvement is really just iteratively working to get better, and last time I was involved in Continuous Improvement no one demanded a month-long process every single time you ran through an iteration. The process was adaptive to your needs.
Iterative and Incremental development on its own is not much use to the organization or even to projects that use it. You need a purpose, you need objectives, and you need the flexibility to adapt to your purpose to complete those objectives.
Even the Agile Manifesto understood that Agile needs more, stating things like individuals and interactions over processes and tools. If you have ever been on a team that focused solely on iterative development and incremental releases without any sort of human-centered approach to it or any consideration to unexpected events, it’s a horrible experience. I suppose if your only joy in life is working like crazy and then coming home to repeat the same thing the next day, and the next day, and the next day…… – no matter what happens, then it works for you.
You aren’t going to find joy in a structure that claims to be adaptive but requires strict adherence to a routine schedule with very little room for variation. You aren’t going to find a way to improve your organization – whether inside of a project, product development, or organization-wide – by adopting iterations. The iterations won’t save you. Sometimes being adaptable means not using an iterative approach, especially if you have no real purpose or objective behind defining a structured length of the iteration.
If you are truly adaptive, why do you adhere to iterations religiously without consideration of other components?
When you hear people complain about Agile and they say it doesn’t work – One reason is that they probably experienced what happens when only iterative and incremental delivery becomes important. Only the value delivery stream becomes important, the people involved are not considered relevant. They don’t care that the value delivery stream they have created my actually be hindering value creation. They have become “Agile” and that is all that matters to them.
I have been on those teams, I hated Agile when I first began working with it (I Hate Dev Work Part 2: A Day in the Life of an Application Developer). It has probably given me a twisted interpretation of Agile having worked on process heavy and meeting centric teams and also having experienced teams that relied less on dogmatic structure and slogans.
The system doesn’t work well when your only focus is slogging through iterations and increments and a set time for everything always and forever until the product is completed. How many people want to do that for 20 years? This is probably why many organizations like younger teams. They haven’t grown to hate this strict process heavy structure yet. It hasn’t chewed them up and disillusioned them to the world they have entered yet.
I get that there is value in knowing what I am doing tomorrow, but there is also value in adapting to things when they don’t go according to plan. Ever work on an assembly line? I have done that as well when I was younger and the experience is very similar. It is what motivated me to go back to college, but some of the Agile environments I have worked in have made me want to go back to the assembly line of my early 20s.
In general, working in iterations is fine and may work well for you. But when your only drive is adhering to those iteration lengths and schedules and you care little about the other things involved – are you really adaptive?