专业Scrum能力:专业地开发和交付产品

使用Scrum专业地开发和交付产品,能够以相对较高的频率迭代和增量交付高质量的产品。这些产品满足利益相关者和客户的需求,并为早期价值实现和适应变化需求提供了灵活性。专业的软件开发需要团队成员和整个组织之间的协作,且有一套焦点领域,当理解和应用这些领域时,可以达成这一端到端愿景的全面实现。

在整个开发生命周期中的管理、减少周期时间和消除浪费需要一套经过验证的工具和流程,帮助组织整合不同的团队、平台和活动。持续集成和持续交付这一焦点领域提供了一套实践和技术,以持续交付价值,将频繁学习的理念与小批量和自动化概念相结合。

Scrum 团队采用一种涌现式软件开发方法来进行整体结构定义,在需要时而非提前做出具体的详细设计决策。这些详细的决策建立在整体框架之上,以创建符合组织标准的具有一致性的产品。

Scrum团队还应该专注于优化流程持续质量,以在每个Sprint中始终交付完全集成的、经过测试的和潜在可发布的“完成”产品增量。结合适当的工程实践和工具将有助于促进集成的“完成”增量的一致开发,同时管理技术风险,否则可能会损害团队快速轻松地调整产品以适应不断变化的需求的能力,从而阻碍组织的敏捷性。

Scrum 团队自然是专业软件的直接开发者,但所有组织角色具备一定的专业开发和交付产品的熟练度对于促进沟通、协作和利益相关者参与非常重要。

重点领域

在每个能力中,多个焦点领域提供了掌握该能力所需的知识和技能的更详细的视图。

涌现式软件开发

在解决复杂问题时,详细的前期设计理念已被一种鼓励设计在架构的边界内涌现和变化的方法所取代。在这个焦点领域中,实践者将能够描述什么是涌现式的的架构设计(Emergent Architecture),以及它如何转化为增量式的开发和交付。他们将能够描述那些将架构增量式地“实现”为一个可工作的、敏捷系统的实践。实践者将理解价值、灵活性和质量之间的权衡,并且还能够应用使涌现式方法对团队、组织和利益相关者透明的技术。

管理技术风险

所有产品都有一系列固有的风险需要管理,这些风险从交付能力到与性能和安全性相关的技术风险不等。本焦点领域描述了如何在敏捷方法中管理技术风险。实践者应理解什么是技术风险,以及如何在经验性过程中有效地管理它们。他们还应该了解如何应用实践使风险透明化。

持续质量

以敏捷方式工作并不会改变产品质量的重要性,但它确实改变了质量处理的时间和地点。本焦点领域描述了什么是质量,以及敏捷性和 Scrum 的理念如何改变产品的质量方法。实践者将理解什么是持续质量,如何应用它,以及持续交付质量的适当实践。他们还将理解诸如技术债务、左移测试(Test Left)和用户驱动测试等重要概念。

持续集成 (CI) / 持续交付 (CD)

频繁学习是 Scrum 的一个基本概念。持续交付和持续集成是一系列关键实践,使频繁观察工作中的功能成为可能。本焦点领域描述了代码应始终可部署这一核心理念的价值,以及为交付解决复杂问题的软件可以采用的技术。实践者将理解什么是 CI 和 CD,如何应用这些理念,以及这对经验过程和 Scrum 框架的意义。

优化流程

Sprint 是一个有明确流程的时间盒。对于大型、复杂的工作,Sprint 只是产品、业务甚至市场更广泛流程的一小部分。本焦点领域专注于使流程透明,并确保减少或消除浪费。自动化和测量是确保流程效率的关键要素,结合一系列随着改进流程而演变的规则。实践者将能够借鉴如Kanban等流程方法,并将这些理念与 Scrum 整合,频繁交付有价值的产品并学习。