Configuration management - the key to the implementation of software quality management

Configuration management - the key to the implementation of software quality management

Quality has always been the fundamental business survival. Software as a high intellectual creative activities, not only has the general characteristics of the manufacturing sector, but also for its strong knowledge, great creativity, but has not found general manufacturing characteristics. Therefore, software quality management is necessary to uphold the general principles and ideas of manufacturing quality management, but also for the features of the software, which has its own specifications. Develop standards, effective, strong operational software quality management standards for the implementation of the software industry, increase productivity, enhance competitiveness of great significance.

In recent years, the international software industry in accordance with the requirements of the framework and elements of the ISO 9000 system, in close connection with the characteristics of the software, to develop international standards in all aspects of software design, development, supply, maintenance, etc., to improve the software development management, control product quality. Foreign enterprises to ISO 9000 quality system certification as to strengthen quality control, improve the competitiveness of enterprises trump card. Each certified by the quality of companies have achieved unexpected results, had a tremendous social and economic benefits.

The basic idea of ​​ISO900 family of standards is that an organization to determine its quality objectives and to establish and implement an effective quality system in accordance with its established quality objectives to ensure that technical, managerial and human factors affecting the quality of products in a controlled state, all control It should focus on reducing and eliminating substandard, especially the prevention of failure, and establish and improve the mechanism for continuous quality improvement. It consists of a series of rules and protocols that, by specialized organization with a series of management systems and tools to ensure the implementation.

According to "Quality management and quality assurance standards - Part III: GB / T 19001-ISO 9001 Guide in software development, supply and maintenance of" stipulates that the quality system includes a series of activities to support the elements, while these support activities are also implementation of quality assurance system to provide.

The role of configuration management

Mass support activities in many systems, the configuration management activities in support of the center position, to put it in combination with other organic support activities together, form a whole, mutual promotion and mutual influence, effectively guarantee of the quality system.

With the deepening of computer applications, software needs of increasingly complex projects and change frequently, a traditional, two people get a project situation less and less, slightly larger project is no longer rely on a "master" to scratch tail arranged. From the entire company's development strategy, how in the technology advances, frequent movement of persons, the establishment of the company's knowledge and experience base, personal knowledge and experience into the company's knowledge and experience, which is to improve working efficiency , shorten product cycles, strengthen the company's competitiveness has a crucial role. Configuration management using scientific thinking, complemented by advanced configuration management tool, which is internationally well-known large software companies, has been an indispensable means.

But compared with developed countries, China's software enterprises in the development and management, over-reliance on the role of individuals, did not establish coordinated operations of the atmosphere, there is no scientific software configuration management process; technically only concerned selected systems and databases, development tools , while ignoring the selected configuration management tools, leading to even with the configuration management procedures, and because of poor operability and ran aground. All these reasons lead to the development process in common the following questions:

  1. 开发管理松散. Department heads can not know the exact progress of the project, the project manager does not know the specific work of developers, project progress arbitrary large, can be "left" to "right." By leaders issued a "deadline" when the "left" were, at maturity, it seems that everything has been successfully completed, while everyone fooled, cross finished, anyway, to see the leadership of the interface, as to what is inside, stay to the construction say. Construction work thus becomes unable to report, not to sort out the endless maintenance. The duration of the project indefinitely postponed when "right." For our software engineering, the total after the first feature is the "left" and "right." Performance of "left" in front of the leadership, the performance of "right" in front of the user.

  2. 项目之间沟通不够. Each developer their own way, not only code written in different styles, but also out of line coding and design. Originally developed in the error is inevitable, but the project developers fear of communication, it seems that it is for their own struggle sessions, the responsibility of passing the buck. Development of a large number of repeat, leaving a lot of code difficult to maintain.

  3. 文档与程序严重脱节. Software products are a valuable asset, code reuse is very high, how to build the knowledge base, knowledge base of the company with a good product quality and efficient development, have a significant impact. But a developer's name slogan is: "Call me anything goes, but do not call me to see someone else's program." Of course, the attitude of developers to change, but there is objectively a very important reason is: neither decent left by their predecessors program document (even left a document with the source code is also seriously out of line), the development of style without unity, like a pile of garbage, trash to the developer to go scavenging, from this point of view, it requires developers are reasonable.

  4. 测试工作不规范. The traditional development methods, the test work is only a people's subjective desire, simply can not make specific test requirements, coupled hide the ugly developers, testing often go a formality, the test results neither assessment is unable to quantify, of course, can not be for future development work for guidance.

  5. 施工周期过长,且开发人员必须亲临现场. Traditional development and construction is absolutely uniform, and has no intention to take over the others can not take over (because it means that other people see the program). Because the characteristics of application software, various construction points have different requirements, developers have to manually keep multiple copies of different copies, even for the same problem, but made in different places, solved by different people, its approach is different maintainability program is getting worse. Over time, and finally even their own could not tell, and there occurred another phenomenon of code coverage, and that grievances can not talk, for fear of being a joke, even someone asked, had the idea of ​​prevarication, it can be described as painstakingly.

