We all know the benefits of software engineering, standardize management, but we often take our 'shortcut' because of other factors, such as progressive pressure, and the pressure of project survival, in fact, we are paying greater price for this. . Some gradually exposed issues consume our time, effort, confidence, and not to end.
Continue to see the premise: We all think that it is necessary to change this situation
There are two main ways to change the status: 1. Introduce CMM or ISO 2. Process Improvement (SPI: Software Process Improvement)
We know that software process management is not applicable to direct introduction, SPI is more suitable for us. The idea of SPI is to analyze the status quo, summarize experiences and find places that need to be improved, and then arranged according to priority, the most suitable improvement, and most suitable for improvements. Then formulate improvement plan, implementation, and stage ... Through this constant repeated, we will improve our process and explore the most suitable way. When improved, CMM, ISO, and XP development methods have it, such as some KPAs in CMM can be used as our improved goals. Of course, the most important thing is to cut those methods and processes, as we are best for us.
According to this idea, I personally think that we need to improve in these aspects: 1. Configuration Management As the project document increases, the manual version control is getting more and more unsuitable. Often someone asked: "Where is the latest version?", "Are you giving me the latest version," You changed those places ", etc., and inevitably appear version chaos. 2. The project document project is not complete, incomplete. The development ideas are saved in the brain of the developer, there is no documentation. If someone changes, the project is a disaster. Also, some problems are always repeated in numerous times: such as "how to match Oracle", "How to match BDE", "How to develop a new business" ... This, we are always very busy, but the efficiency is not high . If there is a document tells everyone how to do more people. Otherwise, there is a new person to join, we have to answer the same problem. 3. Quality assurance is that we have eaten too much bitterness because of unclear demand and design considerations. Some quality assurance methods such as: review, will reduce the risk of later changes I also consider priority and improvement opportunities, and believe that configuration management as a breakthrough, first improvement. The following is a configuration management plan.
Configure management plan
Concept instructions
1. Configuration Item: Some of the projects need to be managed, controlled, including documents, source code, specification, etc.
2. Configuring baseline: (Baseline) is a "snapshot" that each configuration item version in the configuration library is in a specific period. It provides a formal standard that subsequent work is based on this standard and can only change this standard only after authorization. The establishment of baseline facilitates development results in the test and confirmation stage, and also makes changes across baselines, such as "demand freeze".
3. Development Library: For developer-specific configuration libraries, where information may be frequent, control relatively loose
4. Control Library: Configuration Library for Staged Products
5. Product Library: After the software has been systematically tested, the product library is deposited as the final product, waiting for delivery users or on-site installation.
Configuring the role and responsibilities of the management team
1. Project Manager: Supervise the implementation of configuration management, participate in the configuration management plan, formulation, establishment, and promote all stages of configuration baseline
2. Module person: Responsible for the management of subsystems, participate in the configuration management plan, formulation, and integrated management, module change record maintenance 3. Configuration staff: Participate in the configuration management plan, formulation, data backup, configuration status report
Define configuration IDs and naming principles
1. Product Name: Ubpdev Ubpman Ubptst NLUBP (Upbcre)
2. Note format: To explain these elements: when who where why what
Such as: 0730 ZZW MAIN unit modifies the function of the task management section due to the change of the library table structure
Define configuration management process
1. Change process
2. Backup process
Back up a configured database once a week, form a packaging file, transfer files to another machine, and backup in different place.
After the controlled library and the product library backup, together with the extracted document report and status report, regularly engrave a disc.
Configure the establishment of the library:
1) The use of tools: ClearCase is powerful, but the application is complex, suitable for the application of the big project; SourceSafe is small and practical, suitable for small and medium-sized projects, is easy to accept by project members, so I am currently selected SourceSafe
2) Establishment of the development library: Install the SourceSafe server on the file server, establish a configuration library, increase engineering and related configuration items: including project documentation, source code, and development specification, etc.
3) Establishment of the controlled library and product library: With the stability of the version and the release of the stage product, it will gradually establish a controlled library and product library.
Training of relevant personnel
Configuration management meaning, basic concept, SourceSafe client installation, training, process learning
Stage review, check
As an important part of the process improvement, the stage review helps to check the effects of improved measures performed in the previous stage, summarizing the improvement of experience, and finding insufficient places for further improvement, and check whether the improvement plan implementation is implemented .
Risk Identification
Technology: Smaller technology
Manage: The key is whether you can get the full support and management of leadership, so that the plan is implemented to avoid the tail of the tiger.
Improvement makes it in order to improve efficiency, not add trouble.
People's factors: All process improvements are closely related to people, but also the most expensive place.
First of all: Everyone has their own work habits in the past, although it is not necessarily effective, but it is not easy to change the habits. In response to this, we can conduct the meaning of this matter through training. At the same time, the process is standardized, so that everyone can follow the norms, after all, developers are willing to work in the regulatory management team.
Second, the confidence of the process improvement. Because everyone has experienced a lot of "Thunder and heavy rain" in the past.
Gradually lose passion. In response, we can develop short-term stage objectives. With the achievement of the goal, everyone's confidence is gradually improved.
Milestones:
1. (1 week) Training all item members, let everyone master the basic concepts of configuration management and the basic operations of the configuration management tool software.
2. (1 week) All roles are allocated and let you clarify the responsibilities of each role and follow the process.
3. (Within 2 weeks) All software results should be included in the management of the configuration management system.