敏捷软件开发方法简介ppt课件.ppt
《敏捷软件开发方法简介ppt课件.ppt》由会员分享,可在线阅读,更多相关《敏捷软件开发方法简介ppt课件.ppt(79页珍藏版)》请在三一办公上搜索。
1、敏捷软件开发方法简介以极限编程为例,宋扬北京大学地球与空间科学学院2003年5月18日,主要内容,敏捷方法的含义软件过程的比较极限编程( eXtreme Programming ,XP)简介准则法则活动实践讨论和应用实例,“敏捷”的含义,轻巧、机敏、迅捷、灵活、活力、高效敏捷过程很容易适应变化并迅速做出自我调整,在保证质量的前提下,做到文档、度量适度。 适用于各类软件企业,敏捷方法产生的背景,现代软件的复杂性软件越来越复杂可变性需求越来越多变一致性过程越来越规范,软件开发过程敏捷化趋势,据国际著名咨询机构Cutter Consortium对全球200位IS/IT经理所做的调查3个占优的重载方法
2、:51% Rational Unified Process27% CMM26% ISO 9000大约50%的被调查者预计到2003年其50%以上的项目会使用敏捷方法;14%的被调查者认为其所有的项目会使用敏捷方法。From THE DECISION IS IN: AGILE VERSUS HEAVY METHODOLOGIES, VOL. 2, NO. 19, by Robert Charette,Senior Consultant, Cutter Consortium,敏捷价值观,“注重个人及互动胜于过程和工具”“注重可用的软件胜于详尽的文档”“注重客户协作胜于合同谈判”“注重响应变化胜于恪
3、守计划”www.agilemanifesto.org,敏捷宣言12条原则,1.最优先的目标是通过尽早地、持续地交付有价值的软件来满足客户。2.欢迎需求变化,甚至在开发后期。敏捷过程控制、利用变化帮助客户取得竞争优势。3.频繁交付可用的软件,间隔从两周到两个月,偏爱更短的时间尺度。4.在整个项目中业务人员和开发人员必须每天在一起工作。5.以积极主动的员工为核心建立项目,给予他们所需的环境和支持,信任他们能够完成工作。6.在开发团队内外传递信息最有效率和效果的方法是面对面的交流。,7.可用的软件是进展的主要度量指标。8.敏捷过程提倡可持续发展。发起人、开发者和用户应始终保持稳定的步调。9.简化使必
4、要的工作最小化的艺术是关键。10.持续关注技术上的精益求精和良好的设计以增强敏捷性。11.最好的架构、需求和设计产生于自我组织的团队。12.团队定期地对运作如何更加有效进行反思,并相应地调整、校正自己的行为。,代表方法,瑞理统一开发过程:Rational Unified Process敏捷建模:Agile Modeling极限编程:eXtreme Programming 自适应软件开发:Adaptive Software Development水晶方法体系:Crystaletc.,RUP(Rational Unified Process),需求,设计,实现,测试,分析,核心工作流程,先启,精化
5、,构造,转移,精化过程中的反复过程,初步的反复过程,反复序列,RUP是Rational公司的改进过程的规范,它被设计成一种由用例驱动的、以体系结构为中心的软件开发过程,它以迭代的方式前进,通过执行工作流程递增地产生结果。它的主要四个阶段是先启、精化、构建和转移,五个核心工作流程为需求、分析、设计、实现和测试。由于RUP是一种框架,你可以以不同的方式来使用它,如象非常传统的“瀑布” 式开发方式,或敏捷式,如dX。你可以把用得轻捷灵便,也可把它弄成繁文缛节。这取决于你如何在你的环境中对它裁剪运用。,XP到RUP的映射,CRC卡片:Class-Responsibility-Collaborator,
6、Agile Modeling,AM是一种最近才出现的软件思想AM是一种轻方法论XP实践既给了AM灵感,也是AM的一种具体实现,AM核心原则,主张简单拥抱变化. 你的第二个目标是可持续性。简单的说,你在开发的时候,你要能想象到未来。 递增的变化令投资人的投资最大化有目的的建模多种模型高质量的工作快速反馈软件是项目的主要目标轻装前进,AM补充原则,内容比表示更重要三人行必有我师了解你的模型了解你的工具局部调整开放诚实的沟通,自适应软件开发,ASD的核心是三个非线性的、重迭的开发阶段:猜测,合作与学习。,水晶方法体系,水晶方法体系与XP一样,都有以人为中心的理念,但在实践上有所不同。水晶方法体系考虑
7、到人们一般很难严格遵循一个纪律约束很强的过程,因此,与XP的高度纪律性不同,水晶方法体系探索了用最少纪律约束而仍能成功的方法,从而在产出效率与易于运作上达到一种平衡。也就是说,虽然水晶系列不如XP那样的产出效率,但会有更多的人能够接受并遵循它。,ISO9000,PDCA循环,即由计划(PLAN)、实施(DO)、检查(CHECK)、处理(ACTION)这四个密切相关的阶段所构成的工作方式持续改进,面向对象软件工程概念模型,极限编程( eXtreme Programming )轻量级敏捷软件开发方法,极限编程(XP)是一种全新而快捷的软件开发方法。XP团队使用现场客户、特殊计划方法和持续测试来提供
8、快速的反馈和全面的交流。这可以帮助团队最大化地发挥他们的价值。,XP诞生了大概有5年XP是以开发符合客户需要的软件为目标而产生的一种方法论XP是一种以实践为基础的软件工程过程和思想XP认为代码质量的重要程度超出人们一般所认为的程度XP特别适合于小型的有责任心的、自觉自励的团队开发需求不确定或者迅速变化的软件,XP准则XP软件开发是什么样的,沟通简单反馈勇气有益的潜在补充准则:尊重谦逊,沟通,XP认为项目成员之间的沟通是项目成功的关键,并把沟通看作项目中间协调与合作的主要推动因素。,简单,XP假定未来不能可靠地预测,在现在考虑它从经济上是不明智的,所以不应该过多考虑未来的问题而是应该集中力量解决
9、燃眉之急。,反馈,XP认为系统本身及其代码是报告系统开发进度和状态的可靠依据。系统开发状态的反馈可以作为一种确定系统开发进度和决定系统下一步开发方向的手段。,勇气,代表了XP认为人是软件开发中最重要的一个方面的观点。在一个软件产品的开发中人的参与贯穿其整个生命周期,是人的勇气来排除困境,让团队把局部的最优抛之脑后,达到更重大的目标。表明了XP对“人让项目取得成功”的基本信任态度。,XP的法则一项实践在XP环境中成功使用的依据,快速反馈假设简单性递增更改提倡更改优质工作,快速反馈,XP提倡尽可能早地、迅速地每天反馈,让编程人员始终把注意力放在最重要的软件功能上,促使系统快速演进。,XP迭代过程,
10、假设简单性,XP试图把注意力集中在能工作的尽可能最简单的实现上;另一方面,可以根据给定的项目资源条件,最优地分配项目资源。,递增更改,XP认为首次更改就尝试重大更改绝对不会成功,提倡以重构概念为基础做小改动,用期望的功能逐步增强系统。,提倡更改,最佳策略是在实际解决最重要的问题的前提下保留最多选项的那一个,在交付最需要的东西上保留选择余地。,优质工作,XP活动XP软件开发的基石,编码测试倾听设计,编码,作为一种轻量级方法论,XP明确放弃了系统建档和分析以外的任何外在活动。分析保留为一种相当简单,但是在和客户的日常沟通中发生的持续活动。文档则明确不予鼓励,所以编码成为XP最主要的活动。,测试,为



- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 敏捷 软件 开发 方法 简介 ppt 课件

链接地址:https://www.31ppt.com/p-1892495.html