Introduction
The software Capability Maturity Model (SW-CMM), released by SEI in August 1991, it is used to evaluate the maturity level of software enterprise, so that the software Enterprise understands its advantages and disadvantages, so as to continuously improve the software development process, improve the management level, reduce the management cost, and ensure the software development efficiency and software quality.
However, the CMM is designed for large projects and enterprises. Small projects and small and medium-sized enterprises due to the constraints of the corresponding conditions, such as organizational structure, role and relationship, process model definition, the rote-mechanically CMM framework can only bring a heavy burden on themselves. It is advisable to use CMM as a reference, and to learn from the CMM evaluation system that is suitable for its own development, and improve the level of software development and management.
1 CMM repeatable level framework
The CMM repeatable level is for the management of software project, including six key process domains, such as requirement management, software project planning, software project tracking and monitoring, software sub-cooperation management, software configuration management and software quality assurance. The sub-contract management is used to select qualified software contractors and to manage them effectively, and the general software enterprises, such as no outsourcing business, can ignore the key process domain and not as the scope of evaluation.
1.1 Demand Management
The requirements here include technical and non technical requirements. The goal is to build a common understanding of customer needs between customers and software projects. The main tasks are: To obtain customer needs, as the basis for follow-up work, customer needs through review, into configuration management, create a requirements baseline, follow the configuration management of the change process to follow the requirements change.
1.2 Software Project Plan
Developing a reasonable software project plan is the foundation of software project development, tracking and monitoring. At the beginning of the project, the project manager calculates the software development plan and schedule according to the requirement, and the software development plan is included in the configuration Management through project team review and senior manager approval.
1.3 software project tracking and monitoring
In order to make the software project progress and quality completed according to the plan, it is necessary to establish process visibility, track and monitor the actual progress of the project, so that the manager can take effective measures when the software project deviates from the plan. Tracking software project activities mainly includes tracking software scale, workload, cost, schedule, risk and so on.
1.4 Software Quality Assurance
Software Quality assurance runs through the life cycle of the software project. Quality assurance personnel are required to manage the processes and products developed by the software project according to the Quality Assurance plan, review the project activities and audit work products to verify that they conform to the procedures and standards.
1.5 Software configuration Management
Software configuration management also runs through the life cycle of the software project. SCM Engineers develop configuration management plans, complete various configuration management activities, maintain the traceability of configuration items, and ensure product integrity throughout the lifecycle of a software project.
2 Project life cycle Model description
The choice of software project lifecycle model plays a significant role in the success of the project. The appropriate project lifecycle enables the project to be completed as planned, and the unsuitable project life cycle hinders project progress to varying degrees.
The software project discussed in this paper is a cooperation project between a company and a foreign company, mainly software verification and testing. Unlike proprietary development software, the project is sourced from foreign companies, where customers assign tasks in the form of a task package, and each task package start time is determined by the customer. Because the existing software project lifecycle model does not accurately describe the nature and process of the project, the company SEPG creatively proposed a specific model for the project. The project is divided into three stages: planning, implementation and summary. The relationship between the stages and the 5 KPA is as schematic.