Scrum is a methodology. No, wait. It is a framework. Maybe it is a process. At any rate, it is Agile. What is Agile? Is that XP, Lean or RUP? Ok, stop. I do not care for semantic games of process methods unless it helps employees get work done more efficiently. That is not to say Agile or formalized process methodologies are bad. In fact, for some companies it may be salvation. This blog entry is about thoughtful consideration of existing organizations processes and steps toward a better way.
Any organization of size will have many processes, probably too many. Most processes did not spring into existence. At some point a group of people in the organization communicated a problem to each other and agreed on a way to mitigate the problem by following a set of new procedures, documented or otherwise. The existence of each process filled a need. Perhaps the need no longer exists or has changed and the process needs to be re-evaluated but the point is there was thought and effort put into avoiding a problem to improve efficiency.
Many companies get bogged down over time by these processes. This could be a fundamental organizational structure issue or it could be a simple failure to reevaluate how people do work and why. When organizations start falling behind competitors, shareholders watch large efforts fail in the market or similar issues confront the executives in a company, the door opens to the process definition game. The push for process change generally is associated with desires to get products to market faster, be more agile, improve quality and communication. All honorable intentions but a frequent end result of sweeping, immediate process change is time wasted, money burned and opportunities lost. Companies can loose key people over redefining existing process, ultimately undermining the organizations ability to function at all.
Enter the concept of iteration. A pretty simple idea and likely the basic goal most executive teams and managers are trying to achieve. Something that can be achieved without turning organizations upside down and alienating employees. Iteration is a key component of any modern development process. What is often overlooked is iteration can frequently be applied to existing organizational processes. Changing the mindset of the people who define the work is a fundamental component. Becoming iterative can meet the companies goal or be a means to a larger plan. Either way, it can be applied with significantly less up front costs and chaos.
More on changing mindsets to iteration in my next post.