流程图与甘特图:怎么选,各自不能显示什么

流程图显示步骤、决策和谁做什么;甘特图显示任务需要多久、何时进行。如何在两者间选择,各自省略了什么,何时两者都需要。

流程图和甘特图可以描述同一件工作,却回答不同的问题。前者说明工作怎么走。后者说明需要多久,每个部分何时发生。

简而言之

  • 流程图回答「工作怎么走?」:步骤、决策、负责人。它没有时间刻度。
  • 甘特图回答「多久、何时?」:工期、依赖关系、里程碑和完成日期。它没有决策。
  • 分支和循环属于流程图;日期和关键路径属于甘特图。
  • 可重复的流程用流程图,有终点日期的一次性工作用甘特图。
  • 流程图可以复制为甘特图并复制回来,但带过去的只有结构,没有排期。

两种图,两个问题

流程图关乎工作的顺序和逻辑。它的方框是步骤,箭头说明什么接着什么,菱形是每条分支都标有答案的决策,有了泳道还能看出每个步骤由谁来做。它没有时间刻度。步骤耗时更长,方框不会变宽,箭头也不说明下一步开始之前过去了几天。甘特图则相反:它的条形落在日历上,长度就是任务所需的时间,依赖关系决定开始日期。它没有把工作分送到不同路径的菱形。

按你需要回答的问题来选。「如果发票被拒会怎样?」是流程图的问题,因为涉及分支。「谁来批准?」是泳道流程图的问题。「我们能在季度末之前完成吗?」是甘特图的问题,因为需要工期。「哪项任务拖住了发布?」同样是甘特图的问题,由关键路径回答。「这个流程每次都一样吗?」指向流程图;「这是有完成日期的一次性工作吗?」则指向甘特图。

了解各自不能显示什么,与了解它显示什么同样有用。流程图无法告诉你完成日期、某个步骤有多少余量,或哪些步骤在时间上可以重叠。甘特图无法显示决策或循环:一项任务要么依赖另一项,要么不依赖,往回循环的依赖会被标出并画成虚线,而不会被遵循。它也没办法表达“如果测试失败,回到设计”。如果你的工作有真正的分支,甘特图会悄悄把它们压平成一份直线计划。

大多数真实项目在不同时刻两者都需要。在还在商定工作该怎么走时,把流程画成流程图;一旦知道了步骤,需要把它们放上日历,就建立甘特图。QueryChart 可以把一个变成另一个:把流程图复制为甘特图,每个步骤成为任务,每个箭头成为依赖关系。下面的示例是一份实施计划,这类计划存在于甘特图中,却是从流程开始的。

一份实施计划:同一项工作,以排期的视角来看

五组共十六项任务。这里的一切都关乎时间,没有一处关乎决策。打开电子表格面板,可以看到工期和依赖关系。

  1. 顺序不变,但现在有了长度

    “项目启动”需要 2 个工作日,“需求与差异分析”需要 10 个。“方案设计签署”的长度为 0,所以是里程碑。流程图可以按同样的顺序画出这三个步骤,却画不出中间一个的耗时是第一个的五倍。

  2. 流程图画不出的重叠

    “系统配置”持续 20 个工作日。“数据映射与清洗”从同一个里程碑开始,“试迁移数据”在配置开始 10 个工作日后启动(带延迟的开始到开始关系),并且也要等数据工作。这种重叠,是流程图的箭头无法表达的。

  3. 时间花在哪里

    “系统集成测试”要等配置和持续 18 个工作日的“集成开发”。“用户验收测试”之后是“最终用户培训”,后者可以在验收测试开始 3 个工作日后启动,同时也要等“培训材料”。

  4. 完成日期自己算出来

    “上线就绪评审”是里程碑,然后“最终数据迁移”(3 天)、“切换与上线”(2 天)和“上线后支持”(15 天)排成一条线通向“移交支持”。流程图给不出完成日期;这里的日期由长度和关联算出。

运作方式

  1. 写下问题

    选择图表之前,用一句话写出问题。如果其中含有“如果”“谁”或“会怎样”,就从流程图开始。如果含有“何时”“多久”或“到哪一天”,就从甘特图开始。

  2. 流程尚未商定时先画流程

    如果大家对步骤仍有分歧,先画流程图或泳道图,并在那里解决。移动一个方框,比返工一份建立在错误顺序上的排期便宜得多。

  3. 确认这项工作是计划,而不是流程

    甘特图适合只发生一次、有开始和结束的工作。如果同样的步骤对每张订单、工单或理赔都重复,有用的是流程图,排期的价值不大。

  4. 把商定的步骤变成任务

    把流程图复制为甘特图,或把任务输入甘特图表。然后给每项任务加上以工作日计的长度,并在顺序重要的地方添加依赖关系。

  5. 两张图留给不同的读者

    把流程图共享给做这项工作的人,把甘特图共享给需要日期的人。两者都不必承载对方的信息。

应避免的错误

  • 在甘特图里放决策

    任务不能分支。如果计划取决于某项决策,就在流程图里显示该决策,并为你预期的路径排期,把备选方案写在任务备注里。

  • 把流程图里的箭头当作时间

    流程图里箭头的长短毫无意义。如果读者需要知道某件事要多久,这条信息属于甘特图,而不是一条更长的线。

  • 复制流程图却指望得到排期

    把流程图复制为甘特图时,步骤、箭头和泳道会带过去,但工期和开始日期不会。计划打开时会提示它没有工期,需要你自己输入。

  • 维护两张互相矛盾的图

    流程一变,两张都要更新。把流程图当作顺序的来源,把甘特图当作日期的来源。

打开实施计划

把实施计划作为你自己的图打开,再把它复制为流程图,看看同样的任务去掉排期之后是什么样子。

打开实施计划

相关指南

常见问题

甘特图是流程图的一种吗?

不是。两者都用由连线相连的方框或条形,但流程图显示逻辑,甘特图显示时间。甘特图有依赖关系,但没有决策或循环。

我能在甘特图里显示决策吗?

不能作为分支显示。你可以添加“通过/不通过”这样的里程碑,让后续任务等待它,但图表不会沿不同路径前进。要显示路径,请使用流程图。

我能在 QueryChart 里把流程图变成甘特图吗?

能。把流程图复制为甘特图,每个步骤变成任务,每个箭头变成完成到开始的依赖关系,每条泳道变成分组。工期和开始日期不会复制;需要你自己添加。

反过来呢?

甘特图可以复制为流程图。其依赖关系变成箭头,但排期(开始日期、工期、进度)会被舍弃,进出连线超过四条的任务只会画出四条。

我应该先做哪一个?

如果步骤尚未商定,先做流程图。如果已经商定,并且你需要日期,就做甘特图。

本指南所用的模板

系统上线实施计划甘特图模板 — 可编辑的实施计划甘特图:需求、配置、数据迁移、集成、测试、培训、切换与上线后支持,含依赖关系和里程碑,改工期日期自动跟随。

实施计划甘特图: 计划 → 配置 → 迁移与集成 → 测试与培训 → 上线
流程图与甘特图:怎么选,各自不能显示什么