为什么实施敏捷流程仍然需要项目管理?敏捷项目管理的必要性

日事清介绍

日事清 是北京创仕科锐公司出品的一款团队管理软件。可以对研发团队的“需求”、“BUG”、“任务”,进行管理,做需求管理、缺陷跟踪、任务管理等。因为日事清提供了Scrum视图和Kanban视图,所以特别适合敏捷开发团队使用。10人以下团队的可以免费使用。


关于敏捷流程的一个常见误解是——敏捷不需要灵活的项目管理,敏捷项目是自己运行的。很容易看出来,是敏捷过程利用自组织团队、快速的迭代节奏以及对详细计划的重视程度,导致这种看法。

 

最近,一家正在实施敏捷的公司的项目经理被转移到另一个区域,因为“敏捷不需要管理。”但是,敏捷流程仍然需要项目管理。在本文中,我们将了解原因和管理类型。

 

敏捷项目管理的必要性

 

项目管理对于大多数项目的成功至关重要,甚至是敏捷过程之后的项目。没有管理,项目团队可能会追求错误的项目,可能不包括个性或技能的正确组合,可能会被组织失能阻碍,或者可能无法提供更多的价值。我们开始这些管理职责正式。在这个过程中,我们希望他们对那些开始实施敏捷过程的人变得更清晰,而不会让那些人失去对所有敏捷过程的人、协作和交互的感觉。

 

敏捷项目管理和共享愿景

 

要使团队在敏捷开发中取得成功,必须建立共同愿景。这个愿景不仅要在开发团队的开发人员之间共享,还要与公司内部的其他人共享。大多数「计划驱动」的流程也提倡共同愿景的需要; 但是,如果该愿景没有传达或不精确或不变,那么项目总是可以依赖于其详细(但不一定准确)的任务和程序清单。敏捷项目并非如此,敏捷项目参与者使用共享愿景更积极地指导他们的日常工作。

项目愿景的形成不是敏捷项目经理的责任; 通常,愿景直接来自客户或客户代理,例如产品经理。然而,项目经理通常参与将客户的远见提炼成一个对项目中每个人都有意义的计划。

然而,敏捷计划的目的不是基于甘特图的详细的指挥和控制计划,而是制定一个投入愿景,管理层可以据此评估和经常调整其投入,而是制定一套共同的计划,并从中产生适应和协作,以及衡量进展的预期。

 

敏捷项目管理与障碍

 

想象你自己在一个温暖的夏日里骑着自行车在马路上骑车。骑行结束后,你可能会回首过去,觉得自己没有什么惊喜;但是,当你骑行时,你可能不得不避开一些障碍物:路上的玻璃、狭窄的肩膀、前面左转的汽车等等。这些障碍物中的大多数很容易通过一点预先考虑和向前看的方式避免。你不需要提前计划整个行程(“上午9:43,记住避开95号街的坑洞”),但是注意和扫视道路有助于避免障碍物,甚至避免正面碰撞。参与一个敏捷项目的方式基本上是一样的:有一点前瞻性和前瞻性,对改善旅程有很大的帮助。

 

大多数敏捷过程都规定了在“迭代”或“冲刺”期间创建一小部分特性的高度集中的工作,之后团队会快速重新组合并决定下一个迭代或冲刺的特性集。当迭代正在进行时,团队成员应该只关注当前的迭代。

 

虽然这种清晰的焦点在当前迭代期间导致更高的生产率,但它可能会导致一些「台球效应」,因为一个迭代的结论可以反弹为下一个迭代的开始。项目经理花费少量时间提前展望下一次迭代,是抵御这种影响的极佳缓冲。例如,许多组织都有旅行限制,要求提前两周购买机票。如果一个团队可以在即将到来的迭代过程中从远程定位的员工中获益,那么在当前迭代过程中就可以为其计划时间。

 

另一种障碍可能是团队成员。

 

