关于敏捷开发的26个心得.docVIP

  1. 1、本文档共8页,可阅读全部内容。
  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文档。上传文档
查看更多
关于敏捷开发的26个心得

关于敏捷开发的26个心得 敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。 ■用例一完全能够运行后再开发用例二。厨房里有一种说法正好可以印证这个问题:“做好一盘菜后你再做下一盘”.对于软件开发来说一个最大的问题就是人们喜欢并行开发多个任务。因为不可避免的,我们设计的功能中总会有一部分会被放弃砍掉,如果提前开发,很可能做无用功。一次只开发一个用例(或很少几个用例,这根据你的开发团队的大小而定);让这个用例功能完整;让相应的测试用例都能通过;相应的文稳都补齐;只有在当前的用例完全开发完成后,才做为一个整体提交到版本库,才进行下一个用例。 ■避免提交一个半成品。这一点大家似乎都知道,但这条原则必须列入任何一个开发指导里。能够听取这些忠告进行开发测试然后提交代码的程序员一定不会发生代码提交到版本库使整个项目无法编译码通过情况。如果系统编译失败,那一定是有人抄近道到了。 ■不要在还没有任何使用案例的情况下设计通用模块。只有在你知道有具体用例的情况下,你才可以实现一个具体的类,而且你在该类中只应该实现当前该用例需要的方法。你也许会想到将来这个类会有其它的用途,你可以用注释的方式记录一下,但不要去实现它,只有在有了具体用例后你才可以实现它。 ■一定不要在没有使用例的情况下往类里添加成员方法。这跟上面一条极其相似,除了这里针对的是数据成员。开发人员很容易想到:一个?客户记录?里应该有?送货地址?的信息,但一定不要在没有任何用例要求这个属性的时候实现这个属性。■不要害怕做决定;不要害怕改变以前的决定。敏捷开发的目的是应对客户需求的不确定。开发前期你不可能获到全部的信息。你应该尽可能的拖延做决定的时间,但一旦到了你该做决定的时候,你应该当机立断,让项目向前推进。你不能说一直等到有了足够的信息才做决定。相反,你要依赖现有的信息作出最正确们决定。之后,当有新的信息出现后, 不要害怕对以前的决定作出更改。(老辈人有的称之为触发器,但我称之为随环境而变) ■不断的了解如何改进系统。这项工作没有尽头,你应该做好思想准备,持续不断的寻找可以改进的地方,收集各种关于如何找到质量问题、解决质量问题的案例。 ■审查,审查,审查。敏捷开发可以帮助我们应对需求在将来的不确定,但过去的事情也存在不确定性。测试工作永远不能停下来。程序每次运行的表现都要被评审和记录。 ■软件的设计要以人为本,而不是系统。很多开发人员退而求其次、以技术为中心,让设计为技术服务。永远不要忘记软件的终极目标是什么,是帮助人们完成工作。 ■测试是产品的一部分。许多开发人员和经理都认为产品就是你打包给客户的东西,其余的都不重要。其实测试也应该看作是产品的实际一部分,应该在设计时给予相当的重视,甚至,在很多时候,测试功能也应该同产品一起提交给客户。(后面说的这部分很多人都不认可,一个内置的能自我测试软件包并不会占用多少额外的资源,但当你需要用到它时,你会发现它的巨大价值。) ■先写测试用例,后写代码。测试用例可以用来精确的说明我们的设计需求。很多时候我们都是通过运行测试用例后发现我们的设计中存在问题。想想吧,先写测试用例后编码能节省多少时间。但是:写完测试用例1,然后编写用例1,完后才开始用例2。 ■清理垃圾代码。很显然,又是一个尽人皆知的道理,但它也必须写入任何的开发原则里,因为它是如此的重要。查找垃圾代码的工作永远没有尽头,找到它,消灭它。要去除掉所有的不能给实际用户带来价值的代码。如果你不能指出某段代码对用户有什么用处,那它很可能就是没用的。 ■培养对集成失败问题立即做出反应的习惯。你要明白,当集成构建失败时,它会影响项目中的每一个人,所以没有比让核心程序能正确的集成和测试通过更重要的事情了。我曾经见到过有的团队的集成构建中断几个月都不去管它,因为他们有其他的工作要做。每个人都在忍受这种情况,但没人采取措施。我们应该明白,应该广泛的认识到,只要做出一点点工作,整个的团队会因此得到非常大的回报。 ■团队的每个成员都要知道客户的需求。大型复杂的项目必须要分割到几个独立的团队去开发,然后派发到每个开发人员的手中,但这绝对不能变成程序员可以不明白最终产品的使用用户的需求和目标是什么。 2 ■把意义相关的东西放在一起。组织好代码,让高度相关的东西都放在一起,也就是放在一个类里。这是标准的面向对象设计原则里的封装的概念。理想情况下,类之

文档评论(0)

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

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

版权声明书
用户编号:5134022301000003

1亿VIP精品文档

相关文档