I’ve been doing a lot of thinking lately about Agile and what it means in my world of Development. Now, I have to state “in my world” because I realize, after years of living Agile and talking about it with so many others in the industry, that what passes for Agile in my world isn’t necessarily reflective of what others say Agile is (or should be) for them.
So, in the fairness of my personal motto that Agile is not a process or checklist of things that MUST be followed, but rather a template of skills and scenarios that SHOULD be followed, I accept the reality of what-works-for-me-might-not-work-for-you (and vice-versa). Now, with that out of the way, let me share some thoughts:
Agile is the Ability to Move Quickly and Easily:
- Every day we’re challenged in some way. There are roadblocks that literally pop up from the ground in the form of failed tests, persistent bugs, missing team members (due to illness or vacation), etc. With time-boxed iterations, every day represents a virtual geiger counter on what your team’s burn chart looks like. Every day is precious to keeping the momentum going so when something unexpected happens, the team should be able to move around it (or mitigate or solve it) without a great deal of effort. In other words, it should not be a momentous task (like fighting red tape) to navigate stormy waters and keep the cadence going. A well-oiled, independent, and empowered team would not trip themselves up so easily.
Agile is to have the Power to move with the Changing Currents of Priorities:
- Yes, I was going for a Boating analogy here. In fact, I had also thought of the phrase “Agile is the Ability to Match the Shifting Tide of Reality”. The reason is that I definitely do see Priorities ebb and flow like the tide on a regular basis. This could be due to the nature of the industry you’re in, or external factors that a strategic team is focused on, or even Customer Requests that may seem critical one minute and less urgent the next (once information is passed along to them). The point is, whatever flavor of Agile you’re working in, are you “stuck” or do you have the power to stop a sprint or reprioritize without wasting time (with red tape or a mindset that says “no, we have to finish this first!”)? Again, empowered teams with a strong relationship with the business or customers goes a long way in the trust that we’re all working together for similar goals.
Agile is the Ability to Challenge, Adapt, and Re-Focus:
- Change for change’s sake is never good. It’s wasteful in both time and resources. Just because you’re agile and can be nimble in changing priorities, it doesn’t mean that you automatically accept every change thrown your way! In a relationship built on trust, the Team should be able to challenge the PM, or SM, or BU if they feel the request being made doesn’t make sense (and vice-versa of course). I usually see a challenge as a request for more information (as opposed to an argument) because it’s in the discussion that the true need comes out and which a brainstorming session will help guide the next steps. Afterwards, if the change does get accepted, then it becomes a matter of adapting what needs to be done and to re-focus on the priorities.
Is that all there is to Agile? No, of course not. There’s definitely a lot more to it, but as I was in the process of preparing some presentation material, I had this tangential thought about what “The Agile” is and thought I’d use this forum to write out some of the thoughts currently in my head. It seems there are actually quite a lot of these “thoughts” bouncing around in there (as anyone who’s spoken with me at conferences can attest to) so it may indeed be possible that I will share a few more of them here. I’ll have to see where the tide takes me 🙂