极限编程读书报告.docVIP

  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文档。上传文档
查看更多
极限编程的特点和实践 传统软件工程方法强调系统开发的早期计划和需求调查,开发过程中要严格遵守各种细节和标准文档。然而随着科学技术的迅速发展和经济的全球化,对软件开发的生产效率提出了更高的要求。为了满足市场需要,软件开发业界出现了一些新的开发方法,这类方法以快捷、轻便的思维方式,迅速解决了一些传统软件开发企业的生产效率,得到了迅速的推广,这类方法被称为敏捷软件开发方法。极限编程技术就是其中最具代表性的开发方法。 什么是极限编程 极限编程(Extreme Programming,简称xp)是由Kent Beck于1999年提出的一种“轻量型”的软件开发方法。与传统的软件开发方法不同,xp摒弃了大多数重量型过程中的中间产物(诸如甘特图、状态报告,以及多卷需求文档等)来提高软件开发速度。它强调四条基本价值观,即沟通、简单、反馈和勇气,它不同于以往的软件开发理论,没有对软件开发的整个过程进行强制而繁琐的规定,而是给出了一套在实际软件开发过程中需要遵守的活动实践原则。极限编程是一种优良的、通用的软件开发方法,项目团队可以拿来直接采用,也可以增加一些实践,或者对其中的一些实践进行修改后再采用。 极限编程的特点 XP在很多方面都和我们传统意义上的软件工程不同。同时,它也和传统的管理和项目计划的方法不同。这些方法在软件工程和其他管理活动中都有借鉴意义。其特点如下: 1、不采用瀑布式的软件工程方法,而采用原型法。将一个软件开发项目分为多个迭代周期,每个周期实现部分软件功能。在每个周期都进行提出需求、设计软件架构、编码、测试、发布的软件开发的全过程。每个周期都进行充分的测试和集成。这样的好处是可以不断的从客户方面得到反馈,更逼近实际的软件需求。通过频繁的重新编码的过程,可以非常适应功能更改的需求,同时增加软件的易维护性。在不断的迭代中,避免架构设计的重大失误造成的软件不能如期交工,避免了软件设计的风险。 2、在软件设计中,强调简单性,就是坚决不作用不到的通用功能。同时,也不刻意避免重新编码,只有不断地重新编码才能保证软件得合理性,不害怕对整个软件推倒重做。认为重新编码是很正常的现象,每次的重新编码都会大大减少软件中的熵值。 3、在专业分工中,提出在开发团队中要有全职的客户人员的参与,同时在软件团队中也要有自己的领域专家。这样,可以和客户充分交流,彻底了解应用需求。这种软件需求的提出不是一次性的,而是不断的交流。也有专门的软件架构的设计师,首先进行软件整体架构的设计。这种设计一般使用UML语言。 4、在软件开发的顺序上,和传统方法完全相反。传统方法是按照整体设计、编写代码、进行测试、交付客户的方法。而XP是按照交付客户、测试、编码、设计的顺序来开发。首先将要交付客户的软件的界面作出来,先让客户对软件有实际体验。这样,可以获得客户的更多的反馈,使需求可以在开发前确定。在编码前就先把测试程序做好,这样,编码完成后就可以马上进行测试。通过不断的测试来保证软件的质量。在进行软件架构设计之前就进行编码.可以使问题更早暴露,可以使最后的软件设计更体现编码的特点,更符合实际,更容易实现,也保证了设计的合理,保证了软件设计的大量决定的正确性。 5、在项目计划的实现上,每次的计划都是技术人员对客户提出时间表,由最后的开发人员对项目经理提出编码的时间表。这种计划都是从下而上的.不是从上到下的,更容易保证计划的按时完成。同时,多个迭代周期也使工期的估计越来越精确。 6、在分工上,强调角色轮换,项目的集体负责,分工的自愿性。分工的自愿性就是每个人的工作内容不是由项目经理分派,而是由每个人自愿领取,这样保证了每个人可以发挥自己的特长,适应自己的情况。当然,在每个问题上都要有唯一的决策人,同时,也要经过充分的交流和沟通。角色轮换就是在项目中,一个人在不同的周期中担任不同的角色,可以保证每个人对项目的整体把握,方便项目中的沟通和理解。项目的集体负责,就是每个人不是完成自己的工作就可以了,要对整个项目的完成负责。任何人都可以对工作的任何部分提出自己的建议,任何人都可以从事任何工作。任何人都要对整个项目熟悉,这样做的优点是可以充分的锻炼人、可以发挥每个人的积极性、可以使项目不依赖于某个特定的人,方便今后的软件的维护。通过工作内容的变换可以提高人工作的兴趣,通过角色轮换还可以使每个人都劳逸结合,方便相互理解,避免由于不理解而造成的各种配合问题。 极限编程的实践 XP是一种以促进实际软件开发为目标和核心的方法学,它不明确区分设计编程者,编程者与设计者一般是统一的,从而,程序代码就成了比较方便的架构表达工具。当然,这并不意昧着分析、设计、编码和测试人员之间没有其他方式沟通,×P认为I=1头交流是最为有效的,从而架构描述工具在此就不再需要了。以下给出XP认为在实践中最为行之有效的十二种方法:

文档评论(0)

PPT精品 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档