[kplato] Summary of Data Discussion
Chris Clarke
kplato@kde.org
Mon, 18 Jun 2001 21:15:56 -0700
Jim,
The way things are defined in the breakdown doesn't mean that the resource
object is contained wholly within the the task object, right now I'm just
saying that a task contains a list of the resources that are associated with
it, so I don't think the definition is in contrast with your idea. I've
avoided thinking about how a resource is defined because I need help from
someone with more experience there. I think you've provided that now.
Just to make sure we're talking about the same thing, I'll give you an
example of what I'm thinking of when I talk about resources:
Let's say I'm the manager of a small team in QA. I have three members on my
team:
QA1: F/T 40 hours/week
QA2: F/T 40 hours/week
QA3: P/T 20 hours/week
My tests have to be run on a specific "test string". Each string is
available to my team for 5 hours a day. I can request extra time if I want,
but I need to know in advance. We'll call this TEST_STRING.
>From my point of view QA1, QA2, QA3, and TEST_STRING are resources because
they are required for my tasks and I have a limited amount available.
Now I am planning for the development and conduct of two tests, TEST1 and
TEST2. Each requires one or more people, plus the test equipment, so I end
up with this:
TEST1:
QA1 (Requires 38 hours development)
TEST_STRING (Requires 15 hours of string time)
TEST2:
QA1, QA2 (requires 50 hours development can be split across the two)
TEST_STRING (requires 30 hours of string time).
Both tests will have their start and end dates constrained by the project
defined around them. Now, the questions I need answered are:
1) Can I complete TEST1 and TEST2 without requiring overtime from my team.
2) Do I have an adequate amount of string time available, or should I request
more.
I very much like the idea of associating a risk with a task. In the above
example my estimate on string time would be based on assumptions as to the
quality of the software. Being able to associate a risk to that assumption
would be extremely useful.
If I follow what you're saying (and it makes sense to me) it seems that a
resource is represented as a task, except that:
a) The same resource can be assigned to multiple tasks, so from the tree view
we would have a many-many relationship. In reality I would probably define
resource/subresource relationships like we do with the tasks, so that we
would have a one-many relationship between tasks and subresources, and a
one-many between resources and subresources.
On the calculation side, we would assign a duration to a resource the way it
would be assigned to a task. These durations could roll up to determine the
duration of the task in a manner that is completely analogous to the
task/subtask calculations.
b) There is an extra definition in the resource detailing units and units
available. e.g. my string is defined by hours per day, and it's limited to
max_hours_per_day (=5 here). For any period [startdate, enddate]:
extra_time = total_hours_required -
( (enddate - startdate) * max_hours_per_day )
or
enddate = total_hours_required / max_hours_per_day + startdate
Depending on the constraints we're placing (of course this is complicated by
spreading a single resource across multiple tasks and having to take the
float on each task into account so that the resource is not necessarily
spread evenly across days, but that's beyond the scope of this discussion).
Comments?
Cheers,
Chris.
On Monday 18 June 2001 19:50, Jim Sabatke wrote:
> Chris,
>
> I would keep "resource" out of the "task" definition for a couple of
> reasons:
>
> 1. Some tasks will have multiple resources
> 2. I would prefer to have resources listed like CA-Superproject, not
> in a column like M$ Project. The resouces would be listed in lines
> below each task. The whole task/resource relationship becomes more
> spreadsheet like, and more flexible. Example:
>
> Duration
> Task1 15hours
> Resource1 10hours
> Resource2 5hours
>
> Resources would have all the same columns as their tasks. You could
> have differing risks for different resources (experiences vs. newbie).
> The task stats would rollup the resource columns.
>
> This would require a:
>
> Task Resource :==
> Task ID +
> Resource +
> All of the task stats
>
>
> Jim
--
Chris Clarke
security@cfourconsulting.com
http://cfourconsulting.com