[kplato] Summary of Data Discussion

Chris Clarke kplato@kde.org
Mon, 18 Jun 2001 18:37:18 -0700


I've modified the data definitions to include what we have so far.  I'm not 
updating the web site because there are more things to add, but I'd like to 
see if we agree on this layout.

So far I'm only looking at a single project, we can modify the definitions to 
include multiple projects (and subprojects?) later.  Let me know what we're 
missing here.

The format is pretty much BNF, and for any non-programmers {} denotes a list, 
so {task} means 0 or more tasks, and [ ] denotes a choice, so [A | B ] means 
either A or B.

4.1.1. Project

Project::=
  Project Definition ::= TBD +
  {Task}

4.1.2. Task

Task ::=
  Task ID +
  Task Name +
  Duration +
  Status +
  {Task} +
  {Relationship} +
  {Resource}

Constraint: Duration my only be entered if {Task} is empty

4.1.3. Task Type

Task Type ::=
  ConstraintType ::= [Start On Date | Finish By Date |  Work Between Dates | 
Milestone | Percent of Project] +
  Constraint ::= [Entered Date | Calculate]

(Jim: this was what I got out of your email.  Were all 5 items supposed to be 
a task type?  I'm not sure how the last two fit in)

4.1.4. Duration

Duration ::=
  Optmistic Hours +
  Pessimistic Hours +
  Expected Hours +
  Risk ::= [Low | High | None]

(Does risk really belong here? Its actually a function of the task, right? At 
the same time it would be nice to be able to encapsulate this and provide a 
function to get calculated duration. (There I am going to implementation 
details now))

4.1.5. Status

Status ::=
    % Complete +
    Actual Start Date +
    Actual Finish Date

(I'm figuring we need to track actual start / finish to be able to calculate 
schedule slip)

4.1.6. Relationship

Relationship ::=
  Preceding Node +
  Type ::= [ Finish-Start | Finish-Finish | Start-Start ] +
  Lag

4.1.7. Resource

Resource ::=
  TBD (to be defined)

Cheers,
Chris.
-- 
Chris Clarke
security@cfourconsulting.com
http://cfourconsulting.com