Saturday, February 7, 2015

The Journey to High-Performing Agile

Overall, Agile is a mindset change - from doing agile to being agile; from agile newbie to high-performing agilist.

The journey from a traditional software product development team to a high-performing Agile team entails a number of key destinations. Awareness of what constitutes a high-performing Agile team needs to first occur so that all participants on the voyage possess a clear view of the end game. More specifically, what are the steps need to be taken and what’re the hurdles need to be overcome?

Some mindset change is important up-front: There is a difference in agile thinking vs. conventional thinking, that behaviors which make you a hero in one culture may make you a pariah in the other. The idea of productivity as value/time instead of output/time highlights the idea that "output != value" -- and that's something better to understand as soon as possible; or team members will not have the permission to experiment, improve, change, revise specifications, test and prove the framework, and automate their way to a real success. The team needs to understand the motivation to make the change. Let's say if you have a high performing team and you change the way they do business. If they don't understand the motivation behind the change and don't buy into the new way of doing things, they tend to fall back to what worked for them. After all, they were performing to a high standard in their eyes, but not really high-performing from broader organizational perspective.

Accountability & responsibility: Accountability is actually required, but teams can be accountable only if they are given real power to make their own commitments and to decide how to proceed to deliver them (which, many managers too often forget to do). That is, they cannot be held accountable for things pushed on them by their managers. Besides accountability, there’s responsibility. That is, being responsible for something is to agree that you'll do your best to solve a particular problem and that you'll take on the problem as your own. If solving the problem ends up taking longer than expected, then the team might choose to make you responsible for some other aspect of the system, but there's no notion of punishment involved.

Being “fearless”: And when fear is a driver for taking decisions, the next step is to use blame when things go wrong--independently on the goodness of the behavior of the people involved. In many large-scale transitions to Agile development, fear has always been one of the major obstacles to change--fear of failure, fear of loss of control, etc. That is happening when they recognize the changes they should be making, but postpone any action to after releasing the next version of the product because there is no time now...

The biggest hurdles of going Agile include:
1). Fear of transparency, which is necessary to have a great Agile implementation
2). Agile used as a way to eliminate certain steps, like planning (some Fragile teams perhaps are lack of priority on making effective decisions)
3). Business sees Agile as something the IT department does, rather than embracing it - this leads to lack of prioritization, which means you still have to deliver everything on the list to get an acceptable grade and you end up, as before, with a project constrained in time and features, with minimal play in resources.  

There are many things that need to be done to make a transition to a more Agile way of working. Changes in the sizing and structuring of teams, their decision making, and team members’ levels of accountability and responsibility are just a few of the paradigm shifts you will encounter throughout the transition to Agile teams. Overall, it is a mindset change - from doing agile to being agile; from agile newbie to high-performing agilist transformation.


Post a Comment