敏捷开发模式_第1页
敏捷开发模式_第2页
敏捷开发模式_第3页
敏捷开发模式_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件开发遇到重要问题:A学习是软件开发中一大瓶颈如何让成员积极主动,负有责任感,能解决问题,并凝聚成一支高效的团队?敏捷开发历史:敏捷开发并不现代起源于20世纪30年代的一些项目(美国航天局水星计划)最早记载使用在20世纪70年代 最早的有记载的使用迭代和增量开发的主 要项目之一,是为第一艘美国三叉戟潜艇开发的第一指挥和控制系统。该项 目有大约一百万行代码,进行得非常成功。在1976年,第一部阐述敏捷方法的书籍Tom Gilb在他的著作软件度量(“Software Metrics”)一书中阐述了他的迭代和增量开发实践20世纪80年代正式定义迭代开发螺旋模型20世纪80年代在1895年,巴 里贝

2、母(Barry Boehm)正式定义了使用迭代开发的螺旋模型20世纪90年代推荐使用迭代和增量开发的出版物和文献显著增加2001年二月敏捷开发宣言后形成敏捷联盟 一组由17位在DSDM,XP,Scrum,FSD等领域的专家组成的代表团齐聚美国犹他州,寻找这些方法的共同点。 最终,这些专家制定并宣布了敏捷开发宣言。由此形成了现在我们所认识的 敏捷开发和后来的敏捷联盟敏捷开发介绍:敏捷开发(agile development)是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目 的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行 的特征。简言之,就是把一个大项目分

3、为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。敏捷开发由几种轻量级的软件开发方法组成它们包括:极限编程(XP),Scrum,精益开发(Lean Development),动态系 统开发方法(DSDM),特征驱动开发(Feature Driver Development),水晶开发 (Cristal Clear)等等敏捷开发原则和方法迭代式开发。即整个开发过程被分为几个迭代周期,每个迭代周期是一个定长或不定长的时间块每个迭代周期持续的时间一般较短,通常为一到六周。2)增量交付。产品是在每个迭代周期结束时被逐步交付使用,而不是在整个开 发过程结束的时候一次性

4、交付使用。每次交付的都是可以被部署到用户应用环境 中被用户使用的、能给用户带来即时效益和价值的产品。3)开发团队和用户反馈推动产品开发。敏捷开发方法主张用户能够全程参与到 整个开发过程中。这使需求变化和用户反馈能被动态管理并及时集成到产品中。 同时,团队对于用户的需求也能及时提供反馈意见。4)持续集成。新的功能或需求变化总是尽可能频繁地被整合到产品中。一些项 目是在每个迭代周期结束的时候集成,有些项目则每天都在这么做。5)开发团队自我管理。拥有一个积极的、自我管理的、具备自由交流风格的开 发团队,是每个敏捷项目必不可少的条件。人是敏捷开发的核心。敏捷开发总是 以人为中心建立开发的过程和机制,而

5、非把过程和机制强加给人。敏捷开发实践都基于个简单的周期:测试先行开发1)写一个失败的测试2)编写代码让测试通过3)运行测试- 通过了吗? 4)如果测试仍然失败,回到步骤2日常工作流程1)在每日的站立会议中,设置团队需要完成的任务2)执行 这些任务3)第二条对任务的执行情况和遇到问题进行沟通4)总结经验教 训,调整第二天的工作计划测试驱动需求1)将需求转变为测试2)进行软件开发3)运行这些测试, 如果测试通过,任务完成,如果没有回到2迭代1)设定一个完成状态2)找到一系列需求,构成迭代待办事项,并 承诺完成3)一一解决待办事项4)迭代结束,一一检查每个事项是否达到, “完成状态”,如果是,标记完

6、成,否则将他们放回待办事项中,以待日后 处理。演示通常在迭代末进行演示,客户可以利用这个机会,验证针对预期需求 的实现是否真正地解决了当前的问题1)确定需求的业务价值2)定义需求3)实现需求4)验证实现的功能是否满足业务需要回顾1)确定团队的工作方法2)在迭代中应用这方法3)反思总结实践过 程中的好坏方面4)找到一些更加有效的方法,确定什么时间,谁负责实行版本发布1)创建该版本的远景,并设定需要达到的业务目标2)创建该版 本的待办事项3)通过多次迭代来发布该版本4)为部署,并为下一个版本 收集反馈信息Scrums的Scrum会议 会议来进行信息同步,通过沟通和讨论来展示自己的进度和解决遇到的问

7、题,这能提高大家感知整个企业的变化,从而积极应变 管理检验1)与那些产品所有者或者项目负责人一起,定义项目或者是某个 版本的验收标准2)在团队开发过程中,保证这些验收标准随时可见,使项 目始终朝着期望的方向发展3)回忆会议中,一起评估标准4)让产品所有 者或项目负责人和团队一起工作,保证在每一个迭代中针对这些验收标准进 行检验几种敏捷实践:自组织团队 整个团队紧密合作,同心协力,主动承担责任,竭尽所能去完 成工作,响应各种变化 “联合驻扎”团队 团队成员在一起工作,经常进行小组讨论,随时可以听 到各种谈话,潜移默化中就了解到发生的事情跨职能团队 来自不同背景的人组成一个团队,自始至终地进行开发来解决 一个问题。因为大家在一起紧密协作,各自的专长就会得到分享和传播结对编程 两个人一起,齐心协力完成一些任务,这个是共享经验和专长 的极致体现信息辐射器 这种大幅图表存在的唯一目的就是把重要的信息传达给每一 个人唤醒式文档为了更好的沟通,敏捷团队成员共同撰写文档,日后每次阅读 这些文档,都可以唤起大家对讨论内容和相关背景的记忆。站立会议 在敏捷团队中,大家每天都

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论