Updated: Dec 26, 2020
Not long ago, a person in charge of product development told me that his requirements for the ongoing product delivery project were: to see the results in a short period of time; to quickly understand the progress of the project at any time; not to need so many “unnecessary” design documents, but not to see the delivered functions; to change the unsatisfied items displayed at any time.
If so, the company should quickly adopt agile project management. But how does it work?
1) First, we must figure out the main difference between CMMI (the company uses CMMI) and agile project management. CMMI is oriented to activities, and agile project management is oriented to features (functions); CMMI is carried out in accordance with activities and stages, one delivery, adding new functions, and then doing new development. Agile is to carry out multiple iterative developments in accordance with sprint, you can first make the smallest usable software (MVP) after the results are displayed and then continue to iterative development according to feature priority.
2) How to design the MVP? The existing products have been customized and developed, then you can quickly identify feature points, extract a few typical users, refine a few typical processes, and use user story maps to prioritize sort. Then you can refine the MVP and subsequent feature iteration plan, that is, multiple sprint plans.
3) After discussing the delivery plan, decompose the small task items of the features in one working day, design the position of the Kanban in a conspicuous place, paste the characteristic diagram and task items separately, and hold the daily station meeting to ensure that there is delivery every day, and the delivery of the first sprint can be realized quickly in a short time.
4) Continuous sprint.
So, what exactly is a complete agile project? What are the specific differences between it and traditional projects?
What are the main differences between agile projects and traditional projects?
Traditional project management usually adopts waterfall and partial iterative development mode, with clear requirements and standard documents. In the iteration process, the more and later the requirements change, the greater the impact on the project, which will affect the project delivery quality.
Agile project management accepts requirement change. When customer requirements are not clear, it aims to develop available software in a short period of time to help customers describe their requirements.
1. From the management process
The project management process can be summarized into five process groups: initiation, planning, execution, monitoring, and finishing. The framework of agile project management is conception, speculation, exploration, adaptation, and completion, aligned with the five process groups of PMBOK knowledge system project management.
Conception stage: Determine the product concept, project scope, project team, and teamwork methods. (Product vision-team formation-project charter-process tailoring)
Speculation stage: Formulate release plans based on functions, milestones, and iteration plans to ensure the delivery of the conceived product. (Product Roadmap-Product To-Do List-Product Release Plan)
Exploratory phase: Provide tested functions in a short period of time, and continue to work to reduce project risks and uncertainties.
Adaptation stage: Review the submitted results, current situation, and team performance, and make adjustments if necessary.
Completion stage: Terminate the project, exchange the main learning results, and celebrate.
Traditional project management needs to manage and control all the processes of the project and requires document input and output in different links, and each link has initiation, planning, execution, monitoring, and closing. Once there are changes outside of the plan, they need to be approved before they can be implemented.
Agile project management advocates face-to-face communication and communication (story-telling) within the team, represented by Scrum, the principle of simplicity, continuous integration, continuous delivery, value first, and embrace change in the face of the ever-changing market economy and continuous development of technology become very friendly. In an agile project, the project management plan is divided into different levels, which can be represented by an onion diagram, which is the onion plan diagram, as shown below:
Strategic and investment planning is the outermost layer of agile project management and is handled by a broader organizational management system. From the outside to the inside, the project plan is divided continuously, and finally, the feasibility version iteration (or MVP) with the minimum cycle is realized. Divide users' complex or unclear customer needs into a reasonable way and finally, achieve overall unity.
2. From the perspective of risk control
Risk is uncertainty. Once it occurs, it will have a positive or negative impact on the project, such as scope, schedule, cost, and quality.
Traditional project management requires planning risk management, identifying risks, conducting qualitative/quantitative analysis of risks, and giving risk response plans in the planning process. Because of the uncertainty of risk, project risk management is required to allocate a certain reserve of resources to unknown risks or risks that are known but cannot be actively managed.
Traditional project management requires continuous tracking of risk registration forms and recording the effectiveness of risk response measures in dealing with identified risks and their root causes, completing risk reassessment and risk audits, until the risk is minimized.
Agile project management is different from traditional project management. On the one hand, development evaluation is workload-oriented rather than time-oriented, leaving enough room for risks, and the sprint cycle of each sprint is relatively short. It is said that for the delivered results, there are relatively few changes; on the other hand, in agile project management, before the official end of the project, the available software delivered allows risks to exist and is scheduled according to the priority of risks repair.
3. Traditional vs agile? Survival of the fittest
Agile project management is just a flexible practice framework, which provides a set of clear rules of the game. It can provide a series of different approaches according to different environments.
Traditional project management is a set of centralized management law, which requires to act according to the plan. Any change in any link must be approved before it can be changed.
No matter the traditional waterfall development management or agile iterative management, there is no good or bad, only in different project environments which is more suitable.
Of course, the ultimate trend is to be compatible and complementary. The latest version of CMMI2.0 has included agile. Similarly, agile also combines lean management ideas.
Finally, the traditional project and agile project management ideas for sand table drill, the project for the second round, through these operations simulation, you will have a deeper understanding of the difference between the two project management methods.