introduction:
First level: initial level
In the initial level, companies generally do not have stable software development and maintenance. Often encounter problems, just give up the original plan and focus on programming and testing.
Second level: repeatable level
At this level, the policies of management software projects have been established and measures to implement these policies. Experience based on past projects plans to manage new projects.
Level 3: Definition
At this stage, the documentation on software engineering and management projects will be developed in the face of software development and maintenance of the entire enterprise. At the same time, these processes are integrated into a coordinated whole. This is called the standard software process of the company.
The fourth level: Quantitative management level
At this stage, the company establishes a quantitative quality goal for the product and the process, while the provision is joined in the process. As an enterprise's metrics, it is necessary to perform productivity and quality metrics for all projects. Software products therefore have expected high quality.
Level 5: (continuous) optimization
In this level, the entire enterprise will focus on the process of continuous optimization. Enterprises will take the initiative to find out the weakness and strengths of the process to achieve the goal of preventing defects. At the same time, the information on the effectiveness of the process is analyzed, and the analysis of the cost and income of new technologies, and the proposal to make a revision of the process.
CMM first level: initial grade
◆ Features (1) The software process is characterized by messy, sometimes even confusing, and there is almost no rules or steps for defining the process.
(2) Excessive commitment, often make a good commitment: "Work according to software engineering, orderly work"; or achieve high goals. But actually there is a series of issues.
(3) Abandon the original planning process, repeatedly coding and tested.
(4) Successfully relying entirely on individual efforts and outstanding professionals, depending on the supernormal management personnel and outstanding effective software development and developers. Specific performance and results are stem from or is determined to be personal and their previous experience, knowledge, and their progressive heart and active extent.
(5) The ability is just the characteristics of personal, not the characteristics of the development organization. Relying on personal quality or with huge pressure; or find a trick. However, once such people leave, the stability of the organization also disappears.
(6) The software process is unsure and unpredictable. The degree of software maturity is in the software process of the first stage software organization, is often changed during the actual work (process is random). Such organizations are also developing products, but their achievements are unstable, unforeseen, not repetitive. That is, the software plan, budget, function, and product quality are unsure and unpredictable.
◆ Process (1) minus or use stable processes
(2) The so-called "process" is often "so dry".
(3) Various regulations, rules and regulations are uncoordinated, even contradict each other.
◆ Personnel (1) rely on individual efforts and outstanding characters. Once the excellent figure leaves, the project cannot continue. (2) People's way work is like "fire", which is constantly changing the crisis during the development process, as well as the continuous "fire fire".
◆ Technical introduction new technology is greatly risking.
◆ Measure does not collect data or analyze data.
◆ Improved direction (1) Establish a project management process, implement standardized management, and guarantee the commitment of the project.
(2) The primary task is to carry out demand management, establish a joint understanding between customers and software projects, so that the project truly reflects the customer's requirements.
(3) Establish a variety of software project programs, such as software development plans, software quality assurance plans, software configuration management plans, software test plans, risk management plans, and process improvement programs.
(4) Carry out software quality assurance activities (SQA).
CMM Second Level: Repeatable
◆ Features (1) Take a more realistic commitment to ensure a successful success according to the necessary process criteria established in successful experience on similar items.
(2) It is mainly to establish a basic process management regulations on projects to enhance process capabilities.
(3) Establish a basic project management process to track costs, progress, and functions.
(4) Management work mainly tracks software funds, progress and functions. Identify problems in promise.
(5) The baseline is used to mark progress and control integrity.
(6) Define the standards of the software project and believe it, follow it.
(7) Establish an effective supply and demand relationship through the sub-contract.
◆ Process (1) The process of software development and maintenance is relatively stable, but the process is established at the project level.
(2) The process of the rule is under the control of an effective engineering management system, the previous successful experience can be repeated.
(3) When the problem occurs, there is capability identification and correction. Commitment is achievable.
◆ The success of the person (1) project relies on personal capabilities and management of management.
(2) Necessity and commitment to management.
(3) Training of attention personnel.
◆ Technical establishment of technical support activities and has a stable plan.
◆ Metrics Establish a resource plan. Mainly care for cost, product and progress. Have corresponding management data.
◆ Improvement Direction (1) The software process is not settled in accordance with the project, but summarizes the successful experience of various projects, which makes the rules, and summarizes specific experience into the standard software process of the whole organization. Software process activities for improving the overall software process capabilities of the organization, as the responsibility of the software development organization.
(2) Determine the standard software process of the whole organization, integrate software engineering and management activities into a stable determined software process. This can be used across the project to improve the software process effect, and can be used as the foundation of the software process.
(3) Establishing a software engineering process group (SEPG) long-term assumption and adjustment of the task of adjusting the software process to adapt to future software projects.
(4) Accumulate data, establish a document library related to the software process library and software process.
(5) Strengthen training.
CMM Level 3: Determine
◆ Features (1) Regardless of management or engineering software process, it has been filed, standardized, and integrated into a standard software process of software development organization.
(2) The software process standard is applied to all the projects for compilation and maintenance software. Some projects can also take the standard software process of software development organizations according to the actual situation.
(3) When engaged in a project, the product production process, spending, planning, and functions can be controlled, so that software quality can also be controlled.
(4) Software Engineering Process Group (SEPG) is responsible for software activities.
(5) Arrange training programs within the whole organization.
◆ Process (1) The entire organization has fully used comprehensive management and engineering processes. Software engineering and management activities are stable and repeatable with continuity.
(2) The software process has preached and prevents the role of problems, which can minimize the impact of the risks.
◆ People (1) work in a project group. Like the integrated product team.
(2) All people within the entire organization have a deep understanding of the activities of the defined software process, which greatly enhances process capabilities.
(3) Training in accordance with the character's role.
◆ Technology establishes new assessment technology based on certainty.
◆ Metrics (1) Collect data in the whole process.
(2) Systematically sharing data in a full project.
◆ Improvement Direction (1) Start the quantitative analysis of the software process to achieve the effect of quantitatively control the effect of the software project process.
(2) The quality of the software has reached the quality objective of software through quality management.
CMM fourth level: management level
◆ Features (1) Develop the details of the software process and product quality and specific metrics, software processes and product quality can be understood and controlled.
(2) The ability of software organizations is foreseeable because the software process is metric and operated by a clear metrics. It goes without saying that the quality of the software product is foreseen and controlled.
(3) The organization's measurement project guarantees that all projects measures productivity and quality and as an important software process activity.
(4) Has a good definition and consistent metric to guide the software process, and as the evaluation software process and product quantitative basis.
(5) The software process database has been established in the development organization, saves the collected data, and can be used for software processes for each item.
◆ Process (1) Start quantification of software processes.
(2) Small changes in software process, generally within an acceptable range. (3) It is foreseen that some trends in the software process and product quality. Once the quality of the quality is exceeded or violated, some methods can be corrected to achieve a good goal. ◆ There is a strong group work awareness in each project. Because each person understands the relationship between individuals and organization, this group consciousness can be produced.
◆ Technology continuously evaluates new technologies on quantitative basis.
◆ Metrics (1) Data collection and determination in the whole organization.
(2) Measurement standardization.
(3) Data is used to quantify software processes and stabilization software processes.
◆ Improved direction (1) Defect prevention, not only improves the problem, but also should take specific actions to prevent such defects in the future.
(2) Active technical changes management, identification, selection and evaluation of new technologies, enabling effective new technologies to implement in development organizations.
(3) Performing process change management, the purpose of defining process improvements, often continuously performing process improvement.
CMM fifth level: optimization level
◆ Features (1) The entire organization pays special attention to the continuous, foresee and enhancement of its own, prevent defects and problems, and continuously improve their process processing capabilities.
(2) Strengthen quantitative analysis, through quality feedback from the process, new technologies, new technology, so that the software process can be continuously improved.
(3) According to the effect of the software process, cost / profit analysis is carried out, and experience from successful software is summarized. Put the best innovation to all organize, and analyze the failed cases to find out the cause.
(4) The organization can find the shortcomings of the process and pre-improved, and tell the failure lessons to prevent repetition of previous errors.
(5) The evaluation of the software process and the improvement of the standard software process are pushed in the whole organization.
◆ Process (1) Continuously systematically improve the software process.
(2) Understanding and eliminating the common root of the problem, can be found in any system: due to a returned work, it causes time to waste. In order to prevent system changes that can cause waste labor. To eliminate the inefficiency of "public", prevent waste of waste. Although all levels have these problems, this is the fifth level of focus.
◆ People (1) There are conscious team awareness of the entire organization.
(2) Everyone is committed to improve process, and people no longer meet the achievements of milestones, and strive to reduce the error rate.
◆ Technology based on quantitative control and management, take the initiative to consider new technologies, pursue new technologies. Methods and new technologies in software development can be realized to prevent errors from incurring errors and continuously improve the quality and productivity of products.
◆ Measure use data to evaluate and select process improvement.
◆ Improved direction maintains a continuous software process improvement.
CMM summary: five-story structure
We see that in the fifth level, the improvement of technology and processes is as planned as ordinary business activities, and there is management. Software development organizations are sustainable and improved due to the capacity of the organization's ability to improving the improvement process. This improvement not only is gradually improved on the existing software process, not in the adoption of new technologies and new methods.
Draw a picture: (5th floor structure of CMM) ----------------- / Optimization grade // (5) / ----------- ------ ↑ | Continuous improvement process | ----------------- / Manage level // (4) / ---------- ------- ↑ | Fortunate Process | ----------------- / Determined level // (3) / ---------- ------- ↑ | Standard Process | ----------------- / Repeat level // (2) / --------- -------- ↑ | There is discipline process | ----------------- / Initial grade / / (1) / --------- ------------
// Busy for an afternoon, finally sorted out, so tired!