Brenda的敏捷沉思录

Brenda's Agile Thinking

导航

追求技术的卓越

Posted on 2010-04-28 11:05  brenda bao  阅读(261)  评论(0编辑  收藏  举报

敏捷原则中很重要的一条是:

Continuous attention to technical excellence and good design enhances agility.

 

但是Scrum中却对技术的卓越没有过多的指导。Scrum要求在每个Sprint的最后根据Definition of Done提交working software。如果不能提交,就算是Sprint失败。但是关于如何很好地build working software,并且保证high quality,Scrum并没有说明。Scrum要求的只是在Sprint最后,Team对本次Sprint要有个反省,并在反省中不断提高。

 

在我本人培训Scrum的时候,许多学员也多次提出如何才能提交high quality working software的问题。我的回答是,Scrum本身并不会告诉你怎么做,你们要通过不断地inspect&adapt来找到合适的答案。但是敏捷的另外一个分支XP中有很多推荐的工程实践,这些实践是你们可以开始的第一步。

 

上周连续参加了Shanghai Scrum Gathering和Qcon Beijing两个大会。不断追求技术的卓越是我感受最深的一点。即使是Scrum Gathering也有许多演讲者讲了关于工程实践的话题。Keynote Speaker之一的Kane Mar的演讲主题是Scrum and XP: Myths, truths and how to do it. 演讲中具体提到了把Scrum的管理框架和XP的工程实践结合起来使用,可以使你的敏捷实施更可行,更高效。演讲中Kane推荐从持续集成这个最简单的工程实践入手,然后慢慢引入simple design, TDD, refactoring等其他实践,以保证代码的质量。

 

对软件产品来说,代码是全部。无论用何种方式来管理,能快速提交高质量的代码才是王道。但是,似乎很多企业的管理者都忽视了这一点。Scrum的框架可以让你清晰地感受到代码有问题,并提供inspect&adapt的机制。而XP的实践可以真正帮助你的代码质量不断提高。如此开展敏捷,应该是最有效地。