Goal Question Metric (GQM) and Software Quality



Similar documents
Empirical Software Engineering Introduction & Basic Concepts

Mahmoud Khraiwesh Faculty of Science and Information Technology Zarqa University Zarqa - Jordan mahmoud@zpu.edu.jo

GQM + Strategies in a Nutshell

Software Metrics: Roadmap

Measurement and Metrics Fundamentals. SE 350 Software Process & Product Quality

Making Process Improvement Work

Quality Management of Software and Systems: Continuous Improvement Approaches

Using Measurement to translate Business Vision into Operational Software Strategies

The Role of Controlled Experiments in Software Engineering Research

Status Report: Practical Software Measurement

Practical Metrics for Managing and Improving Software Testing

Academic Course Description. SE2003 Software Project Management Second Semester, (Even semester)

An Approach for assessing the Quality of Software for small and medium sized firms

Agile Methodologies and Its Processes

What CMMI Cannot Give You: Good Software

Fundamentals of Measurements

A Study on Software Metrics and Phase based Defect Removal Pattern Technique for Project Management

Agile, TSP SM, CMMI pick one, pick two, pick all three!

Hybrid-Agile Software Development

(Refer Slide Time: 01:52)

U.S. Dept. of Defense Systems Engineering & Implications for SE Implementation in Other Domains

Risk Knowledge Capture in the Riskit Method

MTAT Software Engineering Management

C. Wohlin, "Is Prior Knowledge of a Programming Language Important for Software Quality?", Proceedings 1st International Symposium on Empirical

How To Create A Process Measurement System

The Dynamics of Project Management

How To Develop An Application

Software Project Management. Software Project Management 1

Measuring Software Process Efficiency. By Gary Gack, Process-Fusion.net

AN OVERVIEW OF INDUSTRIAL SOFTWARE DOCUMENTATION PRACTICES

Application of software product quality international standards through software development life cycle

CSSE 372 Software Project Management: Managing Software Projects with Measures

Agile Software Engineering, a proposed extension for in-house software development

Framing Requirements for Predictive Analytic Projects with Decision Modeling

Software Quality and Assurance in Waterfall model and XP - A Comparative Study

Empirical Model Building and Methods Exercise

Knowledge Infrastructure for Project Management 1

Software Engineering for Software-Intensive Systems: III The Development Life Cycle

Unit 11: Software Metrics

Domain Analysis for the Reuse of Software Development Experiences 1

Introduction to Software Engineering. 9. Project Management

USING DEFECT ANALYSIS FEEDBACK FOR IMPROVING QUALITY AND PRODUCTIVITY IN ITERATIVE SOFTWARE DEVELOPMENT

Software Quality Assurance: VI Standards

Outline. III The Development Life Cycle. Characteristics of Software Development Methodologies. The Prototyping Process

Why Your Strategy Isn t Working

A GOAL/QUESTION/METRIC RESEARCH PROPOSAL TO MONITOR USER INVOLVEMENT AND PARTICIPATION IN ERP IMPLEMENTATION PROJECTS

Agile Processes and Methodologies: A Conceptual Study

PROCESS AND PRODUCT QUALITY ASSURANCE MEASURES IN CMMI

Developing CMMI in IT Projects with Considering other Development Models

The Team... 1 The Backlog... 2 The Release... 4 The Sprint... 5 Quick Summary Stakeholders. Business Owner. Product Owner.

Advantages and Disadvantages of Quantitative and Qualitative Information Risk Approaches

Process Improvement. From the Software Engineering Institute:

SOCIAL MEDIA MEASUREMENT: IT'S NOT IMPOSSIBLE

ISO, CMMI and PMBOK Risk Management: a Comparative Analysis

Orthogonal Defect Classification in Agile Development

Risk Management for Software Projects Tom DeMarco, The Atlantic Systems Guild, Camden, ME

Current Research Topic In Software Engineering

Useful Automated Software Testing Metrics

Determining Best Fit. for ITIL Implementations

Hamid Faridani March 2011

Becoming Agile: a getting started guide for Agile project management in Marketing, Customer Service, HR and other business teams.

Requirements Management John Hrastar

Copyright 2013 wolfssl Inc. All rights reserved. 2

Process Improvement. Objectives

The use of Trade-offs in the development of Web Applications

Continuous Risk Management at NASA

THE THREE ASPECTS OF SOFTWARE QUALITY: FUNCTIONAL, STRUCTURAL, AND PROCESS

Agile Software Engineering Practice to Improve Project Success

Knowledge-Based Systems Engineering Risk Assessment

A Hundred Days of Continuous Integration

software studio software development processes Daniel Jackson

Optimizing IV&V Benefits Using Simulation

Introduction to Software Engineering (ESE : Einführung in SE)

Story Card Based Agile Software Development

Process-Family-Points

Efficiency Metrics. Tamanna Siddiqui 1, Munior Ahmad Wani 2 and Najeeb Ahmad Khan 3

Transcription:

