ad

读懂《Java架构之完美设计 实战经典》_为更好架构做准备_2.3.4 Scrum 开发模型

admin 75 2023-10-26

【摘要】 本书摘自《Java架构之完美设计 实战经典》一书中第2章,第3节,由颜廷吉编著。

2.3.4 Scrum 开发模型

1. 敏捷开发概述

(1)开发宣言

读懂《Java架构之完美设计 实战经典》_为更好架构做准备_2.3.4 Scrum 开发模型

敏捷 (Agile) 开发是20世纪90年代开始逐渐兴起的新型软件开发方法,用来替代以 文件驱动开发为核心的瀑布开发模型。2001年2月, Kent Beck 等17位著名软件工程师组织 了敏捷联盟,阐述了敏捷开发的原则,强调灵活性在快速且有效的开发软件中所发挥的作 用。他们共同签署了敏捷软件开发宣言,内容如下:

1)个体和交互胜过过程和工具。

2)可工作的软件胜过大量的文档。

3)客户合作胜过合同谈判。

4)响应变化胜过遵循计划。

敏捷开发以用户需求进化为核心,采用迭代、循序渐进的方法进行软件开发,示意图如 图2-9所示。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成 果都经过测试,具备可视、可集成和可运行的特征。换言之,就是把一个大项目分为多个相 互联系但也可独立运行的小项目,并分别完成,且在此过程中软件一直处于可使用状态。在 敏捷方法中,从开发者的度来看,主要的关注点有“短、平、快”的会议、小版本发布、 较少的文档、合作为重、客户直接参与、自动化测试、适应性计划调整和结对编程;从管理 者的角度来看,主要的关注点有测试驱动开发、持续集成和重构。

(2)敏捷方法

目前,主要的敏捷方法有极限编程Scrum、XP(eXtreme Programming)、 自适应软件开 发 (Adaptive Software Development,ASD)、 水晶方法 (Crystal)、 特性驱动开发 (Feature Driven Development,FDD)、 动态系统开发方法 (Dynamic Systems Development Method, DS- DM) 等。虽然这些过程模型在实践上有差异,但都遵循敏捷宣言或敏捷联盟所定义的基本 原则。

敏捷方法主要适用于以下场合:

1)项目团队人数不多、规模不大的项目。

2)项目需求经常发生变更的项目。

3)高风险项目。

从组织结构的角度看,组织结构的文化、人员、沟通性决定了敏捷方法是否适用。与这 些相关联的关键成功因素包括组织文化必须支持谈判、人员彼此信任、人少但是精干、开发 人员所做的决定得到认可、环境设施满足团队成员之间快速沟通的需要。

由于架构开发的小团队、高技术要求以及高风险性,这种反应灵活的开发方法,正好适 合架构开发。在众多的敏捷开发方法中,最常用的是Scrum。

(3)敏捷开发与迭代开发

敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发,很容易 与迭代开发混淆,Scrum 是用于解决复杂产品的开发与维护的框架,目的是尽可能生产出高价值的产品。 特征是轻量,易于理解,但是很难掌握(一般需要3~5年)。适用于需求渐定或需求易变且 复杂产品的开发

Scrum不是构建产品的一种过程或一项技术,而是一个框架,在这个框架里可以应用各 种流程和技术,如图2-10所示。 Scrum能使产品管理和开发实践的相对功效显现出来,以 便随时改进。 Scrum框架包括角色(产品负责人、 Scrum 主管、开发团队)、事件(冲刺计 划会议、每日站会、订单梳理会议、评审、回顾)以及成果(产品订单、冲刺订单、产品 增量)。框架中的每个模块都有一个特定的目的,对Scrum 的成功和使用都至关重要。在这 个框架中人们可以应对复杂问题的可变性,同时也能颇有成效和创造性地交付最高价值的 产品。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 [email protected] 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:读懂《Java架构之完美设计 实战经典》_为更好架构做准备_2.8.4 架构思想之间的关系
下一篇:读懂《Java架构之完美设计 实战经典》_为更好架构做准备_2.6.2 模式与架构
相关文章

 发表评论

暂时没有评论,来抢沙发吧~

×