Sustain an Improvement Frame of Mind
By Philip Lew, XBOSoft CEO
Since my Keynote at TestIstanbul on the Seven Habits of Highly Effective Agile Testing, I’ve covered the first 2 habits in depth:
In this post, we’ll cover Habit #3: Sustain an Improvement Frame of Mind.
At XBOSoft, we use these 7 “habits” to guide our everyday work. They’re all important, but I think Habit #3 is all encompassing of the others. The other habits are:
- Be Agile, Then Do Agile
- Think Tasks Not Roles
- Focus on the Customer
- Think Long Term
Maintaining a Habit
The keyword here is “maintain.” One of the key tenets of agile is sustainability.
If you can’t sustain an effort at a constant pace, then you’ll soon fall behind and lose the race. And what better way to understand your pace than metrics?
I know some people hate metrics, but they truly are a necessary evil. If the doctor tells you that you need to lose 20 pounds, or else have to take blood pressure medicine or that you’ll soon be a diabetic, you just do it, right? And you need to know where you are, what your goals are, and how to maintain your weight in order to keep your health in good order.
This also applies to testing in agile.
Continuous improvement through tracking and measurement
Start small and pick 3 or fewer metrics that are tied to goals you have. Use the GQM paradigm to figure out what’s really important in your agile test process.
Example goals could be:
- Making higher quality software
- Working more effectively
Make sure that the measurements that pertain to these goals are easy!
Just as easy as stepping on the scale or taking your blood pressure. If it’s not easy, you won’t do it, or perhaps you’ll start but won’t continually track them and therefore don’t even bother having them if it’s not easy.
Capture meaningful data
After you’ve got your goals written down, make sure your data can answer questions about whether or not you are making your goals. This is inherent in GQM.
- Make sure that the data is out there for all to see, on a board somewhere. It can be a simple whiteboard with some boxes where you write in what is happening or happened that day.
- Make sure you can get a clear view of how you are doing and understand the state of the software.
- Don’t get stuck on tools that you need to present the data. Start first and don’t collect data for the sake of collecting it. If it doesn’t result in action, don’t collect it.
Trusting and Meaningful Retrospectives
Your retrospectives have to be meaningful. And, to be meaningful, people have to feel free to say what they want with no fear. Sometimes no one wants to bring up bad news, but mutual backpedaling when the software is in trouble won’t help.
Once you’ve got all the ideas out in terms of issues and how to resolve them:
- Prioritize them and attack just one or two for the next iteration.
- Write that issue down.
- Keep a log of the problems and address them in each iteration.
- Use charts in public places so the whole team can see the issue and your progress against it.
- Revise your practices as appropriate for long-term benefits going forward.
Integrate Review and Improvement as Part of the Process
Create your own weight-watchers program without going in for the weigh-in. In other words, create that discipline into your own process.
As part of the retrospective, in addition to tackling tough spots one by one, look for areas to enhance your process. This could be improving the strength of your people with cross-training, or it could be analyzing new tools, etc.
As mentioned earlier, do everything at a sustainable pace. If you starve yourself for several days, you may be more prone to eating junk food due to cravings. To maintain discipline and not burn out implicitly means improvement if you are following the other things above.
Be patient in your improvement and recognize that sometimes you may step backward, which is okay if you are improving in the long term.
Pacing yourself, your team, and your expectations to improve on a consistent and sustainable basis is probably the most encompassing and important habit. Simply put, if you want something, you have to keep at it continuously yet sometimes it’s easy to forget this basic concept.
Maintaining the mindset of putting improvement first is easier to achieve if you break down the steps, see incremental progress through data, and have meaningful evaluations of the process — revising what isn’t working to have better long-term results. This Habit will set you up for success with the other Habits as well.
Next in the series is Habit #4: Be Agile, Then Do Agile.