The Goal Question Metric Paradigm Information Technology Essay

Published: November 30, 2015 Words: 1266

This assignment describes an approach to software development, which is known as GQM, an acronym for Goal, Question, Metric that was designed to evaluate defects and helps in deriving values up and down the organization. This model is based on the concept of improving the software development process with respect to organization's technical and business oriented goals.

Introduction to GQM

In today's world, software measurement is very important. There are many issues to consider when a company wants to start a measurement program. These issues include cost, time, risk, management buy-in, user buy-in, and effectiveness of the program. Unfortunately, there is a division between the quantity of developed metrics and those used. A common challenge faced by many projects, programs, and/or organizations is the initial development of metrics. In order to initiate metric development a methodology must first be selected that will yield a set of logically accepted measures that are consistent with the project's business philosophy. GQM addresses the above issues.

The Goal Question Metric paradigm was initially introduced by Basili and Weiss at the University of Maryland and at NASA Goddard Space Flight Center respectively. [1]

Concept of Goal Question Metric

Basili, in 1994, defined the GQM [1], which is basically a technique which indentifies meaningful metrics for any aspect of software development process. It follows a hierarchical structure, in which elements are defined in top-down manner. This technique follows a systematic approach for integrating goals to objects (KPI), objects are the areas that need to be considered for achieving goals. GQM can be applied to all resources, processes, products with organizational environment. Although, GQM has been in the software industry for several years, it didn't provide the extreme support for integrating its software model with large organizations such as high-end business goals, strategies, etc. [2]

The GQM framework is designed to provide user with ease of using and collecting data effectively and efficiently. The three steps in GQM approach are:

The important goals of the project.

Questions that arise from goals, which need to be answered in order to achieve those goals.

Metrics, which provide more significant information for those questions.

The general structure of GQM is as under:-

Goal

Question

Question

Question

Metric

Metric

Metric

Metric

Fig 1: GQM hierarchical structure

"Improve (=purpose) from the viewpoint of the user (=perspective) within organisation Y (=environment)." [3]

From the above fig, we can observe that, Goal breaks down to a set of questions which in turn break down to Metric. Goals comprise of Purpose (i.e. it evaluates, motivates the process model in the way to achieve, improve the goal), Perspective (i.e. to examine the cost of defects, changes from customer, owner point of view) and Environment (i.e. where the solution resides, which comprise of people, methods, tools, etc). For example a Goal could be,

While approaching this paradigm, several questions arise in mind to achieve a specific goal. Goals usually play a role at conceptual and abstract level. Questions seem to appear on an operational level. They are placed between Goal and Metric. Metric is placed at the end in this model, which is quantitative. It can be either subjective or objective. Thus, GQM is the appropriate means to achieve reliable data and knowledge about an organization to drive systematic process improvement.

Merits

GQM has many merits, because it is considered as an approach which helps not only large organizations but also medium and small scale ones in terms of seeking goals. They can be:-

GQM comprises of a goal-generation template that can be used to guide the definition of the GQM approach.[4]

New software engineering tools can be accessed by using either GQM or V (Validating)-GQM.

Guiding the software processes. Once, the Goal has been set, it becomes easy to follow the process to achieve it in question and metric form.

Understanding the companies working policy and environment. Goal, Question and Metric depends and varies from company to company ultimately leading to end result.

Easy to use.

Saves time and effort.

Demerits [5]

Although GQM is very well known, the amount of knowledge and experience required on applying it is still exhausted. So, the amount of research I have done, I found out, few problems that can be demerits for GQM, as under:

There are very few experiences or idea which has been published on the usage of GQM in terms of industrial case.

No technology has been invented to exploit the support of GQM based measurement process, for example to collect and store information/data.

Few details on cost required for setting a GQM based metric program.

Not suitable for big firms/ organizations.

Case Study: Software Engineering at Atlas Copco Group

Note:- To apply the above mentioned GQM terminology, I have taken an example of engineering based company, Atlas Copco, which is an industrial group.

A GQM program must be designed and implemented in order to achieve the goal set by the organization. The design of the program should be based depending on various factors such as people, nature of organization, products, processes, goal, etc. In this case, Atlas Copco is a world leader industrial group in compressors, construction and mining equipment, etc. It delivers sustainable solutions for increased customer productivity, through innovation and service. So, I will be concentrating on I T department of this company.[6] Considering the GQM approach, we can form set of Goal, Questions and Metrics depending on the company.

Goal 1: To plan the schedule for the project.

Question 1: What is the current situation for this particular project?

Metric 1: Based on the dates scheduled, it's up to date, but need to implement a few more things to make the project reliable.

Goal 2: More hands required on the project.

Question 2: Do we need more people to work on the current project? If yes, by how much?

Metric 3: At present there are 12 people working on this project we may need 3 more. A notice of wanting more people has been send to the HR department.

Goal 3: Customer Satisfaction.

Question 3: Do we meet the expected customer satisfaction as compared to 2008, 2009?

Metric 3: We are improving with time and also look forward to put in all those requirements received via feedback from our past customers. So, we are climbing the ladder of success.

Goal 4: Cost

Question 4: Are we concentrating on cost for all parts of machine?

Metric 4: It was observed that, few spare part costs more so we increased the overall cost of the machine. But, we need to keep optimum, so that even medium scale industries can purchase machines from us.

Goal Statement

Question Definition

Metric Derivation

Fig 2: GQM paradigm from Case Study

From, the above case study, we observe that Goals (requirements) are stated; secondly they are followed by Questions (medium-level design) and thirdly the Metric (low-level design).

Possible Enhancements

GQM method was used for evaluating Open Source Software (OSS) for GIS and Remote sensing under project CASCADOSS. Project CASCADOSS is European project for support spreading OSS in the area of natural monitoring [7]

Though GQM is specially designed for software development, it can be applied to all resources, life-cycle products and processes.

Conclusion

From the overall research, we can conclude that, different organizations have different strategies for time, cost, product management, etc. In order to be successful, first hand information is required for achieving best results. The GQM methodology provides us effective solution for metrics that help us in reaching and answering major questions tied to that. But, in some cases it is difficult to implement GQM, so there continuous GQM and V-GQM are used.