To solve these problems, many domestic software companies have come to realize the importance of configuration management, foreign aid in some mature configuration management tools, configuration management to develop appropriate strategies and achieved good results.

Configuration Management Experience

Around configuration management, software engineering research dedicated to some of the world's in-depth understanding of the company on the basis of ISO 9000, introduced a software tool for a variety of configuration management in line with ISO 9000 standards, such as INTERSOLV's PVCS, Rational Clear Case and other companies. These software configuration management tools for standardization, engineering and automation needed to help development teams improve the scientific management level, thus improving engineering efficiency and reduce the cost of the project. Now with PVCS for example, combined with our experience, we talk about the benefits of the implementation of configuration management:

1. cost savings

(1) 缩短开发周期

The use PVCS Version Manager program version management and tracking resources, the establishment of the company code repository, save each version of the process of the development process, thereby greatly enhancing the reuse of code, while also easy to maintain multiple versions and new versions development, to prevent system crashes, the maximum share code. While project managers can view Version Manager project development log, testers can test software based on the development of the log and different versions, engineers can get different running version from the Version Manager, and Version Manager can be installed on Web Server for field construction workers access to the latest version, developers do not need to visit the site.

Up the use Tracker tracking and messaging communications between the development community, greatly strengthened the communication between the development community by combining its Notify module and e-mail, Reporter module can sort out the problems discovered, way to classify the report quoted as the development of guidance.

More than two main modules PVCS, and scientific applications can greatly improve development efficiency and avoid code coverage, lack of communication, the development of disordered chaos, if the use of the company's existing knowledge base, you can increase efficiency, shorten the development cycle.

(2) 减少施工费用

After use PVCS software configuration management, build management standards development, the version management file articulated in the company's internal Web servers, internal access Version Manager directly by Netscape, engineering personnel to enter the internal network via remote, get the latest version required. Developers do not need the live, on-site engineering staff to collect feedback from each other by a system administrator, submitted in writing to the company's internal development team project manager, internal development group to discuss and decide whether to modify, and to respond in writing. In doing so, the project can respond to multiple points at the same time, prevent developers assigned to various project sites, decentralized power, not enough staff problems, while saving a lot of travel costs.

2. conducive to the establishment of the knowledge base

(1) 代码对象库

Software code is the software developer's mental crystallization, it is a valuable asset of the company software, a variety of code objects formed during the long-term development of parts like a blank, as is the rapid creation system components. The fact that long-term: once a developer leave their jobs, their code originally made will basically become garbage, in limbo. The reason is that not everyone is specifically useful objects to manage, to expand its use to the company level, standardized, to illustrate and popularity. Version Manager provides a platform for the object and warehouse management, to the establishment of company-level code object library.

(2) 业务及经验库

By commenting PVCS Version Manager and Tracker, can form a complete development log and set of questions, textually accompany the entire development process, failing someone transfers disappear in favor of the company has accumulated business experience, regardless of the version of the rectification or upgrade , have an important role in guiding.

3. standardize management

(1) 量化工作量考核

Traditional development management, the workload has been difficult to measure indicators and rely on developers to grasp their own, arbitrary considerable; by managers to grasp, and too subjective. With PVCS management, developers every day before work on modified files Check In, which describes the details of the day to modify descriptions that can be used as a measure of workload.

(2) 规范测试

After the use PVCS, testing with real work, according to the test staff to make modifications of detail described specific day of each day of the test work, a test of evaluation of personnel having such a chain, greatly reducing the arbitrariness of its work.

(3) 加强协调与沟通

With PVCS, Version Manager document sharing through its specific integrated lock mechanism, greatly strengthened the communication between project members, so there are problems promptly found and modified, timely notification, but not additional, Tracker and e-mail a lot of work.

Conclusion

As we all know, software management tools manage only carrier of ideas, provide a good platform, while the director or person, for configuration management software, we should be in accordance with requirements of ISO 9000 quality various elements, changing our ideas and management thinking, the development of scientific configuration management procedures, combined with the ISO 9000 other support activities, to ensure the full implementation of effective quality management activities in the life cycle of the quality system, standardize the software industry in China, industrialization.

Guess you like

Origin blog.51cto.com/muyusen/2436292