"While the CMM focus on goals and generality makes it widely applicable, this leaves the application problems largely in the hands of the users. Kim Caputo's book provides a pragmatic guideline for how to address the CMM in an organizational context. The many examples and frequent war stories make for enjoyable reading and provide practical insight into the problems and challenges ahead." -Watts S. Humphrey
The Software Engineering Institute's Capability Maturity Model (CMM) has been widely adopted by companies seeking enhanced quality and heightened productivity in software development. The CMM enables managers to measure their organization's capabilities against a recognized standard and to determine their relative level of software process maturity.
This unique book offers step-by-step instruction on how to put the CMM into practice and how to conduct software process improvement within your own organization. Drawing on her first-hand experience leading process improvement groups in a large corporation, the author provides sound advice on how to get started, points out the problems that are likely to be encountered, and offers workable solutions that have been proven effective in CMM implementation. This book is precisely the guide she would have welcomed when first performing this critical task.
The CD-ROM included in the back of this book contains the tools illustrated in the book's appendixes: a variety of useful templates, samples, and presentation materials. The specific contents, including file names and file types, and system requirements, are listed below. The contents of this CD-ROM may be used and modified only for the internal use of the owner of a given copy.
You can use these tools to jump start your own work. However, please note that they are not intended for you to use directly as is, but rather are intended for you to adapt to fit your particular organization. The tools provided will reduce your start-up time, but you must add your own appropriate, finishing touches, if you wish to succeed. The tools, in other words, are neither "silver bullets" nor perfect templates. They fit the situation at the time and place they were used.To the extent that your own situation is different, they won't fit as well. And, as the author points out, your situation is sure to be different: a different day with different people (and remember that even the same people might be different on a different day).
These tools will be most helpful to people who find it easier to start with something and make changes to it, rather than to start with nothing and have to create materials from scratch. There is a phenomenon called IKIWISI, an acronym for "I'll know it when I see it." We often can't describe what we want, but we will know what we want when we see it. We will also know what we don't want when we see it. Both reactions provide valuable information for producing successful results. These templates give you something to look at so that you can consider what you want and what you don't want. Then you can create exactly what you need.
The specific contents:
Appendix A Assumptions Worksheet AA-ASMP1.DOC (Word) Worksheet Appendix B CMM Overview Workshop AB-CMMO1.DOC (Word) Instructions Appendix B CMM Overview Workshop CMMOVER1.PPT (PowerPoint) Presentation Appendix C Project Manager Interviews AC-PMI1.DOC (Word) Instructions Appendix C Project Manager Interviews PMIFORM1.DOC (Word) Questionnaire Appendix C Project Manager Interviews PMI-RES1.XLS (Excel) Results Chart Appendix D Great Performances Worksheet AD-GRP1.DOC (Word) Worksheet Appendix E CMM Key Process Area Checklist AE-CCHL1.DOC (Word) Checklist Appendix F Simple Action Plan AF-SAPT1.DOC (Word) Sample Template Appendix G Transition Preparation Method Charts AG-TPM1.DOC (Word) Charts Appendix H Results, Needs, Activities Worksheet AH-RNAW1.DOC (Word) Worksheet Appendix I Is This Project Worthwhile? Worksheet AI-PROJ1.DOC (Word) Worksheet Appendix J Sample Processes for Level 2 AJ-ANEX1.DOC (Word) Instructions Appendix J Project Management Policy AJ-PO1.DOC (Word) Sample Policy Appendix J Project Management Processes Overview AJ-OV1.DOC (Word) Sample Process Appendix J Requirements Management Process AJ-RM1.DOC (Word) Sample Process Appendix J Project Management Process AJ-PP1.DOC (Word) Sample Process Appendix J Estimation Process AJ-ES1.DOC (Word) Sample Process Appendix J Commitment Control Process AJ-CC1.DOC (Word) Sample Process Appendix J Project Tracking Process AJ-PT1.DOC (Word) Sample Process Appendix J Project Management Review Process AJ-PR1.DOC (Word) Sample Process Appendix J Software Quality Assurance Process AJ-SQ1.DOC (Word) Sample Process Appendix J Figure Sources for Appendix J Files FAJ1.PPT (PowerPoint) Charts Appendix K Project Notebook Table of Contents AK-PNT1.DOC (Word) Sample Template Appendix L Process Definition Templates AL-PDT1.DOC (Word) Sample Templates Appendix M CMM Action Planning Workshop Technique AM-CMMW1.DOC (Word) Instructions Appendix M CMM Action Planning Workshop Technique CMM-APW1.PPT (PowerPoint) Presentation Appendix N Postmortem Process Techniques AN-POST1.DOC (Word) Sample Templates Appendix O Risk Management Tracking Techniques AO-RISK1.DOC (Word) Sample TemplatesCorrections or updates to these files will be posted on the following website:
The CD-ROM works with all of the following system configurations:
Windows 95 with Microsoft Word 6.0, Microsoft Excel 5.0, and Microsoft PowerPoint 4.0
Windows 95 with Microsoft Word 7.0, Microsoft Excel 5.0, and Microsoft PowerPoint 7.0
Windows NT with Microsoft Word 6.0, Microsoft Excel 5.0, and Microsoft PowerPoint 4.0
Power Macintosh - System 7.5.5, Microsoft Word 6.0, Microsoft Excel 5.0, and Microsoft PowerPoint 4.0
Windows, Windows NT, and PowerPoint are trademarks or registered trademarks of Microsoft Corporation. All other brand and product names are acknowledged to be the service marks, trademarks or registered trademarks of their respective holders.
Unisys is a registered trademark of Unisys Corporation.
Foreword.
Preface.
Acknowledgments.
1. Introduction: Performing Software Process Improvement.
Practical Experience and Theoretical Models.
The SEPG Function.
Choreography as a Metaphor for Software Process Improvement.
Improvement Infrastructure.
Envisioning, Encoding, and Enacting.
Creating Movement.
Communications, Expectations, and Assumptions.
SEPG Activities: Visible and Invisible.
Assumptions in the Capability Maturity Model.
Frame of Reference.
Capability Maturity as Organizational Self-Awareness.
Assessment Techniques.
Finding the Steps: Implementation Life Cycles.
Finding the Music: The Stages of Transition.
Finding the Tempo: The Pulse of Change.
Confidence.
Using Feedback to Manage Change.
Preparation, Action, Finish.
Visualizing the Finishing Position.
Sequence of Steps.
Moving from One Step to the Next.
Creating a New Focus.
Making Progress Being Practical.
Collaboration.
Starting from Scratch.
Starting with Baggage.
Process Definition Pitfalls: Shoulds and Passive Voices.
People and Communication, Data and Information (PCDI).
Different Strokes for Different Folks.
Measuring Overall Progress.
Adoption Techniques.
From Adoption to Institutionalization.
Postmortem and Risk Analysis Techniques.
Partnership and Teamwork.
Levels of Shared Knowledge and Awareness.
Three-Dimensional Perspective.
Development and Discovery.
Discovering Level 5 Within Each Level of the CMM.
Encouraging Words.
Worksheets.
Presentation Materials and Worksheets.
Questionnaire and Results Format.
Worksheet.
Worksheet.
Worksheet.
Charts.
Worksheet.
Questionnaire.
Project Management Policy.
Project Management Processes Overview.
Requirements Management Process.
Project Planning Process.
Estimation Process.
Commitment Control Process.
Project Tracking Process.
Project Management Review Process.
Software Quality Assurance Process.
Template Samples.
Template Samples.
Presentation Materials and Worksheet.
Questionnaires and Report Template Samples.
Report Template.
The software industry has experienced tremendous and unprecedented growth over the past 40years, and our global and economic infrastructures are becoming more and more dependent on software. The software industry has been one of the fastest growing industries ever to exist. Along with it, a supporting industry has developed and grown into a strong international community: the community of SEPGs.
A Software Engineering Process Group (SEPG) is a team of software professionals with responsibility for driving and facilitating software process improvement efforts within a software organization.
This book was written by an SEPG member for SEPG members, with the intention of capturing the knowledge, tools, and techniques that we have found to be critical to our work. In this book, I have captured the things I wish somebody had told me when I first started in the SEPG business.
This book provides many thought-provoking ideas that are intended to help you be more effective in your software process improvement efforts. This book takes Humphrey's Managing the Software Process, Fowler and Rifkin's Software Engineering Process Group Guide, and Software Engineering Institute's Capability Maturity Model® to a higher level of abstraction, a deeper level of understanding, and a broader level of application to build a foundation for a disciplined approach to software process improvement.
The goals of this book are as follows:
At Unisys Corporation, when our first SEPG was formed there was not much guidance on how to do the work of an SEPG. There was a lot of information out there, but it took us two to three years to read it and translate it to our own situation. We had information about what to do, but it was difficult to derive the practical methods for how to make organization-wide software process improvements. We had to learn the hard way--from experience.
Who should read this book?
As I considered the source of inspiration for my work in software process improvement, I found a most unlikely source in my early life experience with dance and choreography. The analogy comes alive in this book. Dance is like producing software. Dancers perform the steps of the dance; software programmers perform the steps of the software process. Learning a dance could involve things such as reading the notation and interpreting the steps, or it could involve watching someone who has performed the steps before, trying to do the steps, trying the steps with the music, and making changes when something isn't working. Improving a process involves similar activities. As professionals, programmers are gifted and talented individuals, brilliant in their own right, who can collaborate to give a performance that does not diminish any individual performance. At least, this is our hope; sometimes the chemistry is wonderful, and sometimes it isn't.
| Choreography involves movement ofthe body, guiding one or more dancers through certain steps and through changing rhythms while maintaining balanceto create a peak performance for their audience. | Software process improvement involves the movement of an organization, guiding one or more individuals through certain activities and through changing conditions while maintaining balance to create a peak performance for their customers. |
In both cases there is a need to understand how to move people's energy to continuously strive for excellence. Just as art is not done simply for the sake of art itself, but for the sake of enlightenment, entertainment, and encouragement of the audience, so software process improvement is not done simply for the sake of software process improvement itself, but for the sake of the customers whose lives are becoming increasingly dependent on software. We must learn to improve and create excellence for their sake.
Because this book is based on both theoretical models and practical experience, as you use the models you will encounter many of the same experiences described here. Some things may not apply to you right now, but they may apply to you later.
The CD-ROM contains templates, samples, and presentation materials that you can use to get started more quickly. However, please note that these materials are not intended for you to use directly but rather are intended for you to adapt to fit your organization. These tools will reduce your start-up time, but you must add your own finishing touches if you hope to succeed.
I am not suggesting that these materials are "silver bullets" or perfect templates. They fit the situation at the time they were used. If your situation is different, the materials won't fit as well. And your situation is sure to be different: a different day with different people (and remember that even the same people might be different on a differentday).
These materials might be helpful to people who find it easier to start with something and make changes rather than start with nothing and create their own materials from scratch. There is a phenomenon called IKIWISI, an acronymn for "I'll know it when I see it." We often can't describe what we want, but we will know what we want when we see it. We will also know what we don't want when we see it. Both reactions provide valuable information for producing successful results. These templates give you something to look at so that you can consider what you want and what you don't want. Then you can create exactly what you need.
