Practical Software Measurement
Practical Software Measurement (PSM) is a process for designing and implementing a project-based software measurement program. PSM provides essential information on scheduling, resource allocation, and technological performance. It enables software managers and developers to make decisions that will affect the project’s outcome positively. This book is the official, definitive guide to PSM written by the leaders of the PSM development initiative. It describes the principles and practices for developing, operating, and continuously improving your organization’s measurement program. It uses real-world examples to illustrate practical solutions and specific measurement techniques. This book examines the foundations of a software measurement program in depth, defining and prioritizing information needs, developing a project-specific information model, tailoring a process model to integrate measurement activities, and analyzing and understanding the results.
Specific topics include:
*The relationship between project- and organizational-level measurement
*Defining an information-driven, project-specific measurement plan
*Performing measurement activities and collecting data
*The basics of data analysis, including estimation, feasibility analysis, and performance analysis
*Evaluating the effectiveness of the measurement processes and activities
*Sustaining organizational commitment to a measurement program
*Key measurement success factors and best practices
In addition, this book includes numerous detailed examples of measurement constructs typically applied to software projects, as well as two comprehensive case studies that illustrate the implementation of a measurement program in different types of projects. With this book you will have the understanding and information you need to realize the significant benefits of PSM as well as a guide for a long-term, organization-wide measurement program.
PSM is founded on the contributions and collaboration of key practitioners in the software measurement field. The initiative was established in 1994 by John McGarry and is currently managed by Cheryl Jones. Both are civilians employed by the U.S. Army. David Card is an internationally known software measurement expert, and is with the Software Productivity Consortium. Beth Layman, Elizabeth Clark, Joseph Dean, and Fred Hall have been primary contributors to PSM since its inception.
Review By: Tilmann Bruckhaus, Ph.D.
11/12/2002This book shows you how to plan, implement, and improve a measurement program. The "Measurement Process Model" in the book can guide the setup of your measurement program. You will first learn how to establish information needs. The needs are then addressed by measurement concepts, measurement constructs, measurement procedures, and a measurement plan. The body of the text introduces the key concepts, and the appendices bring all the concepts together in a catalog of metrics concepts and realistic case studies.
One of the appendices provides a sizeable collection of examples of measurement constructs. These constructs are described in terms of typical software development issues along with metrics that can help resolve those issues. For example, a manager who needs to objectively assess the progress of the development against the project plan can measure total days late for all milestones. You will learn what data to gather, and how to chart and analyze it. You will also learn about work unit progress, incremental capability, personal effort, financial performance, physical size and stability, functional size and stability, functional correctness, defect density, response time efficiency, process efficiency, process compliance, technology suitability, and customer feedback.
Two additional appendices feature case studies that describe specific software development challenges and how the studied organizations used metrics to overcome the challenge. One case study focuses on Ridgway Air Force Base. A new program manager is challenged to take control of a two-year-old development effort that has gone through various shifts in strategy and direction. The manager evaluates and revises the project management plan to include measurements that provide improved insight into schedule and progress. Based on these metrics, the manager can track progress, analyze issues quickly, and take corrective action. He uses defect metrics to assess test readiness, and he uses test and effort metrics to assess readiness for deployment. Finally, installation and support are also managed with the aid of progress and defect metrics.
This book is a treasure chest for development managers, test managers, project managers, quality assurance engineers, and developers alike. You will find the technical framework on which metrics are based, a process for implementing a measurement program, advice on how to deal with organizational issues, as well as valuable examples of how to define and apply metrics.
Development and project managers will benefit from increased visibility into cost, schedule, and quality issues. Developers and testers who face technical difficulties will learn how to measure and analyze such issues in a way that allows management to understand the impact of those issues on the overall project. Educators will find this book a rich source of information on the complex topic of software measurement.
Some segments of this book are less engaging than others, especially when it comes to stating the advantages and justifications for investing in a measurement program. The flow is less smooth here than in other passages. The body of the text could be a better read if it were supplemented by more examples and applications. However, the advantage of the mostly technical approach is that it will serve as an efficient reference. The case studies in the appendices deliver all the juicy examples and applications many readers crave. If you are not as interested in the technical underpinnings of a measurement program and plan, you may want to start at the end of the book and enjoy the case studies. If you plan to set up or enhance a measurement program, you will value the detailed technical analysis in the main text.
User Comments
I was surprised to read the entire description and the review without encountering a reference to function points. Hopefully this is because the writers assume that by now everyone knows that function points are the world standard* for measuring software size, and that without function points there can be no such thing as "software measurement." (*Except in the U.K., which has its own standard. Of course, this is also the country where cars drive on the left.)