您的位置:首页 > 其它

优秀的敏捷项目经理是项目成功的尚方宝剑

2013-07-25 00:44 176 查看
敏捷项目经理还应当具备以下三种能力:辅助客户的产品负责人将企业愿景转换成开发团队能够理解的语句(例如,运用价值工程(Value Engineering)的方法创建并维护排序后的产品Backlog);帮助Scrum Master确保产品负责人正确行使权利(译注:帮助Scrum Master顶住来自客户的压力);协助Scrum Master确认客户和开发团队的工作都符合敏捷流程。

敏捷项目经理如何工作

想要完全了解敏捷项目经理的工作,我们可以举一个财富50强制药公司的例子。公司有过一个软件开发项目,该项目由包含Scrum Master的近岸开发团队负责,团队遵循Scrum原则逐步完成Backlog项。这个团队包括不同背景的三名开发人员(有擅长写代码的,有擅长网站设计的,有擅长数据库的等等),一名测试员及一名软件架构师。我们将敏捷项目经理与产品负责人共同看作项目的“核心成员”,他们在同一地点办公,但与开发团队分处不同的区域。整个项目历时66天,由5个迭代组成。

项目首先由团队称作“Sprint 0”的4天热身阶段开始。在这阶段中,团队一边评审客户创建的需求文档及估计的时间线,一边耐心等待客户讨论决定应用的基础设施。“Sprint 0”阶段的一个目标是通过客户、敏捷项目经理及开发团队之间的充分讨论,理清业务逻辑的问题,保证大家在这方面达成共识。

在此后为期16天的Sprint中,敏捷项目经理在协调日常沟通方面扮演着举足轻重的角色。这包括为团队妥善安排主持每日例会,安排好与客户的晨会,检查Backlog确保每项工作都能按时按质完成,辅导Scrum Master预见可能的未知障碍。诚然,典型的Scrum项目认为开发团队有能力追踪Backlog并按时完成任务。但在这个项目中,近岸团队发现由于客户与团队之间的地域阻隔,设敏捷项目经理这样一个角色在追踪项目任务完成状态方面更能发挥优势。

我要指出的重要一点是,正如传统的Scrum Master一样,在这个项目中敏捷项目经理也不会亲自完成任何一项任务,我们的开发团队有自我组织的能力处理所有分配的任务。例如,Backlog中的有些任务非常复杂当开发人员感到单靠自己能力无法完成时,开发人员会自发地向软件架构师寻求帮助。同样,开发人员在除了本职工作外还会完成诸如单元测试,系统测试及回归测试(互相测试对方的代码)等额外的工作。他们自愿帮助测试人员完成原本属于测试范畴的工作。这表明团队能够相互照应并意识到“边际力量”的重要性,并为着达成组织架构层面上的敏捷程度而共同努力。

每个Sprint的第一天通常会包含一个计划环节。在该环节中,开发团队会把从产品Backlog中得到的用户Story分解成任务,评估这些任务所需时间,并领取任务。客户会同敏捷项目经理以及开发团队共同讨论每个Sprint的目标,然后开发团队会把这些目标写在办公室的白板上。

之后的14天内,团队除了埋头进行开发外,还需要参加每天早上的15分钟Scrum立会。在立会上,敏捷项目经理会通过网络摄像头逐一跟团队评审3个内容:前一天完成的工作,当天要完成的工作,以及任何会阻碍团队实现Sprint目标的障碍。除此之外,敏捷项目经理每天还要参加另一个30分钟的电话会议,与产品负责人讨论立会中出现的阻碍及解决方案。每个Sprint的最后一天将是历时1个小时的演示单元,开发团队会向客户及项目干系人展示此次Sprint开发的功能。

扫平地域边界、实现完美沟通

由于开发团队和客户身处不同的区域(在这个案例中,开发团队在巴西,而产品负责人在美国新泽西),敏捷项目经理将对最终的Sprint目标负责。需要指出的是,由于在这个案例中项目采用的是与客户只有1个时区的近岸团队,这使得敏捷项目经理的工作相对容易。如果我们考虑8小时以上时差的离岸项目,那么对敏捷项目经理的挑战将更大。为了更好地沟通,团队设立了不少实时会议和即时通单元,还启用了用户提供的一条800电话会议专线。

由敏捷项目经理牵头的有效沟通实现了项目的高效性。在一个高效的团队中,每个开发人员都认同沟通的重要性,并保持着与客户进行密切沟通的习惯。由此保证顺畅的沟通贯穿项目始末,确保了双方的精力都放在实现正确的业务目标上。团队自身的优秀沟通能力以及敏捷项目经理的推波助澜,保证了项目双方的有效沟通。近岸团队能够在所有的Sprint中始终保持正确方向并按时交付所需的特性功能。

以史为镜、渐入佳境

之前曾提到过,敏捷项目经理将负责辅导Scrum Master和开发团队。在整个项目中,敏捷项目经理自始至终主导着项目进程并负责指导团队在每个Sprint结束时进行回顾。回顾单元的目的在于通过审视这次Sprint中团队做得出色及不足的地方,寻求更好的工作方式。在Scrum框架中,我们认为自我学习的过程与交付最终产品同样重要。

作为回顾单元的成果,开发团队能够从过去经验中得到提升,从而提高自己在客户中的声望,渐入佳境。同时也为其他软件开发团队提供了可参考的工作流程框架,并能够成为其他团队的基准。此外,由于团队频繁地与客户进行回顾,他们也更容易影响客户做出对团队及项目有利的决定。这在相当程度上避免了在不必要的讨论上花额外的时间——而减少这样的花销在高竞争性的开发市场上非常关键。

在开发团队提升客户声望的同时,他们也提升着自身的团队士气,这对敏捷及高效团队来说也很重要。团队开始对自己的工作充满自信,并愿意尝试通过新的方法实现某些任务,这包括对软件相关的业务流程提出改进建议。

成功

这个项目除了让客户感到非常满意之外,团队自身也得到了提高。在敏捷项目经理的成功领导以及合理运用Scrum方法的双重作用下,团队很少在“闭门造车”浪费时间,并能及时获得反馈信息。同时,团队能够集中精力在项目的关键组件,并能依据业务价值设置合理的优先级交付产品。正因为团队与客户每天都有交流,客户非常清楚将要交付的正制品及其带来的商业价值。敏捷项目经理还会协助产品负责人一起准备高层需要的报告,向高层解释项目的价值所在。

回顾整个项目,团队意识到,如果没有敏捷项目经理的领导,这个项目很难成功。如果没有敏捷项目经理促进彼此沟通,团队很有可能无法及时发现潜在的问题。而这些问题极有可能演变为更大的问题,导致项目返工甚至延期。如果没有敏捷项目经理保证团队和客户朝着同样的业务目标迈进,双方很可能各自为营,劲儿使不到一处。这将最终导致团队交付的产品并不是客户所想要的,或是交付过程极为低效。

综上所述,Scrum方法的运用及敏捷项目经理的存在是项目成功交付的尚方宝剑。正因敏捷项目经理与高层的日常沟通,项目干系人很容易追踪项目状态,考察团队能力并对可预见的障碍做出及时快速调整。这种双向的密切沟通也会反过来提升客户对团队的信心。总而言之,高效团队与敏捷项目经理的组合保证了项目能够渐入佳境,最终交付给客户有价值的产品
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: