Scrum是一个框架,人们可以在其中解决复杂的自适应问题,同时高效且创造性地提供具有最高价值的产品。它用于管理软件项目和产品或应用程序开发。它的重点是适应性产品开发战略,其中跨职能团队作为一个单元在2-4周内达成共同目标( Sprint )。它由一系列价值,文物,角色,仪式,规则和最佳实践组成。

精益 (Lean )

精益起源于丰田生产系统(TPS),它在20世纪50年代,60年代及以后彻底改变了实物商品的生产。精益保持其在制造业中的地位,但也在知识工作中找到了新的应用,帮助所有行业的企业** 消除浪费,改进流程并促进创新 **。软件开发是精益方法的自然应用,因为与制造业一样,它通常遵循既定的过程,具有一定的接受条件,并导致有形价值的传递。指导精益方法所有实践的关键概念,我们称之为精益支柱。他们是:

  • 连续的提高
  • 轻量级领导
  • 看板 (Kanban)

    看板是一种高度可视化的工作流管理方法,在精益团队中很受欢迎。事实上,83%的精益生产团队使用看板来可视化并积极管理产品的创建,重点是持续交付,同时不会使开发团队负担过重。与Scrum一样,看板是一个旨在帮助团队更有效地协同工作的流程。

    看板基于3个基本原则:

  • 可视化您今天要做的事情(工作流程):查看彼此上下文中的所有项目可以提供非常丰富的信息
  • 限制正在进行的工作量(WIP):这有助于平衡基于流的方法,因此团队无法启动并立即承诺过多的工作
  • 增强流程:当某些内容完成后,积压中的下一个最高优先级项目将被激活
  • 看板通过定义最佳的团队工作流程,促进持续协作并鼓励积极,持续的学习和改进。

    动态系统开发方法(DSDM)

    DSDM是一个由八个原则组成的框架,包括生命周期和产品,角色和职责以及几种最佳实践技术。这些支撑和支持的理念是尽早提供具有战略意义的商业利益,从而为组织提供最佳的投资回报(ROI)。

    DSDM是一种优先考虑计划和质量而非功能的方法,它在一开始就修复了成本,质量和时间,并使用MoSCoW优先级排序方法,将项目分解为四种不同类型的要求:

  • 必须有(M)
  • 应该有(S)
  • 可以有(C)
  • 不会有(W)
  • 支持DSDM Atern的原则有八个[13]。这些原则指导团队必须采取的态度和他们必须采取的思维方式,以始终如一地提供。

  • 专注于业务需求
  • 绝不妥协质量
  • 从坚实的基础逐步建立起来
  • 持续清晰地沟通
  • 表现出控制力
  • 极限编程 (XP)

    最初由Kent Beck描述的 极限编程 (XP)已经成为最受欢迎和最有争议的敏捷方法之一。XP是一种快速,持续地提供高质量软件的规范方法。它旨在提高面对不断变化的客户需求的软件质量和响应能力。它促进了高客户参与度,快速反馈循环,持续测试,持续规划以及密切的团队合作,以非常频繁的间隔(通常每1-3周)提供工作软件。

    该方法的名称来源于传统软件工程实践的有益元素被带到“极端”水平的想法。例如,代码审查被认为是一种有益的做法。极端情况下,可以通过结对编程的实践不断检查代码。

    最初的XP方法基于四个简单的价值观 – 简单,沟通,反馈和勇气。

    它还有12个支持实践:

  • 客户验收测试
  • 简单的设计
  • 测试驱动开发
  • 集体代码所有权
  • 可持续发展
  • 那么让我们来看看敏捷宣言的第一行。这条线表明,我们重视人,他们的互动,沟通和协作,而不是拥有各种广泛的流程和工具。当然,流程和工具很有价值,但是,如果它们实际上支持人们一起工作并提供优质产品,那么它们就更有价值。我们现在在很多组织中看到的是,流程和工具本身就是目标。从敏捷的角度来看,我们对此有不同的看法。流程和工具应该支持人们共同合作并为客户创造价值。

    敏捷宣言原则 (Agile Principles)

    作为敏捷宣言的补充,敏捷联盟还定义了一套12项基本原则,除了敏捷宣言之外,还提供了指导和更详细的解释:

  • 我们的首要任务是通过早期和持续交付有价值的软件来满足客户。
  • 欢迎不断变化的要求,甚至是开发后期。敏捷流程利用变化来实现客户的竞争优势。
  • 经常提供工作软件,从几周到几个月,优先考虑更短的时间尺度。
  • 业务人员和开发人员必须在整个项目中每天一起工作。
  • 围绕有动力的个人建立项目。为他们提供所需的环境和支持,并相信他们能够完成工作。
  • 向开发团队内部和内部传达信息的最有效和最有效的方法是面对面交谈。
  • 工作软件是进步的主要衡量标准。
  • 敏捷过程促进可持续发展。
  • 赞助商,开发者和用户应该能够无限期地保持稳定的步伐。
  • 持续关注技术卓越和良好的设计可提高灵活性。
  • 简单性 – 最大化未完成工作量的艺术 – 至关重要。
  • 最好的架构,要求和设计来自自组织团队。团队定期反思如何变得更有效,然后相应地调整和调整其行为。
  • 敏捷开发是软件开发行业的一个流行词,它是管理软件开发项目的另一种方式。它不是特定的软件开发方法,而是基于敏捷宣言中表达的价值观和原则的一套方法和实践的总称。解决方案通过自组织,跨职能团队之间的协作发展,利用适合其背景的实践。