欢迎来到天天文库
浏览记录
ID:5422582
大小:592.00 KB
页数:79页
时间:2017-11-12
《敏捷软件开发方法简介——以极限编程为例》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、敏捷软件开发方法简介——以极限编程为例宋扬songyang@pku.edu.cn北京大学地球与空间科学学院2003年5月18日主要内容敏捷方法的含义软件过程的比较极限编程(eXtremeProgramming,XP)简介准则法则活动实践讨论和应用实例“敏捷”的含义轻巧、机敏、迅捷、灵活、活力、高效……敏捷过程很容易适应变化并迅速做出自我调整,在保证质量的前提下,做到文档、度量适度。•适用于各类软件企业敏捷方法产生的背景现代软件的复杂性软件越来越复杂可变性需求越来越多变一致性过程越来越规范软件开发过程
2、敏捷化趋势据国际著名咨询机构CutterConsortium对全球200位IS/IT经理所做的调查——3个占优的重载方法:51%RationalUnifiedProcess27%CMM26%ISO9000大约50%的被调查者预计到2003年其50%以上的项目会使用敏捷方法;14%的被调查者认为其所有的项目会使用敏捷方法。FromTHEDECISIONISIN:AGILEVERSUSHEAVYMETHODOLOGIES,VOL.2,NO.19,byRobertCharette,SeniorConsul
3、tant,CutterConsortium敏捷价值观“注重个人及互动胜于过程和工具”“注重可用的软件胜于详尽的文档”“注重客户协作胜于合同谈判”“注重响应变化胜于恪守计划”www.agilemanifesto.org《敏捷宣言》12条原则1.最优先的目标是通过尽早地、持续地交付有价值的软件来满足客户。2.欢迎需求变化,甚至在开发后期。敏捷过程控制、利用变化帮助客户取得竞争优势。3.频繁交付可用的软件,间隔从两周到两个月,偏爱更短的时间尺度。4.在整个项目中业务人员和开发人员必须每天在一起工作。5.以
4、积极主动的员工为核心建立项目,给予他们所需的环境和支持,信任他们能够完成工作。6.在开发团队内外传递信息最有效率和效果的方法是面对面的交流。7.可用的软件是进展的主要度量指标。8.敏捷过程提倡可持续发展。发起人、开发者和用户应始终保持稳定的步调。9.简化——使必要的工作最小化的艺术——是关键。10.持续关注技术上的精益求精和良好的设计以增强敏捷性。11.最好的架构、需求和设计产生于自我组织的团队。12.团队定期地对运作如何更加有效进行反思,并相应地调整、校正自己的行为。代表方法瑞理统一开发过程:Ra
5、tionalUnifiedProcess敏捷建模:AgileModeling极限编程:eXtremeProgramming自适应软件开发:AdaptiveSoftwareDevelopment水晶方法体系:Crystaletc.RUP(RationalUnifiedProcess)iter.#1iter.#2iter.#niter.#n+1iter.#n+2iter.#miter.#m+1需求设计实现测试分析核心工作流程先启精化构造转移精化过程中的反复过程初步的反复过程反复序列RUP是Rationa
6、l公司的改进过程的规范,它被设计成一种由用例驱动的、以体系结构为中心的软件开发过程,它以迭代的方式前进,通过执行工作流程递增地产生结果。它的主要四个阶段是先启、精化、构建和转移,五个核心工作流程为需求、分析、设计、实现和测试。由于RUP是一种框架,你可以以不同的方式来使用它,如象非常传统的“瀑布”式开发方式,或敏捷式,如dX。你可以把用得轻捷灵便,也可把它弄成繁文缛节。这取决于你如何在你的环境中对它裁剪运用。XP到RUP的映射先启精化构建转移需求用户素材小型发布接纳测试测量分析CRC卡片迭代计划任务
7、计划、迭代编程接受背后设计系统隐喻单元测试重构持续集成实现编码标准简单设计集体代码所有权运行所有测试CRC卡片:Class-Responsibility-CollaboratorAgileModelingAM是一种最近才出现的软件思想AM是一种轻方法论XP实践既给了AM灵感,也是AM的一种具体实现AM核心原则主张简单拥抱变化.你的第二个目标是可持续性。简单的说,你在开发的时候,你要能想象到未来。递增的变化令投资人的投资最大化有目的的建模多种模型高质量的工作快速反馈软件是项目的主要目标轻装前进AM补充
8、原则内容比表示更重要三人行必有我师了解你的模型了解你的工具局部调整开放诚实的沟通自适应软件开发ASD的核心是三个非线性的、重迭的开发阶段:猜测,合作与学习。水晶方法体系水晶方法体系与XP一样,都有以人为中心的理念,但在实践上有所不同。水晶方法体系考虑到人们一般很难严格遵循一个纪律约束很强的过程,因此,与XP的高度纪律性不同,水晶方法体系探索了用最少纪律约束而仍能成功的方法,从而在产出效率与易于运作上达到一种平衡。也就是说,虽然水晶系列不如XP那样的产出效率,但会有更多
此文档下载收益归作者所有