Synopses & Reviews
A rigorous, step-by-step approach to Evaluating and designing software measures
Hundreds of software measures have been proposed to the industry over the past forty years, but limitations in their design mean that most of them are of insufficient use to practitioners. So how can practitioners recognize which measures are sound and useful for decision-making? Moreover, for those who have to design new software measures, what must they do to build sound ones?
Software Metrics and Software Metrology looks at the fundamentals of the design of a measurement method, which forms the foundation of the measures available in the sciences and in engineering. Alain Abran provides a step-by-step approach to both analyzing the design of current software measures and designing new, robust software measures for a specific business or engineering need. He draws upon years of experience to ensure that software engineers and managers will apply the best practices in software measurement—and therefore be equipped to respond to the most demanding customers and feel supported by senior executives.
Presents the key concepts that dictate whether a software measure's design is sufficiently strong
Features several case studies analyzing strengths and weaknesses in the design of some of the software measures most widely used or quoted
Describes how lessons learned led to the design of the COSMIC – ISO 19761 method for the measurement of the functional size of software, from its initial prototype to its adoption by the ISO as an international standard
Illustrates day-to-day software measurement issues that have not been seriously addressed, from convertibility across measurement designs to measurement standard etalons
Includes chapter exercises for classroom use
Software Metrics and Software Metrology is meant for software quality specialists and process improvement analysts and managers, in software organizations of all sizes. In addition, this book introduces many of the theoretical concepts and references needed by professionals, managers, and students to help them understand the fundamentals of the identification and evaluation of software development and maintenance processes, as well as improvements to them.
Most of the software measures currently proposed to the industry bring few real benefits to either software managers or developers. This book looks at the classical metrology concepts from science and engineering, using them as criteria to propose an approach to analyze the design of current software measures and then design new software measures (illustrated with the design of a software measure that has been adopted as an ISO measurement standard). The book includes several case studies analyzing strengths and weaknesses of some of the software measures most often quoted. It is meant for software quality specialists and process improvement analysts and managers.
About the Author
ALAIN ABRAN, PhD, is a Professor and the Director of the Software Engineering Research Laboratory at École de technologie supérieure, Université du Québec (Canada). Dr. Abran is a coeditor of the Guide to the Software Engineering Body of Knowledge. He has also been actively involved in software engineering standardization as the international secretary for ISO/IEC JTC 1/SC 7 - Software and System Engineering. Dr. Abran has close to twenty years of industry experience in information systems development and software engineering.
Table of Contents
About the Author xix
PART 1: Key Concepts for the Design of Software Measures 1
1 INTRODUCTION 3
2 FROM MEASUREMENT METHODS TO QUANTITATIVE MODELS: A MEASUREMENT CONTEXT MODEL 17
3 METROLOGY AND QUALITY CRITERIA IN SOFTWARE MEASUREMENT 47
4 QUANTIFICATION AND MEASUREMENT ARE NOT THE SAME! 67
5 THE DESIGN OF SOFTWARE MEASUREMENT METHODS 99
PART 2: Some Popular Software Measures: How Good Are They? 129
6 CYCLOMATIC COMPLEXITY NUMBER: ANALYSIS OF ITS DESIGN 131
7 HALSTEAD'S METRICS: ANALYSIS OF THEIR DESIGNS 145
8 FUNCTION POINTS: ANALYSIS OF THEIR DESIGN 161
9 USE CASE POINTS: ANALYSIS OF THEIR DESIGN 191
10 ISO 9126: ANALYSIS OF QUALITY MODELS AND MEASURES 205
PART 3: The Design of COSMIC – ISO 19761 229
11 COSMIC: DESIGN OF AN INITIAL PROTOTYPE 231
12 COSMIC: SCALING UP AND INDUSTRIALIZATION 247
PART 4: Other Issues in the Design of Software Measures 267
13 CONVERTIBILITY ACROSS MEASUREMENT METHODS 269
14 DESIGN OF STANDARD ETALONS: THE NEXT FRONTIER IN SOFTWARE MEASUREMENT 281
Appendix A: List of Acronyms 297
Appendix B: Glossary of Terms in Software Measurement 299
Appendix C: References 305