敏捷开发概念及实践课件.pptxVIP

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

目录?敏捷开发历史?软件开发模式介绍?软件生命周期模式?敏捷开发介绍?敏捷开发-SCRUM名词解释?敏捷开发-实施Scrum的过程介绍?敏捷开发-原则和方法?敏捷开发-宣言?敏捷开发-最佳实践

敏捷开发历史l敏捷开发并不现代起源于20世纪30年代的一些项目(美国航天局水星计划)l最早记载使用在20世纪70年代最早的有记载的使用迭代和增量开发的主要项目之一,是为第一艘美国三叉戟潜艇开发的第一指挥和控制系统。该项目有大约一百万行代码,进行得非常成功。l在1976年,第一部阐述敏捷方法的书籍TomGilb在他的著作《软件度量》(“SoftwareMetrics”)一书中阐述了他的迭代和增量开发实践l20世纪80年代正式定义迭代开发螺旋模型20世纪80年代在1895年,巴里贝母(BarryBoehm)正式定义了使用迭代开发的螺旋模型

敏捷开发历史美国国防部的项目审查早期使用瀑布模式开发的软件项目,有75%以失败告终,有些开发出来的产品根本没有被使用过,只有2%的软件产品无需大量修改就能被正常使用。l20世纪90年代推荐使用迭代和增量开发的出版物和文献显著增加l2001年二月敏捷开发宣言后形成敏捷联盟一组由17位在DSDM,XP,Scrum,FSD等领域的专家组成的代表团齐聚美国犹他州,寻找这些方法的共同点。最终,这些专家制定并宣布了敏捷开发宣言。由此形成了现在我们所认识的敏捷开发和后来的敏捷联盟

为什么要敏捷开发-项目为什么失败项目为什么失败?软件工程试图解决这些问题:1)对用户需求理解得不清楚,1)为了规范化开发过程,引进传统工程的概念(瀑布型);为了理解需求,提出原型法;为了提高设计开发的效率和扩展性,提出重用和面向对象等思想;甚至有错误;2)3)4)用户需求变化;2)3)软件很难维护或扩展;在项目后期阶段发现很严重的设计缺陷;5)6)软件质量或性能不合格;Test-Build-Release过程的可操作性、可维护性很差;4)5)为了让开发过程更灵活,提出了开发框架的概念;为了降低风险,提出了风险评估、成本控制和增量开发等思想;7)人员流动;

为什么要敏捷开发-软件工程应用现状软件工程的应用现状:“特色”问题还是难以解决:1)国内因为资源限制,软件工程的实施流于形式;1)需求难以量化;2)软件从开发到维护及扩展,需求都有可能发生大变化;2)国内软件工程的研究及推广工作,和实践脱钩;3)编程对设计的反馈非常重要;4)项目中的设计可能会经常变化;5)代码的可读性和可维护性;……3)旧的软件工程方法一直不能有效地支持变化。4)在北美,虽然软件工程提高了项目成功率,但耗费巨大资源;5)以前的软件工程方法无法摆脱传统工程方法的束缚。

为什么要敏捷开发-需要敏捷的理由需要敏捷的理由部门培养团队合作精神,稳定开发队伍;提高开发人员的水平;提高项目成功率,降低开发成本,提升软件开发效率项目经理更好地和用户沟通,更清晰地理解用户需求;更充分地使用资源,更科学地调配资源,更精确地掌握开发进度。系统分析设计更加完善;更有效地更新知识,得到其他成员更多的尊重。程序员学习系统设计和项目管理;提高学习和工作效率,受到重视,减少加班时间,工作更高效

软件开发模式介绍l软件生命周期-同任何事物一样,一个软件产品或软件系统也要经历孕育、诞生、成长、成熟、-衰亡等阶段,这一般称为软件生命周期。-软件开发生命周期(SDLC)是指软件开发的全部过程、活动和任务的结构框架。-SDLC的一般步骤包括:确定问题、可行性分析与开发计划、收集需求、分析与设计、编码开发、测试、安装、维护。l软件生命周期模式典型的几种生命周期模式包括:瀑布模式、演化模式、螺旋模式、快速原型模式、喷泉模式和混合模式等。在这里只介绍其中最常用的几种模式:

软件生命周期模式l瀑布式它首先是由Royce提出,该模式由于酷似瀑布闻名。在该模式中首先确定需求,然后拟定规格说明,在通过验证后方可进入计划阶段。因此,瀑布模式中至关重要的一点是只有当一个阶段的文档获得认可才可以进入下一个阶段。瀑布模式通过强制性规约来确保每个阶段都能很好的完成任务,但是实际上却往往难以办到。因为整个瀑布模式几乎都是以文档驱动的,这对于非专业的用户来说是难以阅读和理解的。虽然瀑布模式有很多很好的思想可以借鉴,但是在过程能力上有天生的缺陷。l演化模式?它主要是针对事先不能完整定义需求的软件开发。它的方法是用户先给出待开发系统的核心需求,并且在核心需求实现后,再提出反馈以支持系统的最终设计和实现。也就是说:开发人员首先会根据用户的需求开发核心系统,然后提供给用户试用;用户试用后再提出增强系统能力的需求;最后开发人员再根据用户的反馈,实施迭代开发。实际上,这个模式可看作是重复执行的

您可能关注的文档

文档评论(0)

157****5400 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档