Discussion on software project management

zhaozj2021-02-08  285

Discussion on software project management Li Jian (this article reprinted from Software Engineering Expert Network www.21cmm.com) 1. Introduction With the rapid development of information technology, the size of software products is also increasingly large, individual single-handed workshops Development methods have become increasingly uncomfortable. Software companies are actively introducing software project management into development activities, which is effective management. Our company is a medium-sized software company in Xi'an. In the company has implemented project management systems, software project management is an important part of the entire project management. In terms of concept, software project management is to make software projects to analyze and manage costs, personnel, progress, quality, risk, etc. in order to complete the predetermined cost, progress, quality. In fact, the meaning of software project management is not only the case, but software project management is conducive to transforming developers' personal development capabilities into enterprises development capabilities. The higher the software development capability of enterprises, indicating that the software production of this company has become mature. The more stable development (ie, the development risk) is reduced. Software development is different from other products manufacturing, the entire process of software is the design process (no manufacturing process); in addition, software development does not need to use a large number of material resources, mainly human resources; and software development is just program code And technical documents do not have other substances. Based on the above features, software project management has great uniqueness compared to other project management. Second, the organizational mode software project of software project management can be a separate development project, or it can form a complete software product project with the product project. If it is an order development, it is necessary to set up a software project group; if it is product development, it is necessary to set up a software project group and product project (responsible for market research and sales), and constitute a software product project group. When the company implements project management, we must first set up a project management committee, the project management committee, project management group, project review team, and software product project group. 1. The project management committee project management committee is the highest decision-making body of the company's project management, which is generally composed of company general manager and deputy general manager. The main responsibilities are as follows: (1) According to the project management related system, management project; (2) Supervise the implementation of the project management related system; (3) Decision on the project, project revoke; (4) Appoint the project management team leader, project Director of the Commission, the head of the project team. 2. The project management team project management team is responsible for the project management committee and is generally composed of company management personnel. The main responsibilities are as follows: (1) Draw a system of draft project management; (2) Organize project phase review; (3) Save relevant documents and data in the process; (4) Subject to optimize project management. 3. The Project Review Group Project Review Team is responsible for the Project Management Committee, which can be implemented in the development review team and product review team, usually composed of company technical experts and market experts. The main responsibilities are as follows: (1) Review the project feasibility report; (2) review market planning and phase report; (3) review the development plan and phase report; (4) Summary of project summary Complete the review. 4. The software product project group software product project team is responsible for the project management committee, can set software project groups and product project groups.

The software project group and the product project team have a development manager and product manager. Members are generally composed of company technicians and market staff. The main responsibilities are: According to the arrangement of the project management committee, the software development and market research and sales work of the project is considered. Third, the content of software project management From the perspective of software engineering, software development is mainly divided into six phases: demand analysis phase, summary design phase, detailed design phase, coding phase, test phase, installation and maintenance phase. Whether it is a workshop development, or team collaborative development, this six stages are indispensable. According to the company's actual situation, the company focuses on software configuration management, software quality management, software risk management and development personnel, and introduces the entire stage of software development. In the early 1980s, the famous software engineering expert B.W.boehm summed up seven basic principles required to follow software development, and similarly, we should follow these seven principles when conducting software project management. They are: (1) Strict management in the lifecycle plan; (2) Adhere to the stage review; (3) Implement strict product control; (4) Adopting modern programming technology; (5) results should be clear Review; (6) Developing group members should be less and fine; (7) acknowledging the need to improve software engineering practice. 4. The first thing to prepare the "Software Project Plan" project team is to write the "Software Project Plan", describe the general content of the development schedule, resource requirements, and project management in the plan. The plan is mainly issued to the relevant personnel of the company, so that they generally understand the situation of the software project. For each content of the program, there should be a specific implementation manual, which is used by members of the project group. The Software Project Scheme should generally include the following: 1. Introduction 1.1 Scheme 1.2 Scope and Goal 1.2.1 Scope Description 1.2.2 Main Features 1.2.3 Performance 1.2.4 Management and Technical Constraints 2. Project Estimation 2.2 Using the Evaluation Technology 2.3 Workload, Cost, Time Estimation 3. Risk Management 3.1 Risk Identification 3.2 Discussion on Risk 3.3 Real Management Plan 3.3.1 Risk Plan 3.3.2 Risk Monitoring 3.3.3 Risk Management 4. Schedule 4.1 Project Work Decomposing Structure 4.2 Time Limit (Gantti) 4.3 Resource Table 5. Project Resources 5.1 Personnel 5.2 Hardware and Software 5.3 Special Resources 6. People Organization 6.1 Organizational Structure 6.2 Management Report 7. Tracking and Control Mechanism 7.1 Quality Assurance and Control 7.2 Variation Management and Control 8. Appendix V. Whether software configuration management is configuring management and software scale, the larger the size of the software, the more important configuration management is. Software Configuration Management Abbreviation SCM (Software Configuration Management Abbreviation) is a management in team development, identification, control, and management software changes. The use of configuration management depends on the scale and complexity of the project and the risk level. 1. The problem facing the software development. In limited time, within the fund, you must meet the growing software product quality requirements; The environment developed is increasingly complex, and the code sharing is increasingly difficult, and the platform needs to be increased. The size of the program is getting bigger and bigger; The software reuse needs to be improved; The maintenance of software is increasingly difficult. 2. The features that the software configuration management should provide in ISO9000.3, which describes the functionality of the configuration management system:. Uniquely identify the version of each software item;

Identify the version of each software item that together constitutes a particular version of a complete product; Controls the update of a given software item simultaneously by two or more individuals; Controls the update of a given software item simultaneously by two or more individuals; Update of complex products is coordinated as required by one or more locations; Identify and track all the measures and changes; these measures and changes are caused by the change request or problem during start until the release is started. 3. Version management software configuration management is divided into three parts: version management, problem tracking, and establishment of management, where version management is the foundation. Version management should complete the following main tasks:. create project; . Reconstruct any one or a file of any revision; The cover is prevented by locking technology; Require input modified description when an additional revision is added; Provide a comparative use tool for any two revisions; Adding incremental storage; Provide reporting features for revised history and lock states; Provide a merge function; Allow any version at any time; Setting of permissions; The establishment of the promotion model;. Provide a variety of reports. 4. Configuration Management Software PVCS 6.0 PVCS6.0 is a very excellent configuration management software that enables various requirements in configuration management, and can integrate with a variety of popular development platforms, providing a lot of convenience for configuration management. . Sixth, software quality management With the size of software development, the quality of software is getting more and more prominent. Software quality control is not just a software test problem, and quality management should be introduced at all stages of software development. In addition to strengthening the national standard "Information Technology Software Survival Process" (GB / T8566--1995), our company is also actively prepared by ISO 9000.3. 1. Software Quality Assurance Program needs a "Software Quality Assurance Plan" before making software development. It is currently more common to ANSI / IEEE Stol 730--1984, 983--1986, including the following: 1. Plan purposes 2. Reference 3. Management 3.1. Organize 3.2. Task 3.3. Responsibility 4. Document 4.1. Purpose 4.2. Software Engineering Document 4.3. Other Documents 5. Standards and Agreements 5.1. Objective 5.2. Audit 6. Review and Audit 6.1. Objective 6.2. Review 6.2.1. Evaluation of Software Demand 6.2.2. Design Review 6.2. 3. Software verification and confirmation review 6.2.4. Function review 6.2.5. Physics review 6.2.6. Internal process review 6.2.7. Management review 7. Test 8. Problems report and correct events 9. Tools, technology and methods 10 Media Control 11. Supplier Control 12. Record, Collection, Maintenance and Confidential 13. Training 14. Risk Management 2, Basic Principles of Quality Management. Control the quality of all processes; The starting point of process control is to prevent unqualified; The central task of quality management is to establish and implement the quality system of the document; Continuous quality improvement; Effective quality systems should meet the needs and interests of both customers and the internal parties; Regular evaluation quality system; The key to quality management is the leadership. 3, software quality factor correctness: The system meets the degree of specification and user objectives, that is, the extent to which the expected function can be completed correctly in a predetermined environment. Quality: The system can make an appropriate response degree in an accidental environment of hardware failure, input data is invalid or operational error. Efficiency: In order to complete the predetermined function, the system needs to calculate the calculation resources.

