Test Improvement is choosing

For me personally, one of the most difficult things in life is choosing. Especially because I don’t know what would have happened if I had chosen differently… And in the back of my mind, that “what if” game is constantly played. 

keep-calm-and-choose-wisely-33So my expert advice in test improvement is to choose wisely and consider several (all?) options. Don’t make choosing an everlasting process, just make sure you choose what helps. To be able to choose, knowledge about and experience with several approaches and models is necessary. Try to find a way that enables you to compare them and find the combination that suits the context and the purpose.

What usually helps is looking at aspects like:

  • Testing only?
    Is the scope of the model testing-only or does it consider a broader area?
  • Training?
    Is training available to ensure that everyone involved has the opportunity to learn about it.
  • Staged or continuous?
    Is the model prescribing a standard sequence of improvements in (big) steps or does it give free choice in the sequence of improvements in (small) steps.
  • SPI related?
    Is the approach or model linked to a Software (Process) Improvement model or approach that is already used within the organization or linked to a SPI approach that would help to improve more than just testing.
  • Scalability?
    Can you apply it to help a single project? A team? A department? A complete organization?
  • Are improvement suggestions “included”?
    Some models and approaches focus on finding the current status of testing and the required status; several include concrete improvement actions and highlight enablers
  • Required budget / investment?
    How much time/effort is required for preparation, execution and implementation of the implementation. What is the claim on the organization? Especially since you take into account that Business as Usual will always need to continu. And that the required budget needs to be available; in other words, your approach has to be fit for budget as well.
  • Top down? Bottom up? A mix?
  • Alignment with current test and development approaches, e.g. waterfall, iterative, incremental, Agile, Scrum, DevOps.
  • Culture
    Align your improvement approach with the culture of the organization and its peopke; although this is not typically something that is defined in a SMART way, this is key to success.
  • People
    Do the people in the organization like the improvement approach and are they willing to change in line with it. Again not typically something that can be defined in a SMART manner…

When I choose based on these – or similar – aspects, I tend to organize a walkthrough of my approach with experienced fellow testers. For me, it softens the “what if” voice in the back of my head.

Peer review gone wrong

Thank you Cyanide & Happiness!

The models and approaches to choose from are plentiful, probably worth (yet) another blog post.

Advertisements

Why improvement usually fails…

If you want to improve you have to invest time and money. What usually happens, is that you look for what everyone at that moment considers to be the right thing to do. So you tend to adopt the test approach, including tools and templates, that is “hot”.

Head in HandsLet’s say, you decide to implement risk based testing. You learn how to translate business risks into an appropriate test approach, including techniques, and create a beautiful plan and strategy.  And then? Your (pilot) project starts and fails…
Why, you wonder. You applied everything you learned, went to conferences, listened to the gurus, read the books, hired expensive consultants, …

As a test consultant I had the privilege to work in different organisations and projects and discovered a trend in “failures” and “successes”.  It boils down to one common denominator: did you or didn’t you involve the people who do the “real thing” in the test process? Yes, the ones that do the actual work a.k.a. the testers.  Somehow, they do not get involved in the early stages of test improvement.

We tend to start with test management, make the test organisation more professional, develop a test strategy, follow a lifecycle (plan, prepare and execute), use the right tools, select adequate test design techniques … According to the book! Don’t we make the same mistake at the start of a project? Forget to involve those same testers in the early stages?  When we define a test strategy and write a test plan, we talk to the business, the developers, all of our stakeholders, …

Don’t forget: the testers are the most important part of your test process and improvements, they have to learn to apply the new methods, tools and templates. In fact, they are the ones that have to change the most!

27-teamworkI found out the hard way that a few days training – even from the guys that wrote the book – is not enough for that senior business tester that has been there for over 10 years and knows the system inside out… And what about the “fire fighters” that have become heroes because they find, fix and retest defects quickly? They will not be convinced, they won ’t even attend!

