Software Project Management in Practice
We often hear about software projects that are late, over budget, or unable to satisfy customer needs. Yet some organizations are able to manage project after project successfully with desired results. In this book, Pankaj Jalote looks at one such organization, Infosys Technologies, a highly regarded high maturity organization, and details the processes it has in place to manage projects. Revealing exactly how Infosys operates, Jalote provides an excellent case study to guide project managers everywhere.
The specific Infosys practices described reflect sound management principles and practices. They are also grounded in common sense, and can be incorporated into any organization’s software development operation easily. With an actual software project from Infosys used as a running example, the author explains the key aspects of successful project management—from process planning through project monitoring and closure. The practices discussed are also compatible with the widely adopted Capability Maturity Model® (CMM®). In the end, readers will gain a practical framework for systematically improving the planning and execution of any software project.
In-depth coverage of the Infosys software project management process includes:
- Milestone analysis
- The process database
- Project team planning
- Customer communication
- Configuration management
- Risk assessment and control
- Requirement change management
- Quantitative quality management
- Effort estimation and scheduling
- Measurement and tracking planning
- Process planning, tailoring, monitoring, and auditing
- Reviews Project tracking and closure analysis
- Activity level analysis using SPCDefect prevention
- Many guidelines exist for achieving higher software process maturity
This book shows you how by example.
Review By: Noreen Dertinger
07/08/2010This book integrates in one slim volume the various project management techniques, which together provide the project manager with the tools to successfully plan and control the engineering activities of any software development project from beginning to end.
The book comprises two parts. Part 1 explains how to assess and improve a company’s software project management processes. Part 2 describes how to execute and close the project. The practices described are compatible with the Capability Maturity Model (CMM) and have been used successfully by a company (Infosys) that has been assessed at the highest level, CMM Level 5.
The opening chapter provides an overview of project management, the CMM, and Infosys. It introduces the case study ACIC that runs throughout the book. Part 1 presents chapters dealing with key planning activities: process planning, effort estimation and scheduling, quality planning, risk management, measurement and tracking and planning, project management and configuration management planning. Part 2 presents chapters on the project review process, project monitoring and control and project closure (tracking the things that went wrong and the things that were done right so that good practices can be repeated and bad ones eliminated).
In each chapter, the author describes the relevant concepts and background material. He then discusses the methods used by Infosys and examples of the use of those methods in real projects and in the ACIC case study. Each chapter concludes with a summary and an explanation of the aspects of the CMM that are fulfilled by the methods presented in that chapter.
The structure of the book, and the thoroughness with which details are explained, reflect the author’s strong academic credentials in computer science and engineering. His practical experience as VP of Quality Management at Infosys Technologies Ltd. allows him to present complex material in an easy-to-read style. The use of a real-life case study provides the glue that holds the various specialized chapters together and that allows the reader to internalize and more readily absorb the lessons learned.
The author explains in the introduction that software management processes must be kept simple if project managers are to use them. He explains that successful project management techniques are based on meaningful metrics that must be kept straightforward and easy to compile and use, if staff are to embrace them. He delivers on both counts through the recommendations and many examples woven into each chapter.
Although the author explains that the techniques and principles espoused in the book can be applied in any software development project, by presenting them as practiced in the CMM context, the book will be more valuable to readers whose organizations follow or plan to follow that approach.
Aimed primarily at project managers, the book will be of value to anyone involved in software engineering projects and who wishes to gain a holistic understanding of the big picture of such projects. As a software quality professional, I found this book useful to gain a better understanding of the place of quality in project management and a better appreciation of the importance of collecting appropriate data and information for the successful management of projects.