敏捷项目组合管理

敏捷实践可以在跨多个团队且大量开发人员的组合中发挥作用吗?答案是:完全可以。Netflix 公司创造了“高度一致,松散耦合”这个词语,用来描述一个大型组织在敏捷项目组合管理下,所达到的一种状态。下面我们将结合具体场景,来分享实现敏捷项目组合管理的一些方法和特征。

一、打造适合的企业文化

在团队管理的过程中由于抓手太多,往往很多高层管理者对自己的角色定位都是模糊的,不知道自己的角色是什么。但作为战略和方向的推动者,高级管理层主要的角色应该是整个组织的敏捷方式关键主导者。在跨产品的敏捷项目组合开发中,战略和方向会统一称为“主题”:指的是一段时间内定义的大面积重点工作。主题可帮助多个团队致力于一个业务计划,有效协作并实现组织的目标。

Tips:在成功的敏捷项目组合中,高级管理层还应该培养一种透明且开放的文化。

打造公开透明文化的好处还在于:可以最大限度的减少公司内部办公室政治所带来的的负面影响。公司更容易找到正确的解决方案,使团队持续前进。

二、在整个组织内扩大敏捷实践

在大规模敏捷项目组合管理的实践中,成功的公司都有以下三个共同特点

首先,整个项目规划是迭代的

传统的项目组合管理侧重于自上而下的规划,工作安排通常跨长时间周期,但在敏捷项目组合管理中,是每个敏捷团队在每个迭代周期内构建“实践-复盘-改进”的循环模式,并且在成熟以后复制应用于更大规模的团队。长期敏捷项目计划是由团队合作完成的,通过模块化的设计,并且定期进行更新共享。每个团队都有权力在工作范围、执行时间和分配资源方面进行权衡,将工作重点从继续执行不灵活的既定计划,转变为做出对业务战略和目标有价值并能帮助取得切实进展的计划中。

第二,成功的团队都倡导沟通交流

大家通过分享问题、经验和所学知识来打破信息孤岛,与团队级别的敏捷方式类似,需要在整个组织内不断的分享,以便目标、进展及阻碍对所有人都是透明的。通过这样的方式无论您在组织中的角色是什么,都可以促进同事之间的相互尊重,并且从根本上鼓励大家相互理解和相互交流。

第三,大多数的敏捷项目组合管理都是频繁发布的,即使一次发布涉及多条产品线的工作

在统一的迭代周期中,利用强大的 API 和技术解耦支撑,高效的自动化测试和部署通道,都能够帮助团队确保交付的时间、内容、质量,实现持续交付的可见性。

三、聚焦同一个目标,但接受多元化

与单团队级别的敏捷开发一样,敏捷项目组合管理开发中的工作的委派对象是团队而不是个人。每个团队都应该了解组织的总体目标,并且针对该目标提出自己的想法,从而站在多样化的角度优化流程和交付。

例如,故事点是估算团队工作的一种常见方式,如基于斐波那契序列的数值(0.5、1、2、3、5、8、13、20、40、100)。可能团队A对某个故事点估算是8,而另一个团队可能有不同的见解。这种情况下,高级管理层不应该只用数字来衡量团队速度。他们必须明白,由于每个团队对故事点数值的诠释不同,而每个团队的速度也都是独一无二的。

同样,不同的敏捷团队在发布方面也有不同的文化。

Scrum团队通常在每个迭代(Sprint)结束时发布软件,而看板团队则是持续发布,或者在产品所有者要求将构建推送到生产时进行发布。敏捷项目组合管理面临最大的挑战之一是一次性发布大量的代码,换句话说,敏捷项目组合管理需要尽量避免这种情况的发生。毕竟每次发布时都需要整个工程团队都参与进去是不利的。

而通过使用模块化设计,将代码分离成独立的发布流,大大提升了不同部门之间的灵活性和自主性。模块化设计可以大幅度减少每次发布的风险,由于每次发布时改变的代码都比较少,使得事后诊断和修复问题时也变得更加容易。

自组织也应该延伸到敏捷项目组合管理的工作流程中。负责不同业务工作的团队可能有不同的工作流程,即使是两个部门都遵循迭代开发和定期回顾等敏捷管理的原则,比如一个软件研发团队的工作流程与一个营销团队一定是不同的,或者两个团队也可能会将其工作流程划分为不同的状态。这并没有坏处,因为这种多元化为大型敏捷项目组合管理提供多元知识共享的好处。实践意味着您可以通过组织内的共享从而学习到更多的知识。

四、敏捷的规模化

大规模敏捷项目组合管理意味着在整个组织中推广敏捷实践。敏捷文化有一种类似放大镜的效应:只要遵循和共享其核心原则,它自然就会向上和向外扩展。但是,敏捷项目组合管理的成功与否取决于其最薄弱的团队——短板效应。为了确保其成功,高层管理者必须协调所有团队共同合作从而建立起一个健康稳定的敏捷文化。 

本文是否对你有用?

内容导航