Scrum 敏捷开发

什么是敏捷开发?

敏捷开发大多被定义为一种与软件开发项目管理相关的方法论,同时也描述了作为一个团队工作的方式,通过降低风险和提供早期的好处来达到软件产品所要求的质量水平。

与传统的软件开发瀑布模型不同,敏捷软件开发是迭代式的。这意味着在敏捷的软件开发环境中,我们期待着快速的变化。

为什么传统软件开发技术有时会失败,敏捷开发变得越来越流行?
传统的软件开发方法由于业务流程和客户需求的变化而失败。如果要求永远不变,传统的开发方法就起作用 但问题是业务需求正在不断变化。

灵活的方法使软件开发团队能够专注于软件本身,而不是花时间在软件设计和文档上。当我们考虑系统需求在开发过程中通常会快速变化的情况时,这种方法更为有效。

在敏捷开发环境中我们可以找到的另一个关键点是使用快速和更短的文档,我们可以快速完成任务。

但是,当考虑敏捷软件开发在软件产品中取得成功时,我们需要有诚实的合作开发者和聪明的客户。

有一些敏捷的软件开发方法需要讨论。但是像Scrum这样的敏捷软件开发方法在当今被广泛使用。

其他敏捷方法包括
• 极限编程
• 水晶
• 自适应软件开发
• 功能驱动开发

以下是与每个敏捷软件开发方法相关的一套原则

客户参与
客户参与敏捷软件开发环境是获得软件项目成功的主要原则
客户应该通过提供新的需求和想法,始终密切参与开发过程。开发人员可以使用客户评论来评估迭代。

增量交货
该软件将逐步开发并交付给客户。客户应指定每个增量中应包含的要求。

人们不处理
在敏捷软件开发方法中,开发人员可以以自己的方式工作,而不用考虑软件过程。这主要侧重于使用开发人员的技能,同时提高他们的技能,而不是遵循一个规则的过程。

迎接改变
要求更改是可以接受的。另外,软件的开发方式应能适应开发过程中和软件交付后的需求变化

保持简单
整个开发团队和客户应该重点关注正在开发的软件的简单性以及开发该软件所遵循的过程。这意味着参与开发过程的每个人都应该支持去除复杂性。

什么是Scrum?

Scrum是管理产品开发的敏捷框架之一。在被广泛使用的同时,它也成为传统软件开发过程的替代方案
在scrum中有三个关键角色需要讨论。

产品拥有者
产品所有者主要是利益相关者,或者我们可以定义为对将要开发的软件具有原始愿景的客户。他通过确定哪些功能应包含在产品中并对其进行优先级定义了产品积压的内容(基本上称为用户故事)。

Scrum大师
与传统的团队领导或项目经理不同,他是团队的领导者之一。他负责保护团队,顺利开展工作,消除障碍。并负责召开会议,确保一切顺利。

Scrum团队
团队可能由开发人员,测试人员和其他人员参与到软件开发过程中,作为一个团队工作,而没有遵循我们在传统软件开发流程中可以找到的规则。Scrum团队还负责在每个冲刺阶段交付每个增量来成功完成项目

有三种类型的文件在Scrum框架中使用

产品积压
产品负责人负责创建产品返回日志,其中包括被称为用户故事的重要功能列表。这就像是传统需求规格的替代品

用户故事
描述一组特征的方式应该包含在正在开发的软件中。用户故事以这样的方式呈现,使得Scrum团队可以清楚地了解需求。

Sprint积压
冲刺回日志由产品待办事项中用户故事的最高优先级组成,在冲刺会议期间,Scrum团队确定在特定冲刺中要完成的主要要求。

烧毁图表
烧毁图表显示每个冲刺的进度,并以图形方式表示在剩余时间内完成的平衡工作。

在scrum中有三种类型的会议

冲刺计划
冲刺计划是基本上开始冲刺的会议。产品所有者,Scrum主人和团队会面讨论用户故事。同时还确定了冲刺计划会议期间每个用户故事的重要性。

每日头条
每日头条是一个简短的会议,讨论上次会议以来我们已经完成的事情,发展的现状,发展进程放缓的障碍是什么。早上开这个会议比较合适,然后Scrum团队可以确定一天的工作时间表。

短跑审查
在每次冲刺之后,本次冲刺检查将由团队成员和产品负责人共同参与,共同讨论已完成的工作以及如何改进工作流程。而且在最后一个冲刺阶段完成的产品功能的演示是由Scrum团队完成的

Sprint回顾展
sprint回顾的目的是回顾团队如何完成最后的冲刺,以及他们可以做些什么来改进下一个冲刺的过程。

Scrum工作流程

Scrum 敏捷开发_第1张图片
image.png
•   Scrum工作流程始于产品所有者提供的产品积压
•   之后,进行冲刺计划会议
•   在冲刺计划期间,产品所有者,Scrum大师和Scrum团队将遍历用户故事,并确定下一个冲刺中用户故事的优先级。
•   Sprint Backlog是sprint规划的输出  
•   按照sprint backlog开发,测试和审查应用程序。整个过程被称为冲刺
•   在冲刺,scrum会议期间。每天举行
•   在冲刺结束时,我们有潜在的可发运产品
•   在Scrum团队和产品所有者的参与下对产品进行冲刺评估
•   产品和过程的回顾
•   从而冲刺回顾完成冲刺
•   下一个冲刺的开始

有关更详细的参考资料,请阅读Sommerville的“ Software Engineering Seventh Edition ” 一书

你可能感兴趣的:(Scrum 敏捷开发)