V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
itskingname
V2EX  ›  分享创造

项目管理必备——使用燃尽图监控项目整体进度

  •  2
     
  •   itskingname · 2018-12-23 19:53:42 +08:00 · 2700 次点击
    这是一个创建于 1951 天前的主题,其中的信息可能已经有所发展或是发生改变。

    《跳出任务管理的泥沼,拥抱甘特图的怀抱》一文中,我谈到了使用甘特图来规划任务。甘特图更多的关注每一个任务的进度上。那么如果我希望了解项目整体的进度,应该如何选择呢?此时就需要引入另一个简单又强大的工具:燃尽图( Burn down chart )。

    什么是燃尽图

    假设项目 X 有 5 个任务,我们在预估这些任务的时候,时间安排如下:

    |  项目名称 | 预计用时(小时) |
    | --- | ---  |
    | 任务 1 | 5 |
    | 任务 2 | 6 |
    | 任务 3 | 7 |
    | 任务 4 | 4 |
    | 任务 5 | 3 |
    

    这个任务预计需要 25 小时完成,考虑到可能需要处理各种突发事件留出机动时间,因此,我需要在 7 天内完成这个项目,项目时间定为:2018-12-01 到 2018-12-07。

    在非常理想的情况下,平均分配工作时间,到 2018-12-07 这一个公作日结束时刚刚好完成任务。此时的时间消耗,绘制为折线图如下图所示。

    纵坐标为任务剩余时间,横坐标为日期,

    然而,在实际情况中,可能有些任务能提前完成,有些任务时间又需要延迟,实际上的剩余时间和日期的折线图可能如下图橙色曲线所示。

    这就是燃尽图。非常简单又非常直观。

    从这一幅燃尽图中,我们可以看到:在 2018-12-01 到 2018-12-05 时,我们的开发进度是领先于计划的,看起来任务应该能够提前完成,橙色曲线斜率负得越多,越陡,表示实际开发进度领先得越多。然而从 2018-12-03 开始,开发速度下降,到 2018-12-06 时进度和预期时间重合。到 2018-12-07,开发进度落后于预期,任务无法如期完成。

    我们再来看几个例子:

    • 按时完成任务:

    按时完成任务

    • 提前完成任务

    提前完成任务

    • 没有完成任务

    没有完成任务

    • 前期落后进度,后期加速赶上

    前期落后进度,后期加速赶上

    如何绘制燃尽图

    燃尽图是敏捷开发中的一个概念,不少敏捷开发的相关的项目管理系统中都能够生成燃尽图。由于燃尽图非常简单,使用 Excel 自带的画图功能,稍稍费一些功夫也能够正常生成。

    本着使用 Python 提高日常办公效率的考虑,我使用 macOS 自带的 numbers 表格工具 + Python 来生成燃尽图。当然你也可以使用 Excel 来完成。其中表格用于记录任务的剩余时间,Python 用于格式化任务时间并生成燃尽图。

    表格的填写规范

    其中表格如下图所示:

    其中,表格的第一行是任务名称,第一列是日期。表格中间填写的数字,表示任务的剩余时间。表格的填写规则如下:

    • 某一格留空,表示这一天没有做这个任务。
    • 某一格为 0,表示任务完成。
    • 某一格为大于 0 的数字,表示任务剩余的时间。
    • 不需要提前填写没有发生的日期。例如任务安排为 2018-12-01 到 2018-12-07,今天是 2018-12-06,那么不需要提前填写 2018-12-07 这一行。
    • 请按照日期正序排序,不要打乱日期。

    分析程序的使用说明

    填写好表格以后,把它保存为 excel 的 xlsx 文件。假设路径为:/Users/kingname/Desktop/test.xlsx(或者 Windows 系统保存在:D:\work\test.xlsx)。

    使用 Anaconda 中的 Jupyter 打开分析程序的 ipynb 文件,如下图所示:

    只需要修改这三行数据中,单引号里面的内容,其余内容不需要修改。

    修改完成以后,点击工具栏的Kernel-Restart & Run All,如下图所示。

    静静等待 2 秒钟,燃尽图将会出现在页面的最下方。如下图所示。

    获取 Excel 模板和源代码

    Excel 与 ipynb 文件地址:https://github.com/kingname/Automatic/tree/master/burndown_chart

    使用 Jupyter 打开 ipynb 文件可以看到分析程序。

    7 条回复    2018-12-24 22:33:24 +08:00
    itskingname
        1
    itskingname  
    OP
       2018-12-24 13:25:59 +08:00
    真是太奇怪了,每次我发的文章,一大堆人收藏,却没有人评论.
    PottiK
        2
    PottiK  
       2018-12-24 15:26:19 +08:00
    我来评论
    lycbug666
        3
    lycbug666  
       2018-12-24 16:04:01 +08:00 via iPhone
    感谢分享,回去尝试一下。
    itskingname
        4
    itskingname  
    OP
       2018-12-24 16:04:59 +08:00
    @PottiK 总算有人评论了。
    RqPS6rhmP3Nyn3Tm
        5
    RqPS6rhmP3Nyn3Tm  
       2018-12-24 21:09:34 +08:00 via iPhone
    淦,又是 burndown chart
    每次考试都花错扣分
    itskingname
        6
    itskingname  
    OP
       2018-12-24 22:17:40 +08:00 via iPhone
    @BXIA 你错在哪里
    RqPS6rhmP3Nyn3Tm
        7
    RqPS6rhmP3Nyn3Tm  
       2018-12-24 22:33:24 +08:00 via iPhone
    @itskingname carry over
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2921 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 13:58 · PVG 21:58 · LAX 06:58 · JFK 09:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.