敏捷开发随笔(一)高效软件开发之道
敏捷的方法值关注真正重要的事情,少关注那些占用大量时间而无甚裨益的不重要的事情
这是一组把以人为本,团队合作,快速响应变化和可工作的软件作为宗旨的开发方法
敏捷意味着可以快速地适应变化
土耳其谚语-不管路走了多远,错了就要重新返回
敏捷开发宣言
1个体和交互胜过过程和工具
2可工作的软件胜过面面俱到的文档
3客户协作胜过合同谈判
4响应变化胜过遵循计划
开发需要持续不断,切勿时续时断
敏捷开发就是在一个高度协作的环境中,不断地使用反馈进行自我调整和完善
先难后易,把简单的问题留到最后
可工作的软件胜过面面俱到的文档(软件才是真正的目的)
响应变化胜过遵循计划
不要坠入快速的简单修复之中
只关注真正重要的事情,少关注那些占用大量时间而无用甚至裨益的不重要的事情
敏捷工具箱
1Wiki,一种支持协作的工具,实现知识共享,《Wiki之道》
2版本控制,CVS和SVN,GIT
3单元测试,用代码来检查代码《单元测试之道》
4自动构建,《项目自动化之道》
【对事不对人】
【1】设定最终期限,在寻找解决方案时遇到问题,要设定一个明确的最终期限,以防止人们陷入无休止的理论争辩中,并帮助你在为难的时候果断做出决策
【2】逆向思维-意识到权衡的必要性,一种客观对待问题的办法,先积极地看到它的正面,再努力地从反面去认识他,目的是找出优点最多,缺点最少的那个方案
【3】支持已经做出的决定-一旦方案被确定了,必须通力合作,努力实现这个方案,我们的目标是让项目成功满足用户的需求
【平衡】
尽力贡献自己的好想法,没被采纳无需生气,也不要只是为了体现自己的想法而对拟定的好思路画蛇添足。脱离实际的反方观点会使争论变味(类似的问题发生过吗,经常发生吗?)
【排除万难,奋勇前进】
当发现问题时,不要试图掩盖这些问题。当你知道目前的做法是错误的,在问题进一步恶化下去之前,鼓足勇气站出来,扫除障碍,这个叫做魄力