Integrity (Safety): Attempts to use software or data for unauthorized people, the system can over-control (prohibit). Availability: The system satisfied with the system when completing the function that should be completed. Risk: Develop the system with the predetermined cost and progress and the probability satisfied with the user. Understandable: Understand and use the system. Repairability: Diagnostics and change the size of the work required to run on site discovery. Flexibility (adaptive): Modify or improve the workload required for system-running systems. Testability: Software is easy to test. Portability: Turn the program from a hardware configuration and / or software system environment to another configuration and environment. There is a quantitative measurement method to use the cost of designing and debugging costs that need to be used during transplantation. Reuse: This program can be used again (or range) in other applications. Mutual Character: How much is the amount of work that combines the system and another system. 4. Software review software review is not reviewed after software development, but is reviewed at all stages of software development. Because there may be errors at all stages of software development, if these errors are not discovered in time, they will continue to expand, and it is possible to fail to fail. The following data can be clearly seen in the previous mistake on the later influence. Software review is a considerable job, and it is also the most important job in China. (1) Review the goal. Discover the software features, logic, or implementation of any form of manifestation; Through the requirements of the review of the verification software; Guaranteed that the software is expressed in advance. The available software is developed in a unified manner; Make the project easier to manage. (2) Review Process A, convene a review meeting: 3 to 5 people should be attended, and each participant is ready for each participant, and the review will generally do not more than 2 hours. B. The end of the meeting enables one of the following decisions: accepting the product, do not need to be modified; due to the serious mistake, refusal to accept; temporarily accept the product. C, review report and record; the proposed issues must be recorded, and an evaluation problem must be completed before the end of the review meeting, and the review is required. (3) Review guidelines. Review the product, not a review designer (you can't make the designer have any pressure); The venue must have a good atmosphere; Establish a agenda and maintain it (the meeting cannot be separated from the subject); Limit debate and refutation (the review is not to solve the problem, but to find problems; specify the scope of the problem, rather than solving the problem; show record (preferably there is a blackboard, write problems at any time on blackboard); Restrict the number of conferences and insist on preparation of preparations;. To try to review the list of reviews (help reviewers think);. For each formal technical review allocation resource and time schedule; for all reviewers Training;. Early evaluation of the review (review of the review guidelines). 5, ISO9000.3 Software Quality Certification System ISO9000.3 is ISO9000 Quality System Certification About Computer Software Quality Management and Quality Assurance Standard Parts.

It uses the management responsibility, quality system, contract review, design control, document and data control, procurement, and customer to provide product control, product identification and traceability, process control, testing and testing, test / measurement, and test equipment. Test and test state, unqualified product control, correction and preventive measures, handling / storage / packaging / protection and delivery, quality record control, internal quality audit, training, service, statistical system, etc. Claim. 6. Test software testing is an important part of software development, and is also an important part of software quality assurance. The test is to dynamically perform the system (or components of the system) in a known environment with known inputs. Test generally includes unit testing, module testing, integration testing, and system testing. If the test results are inconsistent with the expected results, it is likely to discover errors in the system. The following basic documents will be generated during the test: (1) Test Plan: Determine the scope, method, and resources required. (2) Test process: Detailed description and test procedures related to each test scheme (including test data and expected results). (3) Test results: To place the results of each test run into the document, if there is an error, issue problems should be generated, and the problems found will be resolved. Test Results: Classify the results of each test run into the document, if you run an error, you should generate a problem report, and you must debug the problem found. 7. Software risk management software project management has a risk, if we pay attention to risk in advance, and prevent it, you can minimize the occurrence of risk. Risk management is an effective means. 1. Risk classification According to the risk content, we can divide the risk into project risks (cost increase, time extension, etc.), technical risk (technology is not mature, etc.), business risk (sales issues, etc.), strategic risk (company's business strategy) Changes have changed), manage risk (whether the company's management is mature, etc.), budget risk (whether budget is accurate, etc.). In addition, we can also divide the risk into known risks (such as employee leavening, etc.), forecast risk (from previous experience) and unpredictable risks. 2. Effective method of risk identification risk identification is to establish a risk project checklist. Mainly involved in the following aspects:. Product scale risk check. Business impact risk check. Rehabilitation related to customer. Process risk check. Technical risk check. Development environmental risk check. Risk Inspection with the Patterns and Experience 3, risk assessment risk assessment is mainly conducted from the seven aspects below:. The possibility of occurrence. The result (affected) occurred. Establish a scale representation of risk (eg, very rare, rare, ordinary, may, very likely). Describe the consequences of risk. Estimate the impact on products and projects. Determine the correctness of the risk assessment. According to the Impact Planning Finished queue, the performance, scope, and time to make each risk are as accurate. 4. The evaluation of risks is based on three factors: risk description, risk probability and risk effects. Evaluate risks from three aspects of cost, progress and performance. Determine the inter-stop point of the project, and once again, risk evaluation is performed again. 5. Risk-controlling and monitoring risks control and monitoring mainly rely on managers' experience. For example, a developer's removal probability is 0.7, and it will have a certain impact on the project after leaving, and the strategy of this risk control and monitoring is as follows:. For negotiation with in-service personnel, determine the causes of flow. . Before the start of the project, the work of these flow reasons is included in the risk control plan. .

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

New Post(0)