Goal Question Metric (GQM) and Software Quality Howie Dow SQGNE November 14, 2007 Copyright (C) 2007 H. Dow - V: 2.3 1

Topics Relationship to software quality GQM in a nutshell Types of goals Mechanics of GQM Summary, important points, suggestions Copyright (C) 2007 H. Dow - V: 2.3 2

Purpose Communicate information about GQM Point you to references Ask that you involve the relevant stakeholders if you try this approach Copyright (C) 2007 H. Dow - V: 2.3 3

What does GQM have to do with Software Quality? If successful software development is related to Appropriate development environments Using disciplined processes Defining, collecting analyzing useful data Acting on the analysis results Then GQM is a method to help Else Look elsewhere Copyright (C) 2007 H. Dow - V: 2.3 4

History background Victor Basili and David Weiss NASA Goddard Space Flight Center Quantify the (then) proposed methods of preventing errors in software But Other disciplines have data what about software Confounding factors Controlled studies are very expensive Copyright (C) 2007 H. Dow - V: 2.3 5

More History Early 80 s experimented with ways to collect data Tried solution at NASA / Goddard Space Flight Center 1984 Victor Basili and David Weiss A Methodology for Collecting Valid Software Engineering Data How to collect valid AND useful data This method became GQM Copyright (C) 2007 H. Dow - V: 2.3 6

GQM is Top down Goals Questions related to goals Define metrics to answer questions Measurement system Copyright (C) 2007 H. Dow - V: 2.3 7

GQM in a nutshell 1) What are the goals 2) What questions are needed to Define/refine the goals Learn about progress toward goal(s) 3. What metrics are needed Answer the questions Determine if the goal has been achieved Copyright (C) 2007 H. Dow - V: 2.3 8

BUT WAIT There s more Copyright (C) 2007 H. Dow - V: 2.3 9

GQM - part 2 4) Define - deploy data collection mechanisms 5) Collect, check, analyze data in real time Adjust data collection mechanisms Adjust projects 6) Determine if goal is achieved Copyright (C) 2007 H. Dow - V: 2.3 10

Goals two types Business Measurement May be VERY HARD to differentiate Our focus: Measurement goals Copyright (C) 2007 H. Dow - V: 2.3 11

GQM Tree Three levels Conceptual Goals What to accomplish Goal 1 Goal 2 Goal n Operational Questions How to meet the goal Q 1 Q 2 Q 3 Q m Quantitative Metrics Metrics to answer questions M 1 M 2 M 3 M 4 M k Copyright (C) 2007 H. Dow - V: 2.3 12

Recap G Top down Represented as a tree Q Two phases GQM definition Deployment, analysis, process adjustment and check Two types of goals Business Measurement M M Copyright (C) 2007 H. Dow - V: 2.3 13

Mechanics of GQM 1. Determine the goals 2. Create the questions 3. Define the metrics/measures Copyright (C) 2007 H. Dow - V: 2.3 14

Determine the Goals Each goal addresses Object what is being examined Purpose why object is being examined Focus attribute being examined Viewpoint perspective of examination Environment context of scope of examination Copyright (C) 2007 H. Dow - V: 2.3 15

Two ways to create goals Build a sentence addressing each topic object, purpose, quality attribute, perspective/viewpoint, environment Use a table Copyright (C) 2007 H. Dow - V: 2.3 16

Example sentence format Analyze the unit test process to understand the impact of adding additional tests to project K from the viewpoint of the project manager. Copyright (C) 2007 H. Dow - V: 2.3 17

Example sentence format Analyze the unit test process to understand the impact of adding additional tests to project K from the viewpoint of the project manager. Object unit test process Purpose - understand Focus impact of adding additional tests Viewpoint project manager Environment project K Copyright (C) 2007 H. Dow - V: 2.3 18

Example table format Topic Response Analyze (The object to be measured) For the purpose of (understanding, controlling, improving ) With respect to (The quality attribute of interest) From the viewpoint of (who measure the object) In the context of (The environment for the measurement) Copyright (C) 2007 H. Dow - V: 2.3 19

Example table format Topic Analyze (The object to be measured) Unit test process Response For the purpose of (understanding, controlling, improving ) With respect to (The quality attribute of interest) From the viewpoint of (who measure the object) In the context of (The environment for the measurement) To understand Impact of adding additional tests Project manager Project K Copyright (C) 2007 H. Dow - V: 2.3 20

Another example table format Topic Analyze (The object to be measured) Response Customer call database For the purpose of (understanding, controlling, improving ) With respect to (The quality attribute of interest) From the viewpoint of (who measure the object) In the context of (The environment for the measurement) To understand How many user interface defects are reported Customer XYZ Project Copyright (C) 2007 H. Dow - V: 2.3 21

Mechanics of GQM 1. Determine the goals 2. Create the questions 3. Define the metrics/measures Copyright (C) 2007 H. Dow - V: 2.3 22

Questions Move from abstract (conceptual level) to operational level Have we reached the goal? Clarify the goals Involves all stakeholders Objective shared understanding Copyright (C) 2007 H. Dow - V: 2.3 23

Questions Goal: Analyze the unit test process to understand the impact of adding additional tests to project K from the viewpoint of the project manager. Q1: What is our test time now? Q2: How effective are we at finding defects? Q3: What about escapes? Q3: What happened when we last added tests? Q5: Copyright (C) 2007 H. Dow - V: 2.3 24

Meanwhile Goal: Analyze the unit test process to understand the impact of adding additional tests to project. Is this what I REALLY want? Is this my goal? Or Do I want something else? PM Copyright (C) 2007 H. Dow - V: 2.3 25

PM Goal: Analyze the unit test process to understand the impact of adding additional tests to project. Copyright (C) 2007 H. Dow - V: 2.3 26

Goal 1: Analyze the unit test process to understand the impact of adding additional tests to project K from the viewpoint of the project manager. Q1: What is our test time now? Q2: How effective are we at finding defects? Q3: What about escapes? Q4: What happened when we last added tests? Copyright (C) 2007 H. Dow - V: 2.3 27

Mechanics of GQM 1. Determine the goals 2. Create the questions 3. Define the metrics/measures Copyright (C) 2007 H. Dow - V: 2.3 28

Define the metrics Move from the questions (operational level) to quantitative level Objective Define what data will be collected Create operational definitions Refine questions and (maybe) goals Copyright (C) 2007 H. Dow - V: 2.3 29

Critical element Involve the people who will collect the data Learn What is available How to get it Level of effort to obtain Accuracy - validity Copyright (C) 2007 H. Dow - V: 2.3 30

Types of metrics Objective - Counts of things or events Absolute - Size of something independent of other things Explicit - Obtained directly Derived - Computed from explicit and/or derived Dynamic related to time Static independent of time Copyright (C) 2007 H. Dow - V: 2.3 31

Goal 1: Analyze the unit test process to understand the impact of adding additional tests to project K from the viewpoint of the project manager. Q1: What is our test time now? Q2: How effective are we at finding defects? Q3: What about escapes? Q4: What happened when we last added tests? M1: Number of tests run per week M2: Time for each test (pass) M3: Number of tests that find a defect and stop M4: Number of defects found in unit test M5: Number of defects found in integration test that should have been found in unit test M6: Number of tests added Copyright (C) 2007 H. Dow - V: 2.3 32

Mechanics of GQM 1. Determine the goals 2. Create the questions 3. Define the metrics/measures Copyright (C) 2007 H. Dow - V: 2.3 33

Sum up Goal focused, data driven, improvement model Top down approach to define Goals Improvement Characterization Understanding Questions to answer about the goal Metrics to provide answers to the questions Has two phases Definition define the Gs, Qs and Ms Deployment, analysis, process adjustment and checking Copyright (C) 2007 H. Dow - V: 2.3 34

Important points Creating the Gs, Qs and Ms is iterative Questions refine goals Metrics refine questions Ability to obtain data refines metrics Requires stakeholder involvement Especially those that record/capture the data Copyright (C) 2007 H. Dow - V: 2.3 35

Suggestions GQM it s a project - have a plan Iteratively develop and implement You can pick the wrong metrics Analyze data early and often Define a data analysis process Does the collected data answer the questions and address the goal? Avoid using the data for things other than the questions and the goal. No data mining Copyright (C) 2007 H. Dow - V: 2.3 36

Finally GQM is a TOOL Be cautious if all you have is a Copyright (C) 2007 H. Dow - V: 2.3 37

Food for thought You can observe a whole lot just by watching. Yogi Berra Effort moves toward whatever is measured. Tom DeMarco Copyright (C) 2007 H. Dow - V: 2.3 38

References and other reading 1. Basili, V. and Weiss, D. A Methodology for Collecting Valid Software Engineering Data, IEEE Transactions on Software Engineering, Vol. SE- 10, No. 6, November 1984, pages 728-738 2. Basili, V. and Rombach, H. D., The TAME Project: Towards Improvement Oriented Software Environments, IEEE Transactions on Software Engineering, Vol. SE-14, No. 6, June 1988, pages 758-771 3. DACS is a Department of Defense Information Analysis Center (www.thedacs.com) 4. Humphrey, Watts A Discipline for Software Engineering, chapter 7, Addison- Wesley, 1995 5. Kan, Stephen Metrics and Models in Software Quality Engineering, 2 nd edition, Addison- Wesley, 2003 6. Weinberg, Gerald - Quality Software Management, Volume 2, First Order Measurement, Dorset House, 1993 7. Langley, G., Nolan, K., Nolan, T., Norman, C. and Provost, L. The Improvement Guide, Jossey-Bass, 1996 Copyright (C) 2007 H. Dow - V: 2.3 39

Thank you for listening. Questions comments - suggestions Copyright (C) 2007 H. Dow - V: 2.3 40