A quick internet search of “Cargo Cult” will yield some interesting images, such as the image pictured right, which showed up near the top of my search. According to Wikipedia, “A cargo cult is a millenarian movement first described in Melanesia which encompasses a range of practices and occurs in the wake of contact with more technologically advanced societies. The name derives from the belief which began among Melanesians in the late 19th and early 20th century that various ritualistic acts such as the building of an airplane runway will result in the appearance of material wealth, particularly highly desirable Western goods (i.e. “cargo”), via Western airplanes.”
What does this have to do with agile? Sometimes in the pursuit of agility, the agile practice becomes a greater focus than the original reason for the practice. A team that is doing everything “Scrum” but not getting better results than prior to starting the journey, is very similar to the islander that builds a cargo plane out of palm fronds. This pattern is not limited to scrum. When any practice becomes more important than the reason for doing it, there is risk that value will be sacrificed.
There are great reasons to learn and follow a framework: Scrum, Kanban and other frameworks are successful because they work. Practitioners should be mindful that the framework is the means to an end. The goal is not to be good at the framework, but rather to deliver the maximum value possible while using said framework.
How do you keep the focus on value? I like to keep it simple and refer back to the four statements within the Agile Manifesto. In fact, I like to go a step further and zero in on the “we have come to value” items.
Individuals and Interactions – Teams that value all individuals and become good at managing interactions produce better, more creative results. They learn to leverage the power of the team and the result is engaged and satisfied employees.
Working Software – This should really mean working software. Not, developed but not tested. Not, this component works but we cannot show it. It means delivering something of value to the user. It is hard but working software delivered frequently is the game changer.
Customer Collaboration – When working with clients I occasionally hear that “everyone knows” what the customer wants. Too often after a few questions I find out that “everyone knows” something slightly different. There is no replacement for truly understanding what the customer wants, and no better way to get it than through collaboration.
Responding to Change – I understand that plans are important. I know that we must have predictable delivery cycles – I also understand that change is inevitable. Agile teams change the way they approach their work so they can respond to change. They never follow a plan that does not make sense. Responsiveness is the essence of agility.
All too frequently, I have worked with hundreds of teams and have observed the tendency to focus more on the process than on the results. It is actually no surprise – it is quite natural to want to practice what you have just learned. Mastery of a process is a measure of success. That is great but always keep a relentless focus on the goal and follow the process – otherwise you may be building software that runs on something like the image.