Project management is the art of achieving a balance between quality, progress, resources, and risk, as well as balancing the needs, concerns and expectations of stakeholders, and leading different people toward the same goals. Here is a record of my experience in project management.
Demand level
Visual A: Does the picture share functionality?
Technology K: The picture has the link forwarding to share, the microblogging or the mail form sharing and so on many kinds of sharing, all development words need to postpone the timetable.
Plan D: Pictures only do preview, download is enough, temporarily do not share.
Interaction E: If our user is based on the mailbox user, the picture of the mail sharing is recommended.
If the priority level of each requirement is not clearly defined in the upfront product requirements document, or there is no clear awareness of the priority level of the needs of the project members, and it may be that similar debates often take place between project members, and each person will consider whether the need is to be done and when to do so based on their own understanding of the product objectives. The extent to which differences arise, thus increasing the resistance to project advancement.
Therefore, in the early product requirements document, must clearly define the priority of each requirement, the granularity of the requirements can be refined to each of the functions of the sub functional requirements, such as: the image sharing function of the forwarding link sharing, the form of the message to share such a child function needs. The classification of the grade depends on the early user's demand investigation, the product's predetermined target, the development cost, the business plan, etc.
General Requirements Classification:
P0-must have: If missing, the product cannot be released
P1-should have: If missing, the product can be released, but can not achieve the intended target (function/performance)
P2-nice to have: better done.
P3-neutral: There is no obvious benefit to the product, the user does not agree
Once the priority level of each requirement is determined, the product manager defines a level dividing line according to the product's predetermined target, development cost, and business plan, which is above or equal to the requirement for this line of demarcation to be developed in the current period, partly according to cost, business plan and other factors to the next 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 datum of WBS each work package triage; Triage determines whether a requirement task is to be done and whether it is a common decision-making process to be done; in the process of triage, the task owner has a greater understanding of his or her tasks and those of others.
One of the reference reference benchmarks for the triage of the bug (also one of the reference benchmarks for zero bug * Note 1 and code freeze * Note 2 time node calculation); Triage determines whether bugs in the test are to be repaired, whether to fix it now; for example: During the function development, the P0, P1, P2 and above bugs all need to be repaired; After entering the interface freeze period, only P0, p1normal and above bugs are allowed to repair, to ensure that priority bug issues are resolved faster.
* Note 1 Zero bug: No active bugs are currently present or there are no high-priority or particularly serious bugs
* Note 2 code Freeze: In addition to high priority or particularly serious bugs, the freeze is no longer accepted for submission
——————————————————————————————————————————–
WBS
Technology K: Photo Upload interface has not been set up? This part we need to do first.
Front end J: visual designer not finished!
Visual A: I'm doing the display page of the photo, and I haven't done the photo upload yet.
Each member of the project needs to be responsible for the task granularity subdivision is not in place, the delivery point of each task is not clear enough, the dependence on the task is not clear enough, resulting in the project to promote the collaboration costs, project time prediction accuracy is not high, the risk of project control increased;
Therefore, after the product requirements document is confirmed, the work breakdown WBS (Work breakdown businessesflat-out) must be done to break down the requirements into smaller, manageable work packages. The general work package is the smallest deliverable. The work package must be detailed to estimate the work package (cost and work), schedule progress, assign a responsible person, or organization.
Project managers, project members and all functional supervisors involved in the project should be involved in the WBS work, which can be organized by the project manager or the module Master planning according to the project size. The organization is responsible for bringing together the relevant personnel, brainstorm all project work, determine the way the work of the project is decomposed, each functional party submits their respective WBS, summarizes and draws out the WBS hierarchy chart. The structure chart should include each work package name (content definition), assigned person name, required hours, possible dependencies, and so on;
WBS work package, the final task form into the QA in the tracking management.
Benefits of WBS:
To lay a common foundation for the control of resource, cost, schedule and quality, and determine the benchmark of project progress and control;
Assign personnel to each independent work package, stipulate the corresponding duties of these personnel, facilitate the implementation of project responsibilities and clear division;
For each independent work package, carry out the estimation of time and resource requirement, improve the accuracy of time and resource estimation, and determine the working order, improve the cooperation efficiency, and make the project schedule more accurate;
——————————————————————————————————————————–
QA Visualization Project Management
Technology K: I finished to the picture sharing function, the picture downloads the bug has already submitted, but I have no time to change the bug now.
Test F: I've made a round of bugs, but I don't know what fixes the bug, and then I can review it.
Interactive E: Picture sharing function Development completed? Can you test it?
Product Manager: How many P0 Bug?zero bug time nodes need to be deferred now?
If there is no QA, the status of the project is not transparent to each project member, the above situation will occur;
QA as a collaborative task management tool, through the recording and tracking of each task, so that the project members of the entire project has a direct understanding of the situation, the project manager can be at any time to monitor the project to promote the risk in the controllable range, and make rapid adjustments in advance.
Whether it is the previous development of the work package or later test bugs, are in the form of tasks in the QA, and then some of the basic properties of the task set, such as: Which milestone, which module, etc. Then the triage in each stage will classify the task according to the requirement level criteria and decide whether to do it or not, and all the tasks must pass through triage and approve to begin work. Triage decisions require multiple levels of knowledge (combined with products, technology, progress, etc.), especially in large projects, where triage is often a group work, in the form of a functional group (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, each functional party leader assigns the task to the person with the appropriate execution. The executor, the owner of the task, must set the status date of the task, such as: Status Task State is sharable (in progress); Status date is the completion date point, and the status date should reflect the actual work plan and should fit the project schedule.
In the execution of the task, QA will notify the functional side leader to close the task, the significance of the closure is to notify the task of the relevant tracker, you can proceed to the next part of the work, such as a functional code task closed, that is, 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 real-time update of the task status, the final summary of the production of a variety of visual charts, project progress intuitive, and measurable, can be a good grasp of the overall pace of the project to promote, the project issues and risk positioning easier, And at the weekly meeting all the members of the project public progress information, easy to coordinate;
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 plan and practice.
——————————————————————————————————————————–
Build daily
Technology K: We only play build in each small milestone.
Interaction E: I hope to bulid daily, I can get the latest version to test every day.
Test Q: I suggest that the test can be made per Milestoen, but in the middle of the day build.
Daily builds are a complete automated build of the entire project on a daily basis, the process of generating an executable file, and the daily construction of a web-class product, typically accompanied by automated deployment, to deploy these executables to a test environment, and follow certain rules for this installation package or test environment to do version number, is a public build management.
Daily build is a way of compiling management, the project can be based on the need according to a certain frequency, such as: weekly, each milestone, as the project is gradually increasing the frequency of builds, such as: build every day.
The benefits of a daily build:
The daily build lets all project personnel from Product manager, Project Manager, Planning, interaction, vision and so on start from the first small function module, can test the newest version to submit bug at any time, and can understand the progress of technology development in time;
The daily build lets testers start with the first small function module be able 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, greatly increasing the time for testing and opening. More testing, more iterative testing and development, better product quality control, and bug submission to QA, build version number to facilitate technology restore site, faster resolution of bugs;
The daily build allows the technology to be responsible for the code that it outputs every day, and once the daily builds fail, the reason must be checked and the cause can be corrected so as not to fail again, thus effectively improving the quality of the submitted code, reducing the production of bugs and speeding up development efficiency;
While building and maintaining daily builds requires a lot of work, it's definitely worth it.