Process Improvement


Quality Improvement Paradigm

A three phase model:
  1. Understanding: Improve insight into the software process and its products by characterizing the production environment, including types of software developed, problems defined, process characteristics, and product characteristics.
  2. Assessing: Measure the impact of available technologies and process change on the products generated. Determine which technologies are beneficial and appropriate to the particular environment and, more importantly, how the technologies (or processes) must be refined to best match the process with the environment.
  3. Packaging: After identifying process improvements, package the technology for application in the production organization. This includes the development and enhancement of standards, training, and development policies.

The quality improvement paradigm consists of six steps:

  1. Characterize the current project and its environment with respect to existing models and metrics.

  2. Set quantifiable goals for successful project performance and improvement.

  3. Choose the appropriate measurement methods and supporting methods and tools for the project.

  4. Execute the processes, construct the products, collect and validate the prescribed data, and analyze it to provide real-time feedback for corrective action.

  5. Analyze the data to evaluate the current practices, determine problems, record finding, and make recommendation for future projects.

  6. Package the experience in the form of updated and refined models and other forms of structured knowledge gained from this and prior projects and save it in an experience base to be reused in future projects.

QIP Model
[Process Improvement Menu]
[Goal, Question, Metric] [Assess, Analyze, Metricate, Improve]

Goal, Question, Metric

The GQM approach was originally developed for NASA projects to evaluate defects by Basili, et. al. at the University of Maryland. The approach was expanded to apply to a larger context. At face value, GQM is a simple approach to process quality improvement. The approach is based on moving the organization toward measurable outcomes thereby making visible essential aspects of the project, those that relate to goals. The assumption on which the method is based is: to have meaningful measures the organization must first establish its goals. The goals must then be linked to data that provides operational foundations for the introduction of measurement and data collection. The result of the GQM approach is a measurement system directed towards specific issues. The basic idea is that measurement should be goal-oriented. The measurement system has three levels:

Conceptual - Goals

The goals are defined over the range of objects of interest to those involved in the improvement activity. This would include 1) products ( artifacts, deliverables, and documents) produced during the development activity, 2) processes (software related activities) in which development staff engage during the course of product development that usually involve the expenditure of time, and 3) resources (such as personnel, hardware, software) consumed or used by processes in the production of the outputs. The goal should define which object is to be considered, the purpose of the analysis, the focus (quality issue), the viewpoint, and the environment.

Operational - Question

Questions put the particular object in the context of a quality issue from a particular viewpoint. The questions assist in the identification of measures that may be used to determine the answer to question which in turn allows a way to ascertain goal achievement.

Quantitative - Metric

Associated with every question is a set of data, either subjective or objective, that helps provide a quantitative answer.

Clearly, the hierarchical structure suggested by GQM moves the organization, project or projects, to realize for improvement you must first have baseline information regarding current practice, and this information needs to be quantitative. This can be easily demonstrated by taking a goal, such as improve the time to market of new products. To achieve the goal you must show a change in time to market which means there must be baseline data indicating current or prior time to market for products that new values can be compared. Hence, the first question is "what is the time to market for products?"

Researchers at the University of Kaiserslautern engaged in an effort to evaluate GQM in European companies as part of an ESSI project, CEMP - Customized Establishment of Measurement Programs. Preliminary results are available from the project web site. This group developed a complete process model for applying GQM in an organization. Material documenting the model is also available from the web site.

El Emam, et. al. have conducted studies related to the effectiveness of the GQM approach. Their findings indicate that the metrics resulting from the application of this approach do not meet the necessary criteria. It is, however, important to realize that the simplicity of the process may be it greatest asset for those just beginning with process improvement.

[Process Improvement Menu]
[Quality Improvement Paradigm] [Assess, Analyze, Metricate, Improve]

Assess, Analyze, Metricate, Improve

ami was a project sponsored through the ESPRIT program. The purpose was to develop a practical approach supported by practice through use on actual software projects. The ami consortium was comprised of experts in software measurement and users applying quantitative methods to the management of their projects. The ami approach establishes a framework allowing for the quantification of software projects. The framework consists of four primary activities:

Assessment of the environment to link measurement to objectives.

Assess the project environment to define the primary goals for measurement.

Analysis of the assessment conclusions to identify the most suitable metrics.

Analyze the primary goals to derive sub-goals and the relevant metrics. The results of analysis are represented in a goal tree with question to which metrics can be linked.

Metrication by implementing a measurement plan.

Metricate by implementing a measurement plan, collect the necessary data, and convert primitive data to required measures.

Improvement as you exploit the measurement data and implement actions.

Improve by comparing measurement data with the goals and questions in the plan. This comparison will guide the changes in the project process. When a goal is achieved then the primary goal must be reassessed.

ami Activities Modeled

The ami approach resembles GQM as described by Basili and Rombach. The basic notion is to determine goals, decomposed into subgoals. The goals and subgoals then elicit various questions that should/could be answered. This in turn leads to the identification of metrics/measurements that guide the collection and analysis of data. This approach considers three viewpoints: process, product, and communicatons (intra-team). The authors of the ami approach connects the method to the SEI capability maturity model in the discussion in the book. This is particularly helpful in understanding the relationship of CMM and process improvement and measurement.

Steps in the ami Method
InputsSupport
Enterprise Plans
Business-Driven Goals
Environmental Information
Past Measurement Data
Quality Audits
AssessSEI CMM
Problem Analysis
Examples of Primary Goals
1. Assess your Environment
2. Define Primary Management Goals
3. Check the goals against the assessment
Metrics GoalsAnalyzeEntity Table
Example Goals and Metrics
4. Break down management goals into sub-goals
5. Check consistency of resulting goal tree
6. Identify metrics from sub-goals
Goal Tree, Questions
Metric Specification
MetricateMeasurement plan
Metrics definition
7. Write and validate measurement plan
8. Collect primitive data
9. Verify primary data
Measurement Plan
Collected Data
ImproveGuidelines for presentation of data
10. Distribute, analyze and review measurement data
11. Validate the metrics
12. Relate the data to plans and implement actions
[Process Improvement Menu]
[Quality Improvement Paradigm] [Goal, Question, Metric]
[Software Process Collection]
[Process Education] [Bibliographies] [Standards] [Research] [Resources]


To CIS Department at UMass Dartmouth
To UMass Dartmouth

Comments should be sent to

Richard Upchurch (rupchurch@umassd.edu)
or
webmaster@cis.umassd.edu
Computer and Information Science Department
University of Massachusetts Dartmouth
285 Old Westport Rd.
N. Dartmouth, MA 02747-2300
RUpchurch@umassd.edu

This document
Created: August 7, 1996
by RLU

Modified: January 22, 1997