Team Canvas介绍和实践

Team Canvas介绍和实践

sjmyuan 43 2023-01-26

什么是Team Canvas?

Team Canvas是基于布鲁斯·塔克曼的团队发展阶段模型 设计的。它用于解决团队在形成期和震荡期遇到的问题,例如互信关系的建立,冲突的处理和期望的管理等。它可以帮助团队快速进入规范期。

Team Canvas是一个针对小团队(2-8人)的框架,它可以帮助团队在以下方面达成一致或增进相互了解。

团队层面

  • 团队目标(Goals)

    团队需要达成的目标,它必须是可行的,可测量的,有时间限制的。所有团队成员需要对目标达成一致。

  • 团队角色(Roles)

    团队成员在团队中承担的角色,可以增进团队成员间的相互了解。

  • 团队动机(Purpose)

    团队完成团队目标的动机,可以帮助团队成员理解当前工作的意义。

  • 团队价值观(Values & Norms)

    每个团队成员都会有不同的价值观,团队价值观是所有团队成员价值观的交集,是指导团队工作的最高准则。

个人层面

  • 个人目标(Own agendas)

    个人在当前团队想要达到的目标,它可以帮助我们确定当前团队是否合适我们。

  • 个人强项(Skills & Assets)

    个人可以为实现团队目标所做的贡献,可以让我们了解团队的所有可利用资源

  • 个人弱项(Weak Spots)

    个人感觉能力薄弱的地方或团队存在的风险,可以让我们了解团队所缺失的能力,并有针对性的采取行动。

  • 个人需求(Needs)

    个人在团队中需要帮助的地方,可以充分利用团队资源帮助其完成个人目标。

另外团队规范(Formal & Informal Rules)贯穿于团队和个人层面,它规定了一些正式或非正式的规则,团队成员需要基于这些规则进行日常工作。

Team Canvas的生成通常以工作坊的形式进行,需要尽可能多的团队成员参与进来。针对不同的场景,有两种版本可供选择。

基础版

基础版包含了团队运作需要达成的基本共识,包括团队目标,团队价值观和行为规范。它通常在新起项目,有新成员加入或团队对Team Canvas不太熟悉时使用。整个工作坊的时间大概需要半个小时。

完整版

完整版包含了Team Canvas的所有信息,通常在建立一个新团队时使用。与基础版的区别是

  • 显式的区分了团队目标(COMMON GOALS)和个人目标(PERSONAL GOALS)
  • 增加了个人强项(STRENTHS & ASSETS),个人弱项(WEAKNESS & RISKS)和个人需求(NEEDS & EXPECTATIONS),并将基础版中的技能(SKILLS)合并到了个人强项。

整个工作坊的时间大概需要两个小时。

如何组织Team Canvas工作坊?

触发点

在遇到下述场景时,可以考虑使用Team Canvas工作坊

  • 创建新团队
  • 启动新项目
  • 加入新成员
  • 团队成员对团队目标,团队价值观和行为规范理解不一致

准备

线下

  • 足够容纳所有团队成员的会议室,基础版需要预定半个小时,完整版需要预定2个小时。
  • 足够大的白板或会议室墙面,可以画下Team Canvas框架。
  • 足够多的贴纸和笔。
  • 提前向团队成员讲解Team Canvas的内容。

线上

  • 创建可以进行团队协作的线上白板,并准备好Team Canvas框架,例如MuralMiro
  • 预定线上会议并将白板链接放入会议邀请,基础版需要预定半个小时,完整版需要预定2个小时。
  • 提前向团队成员讲解Team Canvas的内容。

主持工作坊

这里以完整版为例,工作坊的流程如下

介绍流程 - 3分钟

这里主要介绍整个工作坊的流程及各个模块的具体含义。

填写团队角色 - 2分钟

如果团队成员承担了多个角色,可以用多个贴纸表示不同的角色。

问题示例

  • 我叫什么名字
  • 我在团队中担任什么角色

填写示例

  • 张三,开发
  • 李四,PM

填写团队目标 - 5分钟

问题示例

  • 我们作为一个团队要达成什么目标?
  • 这个目标是可行的,可测量的,有时间限制的么?

