When people are introduced to Agile, either on their own volition or through custom frameworks, they see or hear different terms, such as:
- Agile technology
- Agile process
- Agile deployment process
- Agile framework
Some are confused by the many flavors of Agile and the widely different advice surrounding its implementation. This stems from misinterpretation of what Agile is and how organizations make the transition to practicing it. This seems to be the major reason why Agile doesn't work for them.
Agile is neither a technology nor a process. It is also not a deployment process or tool but rather a set of principles that helps us embrace the Agile culture
. This culture is supported by the Scrum pillars of value: commitment, focus, courage, openness, and respect. Often people focus on the process aspect of Scrum and neglect to uphold its values. Even Agile's lightweight processes may seem difficult for people to digest, and they may also find it difficult to immerse themselves in it.
Agile works empirically in that knowledge comes from experience and decisions are based on what is known. What we need to look at is predictability and risk reduction.
People try to retrofit their old way of working into Agile ceremonies and artifacts, complicating the Agile implementation. In the article "Agile Is Not Only About ALM Tools
," I emphasize that the Agile culture and mindset are more important than application management tools. Also, Agile adopters should appreciate extreme programming practices that help reap benefits, such as faster time to market and code quality. I call this concept Agile as a Culture (AaaC)
. It's a term that struck me while reading about Software as a Service, and I promote it to all the teams I coach.