According to PMBOK2000, the project plan can include the following elements:
1, project scope description
The project scope statement explains the reason or significance of carrying out the project, and forms the basic framework of the project, so that the project owner or project manager can systematically and logically analyze the key issues of the project and the interactive elements in the project formation, and the project stakeholders can reach an agreement on the basic content and structure of the project before the project is implemented or the relevant documents are compiled; The project scope statement shall form a project achievement checklist as the basis for project evaluation, and shall be evaluated after the project is terminated or before the final report of the project is completed as the basis for evaluating the success or failure of the project; The scope statement can also be used as the basis for monitoring and evaluating the project implementation throughout the project life cycle, as well as other related plans of the project.
2, the project schedule
The progress plan is a plan that explains the development order, start time, completion time and interdependence of each work in the project. Through the preparation of the schedule, the project implementation forms an organic whole. Schedule is the basis of schedule control and management, which can be divided into project schedule control plan and project status report plan.
In the schedule control plan, it is necessary to determine which work should be supervised, when, who is in charge of supervision, how to collect and process the project progress information, how to check the work progress on time, and what adjustment measures to take, and incorporate the time, personnel, technology and material resources needed for these control work into the project master plan.
3, the project quality plan
The quality plan arranges quality monitoring personnel and related resources for specific projects to be determined, and specifies which systems, norms, procedures and standards to use. The project quality plan shall include all activities related to ensuring and controlling the project quality. The purpose of the quality plan is to ensure that the quality objectives of the project can be achieved. According to the requirements of ISO900 1 and PMBOK2000, in order to achieve quality objectives, organizations should follow eight quality management principles, such as customer-centered, leading role, full participation, process method, system management method, continuous improvement, fact-based decision-making method and mutually beneficial supplier relationship.
4. Project resource planning
With the project scope plan and schedule plan, the resource plan determines what kind of resources (people, materials, equipment, information, funds, etc.). ) How many resources will be used in all the work of the project and how many resources will be used in each stage. Project cost planning includes resource planning, cost estimation and cost budget.
5. Project communication plan
Communication plan is an agreement on the content, personnel scope, communication mode, communication time or frequency of information exchange among project stakeholders during the project.
6. Risk countermeasure plan
Risk countermeasure plan is a process of analyzing risks and formulating risk coping strategies in order to reduce the damage of project risks, including identifying risks, quantifying risks and formulating risk coping strategies.
7, project procurement plan
The process of project procurement planning is to determine which project requirements can be met by purchasing products or equipment from outside the enterprise. If it is the procurement of software development work, that is, outsourcing, then a plan for monitoring the outsourcing progress and quality control should be made at the same time.
8, change control, configuration management plan
Because the project plan can't guarantee very accurate prediction from the beginning, and it can't guarantee accurate and powerful control during the project, it often happens that the project plan is inconsistent with the actual situation of the project, so it is necessary to effectively deal with the project changes. The change control plan mainly specifies the steps and procedures of change. The configuration management plan is to determine the configuration items and baseline of the project, control the changes of the configuration items, maintain the integrity of the baseline, and provide the accurate status and current configuration data of the configuration items to the project stakeholders.
Second, the project planning process
Because of the artificiality and individuality of software development, the software development project plan cannot be a static plan. At the beginning of the project, a relatively coarse-grained project plan can be made first, and the high-level activities and expected milestones of the project can be determined first. The coarse-grained project plan needs to be updated and iterated constantly, and it should be adjusted iteratively according to the scale and nature of the project and the progress of the project. The cycle of iterative adjustment is also formulated according to the situation of the project, which is generally as short as one week and as long as two months. After continuous planning, adjustment and modification, the project plan has changed from the initial coarse-grained to very detailed. Such a plan will continue until the end of the project until the results of the project appear.
The process of making a plan is a process of gradually understanding the project. By making a plan carefully, the project manager can know which elements are clear and which elements should be clear step by step, and constantly improve the project plan through gradual refinement. The work report included in the stage plan and the work arrangement for the next stage are the basis for grasping the project progress. Only by comparing the stage plan with the overall plan can we see the progress of the work at a glance. The process of making a plan is also a process of seeking a balance between schedule, resources and scope. The essence of making a plan is not to write a good-looking document, but to use your wisdom to deal with various problems and risks, and to think forward as much as possible. Once the plan is completed responsibly, he can give himself a basis for communication and consultation with management or customers, help you prevent various problems in the process of the project and help you ensure that the project is completed on time.
When an enterprise decides to establish a project, it will generally issue a project establishment document, which is temporarily called "project establishment document". The main contents are the contract or relevant agreement to be followed, the general scope of the project, the deadline for the end of the project and some key times, the appointment of the project manager and some project members, and so on.
The next project plan is generally prepared according to the following process:
1 Establishment of project team: After the relevant departments receive the approved project establishment documents and related materials, the project manager designated in the project establishment documents will organize the project team. As the project progresses, members can join the project team at different times, or quit the project team after the assigned work is completed. But it is best to attend the project kick-off meeting at the beginning of the project to understand the overall goal and plan, especially your own goals and responsibilities, the time to join, and so on.
Preparation for project development: The project manager organizes the project team members who joined in the early stage to prepare the specifications, tools and environment needed for the project work. Such as development tools, source code management tools, configuration environment, database environment, etc. The project team members who joined in the early stage are mainly composed of planning managers and system analysts, but the upcoming project plan must be fully communicated among all project team members and project stakeholders as much as possible. If there are some key technical risks in the project (which will affect the success or failure of the project), the project manager should organize personnel to conduct pre-research at this stage. The results of the pre-study should leave a written conclusion for review.
Note: the project plan must accurately define the project objectives, stage objectives and tasks in the corresponding stage, that is, further refine the project objectives in the corresponding stage; In particular, the objectives and tasks of the next stage should be refined before the summary design is completed and the detailed design or coding implementation begins. All internal and external factors affecting the project plan should be fully investigated and mastered; The work breakdown structure of the project should be analyzed as comprehensively as possible. By analyzing the work breakdown structure of the project, not only the static structure of the project can be obtained, but also the dynamic workflow between the project tasks can be obtained through logical analysis. The project objectives and tasks should be decomposed and detailed implementation plans should be formulated.
3 Project information collection: The project manager analyzes the received project-related documents and further communicates with users, and organizes the project team members to collect project information as comprehensively as possible within the specified time. Project information collection should pay attention to full and efficient communication, so as to be informed. Some members think that documents (plans, requirements, weekly plans, etc.). ) sending by email is done under the condition of insufficient communication. After reading it, members don't understand or agree with their own abilities or wishes, but the efficiency of communication through email is not high. This may be a habitual problem, or it may be related to whether a specific problem can be easily communicated clearly by email. Therefore, the important content needs a meeting to ask questions; A discussion, to ensure that all important issues are understood, and finally reach a * * * understanding. The contents reached at the seminar should be recorded in writing and implemented in specific documents.
4. Write the software project plan
The project manager is responsible for organizing the preparation of the software project plan. Software project plan is the core output document of project planning activities, which includes the main body of the plan and other related plans in the form of attachments, such as configuration management plan. The preparation of software project plan refers to the requirements of project development plan in GB 8567-88 "Guidelines for Preparation of Computer Software Product Development Documentation". In the process of establishing ISO900 1 quality management system or CMM, enterprises will also establish corresponding software development project planning specifications.
The project planning process should be divided into the following steps:
A, determine the deliverables of the project. The project deliverables here refer not only to the final products of the project, but also to the intermediate products of the project. For example, in general, the project products of a software development project can be: requirement specification, outline design specification, detailed design specification, database design specification, project phase plan, project phase report, program maintenance specification, test plan, test report, program code and file, program installation file, user manual, acceptance report, project summary report, etc.
B. Task decomposition: proceed from the project goal, decompose from top to bottom, determine the work that must be completed to achieve the project goal, and draw a complete work decomposition structure diagram. At the beginning, a software development project may only be staged, such as requirements analysis, architecture design, coding, testing and so on. Of course, when the scale is large, requirements and design can also be divided into different tasks. However, especially after the outline design is completed, the goals and tasks of the next stage can be horizontally refined.
C, under the assumption that resources are independent of each other, determine the interdependence between tasks, so as to determine the sequence of the start and end time of each task; Get the dynamic workflow between project work tasks.
D, determine the time required for each task, that is, determine the time required for each task according to experience or application of relevant methods; Determine the human resource requirements required for each task, such as what skills, knowledge, experience, proficiency, etc.
E, determine the time that the project team members can control, that is, the exact time that each project member spends on the project; Determine the role composition, responsibilities, relationships and communication methods of each project team member.
F, determine the management work, management work is throughout the project life cycle, such as project management, project meetings, etc. , write a phase report. The communication time between project team members and between project team members and other project stakeholders is also easy to be ignored, so it is difficult to quantify and arrange communication time in a fixed way. However, it is more reasonable to fully consider these tasks in the plan and return to the project plan to effectively reduce the project schedule delay caused by unreasonable plans.
G, according to the above results, prepare the overall project schedule, the schedule should reflect the task name, responsible person, start time, end time, and the work results that should be submitted for inspection.
H. Consider the cost budget of the project, possible risk analysis and countermeasures, and matters that need coordination or support from the company, customers or other parties.
5 Review and approval of software project plan
The purpose of project plan review and approval is to make relevant personnel understand, reduce unnecessary mistakes and make the project plan more reasonable and effective.
After completing the software project plan, the project manager first organizes the project leader, test leader, system analysis leader, design leader and quality supervisor in the project team to review the project plan. The review can be conducted by electronic means or meetings, and the records of phased results are reviewed within the project team. All relevant personnel should be required to give feedback within the agreed time after receiving the software project plan. The project manager ensures that all personnel agree with the contents listed in the project plan. This consistency requires all project team members to make a commitment to the content of the project plan, and they cannot make a commitment or reach an agreement. Either they modify the project plan to adapt to some project team members, or some project team members take compromise measures to adapt to the requirements of the project plan.
The project manager shall submit the agreed software project plan to the senior leader in charge of the project or his authorized personnel for examination and approval, and the completion time of examination and approval shall not exceed the pre-agreed time. For major projects, the process control department, such as the quality management department and the leader in charge of the project, should simultaneously approve the software project plan.
The approved software project plan serves as the basis for project activities, and also the basis for enterprises to control and inspect the project. If necessary, plan changes shall be implemented according to the project progress.
The project quality supervisor shall prepare the software development project quality plan according to the software project plan and the software development project quality plan specification. Large-scale projects should prepare a separate software development project quality plan; Smaller ones can explain the "Software Development Project Quality Plan" in a chapter of the software project plan, or prepare a document similar to the "Software Development Project Quality Control Table" separately.
The configuration administrator prepares the project configuration management plan according to the plan. Based on the stage results in the project work plan, the configuration management plan is prepared according to the configuration management plan specification, and the project manager approves the configuration management plan and is responsible for its effectiveness.
After the project planning work is completed, the software project plan passes the review. Generally speaking, for software development projects, the work turns to the requirement analysis stage.
Three. Determination of project plan content
The content of the project plan is generally determined according to the following process:
1 Determine the project overview
Contract projects are based on contracts and bidding documents, and non-contract projects are based on project feasibility study report or preliminary research results, defining project scope and constraints, and defining project deliverables on this basis. Further clarify the scope of work of the project and the responsibilities of all parties involved in the project.
2 determine the project team
Determine the organizational structure of the project team and functional organizations related to project development, including management, development, testing, QA, review and acceptance. Determine the project team members and division of labor. Negotiate with relevant personnel to determine the composition of the project team. If the personnel demand cannot be met internally, an application for personnel support shall be submitted.
3. Clarify the cooperation and communication inside and outside the project team.
Clarify the communication mode with the user unit. Identify the names and contact numbers of end users, direct users and their affiliated enterprises/departments. More customer participation is an important driving force for the success of the project. Strengthening the active communication with the user's project manager or partner during the development process is helpful to strengthen the participation of customers and other projects. It is suggested to publish the progress of the project and the plan for the next stage in the form of weekly or monthly reports, as well as the problems that need to be coordinated or understood by customers.
When the project team needs to cooperate with external units for development, the communication mode with the cooperative units should be clarified. Determine the name of the cooperative unit, the name of the person in charge, the work undertaken, the name of the implementer and the contact telephone number.
Clarify the name of the department, the manager, the contents of the work undertaken, and the names and contact numbers of the personnel responsible for the implementation of the work within the enterprise. Explain the communication activities of the project team. For projects with more than 3 members of the project team, the weekly meeting of the project team should be organized, and the project team should adopt a unified communication system to establish the communication space of the project team.
4 planning and development environment and norms
Explain tools, development environment, test environment, etc. Used for system development. List the development technical specifications and industry standards that the project development should abide by. Because the enterprise has no standardized development technology, the project manager should organize personnel to formulate the rules that the project will follow.
5. Prepare the work schedule
Determine the workflow of the project according to the regulations of the enterprise and the actual situation of the project. Make the work plan of the project, which is a high-level plan. The progress of each stage should include the time to complete the document results and submit the document results for review and modification, and the symbol of the end of each stage is the release of the results. The following contents shall be specified in the plan:
First, the division of tasks;
B a timeline or gantt chart showing the time allocation for each phase or iteration of the project;
C, determine the main milestones, stage results;
It is required to explain the project work plan in words. Finally, use a timetable to fully explain the whole work plan; For iterative development projects, the first phase plan should be made. It is advisable to divide the tasks within the stage in 2-5 days, and the time span of special tasks is less than two weeks; During the project, the project manager prepares a biweekly work plan to guide the members' specific work.
6. Prepare the monitoring plan of the project. It explains the schedule control, quality control, version control, budget control and so on.
7. Prepare the project risk plan, analyze the risks that may occur in the process of the project and the corresponding risk countermeasures. For large-scale projects, it is suggested to compile them in the form of attachments to facilitate continuous updating.
8. Make auxiliary work plans. According to project needs, such as training plan and recruitment plan.
Plan development support work, such as supplier management plan.
10 planning project acceptance: making project acceptance plan. This work can be reduced as needed.
1 1 Plan project closing and handover activities. Formulate the acceptance and training of the project and the handover to the technical support department when the project enters the maintenance stage. refer to
Managing Software Development Projects (2nd Edition) Neil Whitten (Software Project Management Series, translated by Sun Yanchun et al. );
IT Project Management. Translated by Kathy Schwalbe (Wang Jinyu, etc.). );
Project Management-Systematic Method of Planning, Progress and Control (7th Edition) Harold Kozner (translated by Electronic Industry Press, Yang Aihua, etc.);
Practical Software Engineering (2nd Edition), Yin Renkun, Tao (Tsinghua University Publishing House)
Software Engineering: Research Methods of Practitioners (5th Edition);
т 90012000: Requirements of 20000 Quality Management System;
Advanced project management foundation (training handout for senior project manager of computer information system integration of Ministry of Information Industry);
"Successful Project Management" Trevol L Young (The Times Business Edition, translated by Yan Hongjuan);
Successful Project Management: Jack Guido & James P. clements (2 1 century management classic textbook series, translated by Zhang Jincheng, etc. );
How to do a good job in project management Stanley E. Portny (IDG Fool Series on New Economic and Commercial Practices), translated by Ning Jun, etc. );