极限编程和UP统一过程.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
极限编程和UP统一过程

敏捷开发 什么是敏捷开发?一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。简言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。 主要的敏捷方法 (1)极限编程(XP)-后面介绍 (2)水晶方法(Crystal) (3)动态系统开发方法(DSDM) (4)特征驱动的软件开发(FDD) 自适应软件开发(ASD) SCRUM方法…… Extreme Programming(极限编程,简称XP) XP是一个轻量级的、灵巧的软件开发方法;同时它也是一个非常严谨和周密的方法。 它的四大价值观是沟通、简单 、反馈和勇气。 即:任何一个软件项目都可以从四个方面入手进行改善:加强交流;从简单做起;寻求反馈;勇于实事求是。XP是一种近螺旋式的开发方法,它将复杂的开发过程分解为一个个相对比较简单的小周期;通过积极的交流、反馈以及其它一系列的方法,开发人员和客户可以非常清楚开发进度、变化、待解决的问题和潜在的困难等,并根据实际情况及时地调整开发过程。 四大价值:沟通、简单、反馈、勇气。 1沟通。 要学习如何说话。要多发私人email。一些有意义的实践:单元测试,结对编程,任务估算。 2简单。 只做当前需要的事情 只写当前必须的代码 3反馈。????????????????????????????? 单元测试,得到系统的反馈; 估算任务,得到客户的反馈;等等 4 勇气。 敢于对代码做大手术; 用于放弃很烂的代码。 ?五个原则 快速反馈、简单性假设、制造增量式的变化、包容变化、质保工作。 12条手段来保证达到目标: 1、通过客户、开发人员、经理三方共同参加的计划游戏(planning game)来确定开发计划 2、小版本发布----尽快发布,尽早发布 3、通过系统隐喻(metaphor)来让每个人了解整个系统 4、简单设计----为明确的功能进行最优的设计,不考虑未来可能需要的功能。 5、重构(refactoring)---不断优化系统设计,使之保持简单 6、单元测试----先写测试,后写代码 7、双人编程(pair programming)----系统的每一行代码都是2个人用一个键盘完成的。 8、代码集体拥有--开发队伍中任何人可以修改任何其他人的代码,代码不属于某个个人。 9、持续集成----至少每天将整个系统集成一次,保持一个能运转的系统。 10、40小时工作制----保证休息,保持体力 11、现场客户----客户自己也是软件开发队伍的重要一份子 12、编码标准----必须有统一的编码规范,确保代码的可读性 极限编程实践 完整团队 XP 项目的所有参与者(开发人员、业务分析师、测试人员等等)一起工作在一个开放的场所中,他们是同一个团队的成员。这个场所的墙壁上随意悬挂着大幅的、显著的图表以及其他一些显示他们进度的东西。 计划游戏 计划是持续的、循序渐进的。每2周,开发人员就为下2周估算候选特性的成本,而客户则根据成本和商务价值来选择要实现的特性。 客户测试 作为选择每个所期望的特性的一部分,客户定义出自动验收测试来表明该特性可以工作。 简单设计 团队保持设计恰好和当前的系统功能相匹配。它通过了所有的测试,不包含任何重复,表达出了编写者想表达的所有东西,并且包含尽可能少的代码。 结对编程 所有的产品软件都是由两个程序员、并排坐在一起在同一台机器上构建的。 测试驱动开发 程序员以非常短的循环周期工作,他们先增加一个失败的测试,然后使之通过。 改进设计 随时改进糟糕的代码。保持代码尽可能的干净、具有表达力。 持续集成 团队总是使系统完整地被集成。 集体代码所有权 任何结对的程序员都可以在任何时候改进任何代码。 编码标准 系统中所有的代码看起来就好像是被单独一个——非常值得胜任的——人编写的。 隐喻 团队提出一个程序工作原理的公共景像。 可持续的速度 团队只有持久才有获胜的希望。他们以能够长期维持的速度努力工作。他们保存精力,他们把项目看作是马拉松长跑,而不是全速短跑。 极限编程的核心思想 从长远看,早期发现错误以及降低复杂度可以节约成本。极限编程强调我们将任务/系统细分为可以在较短周期解决的一个个子任务/模块,并且强调测试、代码质量和及早发现问题。通常,通过一个个短小的迭代周期,我们就可以获得一个个阶段性的进展,并且可以及时形成一个版本供用户参考,以便及时对用户可能的需求变更作出响应。 ● 极限编程(XP)包含了策划、设计、编程和测试四个活动,其十二个最佳实践中的“持续集成”实践在 (3

文档评论(0)

xyz118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档