Project quality (and test process) metrics

Post on 01-Nov-2014

734 views 0 download

Tags:

description

Presentation from lecture on Poznań University of Technology for IT students.

Transcript of Project quality (and test process) metrics

© 2011 Cognifide Limited. In commercial confidence only.

Project quality and test process metrics

Zbigniew Moćkun, Tomasz Rękawek

Client/partner logo

© 2011 Cognifide Limited. In commercial confidence only.

Who are we?

© 2011 Cognifide Limited. In commercial confidence only.

Agenda

• Introduction to metrics• Code quality metrics

− Metrics− Sonar as example

• Project quality and testing process metrics− Metrics− Example quality report

© 2011 Cognifide Limited. In commercial confidence only.

What is it about?

Metrics

Client/partner logo

© 2011 Cognifide Limited. In commercial confidence only.

Why do we use metrics?

• Project overview• Control a process• Control risks• Force the use of good practices• Project audits• Projects / methodologies / ... comparison

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore

© 2011 Cognifide Limited. In commercial confidence only.

I realized that metrics...

Encourage me to ask questions

© 2011 Cognifide Limited. In commercial confidence only.

Be careful with metrics!!

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore

Processes

People

© 2011 Cognifide Limited. In commercial confidence only.

Type of measurements

• Trend• KPI (Key Performance Indicator)

− Lower threshold− Higher threshold− Value

• How to set correct KPI?

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore

© 2011 Cognifide Limited. In commercial confidence only.

Not only about numbers

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore

© 2011 Cognifide Limited. In commercial confidence only.

Qualitative vs. Quantitative- case study

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore

© 2011 Cognifide Limited. In commercial confidence only.

Level of details

• You cann’t measure everything• Choose the most important metrics• Monitor and ask questions • Looking for details when you found a problem

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore

© 2011 Cognifide Limited. In commercial confidence only.

Metrics gathering

• Analysis of live data (on request)• Analisis based on daily values (can be run as cron job)• Data vary in time manner• Froze data for analysis

© 2011 Cognifide Limited. In commercial confidence only.

Visualize metrics

• Use charts if possible• Use colors as status (green, amber, red)• Add description• Remember about recommendation (your feeling)\

− Subjective assessment is important too

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore

© 2011 Cognifide Limited. In commercial confidence only.© 2011 Cognifide Limited. In commercial confidence only.

Quality is everywhere

Project Quality metrics

Client/partner logo

© 2011 Cognifide Limited. In commercial confidence only.

Code quaility metrics are covered by Tomek Rękawek presentation which can be found here:

http://www.slideshare.net/TomaszRkawek/code-metrics

Code quality metrics

Client/partner logo

© 2011 Cognifide Limited. In commercial confidence only.

QA vs. code quality metrics

• Part of assurance

• Define KPI with Technical Lead

• Understand what you measure and why

• Discuss trends, exception with TL

• Motivate developers to keep high coding standards

© 2011 Cognifide Limited. In commercial confidence only.

Project quality metrics

Client/partner logo

© 2011 Cognifide Limited. In commercial confidence only.

Why do we test?

Software testing is an investigation conducted to provide stakeholders with information about the quality of the product or service under test

© 2011 Cognifide Limited. In commercial confidence only.

Testing = measuring

Software testing is an investigation conducted to provide stakeholders with information about the quality of the product or service under test

Source: wikipedia

© 2011 Cognifide Limited. In commercial confidence only.

Dev – QA cooperation

© 2011 Cognifide Limited. In commercial confidence only.

Metric by actions

© 2011 Cognifide Limited. In commercial confidence only.

One measurement, two metrics

• Acceptance rate / Internal Quality− Acceptance actions/all qa actions

− All QA actions = accept or reject

− Measure quality of software send to QA

• QA velocity− Sum off all actions

− Divide by number of QA Engineers assigned to project

− QA velocity depend on software quality that comes to qa

− Why testing takes so long?

© 2011 Cognifide Limited. In commercial confidence only.

Test Case Execution metrics

• Planned test cases vs. written test case (Preparation, UAT)• Number / percentage of executed test cases (Acceptance, regression, UAT)• Number of passed/failed test cases (Acceptance, regression, UAT)• Test Case metrics mean nothing

© 2011 Cognifide Limited. In commercial confidence only.

