这是一本很好的敏捷小白入门书籍,书很薄,以实战为主,文笔轻松,少教条,读起来不费力。通过读这本书,可以比较全面的了解到敏捷开发在项目进行过程中到底是怎样实施的,它详细得像一份实战报告。这本书也可以当作scrum的实施指南来用,值得反复阅读。
关于敏捷开发,提到最多的一个词就是“质量内建”,本书中旗帜鲜明的提出不能在质量上让步,并且把质量划分成内部质量和外部质量,总结出:“系统内部质量优秀,外部质量仍有可能很差,而内部质量差的系统,外部质量肯定也不怎么样。”“牺牲内部质量是一个糟糕透顶的想法。现在节省下来一点时间,接下来的日子里你就要一直为它付出代价。一旦我们放松要求,允许代码库中暗藏问题,后面就很难恢复质量了。”现实生活中,我们常常“迫于”种种压力,让牺牲内部质量的事情一再发生,作者也给出了他在面临类似问题时候的解决方案——缩小交付范围。
关于Scrum团队中的角色,印象最深的“产品负责人之外的人也可以向产品backlog中添加故事,但是他们不能说这个故事有多重要,这是产品负责人独有的权利。他们也不能添加时间估算,这是开发团队独有的权利。”寥寥几句,道清了三种角色在同一件事情中分工合作的方式和边界。
类似的还有概念的澄清:“故事是可以交付的东西,是产品负责人所关心的。任务是不可交付的东西,产品负责人对它也不关心。”指出两者的本质区别,让人一下子就能明白“把故事拆分成任务”是在做什么,并且能作为标准来判断自己敏捷实践中做的是否到位。
全书中作者通过对自己团队的Scrum日常描述,生动具体的展示了Scrum的三个工件(产品待办事项列表Product Backlog,Sprint代办事项列表SprintBacklog,产品增量Increment)和Sprint的4个会议(Sprint计划会议Sprint Planning Meeting,每日站会Daily Scrum Meeting,Sprint评审会议Sprint Review Meeting,Sprint回顾会议Sprint Retrospective Meeting)。当我看到书中对迟到成员的惩罚示例时,我觉得,哦,他们平时的工作就是这样进行的吧,然而,作者却说:“其实,我们也没做到。”,原来这样也可以。
这也是Scrum的魅力所在,它是一种灵活的框架,没有那么多的繁文缛节,在每一个不同的团队里,在同一个团队的不同项目中, Scrum都在演变,都在进化。