1 / 31
文档名称:

chap1-2-敏捷开发.ppt

格式:ppt   大小:120KB   页数:31页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

chap1-2-敏捷开发.ppt

上传人:sxlw2014 2018/8/11 文件大小:120 KB

下载得到文件列表

chap1-2-敏捷开发.ppt

相关文档

文档介绍

文档介绍:软件工程
第1章概论
1
复旦大学计算机科学与工程系本科生课程
内容摘要
敏捷软件开发
CASE工具与环境
2
敏捷软件开发
软件开发的新挑战
快速的市场进入时间,要求高生产率
快速变化的需求
快速发展的技术
传统的软件开发方法
强调过程
强调文档
开发人员负担过重
称为重载(Heavyweight)方法
3
针对上述问题,产生了一系列轻载(Lightweight)方法,如XP、SCRUM等。
2001年2月,新方法的一些创始人在美国犹他州成立了敏捷软件开发联盟,简称Agile 联盟。
Agile 联盟起草了一个敏捷软件开发宣言,该宣言由四个价值观声明组成,并提炼出敏捷软件开发方法必须遵循的12条原则。
Agile方法是在保证软件开发有成功产出的前提下,尽量减少开发过程中的活动和制品的方法。笼统的讲就是,“刚刚好”(Just enough),即开发中的活动及制品既不要太多也不要太少。
4
Agile方法的价值观
个人和交互高于过程和工具
不是否定过程和工具的重要性,而是更强调软件开发中人的作用和交流的作用。
软件是由人组成的团队来开发的,与软件项目相关的各类人员通过充分的交流和有效的合作,才能成功地开发出得到用户满意的软件。
如果光有定义良好的过程和先进的工具,而人员的技能很差,又不能很好地交流和协作,软件是很难成功地开发的。
5
可运行软件高于详尽的文档
通过执行一个可运行的软件来了解软件做了什么,远比阅读厚厚的文档要容易得多。
敏捷软件开发强调不断地快速地向用户提交可运行的软件(不一定是完整的软件),以得到用户的认可。
好的必要的文档仍是需要的,它能帮助我们理解软件做什么,怎么做以及如何使用,但软件开发的主要目标是创建可运行的软件。
6
与客户协作高于合同(契约)谈判
只有客户才能明确说明需要什么样的软件,然而,大量的实践表明,在开发的早期客户常常不能完整地表达他们的全部需求,有些早期确定的需求,以后也可能会改变。
要想通过合同谈判的方式,将需求固定下来常常是困难的。
敏捷软件开发强调与客户的协作,通过与客户的交流和紧密合作来发现用户的需求。
7
对变更及时做出反应高于遵循计划
任何软件项目的开发都应该制订一个项目计划,以确定各开发任务的优先顺序和起止日期。然而,随着项目的进展,需求、业务环境、技术等都可能变化,任务的优先顺序和起止日期也可能因种种原因会改变。
因此,项目计划应具有可塑性,有变动的余地。当出现变化时及时做出反应,修订计划以适应变化。
8
Agile方法的指导原则
(1)最优先的是通过尽早地和不断地提交有价值的软件使客户满意
(2)欢迎变化的需求,即使该变化出现在开发的后期,为了对客户的竞争优势Agile过程利用变化作为动力
(3)以几周到几个月为周期,尽快、不断地发布可运行软件
(4)在整个项目过程中,业务人员和开发人员必须天天一起工作
9
(5)以积极向上的员工为中心建立项目组,给予他们所需的环境和支持,对他们的工作予以充分的信任
(6)项目组内效率最高、最有效的信息传递方式是面对面的交流
(7)测量项目进展的首要依据是可运行的软件
(8)敏捷过程提倡可持续的开发,项目发起者、开发者和用户应能长期保持恒定的速度
10