This year is the 15th anniversary of the Agile Manifesto. Mark the occasion by refocusing on the agile principles.
The Age of “NO”
Fifteen years ago, most business software was developed using rich but complex methodologies. Businesses had spent years refining various waterfall-based methods, which were heavily influenced by two decades of information engineering.
The result seemed to make sense from IT’s point of view, ensuring a predictable process, repeatable tasks, and standard deliverables.
To the people who needed the systems, however, the process was inscrutable.1 It seemed like a bewildering bureaucracy that was managed in a foreign language. They were always being told “no.”
Can we add a field to this screen?
No, you would have had to ask that before the requirements freeze.
Can we change the priority of this report?
No, that decision must be made by the steering committee.
Can we add a value to this domain?
No, that is the province of the modeling group.
The groups were looking at software development from completely different perspectives. They were not really collaborating.
Business people were asking for functionality. IT was beating back the requests by appealing to methodology.
Enter Agile
In 2001, a group of developers met in Colorado to talk about what was working and not working in the world of software development. They produced the Agile Manifesto:
Manifesto for Agile Software DevelopmentWe are uncovering better ways of developingsoftware by doing it and helping others do it.Through this work we have come to value:Individuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a planThat is, while there is value in the items onthe right, we value the items on the left more.Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn, Ward Cunningham, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert C. Martin, Steve Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas© 2001, the above authorsthis declaration may be freely copied in any form, but only in its entirety through this notice.
The thrust of the manifesto is on collaboration between business and technical personnel, with an emphasis on visible business results. That is, while methods are important, results are more important.2
The Agile Manifesto helped refocus software development on the product: functional business applications.
Agile Today: The Danger of Cooptation
Fifteen years later, it is safe to say that “Agile” has permeated the mainstream. This is largely a good thing. But whenever something moves from being a new alternative to wide acceptance, there is a potential dark side. As new ideas spread, they can be misunderstood or corrupted; adoption becomes cooption.
I frequently see signs of back-sliding to The Age of “No.” Even among developers who follow agile-based approaches, there is a tendency to lose sight of the agile principles. Here are two examples from my recent experience:
A team had decided to implement an unusual data model. It could easily return incorrect results if not queried in specific ways. The recommendation was to write some extra documentation explaining the pitfalls, and a short tutorial for developers. The response: “We cannot do that. We are an Agile shop. We cannot produce documentation that is not auto-generated by our tools.”
On another occasion, a team was developing the scope for several work streams. One set of needs clearly required a three-week collaborative activity. This was expressly forbidden. “Our Agile approach requires everything be broken down into two-week sprints.”
On another occasion, a team was developing the scope for several work streams. One set of needs clearly required a three-week collaborative activity. This was expressly forbidden. “Our Agile approach requires everything be broken down into two-week sprints.”
In both cases, the response was couched in methodological concerns, with no focus on the business benefit or value.3
This is precisely the kind of methodological tunnel-vision against which the Agile Manifesto was a reaction.
Keeping the Faith
It is hard to disagree with the agile principles, regardless of your organization’s commitment (or lack thereof) to an agile process.
You can take one simple step to ensure that you are not losing touch with agile principles:
Whenever you are tempted to say “no,” pause and reflect.
Why are you denying the request? Is it simply based on process? Think about what the person actually wants. Is there value? Is there a way to address the business concern?
Sometimes “no” is the right answer. But always be sure your evaluation places business capabilities and benefits ahead of process and procedure.
Learn More:
Read more posts about applying agile principles to BI and analytics:
- Create Social Documentation (July 8, 2015)
- Document Information Requirements Graphically with BDM Diagrams (February 10, 2014)
1. These people were often referred to as “users.” Over time, this became a derogatory term.
2. Agile is often misinterpreted as emphasizing speed.
3. Luckily, both of these teams saw fit to make exceptions to their processes, prioritizing business value over method.