敏捷是一种心态,是一套价值观和原则。敏捷是一种思考和行动的方式。敏捷是关于短周期、迭代和增量交付、快速失败、获得反馈、尽早向客户交付业务价值以及人员、协作和交互。敏捷是一种关于透明度、检查和适应的思维方式。然而,敏捷并不包含任何角色、事件或工件。这是一种心态。例如,Scrum是敏捷保护伞下广泛使用的框架之一,它可以帮助您变得更加敏捷,但是敏捷运动中还有更多框架,例如看板、XP、Crystal 等等,如图所示以下:
敏捷伞 – Umbrella of Agile
Scrum
Scrum 是一个框架,人们可以在其中解决复杂的适应性问题,同时富有成效和创造性地交付具有最高价值的产品。它用于管理软件项目和产品或应用程序开发。它的重点是适应性产品开发策略,其中跨职能团队作为一个单元在 2-4 周内实现共同目标(Sprint)。它由一系列价值、工件、角色、仪式、规则和最佳实践组成。
精益 (Lean)
精益起源于丰田生产系统 (TPS),它在 1950 年代、60 年代及以后彻底改变了实物商品的制造。精益在制造业中占有一席之地,但也在知识工作中找到了新的应用,帮助各行各业的企业**消除浪费、改进流程并促进创新**。软件开发是精益方法的自然应用,因为与制造非常相似,它通常遵循一个定义的过程,具有一些定义的接受条件,并导致有形价值的交付。指导精益方法论所有实践的关键概念,我们称之为精益支柱。他们是:
- 连续的提高
- 尊重人
- 轻量级领导
看板 (Kanlan)
看板是一种高度可视化的工作流管理方法,在精益团队中很流行。事实上,83% 的精益实践团队使用看板来可视化和积极管理产品的创建,重点是持续交付,同时不会使开发团队负担过重。与 Scrum 一样,看板是一个旨在帮助团队更有效地协作的过程。
看板基于 3 个基本原则:
- 想象你今天要做的事情(工作流程):查看彼此上下文中的所有项目可以提供非常丰富的信息
- 限制进行中的工作量 (WIP):这有助于平衡基于流程的方法,因此团队不会立即开始并承诺过多的工作
- 增强流程:当某件事完成时,积压中的下一个优先级最高的项目被拉入游戏
看板通过定义最佳的团队工作流程来促进持续协作并鼓励积极、持续的学习和改进。
动态系统开发方法 (DSDM)
DSDM 是一个框架,由八项原则、生命周期和产品、角色和职责以及几种最佳实践技术组成。这些支持并支持尽早提供战略性一致的业务利益的理念,从而为组织提供最佳的投资回报 (ROI)。
DSDM 是一种将进度和质量置于功能之上的方法,它在开始时确定成本、质量和时间,并使用 MoSCoW 优先排序方法,将项目分解为四种不同类型的需求:
- 必须有 (M)
- 应该有 (S)
- 可能有(C)
- 不会有(W)
DSDM Atern [13] 有八项原则支持。这些原则指导团队以他们必须采取的态度和必须采取的心态来始终如一地交付。
- 专注于业务需求
- 准时交货
- 合作
- 从不妥协质量
- 从坚实的基础逐步构建
- 迭代开发
- 持续清晰地沟通
- 展示控制
极限编程 (XP)
极限编程(XP) 最初由 Kent Beck 描述,现已成为最受欢迎和最具争议的敏捷方法之一。XP 是一种快速、持续交付高质量软件的规范方法。它旨在在面对不断变化的客户需求时提高软件质量和响应能力。它促进了客户的高度参与、快速反馈循环、持续测试、持续规划和紧密的团队合作,以非常频繁的时间间隔(通常每 1-3 周)交付工作软件。
该方法论的名称来源于将传统软件工程实践的有益元素带到“极端”水平的想法。例如,代码审查被认为是一种有益的做法。更极端的是,通过结对编程的实践,可以不断地审查代码。
最初的 XP 方法基于四个简单的价值观——简单、沟通、反馈和勇气。
它还有十二个辅助实践:
- 规划游戏
- 小版本
- 客户验收测试
- 简单的设计
- 结对编程
- 测试驱动开发
- 重构
- 持续集成
- 集体代码所有权
- 编码标准
- 隐喻
- 可持续步伐
极限编程
功能驱动开发 (FDD)
功能驱动开发 (FDD) 由 Jeff De Luca 于 1997 年引入,当时他正在为一家大型新加坡银行从事软件开发项目。它是一个迭代和增量的软件开发过程,是一种敏捷的软件开发方法。FDD 将许多行业公认的最佳实践融合成一个有凝聚力的整体。这些实践是从重视客户的功能(特性)的角度驱动的。它的主要目的是及时地重复交付切实可行的软件。使用 FDD 的优势在于,由于“最初设计刚好”(JEDI)的概念,它甚至可以扩展到大型团队。由于其以功能为中心的流程,它是保持对敏捷、增量和固有复杂项目的控制的绝佳解决方案。它包括五个基本活动:
- 整体模型的开发
- 功能列表的构建
- 按功能规划
- 按功能设计
- 按功能构建。
功能驱动开发 (FDD)
每个项目都有自己独特的模型,这将产生一个功能列表。最后三个活动是短迭代过程,构建一个功能不超过两周。如果需要两周以上的时间,则必须将其分解为更小的功能。
水晶 (Crystal)
水晶方法是由 Alistair Cockburn 在 1990 年代中期开发的一系列方法(水晶系列)。这些方法来自 Cockburn 多年的研究和团队访谈。Cockburn 的研究表明,他采访的团队没有遵循正式的方法论,但他们仍然交付了成功的项目。Crystal 家族是 Cockburn 对他们所做的使项目成功的行为进行分类的方式。水晶方法专注于:
- 人们
- 相互作用
- 社区
- 技能
- 人才
- 通讯
I like this web blog very much, Its a rattling nice berth
to read and receive information.Raise your business