Requirement coverage

• Requirement coverage− How many requirements have test cases?

− How many requirements were tested?

− How many requirements passed?

− Can we measure coverage if we use exploratory approach?

• Requirement traceability− Defect – test case - requirement

© 2011 Cognifide Limited. In commercial confidence only.

Bugs metrics – S curve

• S Curve

• Open against Resolved

• Wages − Blocker: 10

− Critical: 8

− Major: 6

• No Major or higher rule− 5 Trivials = 1 Minor

− 5 Minors = 1 Major , ...

© 2011 Cognifide Limited. In commercial confidence only.

External quality

External Quality

• All found bugs = internal + external

• Shouldn’t be higher than 0.15 (15%)

• Sometimes divided on two parts− Found during UAT (Used Acceptance Test phase)

− Found during Live (on production)

• Sometimes used wages

• Compared with internal shows our testing process quality

© 2011 Cognifide Limited. In commercial confidence only.

The importance of metrics

• Example A− Story comes to QA

− QA found 1 major issue and reject (1 day)

− Dev fix it (1 day)

− QA test it again, 1 major issue found and reject(1 day)

− Dev fix it (1 day)

− QA accept (1 day)

− Sum: 5 days, 2, rejects, 2 issues only

• Example B− Story comes to QA

− QA found 1 critical, 1 major and 3 minor issues and reject story (1 day)

− Dev fix it (2 day)

− QA test it again and accept (1 day)

− Sum: 4 days, 1 reject, 5 issues

• Acceptance rate against raised issues metric

© 2011 Cognifide Limited. In commercial confidence only.

Bug Taxonomy

© 2011 Cognifide Limited. In commercial confidence only.

Bug Taxonomy

• Phases− Project: Discovery, Development, UAT, Live

• Test Case lifecycle− Requirements/Documentation, Test Scenario, Test Execution

• Risk areas

• Application modules/components

• Functional/non-functional

• Product specific areas− CMS: author, publish, frontend, backend

© 2011 Cognifide Limited. In commercial confidence only.

Defect Density - components

© 2011 Cognifide Limited. In commercial confidence only.

Defect Density - Acceptance vs. Regression (automation vs. manual)

© 2011 Cognifide Limited. In commercial confidence only.

Defect DensityApplication specific

© 2011 Cognifide Limited. In commercial confidence only.

Defect Density – won’t fixDo we test in right way?

© 2011 Cognifide Limited. In commercial confidence only.

Automation - coverage

• Defects found (manual vs. automated)

• Coverage− Manual vs. automated test cases

− High priority

− Application specific Author vs. publish

© 2011 Cognifide Limited. In commercial confidence only.

Other metrics

• Performance monitoring trend as example

• Client side grades (webpagetest.org as example)

• QA queue

• Agile metrics− Lead Time (Open to Resolved time)

− Idle Time (time spend in queues)

© 2011 Cognifide Limited. In commercial confidence only.

Qualitative metrics

• Client feeling− Surveys

− Demo

− Just try to talk

• Tester / team subjective opinion− Recommendation

− Feeling

− Usability

© 2011 Cognifide Limited. In commercial confidence only.

Agile vs. Waterfall

• Quality metrics are independent against:− Methodology

− Approach

• Two main test approach can be used in both− Exploratory vs. scripting

• Agile put more emphasis on qualitative metrics

© 2011 Cognifide Limited. In commercial confidence only.

Example report

© 2011 Cognifide Limited. In commercial confidence only.

References

• http://www.kaner.com/pdfs/BugTaxonomies.pdf

• ISTQB Advance Test Manager Syllabus− http://www.istqb.org/downloads/viewcategory/46.html

• Michael Bolton blog post− http://www.developsense.com/blog/2009/01/meaningful-metrics/

• Douglas Hoffman− http://www.softwarequalitymethods.com/Papers/DarkMets%20Pape

r.pdf

© 2011 Cognifide Limited. In commercial confidence only.

Poznań Testing and Quality Group

• Local group

• Next meeting: 28th of November− Bogdan Bereza-Jarociński: Quality in Agile – quality at all

− Jakub Bryl: How to organize security testing

© 2011 Cognifide Limited. In commercial confidence only.© 2011 Cognifide Limited. In commercial confidence only.

Q&A