Agile revolution

【United States】Jeff Sutherland

​ During my undergraduate study, I studied software engineering. In addition to basic computer knowledge, I also learned a lot in software engineering and project management. There was a course on agile development. At that time, there were few projects and the courses were over. Apart from memorizing a bunch of terms, I didn't have a lot of feelings.

​ Later, I joined the company and did a lot of projects. Then I looked at agile development, and I really had a lot of thoughts. The author of the book "Agile Revolution" is one of the participants in the "Manifesto for Agile Software Development" and the founder of Scrum. I haven't checked the author's resume. According to the description in the book, he has been a soldier, has done scientific research, has become a businessman, and has done a lot of projects. In short, he is a great man. Recently, I have a feeling that many people have solved many problems, summed up a plan, gave this plan a name, and then opened a company, sold the plan or consulted. This is a sale, so many of the proposals always have elements of bragging. I don’t know if they can bring help. If they are sold, they will be successful. When reading books now, I always think about whether it is really as valuable as this person described.

​ I recommend reading this book, because many of the ideas in it are consistent with my current views, and there is a very important core point: doing things-reflection and optimization. Scrum disassembled this core point and put forward some feasible solutions to ensure the realization of this core point. In fact, Zeng Zi also said: My day reflects my body . It is really important to reflect and optimize, and it is even rarer for people who can persevere in doing this.

​ Scrum expounds a concept, the plan is not important, to achieve the expected results is the most important. Of course, if you don't have enough experience and knowledge, it is a good way to use the solution provided by the author first.

​ To mention here, Scrum is not only applicable to software engineering, it is applicable to all aspects, because as long as everything can be done "doing-reflection and optimization", there will always be a great improvement.

​ So how does the author recommend Scrum?

  1. Pick a product owner
  2. Pick a team
  3. Choosing a Scrum Supervisor
    • As the project leader
    • Responsible for daily regular meetings, sprint planning meetings, coordinate progress, help everyone solve problems, etc.
  4. Draw up a to-do list and prioritize
    • Split the project into function points
    • Negotiate the priority with the product owner and confirm with each team
  5. Improve and evaluate the to-do list
    • Finally, determine the to-do list with the product owner and each team
    • Score the content on the list. The score is a unit of work size. You can use poker cards for scoring, take the Fibonacci sequence, develop students to play cards, and take the average.
      • If the scheduling has been determined, the scoring can be regarded as an operation to reschedule
      • Using Fibonacci sequence 1 2 3 5 8 corresponds to half an ideal man-day, and a single list of things cannot easily exceed 8
      • For the same function block, at least 2 people are required to play cards, and the developer has completed all the functions
      • In theory, each person handles around 10 o'clock per week
      • The scheduling is mainly for external colleagues. We also need to follow this time point to ensure that it is completed within the time point. Internally, we progress according to the points, which theoretically need to be faster than the schedule
  6. Sprint Planning Meeting
    • Determine the sprint content with each group and calculate the total score of the sprint content
    • It is best to improve the completion score in every planning meeting
    • The length of each sprint cycle is fixed, one week or two weeks
  7. Work transparency
    • Set function points as to-do, in-do, and complete
    • Update everyone's progress every day
  8. Daily Standing Meeting-15 minutes
    • Scrum lead organization
    • Generally ask three questions: what did you do yesterday, what you plan to do today, and what hindrances
    • Update item status
  9. Sprint show
    • Show the results to the product owner
  10. Sprint review
    • Determine what needs to be improved and determine a point for improvement
    • Inspection improvement
  11. After the previous sprint phase is over, start a new sprint phase immediately

​ The process described above is more practical and can be used almost directly. But there are a few points that may need to be noted

  1. Need to ensure that relevant personnel focus on this project and do not be disturbed by other projects
  2. It is relatively difficult to estimate the scores, and we need to work out a better plan with everyone
  3. The results produced after a round of iteration need to be tested by test or product students, which requires other team students to be agile. Whether the entire organization can support agility requires a comprehensive consideration.

​ Finally, I really like a paragraph in the book, here is for everyone: the important thing is never those who point fingers, not those who criticize others' failures, and not those who criticize how others can do better . Glory belongs to those who really stand in the arena: their faces are dusty, soaked in sweat and blood; they are brave and fearless; they make mistakes and fall over and over again, because the road must be accompanied by blows, and even so they are still struggling to move forward ; They understand what perseverance and concentration are; they devote themselves to a noble cause; in the best case, they finally taste the great victory and achievement; in the worst case, even if they fail, at least they are also great Fall down, because those indifferent and timid souls who never know victory or defeat are far from being compared with them.

Reference

  1. https://www.csdn.net/gather_2f/MtTagg3sNzAyMC1ibG9n.html Estimate
  2. https://blog.csdn.net/guzhao593/article/details/88727476 Implementation steps of agile development
  3. https://www.jianshu.com/p/9d8708f9fc41 Story point estimation of agile development

At last

If you like my article, you can follow my public account (Programmer Mala Tang)

Review of previous articles:

technology

  1. Talking about microservices
  2. TCP performance optimization
  3. Current limit realization 1
  4. Redis implements distributed locks
  5. Golang source code bug tracking
  6. The realization principle of transaction atomicity, consistency and durability
  7. Detailed explanation of CDN request process
  8. The history of blog service being crushed
  9. Common caching techniques
  10. How to efficiently connect with third-party payment
  11. Gin framework concise version
  12. A brief analysis of InnoDB locks and transactions

reading notes

  1. Agile revolution
  2. How to exercise your memory
  3. Simple logic-after reading
  4. Hot air-after reading
  5. The Analects-Thoughts after Reading

Thinking

  1. Some views on project management
  2. Some thoughts on product managers
  3. Thoughts on the career development of programmers
  4. Thinking about code review
  5. Markdown editor recommendation-typora

Guess you like

Origin blog.csdn.net/shida219/article/details/108167634