Abstract: agile development is very popular in china, but how do you use agile development well? today's novice software project managers should understand how agile works well.
To be a good project manager you need to learn to sail against the current. although it is sometimes possible to reach your destination by pushing a boat along the water, you can learn to sail against the current to get anywhere.
"it makes a lot of sense, but i don't think reality allows it, and a lot of projects have a set deadline. in the middle of the way, there are also demonstration effects to customers, and often the actual project is based on the last launch date for project planning and management. ”
"well written, but some of the suggestions are overly idealistic. after all, it makes a lot of sense, but in practice, it is not the same thing. ”
this is the comment of two netizens on "software project manager novice on the road". this is very reasonable, and it is also a nail in real life. there are indeed many restrictions in the project, and we should go along with the restrictions and push the boat along the water, otherwise it will be ugly. but if there is a contradiction between these restrictions, how can it be done to push the boat along the water? for example, the contradiction between project resource limits and deadline limits.
1. recommend iterations to project managers
example 1: project manager goes to a new company to bring a project. customers, products, teams, processes, systems, environments, leadership, everything is new to.
example 2: developer was promoted to project manager because of his excellent job performance. although is familiar with the business, technology, products and team members in the project. but the project manager is a new perspective,needs to look at and deal with the problem from a new perspective.
although the above two cases are a bit more extreme, it is common to have several unknowns when taking over the project. in the previous advice we talked about the project manager admitting that he did not know, and at the same time trying to find a project manager mentor within the company. but this is not enough, and iterative is recommended when dealing with the actual situation of the project.
iteration time is generally one to three weeks is better. even if your project is only two weeks long, it is recommended to split it into two iterations of the week. requirements should be divided into iterations under the guidance of the project manager mentor. each iteration should be like a real project, encompassing the entire process from requirements to testing to release.
2. advantages and considerations of iteration
although the sparrow is small, it is complete, and the sub-project is also a complete project. taking a half-year project as an example, once iteratively every three weeks, it can become eight sub-projects, and once an iteration every two weeks, it is twelve sub-projects.
whether you're a novice project manager or a project manager who doesn't know much about the project itself, you can reap the following benefits from iterations.
2.1 benefits: we can afford to lose
the first big benefit of splitting into iterations is that we can afford to lose. if a project has only one opportunity to implement, if it is not done well, it is only finished. after the iteration, one iteration is not completed well, we can afford to lose, and the next iteration will find a way to chase it back.
2.2 benefits: move first
compared to the previous long process of planning coordination, requirements research, feasibility analysis, etc., iteration allows you to quickly start a project. focus on the goal of the first iteration so that you can have output very quickly.
2.3 benefits: exposure issues
for a project, it's hard to fully predict where the problem will be. is it team relationships, design and development capabilities, tricky customers, insufficient resources, or other problems? it is almost impossible to predict all the problems and give the perfect answers to solve them. iteration can help expose these problems without constantly patting your head and investing resources to deal with risks that may not have happened at all.
we can afford to lose, after all, it's just an iteration. the big problems of the project thus become small problems in the iteration, and the project manager often deals with these small problems, and the experience accumulates three.
2.4 benefits: gain experience quickly
compared to previous long project cycles, iterations can help you quickly gain project management experience. in addition to gaining experience by solving problems, you can also try more. since we can afford to lose, we dare to keep trying project management ideas and practices under the right circumstances, unlike the standard practices that previously had to be rigid with the company, so as to be less provoked after the project failed.
2.5 benefits: assisted communication
leaders are willing to continue to invest in productive projects, but they are not willing to spend too much time in the early stages of the project to rub their lips and bargain with you. the output of the first iteration can do you a lot. leader you see, our output is these, but there are still some difficulties, is it not to help solve it? at this time, the leader will also become more talkative. the same goes for customers. everyone is like this, to create the icing on the cake opportunities, don't always ask others to send charcoal in the snow, very hard to say. (as for the plan for the leader, just tell him that he is using agile, and then give a plan that is iterative.) )
2.6 benefits: continuous growth
each iteration will have a harvest and an output, and the next iteration will build on the previous iteration. in this process, you, the team, the technology, the business, the process, etc. can continue to grow.
2.7 precautions
talking about the benefits, are you impressed? there are still some considerations for using iterations. iteration requires a change in the way design and development is done once, and the amount of work required for regression testing increases significantly in the later stages. it is necessary to introduce the corresponding practice and solve it step by step under the guidance of the project manager's mentor. (in other words, there is no need to iterate, and the old method is adopted, and there are also precautions.) )
3. continue to evolve
after determining the use of iterations, you need to take a piece from the original overall requirements as an iteration of the requirements; you need to hold a meeting before the iteration, understand the iteration requirements with the team, and develop an iteration development plan; have a meeting with the project team every morning to see if there are any problems and whether the progress is smooth; at the end of the iteration, you need to check whether the iteration requirements are actually completed (through testing and release); after the iteration, hold a retrospective meeting to consolidate the parts that are doing better with the team. improvements need to be made to the problems identified.
you also need to review yourself to see what you have done well in this iteration and what can be improved; which methods are useful, which methods are not effective, what methods to use in the next iteration; what problems are in the project, how the feedback from leaders and customers is; what measures need to be taken and what communication needs to be made.
So step by step, it seems that agility is not far away. No, apart from the characters and burn down charts, the other elements of Scrum are aligned. This is how project C came about step by step, although for organizational reasons, the agile implementation of project C was not perfect.
No comments:
Post a Comment