【问题标题】:Task planning data/object structure任务计划数据/对象结构
【发布时间】:2011-05-26 22:18:20
【问题描述】:

我需要创建一个数据库结构来管理甘特风格的任务和资源系统,有一些自定义需求并且所涉及的技术不能很好地与其他人配合使用,所以我正在考虑从头开始。我的需求很简单:

  • 任务,优先
  • 资源(只是人)
  • 日历(主要是能够处理非工作日)

我已经检查了 Microsoft 项目数据结构,但它对于我的需求来说过于复杂,并且无法找到任何更简单的或多或少有文档记录的东西。

最重要的用例是将未分配的任务放入资源的工作列表中,在周围的任务中调整所有日期。

暂时不需要绘制图表。

是否有一些我缺少的标准方法?

【问题讨论】:

    标签: database-design data-structures


    【解决方案1】:

    听起来您大多只需要一个包含任务名称/描述、状态、优先级、持续时间和开始/结束日期的 TASKS 表,并带有某种标志来指示哪些字段是“固定的”;例如,如果一个任务有一个“死掉”的结束日期,那么它是固定的,不能被调度程序修改。同样,如果某事已经开始(或必须立即开始),则开始日期是固定的,不能更改。您可以添加“完成百分比”或“工作小时数”或“计划/实际开始/完成”或您想要的任何其他字段。资源可能只是一个简单的名称+ID 对。为了灵活性,我建议有一个将任务映射到资源的 TASK-ASSIGNMENTS 表。这将允许将任务分配给多个资源(例如将任务分配给团队),并且还会为您提供存储“分配给”日期的位置。根据您的调度程序必须有多全面,您可能还需要一个单独的 TASK-DEPENDENCIES 表来跟踪依赖关系(不能在基础浇筑之前安排框架等)。对于日历,您最好只存储“例外”日期,如假期或假期,否则假设标准工作周。当然,除非你的项目中没有这样的东西,在这种情况下何必担心呢?只需在合适的时候安排任务,并让人们在开始任务时填写开始日期。日历可以是全局的,也可以是特定于资源的。

    您需要按项目对任务进行分组吗?如果是这样,那么您当然需要一个 PROJECTS 表,并且您可能想要某种将资源映射到项目的 PROJECT-RESOURCES 表。这是存储资源应该用于特定项目的工作量(例如 30% 的时间)和/或资源应该给予特定项目的优先级的好地方。您可能还希望通过某种方式将日历分配给项目,作为默认或替代(可能需要一个标志来指定哪个)。

    我可以继续,但我知道我已经...

    【讨论】:

    • 这实际上是我的起点,最初我什至不需要任务依赖,所以一个订单就足够了。我希望的是一个模型,它支持一些常见的操作(重新排序工作列表、删除任务、在列表中间插入任务等),而无需过多依赖代码来实现业务规则。
    【解决方案2】:

    你可以试试www.databaseanswers.org这个Project Planning模型

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-21
      • 1970-01-01
      • 1970-01-01
      • 2019-12-09
      • 1970-01-01
      • 2016-07-13
      • 2012-02-10
      相关资源
      最近更新 更多