今天读了由Ken Schwaber所著的《Scrum敏捷项目管理》,收获剖多,与大家分享。
本书开篇先讲了Scrum的基本知识和科学原理,然后作者通过介绍自己的项目实践经验,来分享Scrum中全新的管理责任、ScrumMaster、如何结束混乱、产品负责人、如何规划Scrum项目、如何计划和报告、及如何扩展项目团队规模等,并着重于如何驱动项目以实现最高的投资回报。文中以下几个观点,使我印象深刻。
Scrum能控制软件开发过程,引导工作运行,尽量产出最具价值的成果。Scrum有助于控制软件开发项目,但不意味着使用了Scrum就能确保项目能严格按照预期进行,并如期按既定情况交付完全相同的成果;因为Scrum一般解决的是复杂问题,它往往是那些运行情况不可预测的问题,需要我们将过程透明化,然后不断的检视和调整,来解决项目实际执行中遇到的问题,尽量保障有价值的成果产出。
软件开发复杂度最重要的三个维度:需求、技术和人。之前总以为一个项目是否复杂主要取决于需求的复杂度,其它的两项都会忽略掉,原来技术和人也是不可或缺的两环。技术,软件开发项目可定义为运用先进且不断发展变化的技术解决商业问题,获取竞争优势;即便需求再简单,也可能使用到复杂的技术。人,人是最复杂的,每位开发人员有着不同的技能、智力水平、经验、观点、态度以及偏见,想把团队成员的想法统一、目标一致也是很难的一件事。
Scrum中区分两类人“猪”和“鸡”,猪是对项目承担责任的人,全部精力都投入到项目中,需要给他们赋予权利,使其完成必要的工作,确保项目成功;“鸡”是对项目无责任的人,只会提问题或者出主意,他们无权对项目施加不必要的干涉;只有区分好这两种人,才能提高生产力,创造势头,防止混乱局面。实际项目执行中,项目团队很多时候因为“鸡”的出现,而打乱了自己的节奏,需要时刻保持清醒。
书中所讲的所有的科学原理和实践经验,都将成为我在Scrum实施道路上的指南针,感谢作者的付出!