当前位置:网站首页>Let agile return to its original source -- Some Thoughts on reading the way of agile neatness

Let agile return to its original source -- Some Thoughts on reading the way of agile neatness

2022-06-26 23:22:00 yazi0127

Read it in two days Robert C. Martin Master's new work (2020 year 7 Published in )《 The way to be agile and tidy 》, The most intuitive feeling is the master's confusion about agility ( Software industry , Maybe it's not just the software industry , A messy interpretation and practice of agile ) I can't see it anymore , I wrote this book , Let agility return to its roots , It clearly explains what agile is , And how we should practice agile .

 

1. How to understand 《 Agile Manifesto 》

When it comes to agility , Many people think of , Or you can say it , yes “ Agile Manifesto ”.” Agile Manifesto “ It is a concise summary of agile , It's a value . In the first chapter of this book, the master expounds “ Agile Manifesto ” The birth of : That year 17 Masters gather in Snowbirds , They have many years of development experience in the software industry , Experienced the baptism of various successful or failed delivery projects , They precipitate their years of experience , It took two days to discuss , For how to deliver software that meets customer needs faster and with higher quality , The core laws of software development are summarized , In the end, I put forward “ Agile Manifesto ”.

" Agile Manifesto “ Not on paper , If we want to practice agile , You need to understand ” Agile Manifesto “ The deeper content behind it . Master in 1.3.1 Explain the project management ” Iron Cross “,“ Quality 、 Speed 、 cost 、 complete , You can only choose 3 individual , there is no way out 4 All of them , That is, high quality can be required 、 Fast 、 Low cost , In this way, the project will not be completed . Low cost can also be required 、 Get the project done quickly , In that case , The quality must not be good .”

I think , Students who have been in charge of software projects , I will deeply agree with the master's summary , When I finish reading this sentence , I was just saying “ Too right ”. Bring items each time , Or look at other people's projects , All these four aspects are weighed . Because I am not willing to weigh , We place our four major expectations on “ agile ”, I hope agile is a good medicine to realize these four aspects , One dose down , Miracles happen , Projects can be low-cost 、 apace 、 Deliver on time with high quality . The master hit the nail on the head ,“ Agile is a framework , Help developers and managers with practical project management , But this kind of management is not automatic , There is no guarantee that the manager will make the right decision , Even within the agile framework , It is also entirely possible to mistakenly manage the project and push it to failure .”

2. General rules for agile panorama

1) Team speed : The amount of work done by the development team per week , The unit of measure is “ Story points ”.

2) Burnout figure : Shows how many story points are left before the next major milestone .

3) Frozen delivery date : Once the delivery date is selected, it will be frozen , Because the delivery date was chosen for important business reasons .

4) Waterfall development mode : To analyze problems , Design solutions , As designed . This may be right , But it is no longer suitable for the current complex software development .

5) Agile development model : Agile projects begin with analysis , But the analysis will never end . Every iteration of the project from start to finish , Will include analysis 、 Design and implementation .

6) Rate acquisition : After four to five iterations , We will find that “ How many stories can be completed in one iteration ” The data is different in each iteration , But on average, it will be at a relatively stable rate , In this way, we can better judge when the project can be completed .

7) Agile data generation : Agile data generation , Managers use this data to drive the project to the best possible results .

8) Back to managing the Iron Cross : Adjusting the scope is the only thing you can do .

 3. At the heart of agile's nature —— The ring of life

Master in this book , Choose extreme programming practices to explain agile , He believes that in all agile processes , Extreme programming is best defined 、 The most complete 、 The least chaotic . The ring of life is Ron 、 Jeffries' picture of extreme programming practices , As shown in the figure below :

1. Business oriented practices : The way of development and business communication and the principle of development management project

  • Plan the game : How to decompose a project into features 、 Story and mission
  • Small step release : Teams work in small chunks
  • The acceptance test : Is a property 、 Stories and quests provide “ complete ” The definition of , Show the team how to set clear completion criteria
  • The whole team : The software development team consists of many different functional personnel , Including programmers 、 Testers and managers , They all work together towards the same goal .

 2. Team oriented practice : It provides the framework and principles for the development team to communicate and manage within the team

  • A sustainable pace : It can prevent the development team from consuming resources and energy too quickly before completing the task
  • Code collective ownership : Ensure that the team does not divide the project into a bunch of knowledge islands
  • Continuous integration : Keep the team focused on frequent feedback loops , To keep abreast of their current progress
  • metaphor : Create and disseminate vocabulary and pronunciation about the system to be developed , So that the team can communicate with the business department

3. Technology practice : Guide and discipline programmers , To ensure the highest technical quality

  • Pairing : Enable technical teams to share knowledge 、 Timely review and real-time collaboration , Drive the team to continuously innovate and maintain correctness
  • Simple design : Practice of coaching the team to avoid wasting energy
  • restructure : Encourage continuous improvement and perfection of all workpieces
  • Test-driven development : The technical team is able to maintain the highest quality safety rope while advancing rapidly

Each chapter at the back of this book explains the above practices in detail . Here it is , But a lot of repetition .

4. Agility in large organizations

The master emphasized many points in the book “ Agile is a small code of conduct that helps small teams manage small projects .”, Agile is for small and medium-sized teams , For small and medium-sized teams , Agility is very effective . So what about implementing agile in large organizations ?

There are a lot of A framework for large-scale agile ,SAFe,LeSS, Scrum of Scrum wait , The master said that he had not implemented , There is no way to comment . But he made it clear that the problem with large teams is that all societies 、 Problems common to all civilizations , And from our present civilization , This problem seems to be solved well . The answer to how to organize large teams is to organize developers into small agile teams , Then use standard management and operations research techniques to manage these teams , No special rules are required .

I studied last year SAFe, Also participated in relevant workshop, Yes SAFe Have some understanding . Compared with Scrum,SAFe The framework defines some rules and activities , such as PI planning, SOS, To coordinate Scrum Team activities . in addition ,SAFe The framework draws on lean thinking , It is suggested that enterprises start from the business value stream , By combing the value stream , Determine the agile release train . These are all co-ordinated plans , As the master said , Large scale agile is using agile to solve the problems of small development teams , Use scientific management to solve .

5. Software technology

The book translates into craftsmanship , But I prefer to use the word craft . The Master explained in detail " The ring of life ” The various practices of , Development teams that emphasize agile implementation , In addition to the application spring planning, Will stand , Kanban these practices outside , Need to pay attention to software engineering practice , Such as TDD, restructure , Pair programming , Continuous integration and so on , because “ The ability to deploy software to a production environment multiple times a day , At the same time, it does not affect the overall stability of the system , The team needs to master extremely advanced technology and engineering practice ”.

This book is like a ray of sunshine in the morning , Get rid of the fog of agility , Explain the origin of agile clearly , Return to the essence and purpose of agile —— Deliver working software to customers as soon as possible . To achieve this goal , Software development teams need to know the rules of agile operation ( Split user stories , Estimate , Burnout figure , Will stand , Kanban, etc ), More importantly, developers need to apply engineering practices , Responsible for your code , Responsible for the developed software , This is the real practice of agile .

原网站

版权声明
本文为[yazi0127]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/177/202206262306427290.html