So it’s all about people and how you involve them.  Take into account the capabilities and potential of your test engineers. Listen to what they have to say.  On the short term, you might end up at a maturity level you do not like. Or your approach is not exactly what you want it to be. But you know what, if you help them manage the transition, they will reward you with the highest level possible in the shortest possible time.  You will become truly successful.

It’s not your test management approach that decides how successful you are, your test engineers make it or break it. TMap? ISTQB? RST? As long as your people are able and capable to apply it in their day to day work.

Triggers for Improvement? Opposites attract!

The result of the poll I held amongst fellow testers and on this blog, is in line with my expectations: most test improvement initiatives start when quality issues occur. So in that sense, management treats testing like any other discipline: why invest in change or improvements when there is no (obvious) reason for it.

In my experience, motivated testers continuously look for ways to change and improve themselves and the way they work. And they are not afraid to look for help. They’re active on the internet, participate in Special Interest Groups, and meet with each other quite frequently. That’s why most improvement initiatives start at the operational level: the testers want to improve.

The first hurdle is to convince management that it is worthwhile to invest in change and improvement, a.k.a. business case. Unfortunately, currently the focus is on numbers: what are the benefits (in Euro’s please)? what are the costs? And by the way, we want Return on Investment within 6 months. Again, management treats testing like anything else: most companies  only start a project if it is beneficial within 6 months.

Quality versus Time versus Costs
Testers focus on qualitative benefits:
– the right test at the right moment;
– deliver what was promised;
– the right coverage at the right spot.

Management on quantitative benefits:
– reduced time-to-market;
– deliver what is necessary;
– increased productivity.


Funny thing is that also in this situation opposites attract: management will never get what they want without achieving what testers strive for; testers will never be able to reach their goals without meeting management needs. I’ll even go one step further: by helping management to achieve its goals, testers will achieve their own goals as well. Without the right test with the right coverage at the right moment at the right spot, reduced time-to-market and increased productivity is impossible. The only thing we can and have to discuss is scope: deliver what is promised or deliver what is necessary?

What would trigger you to perform a Test Process Improvement assessment?

Triggered by a discussion with some colleagues, I decided to add a poll to this blog.

 

 

Hope you share your opinion with the rest of us!

Test Improvement Revisited

I don’t know exactly when I got involved in test improvement for the first time, but it was way before models were introduced for it. Maybe it was even before people started calling it Test Improvement… I’m actually in testing long enough to have been involved in the pioneering stages of it and, as an author, played a part in defining the profession. What I do know is that helping people and/or organizations to get better at (software) testing still is a major motivator for me. I think it is (one of) the most rewarding jobs within the testing craft there is. That’s why I decided to start a series of blogs on test improvement to share my experiences.

MY FIRST MESSAGE

Truly helping a person and/or organization is not forcing them to do it your way. It is all about enabling them to do the best they can in their context: give them the means they can use in their situation. Wherever you put the emphasis “means they can use” has to be true. THEY have to use it, so it has to be in line with their skills, not yours. Whether they CAN use it depends on their abilities and if they are allowed to use it. I’ve worked in organizations where, due to regulations, the tests had to be designed and approved before execution (otherwise the test results were considered void and the product was not allowed to be shipped). Exploratory Testing was not considered an option by management. If people choose to USE something it’s because they think/know/feel/hope/expect/… that using it enables them to do it better, faster and/or cheaper. So the MEANS have to help them achieve what they want. In my opinion, “fit for context” says it all.

That’s also why I’m convinced that “one model to rule them all” does not apply to Test Improvement. I learned “through damage and shame” (sorry for the Dunglish) that the characteristics of each test improvement model define it’s added value. And it’s limitations. If you want to help improve testing and use a model, the improvement model has to be “fit for context”.

Context Driven TPI

Keep you posted!

I promised myself to improve my blogging and share my experiences in the area of test improvement through this blog. I already started working on the next post…