A little experience of project management Enno | Date: 2011-11-03 | 18,423 views
Design Management
"1 people 100 months to complete the project, not 100 people 1 months can be completed." "
Project management is the art of balancing the various kinds of constraints in the project activities: Quality, schedule, resources, risk, etc., as well as balancing the needs, concerns and expectations of the project stakeholders, leading different people towards the same goal.
Successful project management can be simply understood as: on time, in budget + meet product requirements + meet quality requirements to complete the project.
Here is a record of my experience with project management.
——————————————————————————————————————————-
Requirements level
Vision A: Does the picture have no sharing function? Technology K: Pictures have links to forward sharing, Weibo or e-mail sharing, such as a variety of sharing, all development needs to postpone the timetable. Planning D: The image only do preview, download is enough, temporarily do not share. Interactive E: If our user is based on the mailbox user, the picture of the email sharing is still recommended. ... ...
If the priority level of each requirement is not clearly defined in the pre-product requirements document, or if the project member does not have a clear sense of the priority level of the requirement, a similar debate may often occur between project members, and each person will consider whether or not the requirement is to be done, and when to do so, based on their understanding of the product's objectives. The extent to which differences arise, thus increasing the resistance to project advancement.
Therefore, in the pre-product requirements document, you must clearly define the priority level of each requirement, the granularity of the requirements can be refined to each large function sub-functional requirements, such as: image sharing function of the forward link sharing, e-mail form share such sub-functional requirements. The classification of grade depends on the pre-user demand investigation, the product's predetermined target, the development cost, the operation plan and so on.
General Requirements Classification:
P0-must: If missing, the product cannot be published
P1-should has: If missing, the product can be released, but cannot reach the intended target (function/performance)
P2-nice to has: doing is better
P3-neutral: There is no obvious benefit to the product, the user does not mean ...
Once the priority level of each requirement is determined, the product manager defines a level boundary based on the product's predetermined target, development cost, operational plan, etc., which is above or equal to the requirement of this level dividing line developed in the current period, in part according to the cost, the operation plan and other factors to the next phase development, The demand below this level of demarcation will only be developed in the next phase, so that all project members can agree on what needs to be done in the current period.
Practical application of Demand level:
- One of the reference baselines of the WBS work package triage; Triage is a common decision-making process that determines whether a demand task should be done or not, and in the process of triage, the task owner has a more holistic understanding of his tasks and other people's tasks.
- One of the reference standard reference benchmarks for the triage of the bug (which is also one of the reference benchmarks for zero bug * Note 1 and code freeze * Note 2 time node calculation); Triage is to determine if the bug in the test is to be repaired or not to be repaired now; For example, during function development, P0, P1, P2 and above bug all need to repair, when enter the interface freezes period, only P0, p1normal and above bug is allowed to repair, to ensure the priority bug problem to be solved more quickly.
* Note 1 Zero bug: There is no active bug, or there is no high priority or particularly serious bug* Note 2 code Freeze: In addition to high-priority or particularly serious bugs, the code freezes no longer accept submissions
——————————————————————————————————————————–
Wbs
Technology K: The photo upload interface hasn't been set up yet, okay? This part we need to do first. Front-end J: The visual designer didn't finish it! Vision A: I'm making a photo display page and haven't done a photo upload yet. ... ...
Each member of the project should be responsible for the task granularity subdivision is not in place, the delivery time point of each task is not clear, the dependency relationship between the task is not clear enough, resulting in the project to promote collaboration costs, project time forecast accuracy rate is not high, project control risk increased;
Therefore, after confirming the product requirements document, the WBS (work breakdown Structure) must be done to decompose the requirements into smaller, manageable work packages. A typical work package is the smallest deliverable. The work package must be detailed to be able to estimate the work package (cost and work), schedule progress, assign the responsible person or organization.
Project managers, project members, and all functional directors involved in the project should be involved in WBS work, which can be organized by the project manager or the master of each module according to the project size. The organizer is responsible for convening the relevant personnel, collectively discussing all project work, determining the way in which the project work is broken down, and each functional party submits its own WBS, summarizing and drawing a hierarchical chart of the WBS. The structure diagram should include each work package name (content definition), assigned person name, required work, possible dependencies, etc.
WBS work package, which is finally entered into QA in the form of task tracking management.
Benefits of WBS:
- Lay a common foundation for the control of resources, cost, schedule and quality, and establish the benchmark of project schedule and control;
- Assign personnel to the independent work packages, stipulate the corresponding duties of these personnel, facilitate the implementation of the project responsibilities and clear division;
- According to the individual work packages, the time and resource needs are estimated, the accuracy of time and resource estimation is improved, the working sequence is determined, the cooperation efficiency is improved, and the project schedule schedule is more accurate.
——————————————————————————————————————————–
QA Visual Project Management
Technology K: I completed the image sharing function, the image download bug has been submitted, but I now have no time to change the bug. Test F: I've already made a round of bugs, but I don't know what fixed the bug, and then I can go over it. Interactive E: Picture sharing feature development completed? Can you test it? Product Manager: How many P0 bugs are there now? Does the zero bug time node need to be deferred?
... ...
If there is no QA, the status of the project is not transparent to each project member, there will be all the above situations; QA, as a collaborative task management tool, allows project members to have a visual understanding of the overall project situation by recording and tracking each task, and the project manager can monitor the risk of project advancement at any time to control the scope And quickly make adjustments in advance.
Whether it is a pre-developed work package or a later test bug, the task is entered in the form of QA, and then the task of some basic properties to do set, such as: belong to which milestone, which module, etc. The triage of each stage are then graded according to the requirements level criteria and determined whether or not they are done, and all the tasks must go through triage and approve to get to work. Triage decision-making requires multiple levels of knowledge (combined with product, technology, schedule, etc.), especially in large projects, where triage is often a group work performed in the form of a functional team (feature team) or a product decision group. At different stages of the project, the triage process can be dominated by different roles.
After the task is approve, the functional parties leader assign the task to the person who executes it accordingly. The executive, which is the owner of the task, must set the status date for the task, such as: State is working (in progress), status date is the completion date point, status date should reflect the actual work plan, and should fit the project schedule.
When the executive personnel to complete the task, QA will notify the functional parties leader to close the task, the significance of the closure is to inform the task of the relevant tracker, you can proceed to the next part of the work, such as a function code task close, that the relevant testers know can start this function point test work;
Through the task in the QA system records and tracking, as well as the task status of real-time updates, will eventually summarize the production of a variety of visual charts, project progress is intuitive, and measurable, able to well grasp the pace of the whole project, to the project issues and risk positioning easier, At the weekly meeting, all members of the project can be exposed to the progress information, so as to facilitate coordination;
One of the most important charts: Glide path Task Chart:
The comparison between "actual task trend" and "planned task trend" can measure the deviation between the plan and the actual.
——————————————————————————————————————————–
Build daily
Technology K: We only play build in every little milestone. Interactive E: I want to be able to bulid daily, I can get the latest version to test every day. Test Q: I recommend that the test can be played in a pre-Milestoen version, but the mid-term starts with the daily build.
... ...
The Daily Build (daily build) is a complete automated build of the entire project every day, the process of generating executables, and the daily construction of web-class products that typically accompany automated deployment, deploying these executables to the test environment, And according to certain rules for this installation package or test environment to do version numbering, is a public build management mode.
The daily build is a way to compile management, the project initially, according to the needs according to a certain frequency, such as: weekly, each milestone, as the frequency of the project gradually increased build frequency, such as: daily build.
Benefits of daily builds:
- Daily build allows all project personnel from Product manager, Project Manager, Planning, interaction, vision, etc. to start with the first small function module, to test the latest version submission bug at any time, and to keep abreast of the progress of technology development;
- The daily build allows testers to start with the first small function module, to test the latest version every day, submit new bugs and review some bugs, without waiting for a small milestone or all of the functional code to be implemented, and then start testing, which greatly increases the overlap time of testing and development, testing more fully, Test and development iterations are more efficient, product quality control is better, and the bug submitted to the QA, will also attach the build version number, convenient technology to restore the site, faster resolution of the bug;
- The daily build makes the technology must be responsible for the daily output of the code, once the daily build fails, must check the reason, and correct non-repetition, in order to avoid another build failure, which can effectively improve the quality of the submitted code, reduce the production of bugs, speed up development efficiency;
While building and maintaining the daily build requires a lot of work, it's definitely worth the money.
——————————————————————————————————————————–
Reference: Hangzhou Institute of Project Management "project management white paper"
A little experience of project management