Friday, July 30, 2010

Metrics - A Tester's True Friend, Not A Foe

Metrics Oh Metrics it took me a while to understand you. Now that I know you I appreciate your help with presenting status or talking to the project team.

Yes its true I love metrics and I will give you ample reasons so you would love them too. Well maybe not love but atleast start appreciating them better.

  1. Metrics helps tell stories with data. "Story" lets start with defining it. Story really is what you are trying to achieve example a new release for your product, hot fix, user acceptance testing for a product that interfaces with your application, or a mini regression cycle for production release. So the goal of the metric here is to tell your story - where you are, where you should be and how much is left.
    • Where are you? Really that is your actual work say how many test cases did you write so far, how many test cases did you execute and what is the status of those tests.
    • Where should you be? - say today is the last day of your test case creation phase you should be at 100% test case creation complete but if you are in 90% then your data should show where you are and you should be able to explain why you are not at 100%.
    • How much is left? - this is very important information - what is left to do, how many test cases do we have to execute or how many defects have to be retested. Imagine if your project manager comes to you and says "Sorry to say but we have release one week early and since testing team will be affected the most, can you tell me how many more resources would you need to complete your release?" You should be able to pull these numbers from your metrics that you have been maintaining. You should be able to tell exactly how many people you need to get this done in the time frame you have.
  2. Metrics helps predict trend. Trend is important. It helps replace words like my gut feeling says this is not a good build or my gut feeling says we have a lot of defects. No your data should tell you if you have higher than unusual defect density or if a certain build has more defects for a certain feature that in turns shows the high risk area that needs regression testing. Really let the data support your gut feeling. Next time you have a one on one with you manager or a team meeting talk with numbers and you will see a huge difference in how they perceive your gut feeling when you tell them the product is not ready for release.  
  3. Numbers or data have the same meaning. It cannot be misinterpreted. If you have executed 100 tests and 50 fail then your failure rate is 50% there is no two meanings to it. Well ya you can say 50% pass rate. Either way it means the same. So when we bring numbers to the table, there are fewer arguments over what the data means.
  4. Metrics shows quality. Metrics really shows the quality of the product and tracks the quality too. How many defects were logged, how many of those defects were fixed, how many are critical? For test exection it shows how many test have failed and how many test cases have yet to be executed. Metrics speaks volume for the quality of your work, your teams work and shows the readiness for the release.
Takeaway - If you create good metrics it will help you make your life easy. It helps you manage your testing project better and also get the rest of the product team off your back when they worry about status or progress.


Post a Comment