Software Process Improvement With Cmm / Edition 1 available in Hardcover

Software Process Improvement With Cmm / Edition 1
- ISBN-10:
- 0890066442
- ISBN-13:
- 9780890066447
- Pub. Date:
- 11/30/1998
- Publisher:
- Artech House, Incorporated
- ISBN-10:
- 0890066442
- ISBN-13:
- 9780890066447
- Pub. Date:
- 11/30/1998
- Publisher:
- Artech House, Incorporated

Software Process Improvement With Cmm / Edition 1
Hardcover
Buy New
$106.00-
SHIP THIS ITEMIn stock. Ships in 1-2 days.PICK UP IN STORE
Your local store may have stock of this item.
Available within 2 business hours
Overview
The book emphasizes software process definition, the effective use of software metrics, and common sense software project management along with CMM specifics. This integrated approach will help professionals achieve continuous software process improvement with CMM as the working guideline. The book explains common misconceptions associated with Software Process Improvement and CMM, and uses many real-world examples taken from the author's experience in helping business and government organizations define and improve the software development and management process. It includes a detailed case study, over 50 illustrations and tables, and a reference table of key software metrics, which help you:
>Evaluate measurements in relation to the functioning of your organization
>Direct the software development to achieve higher levels of CMM in a timely manner
>Link measurement techniques to specific KPAs in a practical manner
>Improve software process definition and improvement techniques with CMM as the guideline
Product Details
ISBN-13: | 9780890066447 |
---|---|
Publisher: | Artech House, Incorporated |
Publication date: | 11/30/1998 |
Series: | Artech House Computer Science Library Series |
Pages: | 228 |
Product dimensions: | 6.00(w) x 9.00(h) x 0.69(d) |
About the Author
Read an Excerpt
1: Software Management Process and CMM
The process of software developmentSoftware development can be described as the process of producing a software product. This process has three main components: (1) the software developer, (2) the organization, and (3) the process of product development.
The software developer creates the product through hard work and dedication, by "burning the midnight oil." But do the software developers really know what they are creating and what the end result is supposed to look like? Will the product they create fit into the "big picture" of integrated products, and how will their code impact the rest of the product? They may be saying to themselves "I have no idea what the customer really wants," "No one asked me if it is possible to implement this," and "I do not have the training, the tools, the proper resources, or the time to do this job right."
The organization, which supports the software developer, defines policies, goals, budgets, and performance measures. What does the organization do to achieve product quality? The organization is built around people, not around tasks. In a reactive organization, people are assigned to a project based on their availability-not their abilities, experience, or skill level.
The real reporting structure in software development organizations is sometimes not well defined. This leads to confusion, as reflected in the following, common statement: "I mostly report to X, but in some cases I report to Y; on a special project I report to Z." This statement does not reflect the flexibility of the organization. This statement reflects the lack of planning and the lack of policies and procedures describing how to accomplish a task and who is responsible for what.
The process of product development includes management of customer requirements, the design process, code development, integration, and testing. As an organization, ask yourself the following questions: Can you measure the quality of the process? How do you know how good your processes are? Can you identify the key process that affects customer quality? Is it customer requirements management? Is it software configuration management? Is it project management? If your management does not have answers to these questions, it means that your organization does not have any understanding of the role of quality in your organization.
Most of the time, there are plenty of process improvement opportunities in any organization, but they are often associated with problems. One of the most common opportunities is the opportunity to set up an organizational system to manage costs, scheduling, and quality. This organizational system will eventually become independent of any organizational changes and will help to improve organization, process, and individual developers' performance.
Well, now you've got the message. Let's try to figure out how to improve the process of software development and not lose track of what we do. The Capability Maturity Model (CMM) can provide such guidance and can be used successfully as a navigation tool for the software process improvement journey.
Software management and your organization
The scope of this book goes beyond a simple discussion of the different characteristics of CMM. CMM can be rigid, conceptualized, and flexible at the same time. As with any other model, the rigidity of it lies in the model's representation and its description. The flexibility of the model lies in its interpretation and implementation.
CMM is a conceptual model, but, at the same time, it has all of the necessary qualities of any other model. It is generalized; it represents major aspects of the software development process that are appropriate to the associated problems; and it has the capability (if used the right way) to define the behavior of the organization. CMM is intended to provide different levels of assurance that will help minimize the risk and the horror stories associated with the software development process.
Let's take a look at the Malcolm Baldrige National Quality Awards (MBNQA) for 1997. The criteria for the Baldrige awards are based on company performance in each of seven categories. The criteria require the award applicant to provide information on the company's improvement processes, results, and the effectiveness of the approach. Looking at the Baldrige award criteria (Table 1.1) is a good way to determine what should be fixed within a company. It enables management to look at the quality of internal processes and assess the goodness of process performance against the standards.
The CMM can be interpreted in a very similar manner and can provide an understanding of and also guide the process of software development.
CMM points out that the software product development cycle does not exist on its own and does not start with code production. It is part of the overall company strategy and includes the very diligent process of project planning, estimation, and management. Many organizations are beginning to realize that the software development process is no longer considered an art form. To be successful, it needs to become a science.
Some companies are doing defect prevention and requirements management, project cost estimation, and risk analysis. Some companies can quantify and produce charts and graphs on how well their development organization performed last year...