"The uncertainty of outcome is the only certainty." This should ring true to every Agilista out there. Let me give you a minute to think it through. When was the last time you worked on an application development project where the outcome was certain?
In my 25 years in the IT industry the outcome has never been a given. Oh, I tried ... we did formal analysis, with Information Strategy Plans, Entity Relationship Models, Process Models, Use Cases, Flow Diagrams, Class Diagrams and the list goes on. But in the end, it only got us so far. The reality was that things changed, we got stuff wrong and the result was not what was expected.
I recently ran across a couple of great Agile techniques (with crazy acronyms) to help remedy all this outcome uncertainty that I wanted to share:
1. IWKIWISI - "I Will Know It When I See It." For many of us this is a reality. We have some general ideas as to what we want but will not be able to articulate it exactly. Agile's "deliver early and often" is key to addressing this issue.
2. GrASBI - "The Great Axiom of Software and Business Indeterminacy." This term was defined in a recent CIO magazine blog by Michael Hugos titled, Agile Techniques, Agile Hype and the Essence of Agile (in IT and Business). The key idea is that having a general idea of what you will deliver will get you close to the expected result, and that having detailed definitions of what you will deliver will not get you any closer. The challenge is, of course, getting the business to change habits and recognize this truth.
We all grapple with shifting the traditional development mentality (both IT and the business) to one based on Agile concepts. One of the hardest behaviors to overcome is this new way of defining direction and refining as we go. So, let's overcome GrASBI, empower our application of IWKIWISI and get Agile!