Configuration Management Instance for Engineering Software Projects (1)

xiaoxiao2021-03-06  105

Configuration Management Instance for Engineering Software Projects (1)

51CMM.COM original author: Kuan [2004/04/22]

Preface Software Configuration Management As a job that runs through the software development process, its importance is self-evident. There are many articles on configuration management introductions, configuration management plans, configuration management work in 51CMM, which introduces the content of configuration management work from concept and implementation, but the beauty is still abstract, those who want When the brothers and sisters of the alive, the brothers and sisters trying to apply these theories to their own project configuration management, they will find that they are still unlucky (I have also been these feelings that don't work.). Therefore, this paper intends to talk from another angle to the configuration management of the recent actual operation, from the selection of configuration management tools, configure management process, configure the management of the structure, and the promotion of configuration management work How to promote this job carefully describe my practice, I hope these articles will help those brothers and sisters who are hot in hot. There are two points in this article: 1, the content described herein is to discuss in detail with the configuration management and configuration management strategy of the organization level; 2, the items used in this article are one "Engineering" project, the so-called "engineering" is corresponding to "product type", such a project requires the company's developer and the site developers to cooperate, in general, in the company's developers completed Part of the function, on-site developers modify the software according to user needs (this part of the workload is generally large, in a 16-year-old project, this part of the work may account for more than one-third Workload). Configuration Management Operation Overview Configuration Management Work range, in many articles of 51cmm, specifically refer to the "CMM and CMMI configuration management" and Chen Yue's "Software Configuration Management Implementation". Not a detailed description here. The project, which is described herein, is a project for a provincial telecommunications, which is about 16 people, and the project cycle is about 1 year. Most (more than 90%) development work is completed within the first 8 months, and the later work is mainly maintained and adjusted by maintenance personnel. In the 8 months of development time, the developer was developed by the developers in the company. According to the user's needs, the system architecture and the entire framework are determined, and some clear features and public modules are also completed during this time. After three months, some developers were on the spot, and some developers were completed in the later development of the company. The development language used throughout the project is C , Java, ASP, platforms involved in the platform including Solaris and Windows, which use development tools including CCs on Visual Studio and Solaris. In addition, the entire project also uses some third-party platforms, such as IBM's MQ, etc. In addition to user needs, the company also puts forward code multiplexing requirements for the project team, and developers must pay attention to the reusability of code during development. Configuration Management Preparation After the project is officially launched, the configuration management work can begin. The first step in configuring the management work is a configuration management plan. There are many templates for the management plan on 51CMM, you can refer to it. In general, you need to make clear content in the configuration management plan includes: 1. Configuring the management software; 2. Configuring the library structure; 3, personnel, role, and configuration management specifications; 4, baseline plan; 5, configure the library backup plan Hereinafter, we will be described in detail around these. Configuring the Management Environment Configuration Management Environment includes a hardware and software environment. Specific resource requirements should be determined according to the actual situation of the project, which generally needs to consider: network environment, configuration management server processing power, space requirements, configuration management software selection, etc.

The determination of the configuration management environment requires a considering factors, including the development tools, development methods, developers we adopted, and the level of familiarity of the configuration management tools, where developers are directly determined by the recognition and familiarity of the developer's configuration management tools. If the configuration management can do it normally. If you choose to have a biggest energy that needs to be more powerful, we must spend a lot of time for training; at the same time, the integration of configuration management software and development tools is also a must consider Factors, according to our experience, choosing a close configuration management tool for choosing a development environment integration, at least 20% spending in Check IN / Check Out and configuration managers keep configuring the full workload. According to the actual situation of our project, we have the following considerations: According to historical experience, a similar project's configuration library size is approximately 3G, take into account the need for backup and other operations, at least 10g or more of the configured management library. In order to ensure the security of the configuration management library, in addition to the corresponding backup plan, the RAID 0 1 can be used to provide better availability to configure the database; considering that some developers will be developed on the spot in the later stage of the project. Therefore, it is necessary to provide support for remote access methods on network conditions; configuration management server selection and configuration management software selection, considering that the company has an idle PC server, it is best to make full use of this server; configuration management software Remote access must be supported in some way, and because our development platform involves Solaris and Windows, configuration management software can support these two platforms; considering development tools, configuration management tools require the development tools we choose Very good integration; the developers of the project team lack experience in the use of configuration management tools, there is approximately 30% of developers using VSS configuration management tools, but only for the most basic use, there is no concept for VSS Label; In conjunction with the above situation, we first consider the selection of configuration tools. The selection of configuration management tools is the best choice from the difficulty of using the experience and configuration management tools for the developer. VSS is the best choice, and only the developers are simply training on the existing. Taking into account the integration of development tools, VSS is also a good choice. However, this project also requires support for remote access methods, and support for the Solaris platform, VSS is definitely unable to meet the requirements (VSS should be supported by VPN mode, but the full share of VSS is really Dare to use on the Internet). In addition to VSS, the configuration management tools can be selected, and CCC Harvest, ClearCase, CVS, etc., but Harvest and ClearCase are more complicated, requiring a special configured library administrator responsible for technical support, but also needs more developers. Training, additional, harvest and clearcase price; CVS is easy to use under UNIX, but it is free, but its textual manner is very uncommon to use developers developed by the Windows platform (CVS also have Windows The next GUI version, but after our trial, it is very different from our current developers' habits, it is difficult to accept).

After finding on the MSDN and Internet, I finally found a VSS enhanced software SOS (Source Offset), which is based on the VSS database, which can support and operate VSS libraries through TCP / IP mode, provided on Windows, Slolaris, and Linux. The client and the speed of the file operation are greatly accelerated and enhance the system security by transmitting the compression and encryption of data. SOS can find a detailed introduction and trial download (http://www.sourcegear.com/sos) on SourceGear's website. It turns out that the combination of VSS SOS plays a key support in our entire project. The SOS we use is a 3.53 STANDARD version, which will also illustrate the specific operation and use steps in the next section in this release. After the software and hardware environment, after the configuration management tool, we used a COMPAQ PC Server purchased by the company as a hardware environment that configured management, the server configured as follows: CPU: 1CPU, P4 2.0G memory: 512M DDR Hard disk space: 30g × 4 NIC: HP G bit network card A final determined solution is to install the server to install the Windows 2000 Server operating system. In order to ensure the security of the configuration data, we use the RAID 0 1 mode, the total free space is around 50g; in addition to backup A CDR burner is also configured for the server. The network environment has a ready-made 100M LAN, connected to the Internet through a switch and router, there is a static IP of a public network; the configuration management server is a machine of the intranet, with an intranet IP. To meet the needs of remote access, we map the ports you need to use on the router to the Configuration Management Server (By default, SOS uses two ports of 8888 and 8890). The network topology is as follows: In the company's developers use VSS access and operation configuration libraries through a local area network, access and operation of the configuration library over the Internet access. Configuring a library maintenance and backup program configuration library maintenance backup requires a full-time configuration library administrator to be responsible. The configuration library maintenance strategy we use throughout the project is based on Microsoft's Best Practice white paper recommendations, including the following points: 1. Keep the size of the database does not exceed 5g; Microsoft suggests, the size of the configuration library is more suitable, too Large database will greatly affect the efficiency of VSS; reduce the 2, multi-week analysis of the VSS database, discovery the problem in time; VSS provides Analysis and Fix tools, due to unreasonable delete and other operations The VSS database may have some questions such as Interrupt Data. Through regular weekly analysis, it can greatly reduce the risk of problems in the database; 3. Incremental backup of the configuration library daily, daily database Fully backup; Backup of VSS libraries can be done by VSS own Archive feature or an operating system's Backup program. The VSS archive feature compresses the file data in the VSS and retains all the status of the VSS, but only the VSS library can be fully backed up and the incremental backup function can not be implemented.

转载请注明原文地址:https://www.9cbs.com/read-100475.html

New Post(0)