敏捷软件开发过程中高质量软件的开发.docxVIP

敏捷软件开发过程中高质量软件的开发.docx

  1. 1、本文档共5页,可阅读全部内容。
  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文档。上传文档
查看更多
敏捷软件开发过程中高质量软件的开发

敏捷软件开发过程中高质量软件的开发姓名:郑哲 学号:21120233071敏捷开发的意义敏捷软件开发又称敏捷开发是一种从1990年代开始逐渐引起广泛关注的一些新型软件开发方法,是一种应对快速变化的需求的一种软件开发能力。它们的具体名称、理念、过程、术语都不尽相同,相对于非敏捷,更强调程序员团队与业务专家之间的紧密协作、面对面的沟通(认为比书面的文档更有效)、频繁交付新的软件版本、紧凑而自我组织型的团队、能够很好地适应需求变化的代码编写和团队组织方法,也更注重做为软件开发中人的作用。敏捷方法有时候被误认为是无计划性和纪律性的方法,实际上更确切的说法是敏捷方法强调适应性而非预见性。适应性的方法集中在快速适应现实的变化。当项目的需求起了变化,团队应该迅速适应。并不意味着没有文档、没有设计、没有计划随意设计的万能钥匙[1]。对于从前预见式的软件产品开发,在第一次挖成规格说明以及需求分析后,就进行软件产品的构建,并在开始阶段对所有的安排以及调度等细节活动进行安排,一般情况下不对计划做成没有预定义的变动,造成了项目计划的改动率极低。而相对来讲,敏捷软件开发并不在前期进行详细的规格说明,在开始阶段随着经验数据的出现,计划与估算的可能性才会相应增加,并通过构建反馈周期,推动自适应步骤,因此改动率较高,同时更加注重响应变化而不是一味遵循计划进行软件产品的开发[2]。针对敏捷软件开发的目标,提出了12条的敏捷宣言:1、最优先的目标是通过尽早地、持续地交付有价值的软件来满足客户。2、欢迎需求变化,甚至在开发后期。敏捷过程控制、利用变化帮助客户取得竞争优势。3、频繁交付可用的软件,间隔从两周到两个月,偏爱更短的时间尺度。4、在整个项目中业务人员和开发人员必须每天在一起工作。5、以积极主动的员工为核心建立项目,给予他们所需的环境和支持,信任他们能够完成工作。6、在开发团队内外传递信息最有效率和效果的方法是面对面的交流。7、可用的软件是进展的首要度量指标。8、敏捷过程提倡可持续开发。发起人、开发者和用户应始终保持一个长期的、稳定的开发速度。9、简化——使必要的工作最小化的艺术——是关键。10、持续关注技术上的精益求精和良好的设计以增强敏捷性。11、最好的架构、需求和设计产生于自我组织的团队。12、团队定期地对运作如何更加有效进行反思,并相应地调整、校正自己的行为。敏捷开发同软件质量并无矛盾 首先,根据敏捷项目开发的要求以及目标,我们提出四个敏捷开发的价值目标:沟通、简单、反馈以及勇气。同上一节讲到的敏捷方法有时候被误认为是无计划性和纪律性的方法,实际上更确切的说法是敏捷方法强调适应性而非预见性,同时拥抱市场变化,拥抱客户需求变化,采用迭代反馈的方式管理项目[3]。 我们将从这四个方面一次论证敏捷项目开发同软件质量保证之间并无矛盾。沟通项目中出现的问题无一例外总是出自那些不愿与别人探讨重要问题的人身上:– 有时程序员不把重要的变化告诉别人;– 有时程序员不向客户问该问的问题,而导致在关键性领域的决策中出现失误;– 有时管理人员不向程序员问该问的问题,而导致项目进度被误报;– 有时程序员向管理人员报告了一个坏消息,而管理人员却迁怒与他;– 有时客户告诉了程序员一些重要的事情,而程序员却把他当成了耳旁风;敏捷方法采用了一些实践来强制沟通,比如结对编程、策划游戏、验收测试等。简单敏捷软件开发注重的是能够成功开发高质量软件最简单的东西,今天做的简单一些,然后在明天需要时多花一些时间进行改进,要比今天做的相对复杂,但在以后在也用不到要好,也有助于整个项目的效率控制。同时注重用户需求与产品的设计,当用户需求和产品设计变得相对简单一些后,软件产品的开发也将更加容易。沟通的越多就越清楚用户需求中哪些该做,哪些不该做,而系统越简单,需要的沟通就越少,系统也就会更加简单,如此循环,有助于高质量软件产品的开发。反馈在软件产品开发过程中,及时的信息反馈同沟通一样重要。反馈的频度:分、小时、天、迭代周期。包括程序员编写完程序后实时进行单元测试,以得到程序质量的反馈;客户编写完新的用户故事后,程序员马上对其进行估算,以得到故事质量与投入的反馈;程序员完成了用户故事后,客户进行验收测试,以反馈产品的质量;每天的站立会议可以使项目组的所有人了解项目的进展;每次迭代结束了,进行已完成软件的演示,以获得客户的反馈。应尽早反馈在软件开发过程中的遇到的问题以及疑问,问题的反馈越多,同以及伙伴的沟通就越容易,同时也给软件开发带来便利。勇气项目开发过程中的勇气体现在开发人员勇于承担任务、勇于修改bug、勇于重构、勇于应对变化、勇于创新避免教条,当满足了以上所说的沟通、简单、反馈后具备了勇气才是真正的有勇有谋,按照敏捷项目开发的要求才能完成高质量的软件产品的开发[4]。如何在敏捷开发过程中开

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档