SOFTWARE MEASUREMENT A PROCESS MODEL - Presentation Transcript
SOFTWARE MEASUREMENT – CPSC 547:
A PROCESS MODEL
Draft: Version 1
Date: June 10, 2009
Authors: Amin Bandeali (amin.bandeali@csu.fullerton.edu)
CONTENTS
Introduction.................................................................................1
Measure(ment)............................................................................1
Validation Framework...................................................................2
Measurement – High Level Model...................................................2
Measurement – Detailed Model......................................................2
1. A measurement method needs to be devised before measuring. .3
2. The measurement method rules are applied to a software..........3
3. A result is produced by applying the measurement method........4
4. Result is exploited in a quantitative model................................4
Measurement Process – Validation Requirements.............................4
Conclusion...................................................................................4
From Software Metrics to Software Measurement Methods: A Process Model 1
Introduction
The paper I have selected presents a process model for software measurement
methods. It discusses one of the topics that haven’t been talked about much in the Software
Engineering paradigm. It provides detailed descriptions of the steps necessary to design
apply and analyze a measurement method. Then it goes on to discuss a validation
framework that could be designed for analyzing whether or not a software metrics could
qualify as a measurement method.
In a nutshell, this paper presents a work-in-progress; the aim of which is to clarify,
from a validation perspective, what a measurement method consists of and what the
different steps are from its conception to its use. The paper is divided into three major
parts. First part talks about a high level model of a measurement process, and second part
elaborates on the detail model, the third and final part of the paper illustrates how a good
understanding of measures from a measurement method point of view will help to validate
proposals of software metrics.
Measure(ment)
This paper provides very good and interesting way of defining measurement:
• Measure(ment) refers to a method allowing the assignment of a numerical value to
an object in order to characterize one attribute of this object;
• Measure(ment) refers to the application of this method;
• Measure(ment) refers to the process from the design of a measurement method to
its exploitation;
From Software Metrics to Software Measurement Methods: A Process Model 2
Validation Framework
How do you validate a measurement method? Schneidewind proposes a metrics
validation methodology based on six validity criteria. Fenton says that “there is an implicit
assumption in the software community that validation of a measurement method in the
measurement theory sense is not sufficient.” But such a complete and practical validation
framework does not exist at this time and according to Kitchenham et al. remark, “what has
been missing so far is a proper discussion of relationships among the different approaches”.
The questions that are investigated for the development of a validation framework are:
• Is the measurement method internally valid?
• Is the measurement method usable?
• Can the measurement method take its place in a valid prediction system?
Measurement – High Level Model
The high level models of the concept of “measurement” correspond to different steps
in a measurement process, which are as follows:
1. A measurement method needs to be devised before measuring,
2. The measurement method rules are applied to a software,
3. A result is produced by applying the measurement method, and
4. Result is exploited in a quantitative model.
Measurement – Detailed Model
The detailed model is the sub-steps which are required in order to complete the
above steps.
From Software Metrics to Software Measurement Methods: A Process Model 3
1. A measurement method needs to be devised before
measuring
Four sub-steps have been identified and their modeling is based on a logical
perspective and on the recognition that iterative and successive refinements are required to
improve the initial design proposals of measurement methods. These sub steps should have
been completed and documented by the end of every design process of a measurement
method. These sub-steps are:
• The definition of the objectives: to know what we want to measure and the point of
view of the measurement plus the intended uses.
• The design or selection of a meta model for the object that would be measured:
Selecting the characteristics which would be used to represent the software that has
to be measured.
• The characterization of the concept to be measured: to define some rules which will
allow characterization of the concept.
• The definition of the numerical assignment rules: These are the characterization of
the concept of the meta model.
2. The measurement method rules are applied to a
software
After the design, the application of a measurement method is carried out through the
following sub-steps:
• Software Documentation gathering.
• Construction of the software model: this software model would describe how the
software to be measured would be represented using the measurement method
using the proposed meta model and its rules.
From Software Metrics to Software Measurement Methods: A Process Model 4
• Application of the numerical assignment rules.
3. A result is produced by applying the measurement
method
The measurement result must be documented and audited. The sub-steps for doing
so are:
• Presentation of the measurement results.
• Audit of the results: Results should be audited in order to determine their quality.
4. Result is exploited in a quantitative model
The result could be used in many different ways. For example, in quality models, in
budgeting models, or in an estimation process which is itself based on a productivity model.
Measurement Process – Validation Requirements
A validation framework should take into account all the steps of the measurement
process model described above. A validation guide provides the list of check-points for all
operations of each step and sub-step. It should also explain how these check-points can be
verified and establish links between the validation questions. As discussed in the beginning
of the paper, many authors have discussed the validation problem from different points of
view, but a complete framework addressing the full spectrum of the measurement process
models is still missing.
Conclusion
Based on this elaborate and knowledgeable paper, it seems like many of the
software metrics proposed have not one through such a design cycle and surprisingly have
been based on intuitive approaches which have not been verified in their entirety.
From Software Metrics to Software Measurement Methods: A Process Model 5
What I enjoyed about this paper is that it touched a topic which hasn’t been really
spoken or written about in software engineering domain. The paper was very well formatted
and outlined. The steps, diagrams and text were logically laid out and presented. However, I
still have some reservations about the examples that were laid out in this paper. They were
not very close to the real world and were very complex in nature. Few of them were very
detailed mathematical examples which require the reader to be very knowledgeable in
math. This paper had more than one spelling mistake, which is not very professional to
have in a research paper of such a caliber.
The citations of the paper are very strong and well balanced. However, I would have
liked to see more literature on the validation framework for measuring metrics. But overall
it was a gem.
0 comments
Post a comment