填写示例

  • 在6月1号发布xx产品。
  • 在3月底将成本降低30%。

讨论团队目标 - 10分钟

这里需要确保有客户,BA或PM等对团队目标有较大影响力的角色参加,否则可能会得到错误的团队目标。

填写个人目标 - 5分钟

问题示例

  • 我希望在团队中实现哪些个人目标?
  • 我是否希望其他成员了解我的个人目标?

填写示例

  • 精通函数式编程
  • 熟悉流媒体技术栈

填写动机 - 5分钟

问题示例

  • 我们为什么要实现这个团队目标?
  • 它的意义是什么?

填写示例

  • 给更多的人带来便利
  • 让更多的人快乐

填写团队价值观 - 5分钟

问题示例

  • 我们工作的指导原则是什么?
  • 我们希望团队成员有哪些优秀品质?

填写示例

  • 有责任心
  • 积极主动
  • 相互信任
  • 追求完美

讨论团队价值观 - 10分钟

价值观是每个人的核心原则,这里不是讨论价值观本身的好坏,而是作为一个团队找出我们最为看重的价值观。这里我们可以采取投票的方式进行。

填写个人强项 - 5分钟

问题示例

  • 我有哪些技能可以帮助团队达成目标?
  • 我有哪些软技能?
  • 我擅长什么?

填写示例

  • Java
  • 英语
  • 沟通

填写个人弱项 - 5分钟

问题示例

  • 我有哪些弱点或短板?
  • 我希望团队知道我的哪些偏好?
  • 我看到了哪些团队问题需要去解决?

填写示例

  • 我不喜欢函数式编程
  • 我不擅长TypeScript
  • 我不喜欢结对编程

填写个人需求 - 5分钟

问题示例

  • 我需要团队做些什么来帮助我实现个人目标?
  • 我希望团队增强哪方面的能力?

填写示例

  • 组织TypeScript培训
  • 提高沟通能力
  • 提高代码审查速度

填写行为规范 - 5分钟

问题示例

  • 我们该如何做决定?
  • 我们该如何解决分歧?
  • 我们该如何沟通?

填写示例

  • 以ADR的形式决定架构相关的问题
  • 对事不对人
  • 不抱怨任何人
  • TL需要和团队成员每个月进行一次单独沟通

讨论行为规范 - 15分钟

行为规范是帮助团队到达规范期的一个重要输出,它为团队的日常工作提供了指导,是需要花费大量时间讨论的部分。

总结 - 10分钟

回顾整个Team Canvas的输出内容,针对团队感兴趣的问题做更详细的讨论,这里不局限于团队目标,团队价值观和行为规范这三个模块。

后续

  • 将Team Canvas存档,方便团队成员随时查看。
  • 将团队目标,团队价值观和团队规范形成单独的文档,用其指导团队后续的日常工作。
  • 针对个人需求制定计划,满足其需求。
  • 针对团队当前能力与实现目标所需能力的匹配程度,制定团队能力提升计划。
  • 关注个人目标与团队资源不匹配的成员,管理其期望或帮助其找到更加合适的团队。

实践中遇到的坑

版本选择错误

我在团队中第一次主持Team Canvas工作坊时选用了完整版,但大家对Team Canvas都不熟悉且我们更关心的是团队目标,团队价值观和行为规范这几项,所以在团队接触Team Canvas初期使用基础版会使问题更加聚焦,效果会更好。当大家熟悉整个流程后可以引入完整版。

会议时间不足

对于完整版,我只定了一个小时的会议,导致很多模块的时间很紧张,没有给团队成员足够的时间进行思考和讨论,最后输出的内容也不是很理想。

没有提前介绍Team Canvas

在会议开始时,大多数团队成员是第一次听说Team Canvas,我花了大量的时间介绍它的理论基础和作用。如果能在会议开始前完成这部分,工作坊会进行的比较顺利。

讨论不足

大家可能注意到,我们只对团队目标,团队价值观和行为规范进行了讨论,其他部分都是只填写不讨论。这就会给团队成员带来很多困惑,既然不讨论我们为什么要写呢?为了消除这种困惑,我们一定要在最后总结时回顾所有的输出内容,并邀请团队成员对任何感性趣的问题进行讨论。