Pre Software Measurement eWorkshop Inputs
The pre-meeting questions
What experiences have you had in calculating ROI?
o At which organizational level did you approach the problem?
o On which program areas did you base the ROI calculations?
o Were your conclusions accepted? If not, what were the main inhibitors?
What are the goals of measurement in the CMM,CMMI, and Profes models?
o What is measured in these models? (consider both process and product)
o What, if anything, do you feel is missing? Why important?
ROI input materials
[C. Seaman] As I was reading through the stuff in the invitation on ROI,
it occurred to me that different participants might be viewing this question
quite differently. My first assumption was that we were going to be discussing
the use of metrics (i.e. which metrics to use) for calculating the ROI of
introducing some new technology (e.g. inspections or pair programming) into
a software development organization or project. But as I read the entire list
of questions, it occurred to me that some may assume we're talking about calculating
the ROI of establishing a metrics program in a software development organization.
These are two very different questions, and there might very well be other
ways to interpret this topic. So I guess my caveat would be to watch the discussion
to recognize if different people are really talking about different questions
altogether. Some possible discussion questions that might help clarify the
scope and get everyone on the same page might be:
- What types of decisions are supported by a ROI analysis?
- What questions are answered by a ROI analysis?
- What metrics data should be used for the cost part of the ROI equation?
- What metrics data should be used for the benefits part of the ROI equation?
[J. Münch] At IESE, as an institute for applied research we evaluate innovative techniques, tools, and methods, and package them for industrial application. In order to convince companies to introduce innovative approaches, we aim at providing empirical knowledge about the effects of these approaches in different application contexts. Being able to present proven cost/benefit data appears to be a major driver for convincing companies to introduce new approaches or change their processes. In addition, the demonstration between business goals and software approaches is important for making decisions about innovations. We also aim at observing our technology introduction projects in order to quantitatively evaluate the effects of the change and to get hints for potential further process improvements.
What experiences have you had in calculating ROI?
[J. Münch] I typically approached the ROI topic on the organizational level of departments or groups responsible for innovation and/or process improvement. We have, for instance, experience with ROI calculations in the following program areas:
• ROI of process management and improvement: In this field, a lot of quantitative
material is available providing global data about the benefits/ROI of specific
improvement approaches (such as CMM). Usually, this data is coupled with a
large set of interacting improvement measures so that it is not clear which
measures contributed to the success. It is typically is not analyzed whether
there exist success factors that were either not considered or that are to
be found outside the improvement program. We aim at defining ROI models for
concrete technologies (i.e., techniques, methods, tools). We defined, for
instance, a ROI model for process documentation that includes factors such
as initial documentation cost, reduction of the annual documentation maintenance
cost, and side benefits such as increased documentation quality or free effort
for other activities.
• Defect reduction: We use quality models characterizing defect distributions
(i.e., characterizing their origin, their removal effort, their detection
time, etc.) as a means for helping companies adjust their quality strategies.
Typical questions arising in industry are: Where and how much should I inspect?
The removal of which defect classes is cost effective? Having an idea about
the effects / ROI of changing a quality strategy helps companies to focus
their efforts in this area. In addition, the problems become explicit and
a lot of improvement proposals arise during the development of such models.
• Development of a measurement system for productivity: The topics of subcontracting
and offshoring are currently motivating companies to define and benchmark
organization’s productivity. Typically, the ROI of subcontracting tasks or
developing software offshore are not clear. Applying simple productivity models
considering only wages as cost seem to be not fair in these contexts because
there are a lot of additional cost drivers (such as additional quality assurance
cost, communication cost, etc.). A goal-oriented derivation of specific ROI
models for different goals and contexts seems to be appropriate.
• Cost estimation: In my experience, calculating the cost of cost estimation
is not difficult. Companies tend to minimize necessary effort (especially
interview time of experts). It is much more difficult to determine the benefits
of cost estimation because a comparable situation is usually missing.
My overall experience is that empirically based ROI models are very helpful for introducing software engineering technologies in practice. The models need to be focused on the technology and evaluated in the context in order to be applicable. However, technology providers nowadays provide ROI models only very seldom.
What experiences have you had in calculating ROI?
[C. Seaman] My experience with ROI has been as an instructor in software engineering and systems analysis, where I teach my students to calculate ROI in order to help their customers evaluate and compare different IT solutions. So I focus on drawing the measures used to calculate ROI from their problem statement. So if the problem that drives the improvement project has to do with reducing the effort required to perform some work process, then measures of effort should be the primary components of the ROI calculation, at least in calculating the benefits part of the equation. I think the costs part of the equation requires some brainstorming and creativity in finding relevant costs that can be measured with some reliability. This is difficult.
What experiences have you had in calculating ROI?
[O. Laitenberger] Demonstrating the cost-effectiveness of software inspection
and testing technologies in different environments by different kinds of empirical
approaches. The demonstration was mainly driven by scientific questions. The
examinations were primarily conducted on a project level and often involved
the introduction of a new technology. The conclusions were mainly accepted
(scientifically in terms of published papers).
Demonstrating the effectiveness of process improvement in/reorganization of
a large development organization. This effort took about 1.5 years. The demonstration
was based on collected measurement data and addressed the whole organization.
Top-Management was the target audience. The conclusions were accepted.
Hypotheses:
For basic software engineering technologies, such as software inspection or
testing, we don’t need more ROI-studies. Despite the existing (empirical)
evidence the basic technologies are often not used in industry. Hence, other
factors must be relevant for their adoption. These need to be studied.
The purpose of ROI-studies from a Software Engineering engineering research
perspective is to acquire more funding from either funding organizations or
companies. However, few of these studies motivate the adoption of those technologies
on a larger scale.
There is a general lack of practical strategies, models and measures (“off
the shelf) to demonstrate the effects of process improvement in software development
for decision-makers. Part of the problem is that most ROI-studies focus on
the technical level and fail to show the business impact.
Process Model inputs
What are the goals of measurement in the CMM,CMMI, and Profes models?
[J. Münch] The focus of CMM measurement is on status metrics for activities. CMMI allows for measuring selected process areas depending on the information needs of an organization. The measurement purposes are manifold (e.g., “providing insight into the performance of the process, its work products, and its services”). Continuous improvement approaches based on the Quality Improvement Paradigm (QIP) such as Profes tend to be more focused to the central problems of an organization. They provide guidance on how software projects should be performed based on reusing existing experience. They are flexible with respect to process and product metrics. Profes supports the modeling, analysis, and organization of quantitative and qualitative experience for future use.
My main experience is in applying continuous improvement approaches. Below I have listed some conclusions drawn from my experience in the context of software process improvement in industry:
• Quantitative measurement should be accompanied by collecting qualitative
experience (e.g., lessons learned). This can be helpful for getting valuable
information that was not anticipated and helps to interpret quantitative data.
• Companies often collect a predefined set of standard measures periodically.
When deriving metrics that support an improvement program, it should be carefully
observed how these metrics could support the measurement goals. Introducing
similar and/or redundant metrics can lead to a decrease in acceptance of the
measurement efforts.
Collecting process measures requires adequately defined explicit processes
that map the real processes of an organization. It is advantageous to combine
descriptive process modeling with measurement in the first iterations of continuous
measurement programs. Later on, process adherence should be checked periodically.
What are the goals of measurement in the CMM,CMMI, and Profes models?
[C. Seaman] My understanding of CMM/I is that measurement is used as part
of the infrastructure that a high-maturity organization needs in order to
achieve and maintain an engineering approach to software development. Thus,
measurement is not in the same class as other software development techniques,
such as inspections and reviews. Measurement in basic areas such as cost,
quality, and schedule are mandated, but the real sign of maturity is an organization's
ability to identify the metrics most appropriate to a particular situation,
and also make use of measurement data at an organizational level.
[O. Laitenberger] There can only be a single goal of measurement in CMM,
CMMI (I don’t known the Profes model – known in industry? What about SPICE?):
To show that any improvement on the maturity scale results in higher development
productivity and/or product quality.
From a business perspective, this directly translates to either the development
of more functionality for customers with the current number of developers
or maintaining the same level of functionality with less personnel. I doubt
that many are aware of this goal and the associated consequences. However,
after managing some rounds of developer lay-offs due to process/maturity improvement
the effects are quite transparent to me.
There is a lack of practical strategies, models and measures (“off-the shelf”)
to demonstrate the effects on a larger scale and for a business perspective.
|
||||
© 2008 Fraunhofer Center MD © 1999-2008 Fraunhofer IESE For suggestions and comments, please contact webmaster@fc-md.umd.edu |