Scrum DOES NOT Equal AGILE

Continuous Delivery
7 Jul 202317:47

Summary

TLDR本视频脚本讨论了敏捷开发过程及其误解。演讲者分享了他在不同公司使用敏捷方法的经验,包括所谓的'水Scrum瀑布'模型。他强调了敏捷宣言背后的12个原则,解释了这些原则如何被误解,以及如何正确地实现敏捷。演讲者还讨论了在组织中引入敏捷性的挑战,包括信任、勇气和持续交付的重要性。他指出,没有技术敏捷性,真正的敏捷性是不可能实现的,而持续交付是实现敏捷性的关键。

Takeaways

  • 😀 作者在多个公司中工作,这些公司虽然采用敏捷方法,但通常不承认其为瀑布模型(Waterfall)的一种变体,即所谓的'Water Scrum Fall'。
  • 🔧 作者在20多年前作为开发者工作时,公司采用了极限编程(XP)和配对编程等敏捷实践,而作者的第一份教师工作是教授Java编程,采用的是瀑布模型。
  • 🤔 尽管作者现在对瀑布模型持批评态度,但当时并未看到问题,这反映了对敏捷和瀑布模型理解的演变。
  • 👨‍🏫 作为敏捷教练,作者在过去10年或更长时间里帮助组织采用敏捷流程,但并非所有敏捷教练都能改变管理层决定的流程。
  • 📝 敏捷宣言背后的12条原则经常被忽视,人们更倾向于记住敏捷宣言中的四个价值观。
  • 💡 敏捷宣言的价值观有时会被误解,例如'响应变化'被错误地解释为不需要计划。
  • 🔗 作者强调,敏捷宣言中的价值观并不意味着放弃计划或文档,而是强调在计划和文档需要时能够适应变化。
  • 👥 敏捷宣言中强调的'个体和互动'比流程和工具更重要,但实践中往往因为沟通困难而倾向于增加流程和工具。
  • 🌐 技术敏捷性是实现真正敏捷的关键,没有持续交付或集成的支持,敏捷开发将无法实现。
  • 🚫 作者批评了一些组织只是表面上采用敏捷实践,如每日站立会议和使用JIRA等工具,但没有给予团队信任和勇气去真正地适应变化。
  • 🔄 敏捷的核心是'检查和适应',这意味着需要定期检查工作进展并根据反馈进行调整。

Q & A

  • 什么是敏捷开发中的'water scrum fall'?

    -在敏捷开发中,'water scrum fall'是指一种混合了传统瀑布模型和敏捷开发的实践。它通常包括大量的前期分析、一些敏捷迭代,然后是大量的测试和集成。这是一种在阶段门模型中工作的方式,但并非真正的敏捷。

  • 脚本中提到的'stage gate model'是什么?

    -'Stage gate model'是一种产品开发流程,它将开发过程划分为多个阶段,每个阶段结束时都有一个决策点或'gate',以决定项目是否应该继续进行。这有助于管理风险并确保项目按计划进行。

  • 脚本中提到的'XP'是指什么?

    -'XP'指的是极限编程(Extreme Programming),它是一种敏捷软件开发方法,强调技术实践,如测试驱动开发、持续集成、结对编程和重构。

  • 为什么脚本中的演讲者最初认为瀑布模型没有问题?

    -演讲者最初认为瀑布模型没有问题,因为他当时年轻,需要工作,而且他认为瀑布模型允许人们精确地计划他们想要制作的东西,然后分析所需时间,设计,实现,集成,并最终得到一个完整的工作产品。

  • 为什么Dave Thomas认为'敏捷已死'?

    -Dave Thomas认为'敏捷已死'是因为他观察到人们使用敏捷流程的方式已经不起作用了。他提倡应该更多地关注敏捷原则背后的思想,而不是严格遵循敏捷流程。

  • 敏捷宣言中的12个原则是什么?

    -敏捷宣言中的12个原则包括:1) 优先满足客户通过早期和持续交付有价值的软件;2) 欢迎在开发过程中改变需求;3) 频繁交付可工作的软件;4) 商业人员和开发者必须每天一起工作;5) 围绕有动力的个体构建项目;6) 面对面交谈是最有效的信息传递方式;7) 可工作的软件是开发的首要指标;8) 敏捷流程促进可持续发展;9) 持续关注技术卓越和良好设计;10) 简化工作是至关重要的;11) 最好的架构、需求和设计来自自组织团队;12) 定期回顾并调整行为。

  • 脚本中提到的'Manifesto for Half-assed Agile Software Development'是什么?

    -'Manifesto for Half-assed Agile Software Development'是由Kerry Buckley创造的一个幽默的敏捷宣言版本,它通过添加一些额外的文本来讽刺那些只遵循敏捷宣言的字面意义而不真正理解其背后原则的实践。

  • 为什么脚本中的演讲者认为'响应变化'比'遵循计划'更重要?

    -演讲者认为'响应变化'比'遵循计划'更重要,因为即使有计划,也应该接受对计划的变更。敏捷并不意味着没有计划,而是意味着如果计划有变更,应该拥抱这些变更。

  • 脚本中提到的'技术敏捷性'是什么?

    -技术敏捷性是指在软件开发过程中,团队能够快速适应变化并持续交付高质量软件的能力。这包括拥有良好的测试基础设施、自动化工具和持续集成/持续交付的实践。

  • 为什么脚本中的演讲者认为'每日立会'(Daily Scrum)很重要?

    -演讲者认为'每日立会'很重要,因为它是一个沟通的平台,团队成员可以讨论他们需要帮助的事情、提出问题或分享他们的疑惑。这些短会议对于团队协作至关重要,有助于确保项目按正确的方向前进。

  • 脚本中提到的'AINO'是什么意思?

    -'AINO'是'Agile In Name Only'的缩写,意思是表面上声称是敏捷的,但实际上并没有真正实施敏捷的原则和实践,只是名义上的敏捷。

Outlines

plate

このセクションは有料ユーザー限定です。 アクセスするには、アップグレードをお願いします。

今すぐアップグレード

Mindmap

plate

このセクションは有料ユーザー限定です。 アクセスするには、アップグレードをお願いします。

今すぐアップグレード

Keywords

plate

このセクションは有料ユーザー限定です。 アクセスするには、アップグレードをお願いします。

今すぐアップグレード

Highlights

plate

このセクションは有料ユーザー限定です。 アクセスするには、アップグレードをお願いします。

今すぐアップグレード

Transcripts

plate

このセクションは有料ユーザー限定です。 アクセスするには、アップグレードをお願いします。

今すぐアップグレード
Rate This

5.0 / 5 (0 votes)

関連タグ
敏捷开发瀑布模型软件开发团队协作敏捷教练技术实践计划变更客户合作文档管理持续交付技术敏捷
英語で要約が必要ですか?