专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > 敏捷开发

【转】关于矫捷开发的两个概念:Scrum / XP

发布时间:2011-06-20 17:27:08 文章来源:www.iduyao.cn 采编人员:星星草
【转】关于敏捷开发的两个概念:Scrum / XP

SCRUM 
SCRUM是一套敏捷开发的框架,说的是在进行一次敏捷开发的过程中,所需要参与的角色,进行的活动和输出的产物。 
角色有三个: 

  • 团队负责人:作为客户代表,确定产品的方向和愿景,定义产品发布的内容、优先级及交付时间,为产品ROI负责。没有BA的情况下,可以充当BA的角色,来规避因需求问题导致过量生产和返工所产生的浪费。
  • SCRUM MASTER:主要负责消除团队障碍。我觉得他可以负责开发公共组件,解决复杂问题来规避多余动作。通过制定沟通机制,开发流程规避过程不当造成的浪费。通过协调开发计划,来规避等待所造成的浪费。
  • 团队:一个完成的软件开发团队应该包括销售,售前,用户,研发,测试,售后等所有相关人员,因为任何几个角色都有可能导致软件开发的失败。对于团队而言最重要的是加强沟通,使信息能够准确的传递给团队的每一个人。

其他的不一一细说了,我认为SCRUM的核心是通过敏捷回顾来持续改进,从而消除浪费。因为在软件开发中遇到的小问题非常多,从而造成大量的浪费,所以必须通过敏捷回顾,不断的总结团队做得好的习惯和遇到的问题,在下一个迭代的开发中的解决这些问题。 

XP 
XP是实现敏捷开发的一些非常好的实践。 
  • 用户故事:是站在用户的角度和应用场景下来描述业务需求。格式为作为..我能..以便于..如作为网络管理员,我能查实时的查看每个设备的CPU利用率,以便于我能即时发现有问题的设备。
  • TDD:测试驱动开发,通过先写测试代码再写程序代码的方式,来理清编码思路和写有效的代码,之所以说有效的代码,是因为有时候写的方法,你会发现从来没有任何其他的方法会调用它,如多余的修改器(getter)和访问器(setter)。我强烈建议业务服务层代码使用TDD进行开发。
  • 持续集成:通过自动化构建工具(cc),持续集成版本,从而可以快速的反馈集成问题。
  • 结对编程:两个程序员用一个电脑进行编程,一个人负责编码,另一个人负责思考,在编写之前需要和结对的同学表述自己的编程思路,从而将每一个程序员的优秀习惯传播给整个团队,但是遗憾的是结对编程对程序员的要求比较高,最好是两个程序员有一定的能力,并且能力差不多,如果一个能力很高的程序员和一个能力低的程序员结对可能效率很低。

友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: