zoukankan      html  css  js  c++  java
  • 《SCRUM敏捷项目管理》书评

    scrum.gif双方前锋紧紧地站在一起,裁判哨声响起,球被掷出,双方球员奋力拼搏,反复地冲刺,竭尽全力向自己的目标冲去。这是英式橄榄球中Scrum的场景。然而这样的活动,却被Ken Schwaber和 Jeff Sutherland巧妙地借助隐喻的方式引入到敏捷项目管理中,仔细思索,却又如此的恰如其分。在橄榄球运动中,固然需要强健的体魄与迅捷的速度,但更重要的却是组织、协作、交流,以及一位优秀的指挥官。虽然二者的方式不同,然而赢得比赛与成功交付产品的目标其实是完全一致的。

    Scrum是一种灵活的软件管理过程,它可以帮助你驾驭迭代、递增的软件开发过程。Scrum方法最初实践于Easel公司,现已被数十家公司数百个项目开发中应用,适用于需求难以预测的复杂商务应用产品的开发。作为一种项目管理方法,Scrum与其它方法颇有不同之处,规则与名称也自成一套体系。在Scrum管理活动中,包含三种不同的角色:Scrum Master,Product Owner,Team。Scrum的每一次迭代被称为Sprint,意为“冲刺”,生动形象地展现了项目开发活动的迭代过程。Scrum将功能需求称之为Product Backlog,它们通常是由Product Owner提出。Product Backlog会在Scrum Master主持的Sprint Planning Meeting中确定,并在确定了Sprint之后,形成Sprint Backlog。Scrum非常重视团队成员的交流,除了Sprint Planning Meeting之外,还要求召开Daily Scrum Meeting,以及Sprint Review Meeting与Sprint Retrospective Meeting。

    虽然Scrum从名词的定义上来看,显得有几分离经叛道,但其本质仍然秉承了敏捷开发思想。重视成员的交流、功能需求的确定、迭代版本的交付、项目风险以及产品质量的控制。Scrum提供了一种经验方法,它使得团队成员能够独立地、集中地在创造性的环境下工作。Scrum过程是敏捷的、自组织的,产品的开发则是增量的迭代交付方式。

    zcover.jpg《SCRUM敏捷项目管理》一书全面细致地介绍了Scrum方法。作为Scrum的创始人与倡导者,作者Ken Schwaber将自己多年以来实施Scrum方法的经验、体会、教训浓缩在这本仅有163页的薄薄小书中,真可谓是字字珠玑。全书只有9个篇章,却涵盖了Scrum的方方面面,包括Scrum方法概述,Scrum角色的职责,如何从混沌中提炼Product Backlog以及如何划分Backlog的优先级,如何制定Scrum项目计划,跟踪项目计划的执行,以及如何在大规模项目中应用Scrum方法。书中的附录A更是Scrum方法的精华,总结了实施Scrum方法必须遵循的基本原则。

    全书并没有长篇大论的理论分析与描述,而是通过一个个真实典型的项目案例,逐步为我们展现了Scrum的适用场景与实施细则。以实践指导实践,是本书最大的亮点,从而使得本书摆脱了通常所谓的项目管理书籍的那种沉闷与枯燥,以及空中楼阁般的不切实际。这得益于作者娓娓道来的深厚文字功底,更重要的是作为敏捷联盟的创始人之一,作者深谙敏捷之道,能够目光敏锐地发现传统项目开发的瑕疵;而作为Scrum的倡导者,对于Scrum方法的实施早已达到游刃有余的境界。因此,本书可以说是ken的厚积薄发之作。

    Ken善于以案例启发读者。Scrum提供了一种经验方法指导团队成员独立、高效地完成项目开发,而本书则以项目实践指导读者从阅读中获取经验。全书的每一章几乎都提供了“Lesson Learned”小节,从而加深读者对Scrum方法的理解。

    理解Scrum方法并不困难,最大的困难在于如何正确地在项目开发中应用Scrum方法。即使是富有经验的Scrum Master,在面对不同的场景,也需要做出不同的抉择。正如书中所述:“The ScrumMaster applies Scrum theory to projects with different types and degrees of complexity.”项目的类型不同,复杂度不同,则应用的Scrum方法就会有所区别。

    以书中列举的Tree公司的项目为例,就需要成立XML Team,WebPub Team以及多个Journal Team。而在Journal Team中,Scrum Master并没有固执地按照Scrum原则安排7个成员,而是由9个成员组成,其中包括了兼职的XML成员与WebPub成员。

    在MegaFund项目中,为了合理地分解任务与团队,在提炼Product Backlog时,则将非功能性需求的优先级提高到功能性需求之前。这样的调整,同样是根据项目的特点而定。

    Scrum方法的优势在于它的设计自始至终具有很强的适应性。如何在自己的项目开发中准确地应用Scrum,让自己成为合格的ScrumMaster,让团队的需求分析师或者客户成为合格的Product Owner,让自己的团队成为合格的Scrum Team,相信你从本书能够找到扣开Scrum之门的钥匙。本书无法使你在一夜之间就成为一名优秀的Scrum大师,但本书作者Ken Schwaber却可以给你高屋建瓴般的整体指导,使你迅速成长。毫无疑问,《SCRUM敏捷项目管理》已经给你指出了一条掌握Scrum项目管理的终南捷径了。

  • 相关阅读:
    Java 中的悲观锁和乐观锁的实现
    乐观锁和悲观锁的区别
    理解RESTful架构
    修复Linux下curl等无法使用 Let's Encrypt 证书
    呕心沥血 AR VR 好资源分享
    linux服务器出现大量TIME_WAIT的解决方法
    Ubuntu系统 无法删除 redis-server
    Python Flask jsonify a Decimal Error
    微信小程序 订阅消息 对接详细记录
    FTP时显示500 Illegal PORT command的解决
  • 原文地址:https://www.cnblogs.com/wayfarer/p/918736.html
Copyright © 2011-2022 走看看