虽然极限编程和Scrum等敏捷流程依赖于自组织团队,但敏捷项目经理不能简单地让团队在项目上放松。敏捷项目经理必须仍然监控公司政策或项目规则是否得到遵守。参与敏捷团队并不能将所有开发人员变成模范员工。在大多数情况下,团队本身会对工作不够努力或表现出其他绩效或行为问题的员工采取某种形式的制裁。然而,在最严重的情况下,集体团队通常不能终止或正式谴责员工。绩效反馈总是可以用团队对团队贡献的观点来表达(例如,“我已与团队成员讨论过这个问题,我们认为你在单元测试中并不够谨慎”。但是,如果需要咨询或辅导课程,通常最好只在项目经理和团队成员之间进行。

 

敏捷项目管理和组织功能障碍

 

许多公司至少有一个功能失调的区域。这可能是“家具警察”(被认作当然的人(或事物),他们不会让程序员重新安排家具以方便结对编程。或者它可能是一个需要六周时间来处理标准软件订单的采购组。在任何情况下,这些类型的疯狂都会妨碍项目成功。项目经理可以被看作是负责快速解决这些问题的推土机。

 

Scrum流程包括每日站会,在此期间向所有团队成员提出三个问题。其中一个问题是“你在做什么妨碍你的工作?”敏捷的项目经理自己去消除这些障碍。理想情况下,他或她变得如此熟练,以至于障碍总是在24小时内(即在下一次每日会议之前)被移除。

 

参与足够敏捷的项目,你会开始听到一次又一次提出的相同障碍。例如:

 

  • 我的____破了,今天我需要一个新的。

  • 我订购的软件还没有到货。

  • 我不能让____小组给我任何时间,我需要与他们见面。

  • 部门副总裁要我临时“做一两天”的工作

 

项目经理负责优化团队生产力; 这意味着他有责任尽一切可能减少障碍。大多数组织不希望每个打电话给订购部门的开发人员跟进软件的交付日期。同样,一个项目经理,如果知道什么时候推动IT经理快速安装一台新的PC,什么时候不推动(也许为以后节省一点好处),将比每个程序员都去找同一个IT经理的更有效。

 

敏捷项目管理与政治

 

几乎每个组织都在发挥政治作用。大多数组织只有有限的资金可用于一系列竞争项目和新项目构想。项目竞争预算资金(团队规模,工具等),人员(每个人都想要最好的程序员),资源(时间或访问大型数据库服务器)以及更高级别经理的关注。由于政治原因,太多项目失败了。项目经理使用各种敏捷机制来最小化政治并使所有内容保持可见和明显。

 

例如,项目经理与客户合作,确保产品积压(Scrum)或故事(XP)可见,并且每个人都明白它会指导团队获得最有利可图和最有价值的工作。项目经理使用产品增量和工作功能演示,让每个人都意识到目标、承诺和愿景的实际进展,从而最大限度地减少谣言、错误信息和其他政治操纵武器的机会。项目经理与客户合作,帮助客户和组织评估结果而非报告。

 

敏捷项目管理结论

 

Robert Greenleaf介绍了“仆人式领导者”的概念。也许这是敏捷项目经理最合适的思考方式。在一个敏捷项目中,项目经理不会管理项目,因为他既服务又领导团队。通常情况下,敏捷项目经理也可以作为项目团队的贡献者(无论是编写或运行测试,编写代码或文档等)。

 

「计划驱动」的软件方法使用命令和控制方法来进行项目管理。创建一个列出所有已知任务的项目计划。项目经理的工作随后成为执行计划的工作之一。对计划的更改通常通过“变更控制委员会”来处理,这些变更控制委员会要么拒绝大多数变更,要么建立足够的官僚机构,以使变化率减慢到计划驱动的方法可以容纳的速度。在这个模型中不可能有仆人式领导。项目经理管理:他们指导,管理和监督。

 

另一方面,敏捷项目管理更多的是关于领导力而不是管理层。敏捷项目经理没有创建一个高度详细的计划来显示所有活动的顺序,而是与客户一起制定一套通用的理解,从中可以出现、适应和协作。敏捷项目经理提出愿景,然后培养项目团队,尽最大可能实现计划。由于敏捷项目经理代表项目以外的项目,他(她)是项目负责人。然而,项目经理在项目中扮演着同样重要的角色,同时充当团队的仆人,消除他们的障碍,通过言语和行动强化项目愿景,与组织功能失调作斗争,并尽一切可能确保团队的成功。敏捷项目经理是项目团队的真正教练和朋友。