GQM - Software Engineering II - University of Southern California

advertisement

University of Southern California

Center for Systems and Software Engineering

GQM, GQM+

Supannika Koolmanojwong

CSCI577 Spring 2013

(C) USC-CSSE 1

University of Southern California

Center for Systems and Software Engineering

Project Tracking

• Goal-Question-Metric

• Goal-Question-Metric +

(C) USC-CSSE 2

University of Southern California

Center for Systems and Software Engineering

GQM paradigm

http://thecriticalpath.info/tag/gqm/

(C) USC-CSSE 3

University of Southern California

Center for Systems and Software Engineering

Goal-Question-Metric: What?

• Promoted By Victor Basili, University of Maryland

Software metric approach

• Captures measurement on three levels

– Conceptual level (goal)

• Defined for an object

– Operational level (question)

• Define models of the object of study

– Quantitative level (metric)

• Metrics associated with each question in a measurable way

(C) USC-CSSE 4

University of Southern California

Center for Systems and Software Engineering

Goal-Question-Metric: Why?

• Used within context of software quality improvement

• Effective for the following purposes:

– Understanding organization’s software practices

– Guiding and monitoring software processes

– Assessing new software engineering technologies

– Evaluating improvement activities

(C) USC-CSSE 5

University of Southern California

Center for Systems and Software Engineering

Goal-Question-Metric: How?

• Six-step process

1.

Develop a set of corporate, division, and project business goals

2.

Generate questions defining those goals

3.

Specify measures needed to be collected to answer questions

4.

Develop mechanisms for data collection

5.

Collect, validate, and analyze data. Provide feedback in realtime

6.

Analyze data in post mortem fashion. Provide recommendations for future improvements.

(C) USC-CSSE 6

University of Southern California

Center for Systems and Software Engineering

To create Goal

• Build a sentence addressing each topic

– “…object, purpose, quality attribute, perspective/viewpoint, environment …”

“ Analyze the unit test process to understand the impact of adding additional tests to project A from the viewpoint of the project manager .”

Object – unit test process

Purpose – understand

Focus – impact of adding additional tests

View point - project manager

Environment – Project A

(C) USC-CSSE http://sqgne.org/presentations/2007-08/Dow-Nov-2007.pdf

7

University of Southern California

Center for Systems and Software Engineering http://sqgne.org/presentations/2007-08/Dow-Nov-2007.pdf

(C) USC-CSSE 8

University of Southern California

Center for Systems and Software Engineering http://sqgne.org/presentations/2007-08/Dow-Nov-2007.pdf

(C) USC-CSSE 9

University of Southern California

Center for Systems and Software Engineering

GQM example

Goal 1

Question 1

Metrics 1

Metrics 2

Metrics 3

Metrics 4

Metrics 5

Question 2

Metrics 6

Metrics 7

Metrics 8

Metrics 9 http://thecriticalpath.info/tag/gqm/

[1] Purpose

[2] Issue

[3] Object (process)

[4] Viewpoint

Maintain a maximum level of customer satisfaction from the Help Desk user’s viewpoint

What is the current help desk ticket trend?

Number of help desk tickets closed

Number of new help desk tickets

% tickets outside of the upper limit

Subjective rating of customer satisfaction

Number of new help desk tickets open

Is the help desk satisfaction improving or diminishing?

Number of help desk calls abandoned

Number of help desk calls answered

Number of help desk calls sent to voicemail

Subjective rating of customer satisfaction

(C) USC-CSSE 10

University of Southern California

Center for Systems and Software Engineering

GQM Example

http://www.goldpractices.com/practices/gqm/

(C) USC-CSSE 11

University of Southern California

Center for Systems and Software Engineering

GQM Example

AT&T developers was evaluating effectiveness of software inspections.

• The main task was cost-benefits analysis of the inspections. (amount of effort expended per thousands of lines of code reviewed)

Goal

Plan

Monitor and control

Question

How much does the inspection process cost?

How much calendar time does the inspection process take

Metrics

Average effort per KLOC

Percentage of the reinspections

Average effort per KLOC

Total KLOC inspected

What is the quality of the inspected

Average faulted detected per KLOC

Average inspection rate software

Average preparation rate

To what degree did the staff conform to the procedures

Average inspection rate

Average preparation rate

Average lines of code inspected

What is the status of the inspection process?

Total KLOC inspected

(C) USC-CSSE 12

University of Southern California

Center for Systems and Software Engineering

Improve

How effective is the inspection process?

What is the productivity of the inspection process?

Defect removal efficiency

Average faults detected per KLOC

Average inspection rate

Average preparation rate

Average lines of code inspected

Average effort per fault detected

Average inspection rate

Average preparation rate

Average lines of code inspected

(C) USC-CSSE 13

University of Southern California

Center for Systems and Software Engineering

GQM Example

• TASK: Software-development process management

PROBLEM: During the software testing phase many anomalies were discovered and it is suspected that the software quality would not reach a satisfactory level by the shipping deadline.

QUESTION: Construct a GQM tree that helps you to decide when it would be possible to ship the software.

(C) USC-CSSE 14

University of Southern California

Center for Systems and Software Engineering

When it would be possible to ship the software?

(C) USC-CSSE 15

University of Southern California

Center for Systems and Software Engineering

(C) USC-CSSE 16

University of Southern California

Center for Systems and Software Engineering

GQM – example : Office Space

http://www.cura.org.uk/fig88gqmetric.pdf

(C) USC-CSSE 17

University of Southern California

Center for Systems and Software Engineering

GQM+Strategies: What?

• An extension of GQM

– Built on top

• Link software measurement goals to higher-level goals

– Software organization

– Entire business

(C) USC-CSSE 18

University of Southern California

Center for Systems and Software Engineering

GQM+Strategies: Example

• Wants: Increase customer satisfaction

• Strategy: Improve product reliability

– Both hardware and software

• Software development contribution

– Reduce defect slippage

– Improve testing process

– Team leaders decide on set of actions to take

– Implement improvements

– Measure results of improvements

• A tie between test defect data and customer satisfaction

(C) USC-CSSE 19

University of Southern California

Center for Systems and Software Engineering

GQM+Strategies: Example

(C) USC-CSSE 20

University of Southern California

Center for Systems and Software Engineering

Workshop

• Find a pair, do not pair with your own team members

• 25 minutes to develop questions and metrics from the given goals.

• Prepare to present your result.

(C) USC-CSSE 21

University of Southern California

Center for Systems and Software Engineering

References

• Goal-Question-Metric

– http://en.wikipedia.org/wiki/GQM

– http://www.cs.umd.edu/~mvz/handouts/gqm.pdf

– http://goldpractice.thedacs.com/practices/gqm/

• GQM+Strategies

– http://www.cs.umd.edu/~basili/publications/proceedings/P122.pdf

– http://www-ivs.cs.uni-magdeburg.de/sw-eng/us/java/GQM/link3.shtml

(C) USC-CSSE 22

Download