Software Project Management (CMM) Experience Tarrel (1)
Source: Computer Business Daily
Editor's press:
CMM certification is one of the hottest topics in today's IT, indicating that China Software Enterprises have begun to pay attention to issues related to software project management. In order to understand the degree of understanding of software project management and their specific practices in software project management, recently, the reporter interviewed the relevant person in charge of the three pure software companies that thought, Dongfang, Rising three pure software companies. Among the three companies, Dongfang has begun to develop software in accordance with CMM specifications. In an interview, the person in charge of the three companies introduced the experience of their respective enterprises in software project management. Mr. Shi Hongfeng, the company's product Director Shi Hongfeng also explained in detail the "product development specification" of the company.
After organizing, we published the main content of the person in charge of the East and Rising two companies in the interview. We believe that it has certain recognition value. In addition, we will also publish a part of the company's "product development specifications" also published here - we don't think the norms of the idea are the best specifications. For software project management, uncomfortable is not existent, the quality is relative, the applicable is not applicable is absolute - we believe that it has a certain reference value.
Strengthen relevant education and training
Zhu Ziyi (Oriental Technology Chief Software Designer)
Yang Hua (Assistant, General Manager of Oriental Science and Technology)
Dongfang Technology has begun to prepare for CMM certification (secondary) from the end of last year. The prepropriated time is in November this year. Before this, we would ask the relevant experts from domestic consulting companies to conduct two pre-evaluation.
More than half a year, we feel that everything is going well. At first we worried that programmers would have to contradict emotions - because each day's work or a process or a project is recorded, editable, write reports, compared with the past, workload is undoubtedly - later Everyone is supported by everyone to implement the CMM specification.
After work in accordance with the CMM specification, the company's operating costs are increased - because the management personnel should be increased, the writing documents also need people's hand - but from the long run, it will bring costs, improve quality, and improve users. Satisfaction and so on. In this regard, we are confident.
Compared with foreign countries, the gap in software engineering management is not only manifested as a management system, management method, and the old manager of management thinking. The backwardness of the entire software industry is root.
Personal heroism, like a single-handed business is one of our nationalities, and its performance is particularly obvious in software talents, and has become a bottleneck for Chinese software companies. The reason for this situation, in addition to the development level of domestic software industry, the size of software projects is not large and the software company's own quality is not high, that is, the content related to software engineering management is almost no . In foreign countries, PSP and GSP are the compulsory classes of software professional students, which can be in the country, and these two classes have not yet started in school. Foreign foreign countries is a training training. For example, writing a document is a professional class. It is specially cultivated. After graduation, it takes it to "safe life", and the country is a single wooden bridge, and all learn to write procedures. It should be said that the current domestic counterparts have a certain understanding of the importance of software engineering management, but the strength of the relevant personnel training is still not enough.
In fact, talent is the most critical. One of the most lack of talents in the software industry is the product manager, they are the protagonist of software engineering management. Product managers must have the following quality: Have long-term software development experience - TXT, to be more than 8 years; understand the needs of users; famible for products, cooked to market - he can not understand the underlying technology of a product, but It must be understood that its function can grasp its development direction; with coordination capabilities. In short, the product manager is not necessarily very smart, and it does not need to be especially prominent in someone, but it is going to be exquisite. Such talents are too difficult to find. The product manager of Oriental is all cultivated.
The CMM specification is not only applicable to large software companies, which also applies to small and medium-sized enterprises. The CMM specification is just a framework, the maintenance of the nature. Enterprises should refine it once when they implement it; enterprises to implement them to specific projects, they must refine once; SMEs can detail the CMM norms so fine like large companies, enough, Don't teach. Implementing CMM specification, there is some benefits through CMM certification: determining workflow and mode, there is a guarantee that the quality and development of the product is guaranteed; it can improve the credibility of enterprises in users, increasing corporate and strong companies competition Chips; can undertake an outsourcing project of international companies --- US company is willing to find Indian companies to undertake their outsourcing projects, that is, because Indian companies have generally attached great importance to CMM certification, more software companies; companies are no longer subject to people, People are gone, doing, this is a company's mature performance.
Software commercialization necessary means
Talk about Civilization (Beijing Rising Technology Co., Ltd. "Manager of R & D, R & D
China's software industry has no longer development time, although some technologies have reached the international level, but due to the business environment, there is a gap compared to international peers than the international peers in the commercial environment.
Only companies that pioneering technology advanced products will only win profits. In Rising, technical commodity has been treated as a system, which helps to improve the quality of the entire enterprise.
Rising realizes that it is necessary to succeed in a competitive environment, and the genius people are essential, but they are not all. At present, a software engineering has more efforts to rely on scientists, engineers, manufacturers and sales staff.
In the process of software commercialization, establishing standardized easy-to-operate software development behaviors are the first to do. In response to the characteristics of anti-virus software, Rising specializes in the development of the waterfall model combines the development of incremental models to achieve the project stage. First achieve the core functions of the market's most demand, then continue to develop, and each individual stage is developed in the development method of the waterfall model.
Specifically, a basic software development process includes a demand phase, a system design phase, a detailed design phase, a coding phase, a unit test phase, an integrated test phase, a system test phase, and a software release software maintenance phase. The key stage of determining the success of software development is: Software requirements management, software plan management, software quality management, and software configuration management.
In order to reach a consensus between users and software project groups that handle users (users are composed of end users, high-level leaders, sales staff and market research personnel), "Software Demand Specifications" is essential. After formal review and confirmation, it will become the foundation of subsequent work.
The implementation of the software project is based on the resources, constraints and execution capabilities of the software project, therefore requires a reasonable software engineering management plan, which is one of the responsibilities of the project manager. The project manager should regularly check the Project Development Plan, and adjust it according to the actual situation developed by the current project.
In order to ensure that each software product is demanding, it is necessary to establish a SQA responsible for project supervision and coordination. It will review, review, and test if the software product meets the corresponding part of the well-defined software. The company's senior executives should participate regularly and review SQA activities.
Software configuration management refers to normalization management of all software configuration items for the project throughout the project. If the version control software is used to control the software configuration item version, the change is controlled by the baseline management method, that is, controlling and managing the entire software on the basis of software engineering standards, maintaining its integrity, consistency, and tracking. Sex.
Rising strives to create a wide range of networks, R & D, manufacturing, sales, distribution, and services, continuous. The work around the product, market, and development stages rather than simple techniques. For this purpose, standard operation is essential.
Appendix: Opening the company's "product development specification" (summary)
Description: The first part is "directory", which can be seen from the overall architecture of "Product Department Development Specification"; the second part is the "Overview of Development Specifications", which can be seen from the company's software project management. specific methods. 1 directory
1. Purpose
2 Development specification overview
2.1 Application Project Management Management Development Process
2.2 Standard stage development work
2.2.1 Overall Planning
2.2.2 Project Project
2.2.3 Demand Analysis
2.2.4 System Analysis
2.2.5 System Design
2.2.6 Coding implementation
2.2.7 Project Test
2.2.8 Documentation