Educode--头歌 《软件工程》实验作业7-敏捷软件过程

第1关:敏捷开发方法

任务描述

本关任务:根据所学有关敏捷开发方法的知识,完成右侧的练习题。

相关知识

为了完成本关任务,你需要掌握:
1.敏捷开发的具体含义;
2.常见敏捷方法的内容和特性。

敏捷开发简介
敏捷开发( agile development )是非常流行的软件开发方法。据统计,2018年90%的软件开发采用敏捷开发。那什么是敏捷开发呢?

1、迭代开发
敏捷开发的核心是迭代开发( iterative development )。敏捷一定是采用迭代开发的方式。

迭代开发将一个大任务,分解成多次连续的开发,本质就是逐步改进。开发者先快速发布一个有效但不完美的最简版本,然后不断迭代。每一次迭代都包含规划、设计、编码、测试、评估五个步骤,不断改进产品,添加新功能。通过频繁的发布,以及跟踪对前一次迭代的反馈,最终接近较完善的产品形态。

2、增量开发
增量开发+迭代开发=敏捷开发
所谓"增量开发",指的是软件的每个版本,都会新增一个用户可以感知的完整功能。也就是说,按照新增功能来划分迭代。

3、敏捷开发的优势

  • 早期交付,可大大降低成本;
  • 了解市场需求,降低产品不适用的风险。

4、敏捷开发的价值观
《敏捷软件开发宣言》里面提到四个价值观。

  • 程序员的主观能动性,以及程序员之间的互动,优于既定流程和工具;
  • 软件能够运行,优于详尽的文档;
  • 跟客户的密切协作,优于合同和谈判;
  • 能够响应变化,优于遵循计划。

5、常见的敏捷开发方法
在接下来的内容里,我们将重点学习目前主要的四种敏捷开发方法。它们分别为:

  • 极限编程( XP )
  • 水晶方法( Crystal )
  • 并列争球法( Scrum )
  • 自适应软件开发( ASD )

极限编程( XP )
极限编程( ExtremeProgramming ,简称 XP )是由 KentBeck 在1996年提出的。极限编程是一个轻量级的、灵巧的软件开发方法;同时它也是一个非常严谨和周密的方法。模型结构如图1所示。
在这里插入图片描述
XP 是一种近螺旋式的开发方法,它将复杂的开发过程分解为一个个相对比较简单的小周期;通过积极的交流、反馈以及其它一系列的方法,开发人员和客户可以非常清楚开发进度、变化、待解决的问题和潜在的困难等,并根据实际情况及时地调整开发过程。

四大价值观:沟通、简单性、反馈和勇气;
五个原则:快速反馈、简单性假设、逐步修改、提倡更改和优质工作。
水晶法( Crystal )
水晶( Crystal )方法论由 Alistair Cockburn 在20世纪90年代末提出。他把开发看做是一系列的协作游戏,而写文档的目标是帮助团队在下一个游戏中取得胜利。

水晶方法的工作产品包括用例、风险列表、迭代计划、核心领域模型,以及记录了一些选择结果的设计注释。

值得注意的是这些文档没有模板,描述也不太规范,但目标清晰,能够满足下次游戏开始的条件。

水晶法的特征:

  • 强调软件开发流程的纪律性;
  • 试图用最少纪律约束而仍能成功,从而在产出效率与易于运作上达到一种平衡。

并列争球法( Scrum )
Scrum 是一个用于开发和维护复杂产品的框架 ,是一个增量的、迭代的开发过程。在这个框架中,整个开发过程由若干个短的迭代周期组成,一个短的迭代周期称为一个 Sprint ,每个 Sprint 的建议长度是 2 到 4 周。Scrum 结构如图2所示。
1、Scrum 的特征

  • 以经验性过程控制理论(经验主义)作为理论基础的过程;

  • 采用迭代、增量的方法来优化可预见性并控制风险;

  • Scrum 起源于软件开发项目,但它适用于任何复杂的或是创新性的项目。
    在这里插入图片描述
    2、Scrum 过程框架

  • Scrum 过程框架的基石:透明性、检验、适应;

  • 四大支柱:迭代开发、增量交付、自组织团队、高优先级的需求驱动;

  • 三个角色:产品负责人、Scrum Master 和开发团队。

自适应软件开发( ASD )
ASD 强调开发方法的适应性,这一思想来源于复杂系统的混沌理论。

ASD 不像其他方法那样有很多具体的实践做法,它更侧重为 ASD 的重要性提供最根本的基础,并从更高的组织和管理层次来阐述开发方法为什么要具备适应性。

作答要求

根据相关知识,按照要求完成右侧选择题任务。作答完毕,通过点击“测评”,可以验证答案的正确性。

参考资料

【1】敏捷开发入门教程
【2】敏捷开发:5种主流开发方法介绍

答案

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

喜欢奶盖那只猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值