THE GOAL QUESTION METRIC APPROACH
Victor R. Basili1Gianluigi Caldiera1H. Dieter Rombach2
(1) Institute for Advanced Computer Studies
Department of Computer Science
breathingUniversity Of Maryland
College Park, Maryland
(2) FB Informatik
Universität Kairslautern
Kairslautern, Germany
1.INTRODUCTION
As with any engineering discipline, software development requires a measurement mechanism for feed
back and evaluation. Measurement is a mechanism for creating a corporate memory and an aid in answering a variety of questions associated with the enactment of any software process. It helps support project planning (e.g., How much will a new project cost?); it allows us to determine the strengths and weakness of the current process and products (e.g., What is the frequency of certain types of errors?); it provides a rationale for adopting/refining techniques (e.g., What is the impact of the technique XX on the productivity of the projects?); it allows us to evaluate the quality of specific process and products (e.g., What is the defect density in a specific system after deployment?). Measurement also helps, during the cour of a project, to asss its progress, to take corrective action bad on this asssment, and to evaluate the impact of such action.
According to many studies made on the application of metrics and models in industrial environments (e article "Software Measurement"), measurement, in order to be effective must be:
1.Focud on specific goals;wds是什么意思
英语四级万能作文
2.Applied to all life-cycle products, process and resources;
1
小学6年级数学辅导
3.Interpreted bad on characterization and understanding of the organizational
四级真题及答案下载
context, environment and goals.
This means that measurement must be defined in a top-down fashion. It must be focud, bad on goals and models. A bottom-up approach will not work becau there are many obrvable characteristics in software (e.g., time, number of defects, complexity, lines of code, verity of failures, effort, productivity, defect density), but which metrics one us and how one interprets them it is not clear without the appropriate models and goals to define the context.
There are a variety of mechanisms for defining measurable goals that have appeared in the literature: the Quality Function Deployment approach [9], the Goal Question Metric approach [4, 5, 6, 7], and the Software Quality Metrics approach [8,10]. This article will prent the Goal Question Metric approach and provide an example of its application.
2.THE GOAL QUESTION METRIC APPROACH
The Goal Question Metric (GQM) approach is bad upon the assumption that for an organization to measure in a purpoful way it must first specify the goals for itlf and its projects, then it must trace tho goals to the data that are intended to define tho goals operationally, and finally provide a framework for interpreting the data with respect to the stated goals. Thus it is important to make cl
ear, at least in general terms, what informational needs the organization has, so that the needs for information can be quantified whenever possible, and the quantified information can be analyzed a to whether or not the goals are achieved.
The approach was originally defined for evaluating defects for a t of projects in the NASA Goddard Space Flight Center environment. The application involved a t of ca study experiments [7] and was expanded to include various types of experimental approaches [6]. Although the approach was originally ud to define and evaluate goals for a particular project in a particular environment, its u has been expanded to a larger context. It is ud as the goal tting step in an evolutionary quality improvement paradigm tailored for a software development organization, the Quality Improvement Paradigm, within an organizational framework, the Experience Factory (e article), dedicated to building software competencies and supplying them to projects.
The result of the application of the Goal Question Metric approach application is the specification of a measurement system targeting a particular t of issues and a t of rules for the interpretation of the measurement data. The resulting measurement model has three levels:
2
1.Conceptual level (GOAL): A goal is defined for an object, for a variety of reasons,国庆诗歌
with respect to various models of quality, from various points of view, relative to a particular environment. Objects of measurement are
•Products: Artifacts, deliverables and documents that are produced during the system life cycle; E.g., specifications, designs, programs, test suites.
•Process: Software related activities normally associated with time; E.g., specifying, designing, testing, interviewing.
•Resources: Items ud by process in order to produce their outputs; E.g., personnel, hardware, software, office space.
2.Operational level (QUESTION): A t of questions is ud to characterize the way
the asssment/achievement of a specific goal is going to be performed bad on some characterizing model. Questions try to characterize the object of measurement (product, process, resource) with respect to a lected quality issue and to determine its quality from the lected viewpoint.
3.Quantitative level (METRIC): A t of data is associated with every question in
order to answer it in a quantitative way. The data can be
•Objective: If they depend only on the object that is being measured and not on the viewpoint from which they are taken; E.g., number of versions of a
document, staff hours spent on a task, size of a program.
•Subjective: If they depend on both the object that is being measured and the viewpoint from which they are taken; E.g., readability of a text, level of
ur satisfaction.
Figure 1
3
A GQM model is a hierarchical structure (Figure 1) starting with a goal (specifying purpo of measurement, object to be measured, issue to be measured, and viewpoint from which the measure is taken). The goal is refined into veral questions, such as the one in the example, that usually break down the issue into its major components. Each question is then refined into metrics, some of them objective such as the one in the example, some of them subjective. The same metric can be ud in order to answer different questions under the same goal. Several GQM models can also have questions and metrics in common, making sure that, when the measure is actually taken, the different viewpoints are taken into account correctly (i.e., the metric might have different values when taken from different viewpoints).
美女翻译In order to give an example of application of the Goal/Question/Metric approach, let's suppo we want to improve the timeliness of change request processing during the maintenance pha of the life cycle of a system. The resulting goal will specify a purpo (improve), a process (change request processing), a viewpoint (project manager), and a quality issue (timeliness). This goal can be refined to a ries of questions, about, for instance, turn-around time and resources ud. The questions can be answered by metrics comparing specific turn-around times with the average ones. The compl
ete Goal/Question/Metric Model is shown in Figure 2.
Figure 2
3.THE GOAL QUESTION METRIC PROCESSbounty
4
A GQM model is developed by identifying a t of quality and/or productivity goals, at corporate, division or project level; e.g., customer satisfaction, on-time delivery, improved performance. From tho goals and bad upon models of the object of measurement, we derive questions that define tho goals as completely as possible. For example, if it is to characterize a software system (e.g., an electronic mail package, a word processor) with respect to a certain t of quality issues (e.g., portability across architectures), then a quality model of the product must be chon that deals with tho issues (e.g., list of functional features that can be implemented in different architectures). The next step consists in specifying the measures that need to be collected in order to answer tho questions, and to track the conformance of products and process to the goals. After the measures have been specified, we need to develop the data collection mechanisms, including validation and analysis mechanisms.
Figure 3
The process of tting goals is critical to the successful application of the GQM approach and it is supported by specific methodological steps. As illustrated in Figure 3 and in our example in the last ction, a goal has three coordinates:
齿轮式油泵1.Issue Timeliness
2.Object (process)Change request processing
3.Viewpoint Project manager
周末愉快英文and a purpo:
•Purpo Improve
5