Re: progress :-)

Dag Andersen <[email protected]>
Newsgroups gmane.comp.kde.kplato
Message-ID <[email protected]>
On Søndag den 9. marts 2003 21:24, John Lamb wrote:
> I got the CVS to compile today so I can actually see the changes.
> This looks good.
>
> IMHO, the next thing we need is to can add predecessors and
> successors to tasks. Then there should be enough to do CPM
> calculations.
If you didn't find out:
Add some tasks, select pert diagram (if not already there), click on 
parent task, then click on child task and you should get a dialog to 
select releation type. 
(note that if you select project->calculate the presentation is not 
updated atm)
>
> I already wrote code to do CPM calculations. I think there's a
> modified version of it in kplato at the moment. I'm happy to
> write/rewrite this and/or link it to the code. For example, we
> could use the calculate menu item to calculate CPM and so generate
> a simple project plan for the Gantt chart.
>
> If someone (Bo, Dag) wants to say where the project representation
> is and what they want calculated, I can do this (I've written the
> algorithm before in C++ and use a Python version for simple
> projects - though I'm _not_ seriously suggesting using Python here
> ;-) ).
The calculations are in files kptproject.cc/kptnode.cc.
>
> I like the Gantt widget.
It's very simple with a few bugs thrown in ;) Also, as Bo pointed out, 
there is already a Gantt widget in pim, so possibly that should be 
used... Any takers?
>
> Other questions:
>
> 1. Calculated and user values. I think we need to distinguish
> carefully. For example, the user could specify an latest start for
> a task but should not need to do so. But the project must be able
> to calculate a latest start independently - it would be up to the
> project manager to work out what to do if there was a conflict - in
> reality that happens.
Atm. I put in following scheduling/contstraints:
As Soon As Possible, As Late As Possible, Start No Earlier Than, 
Finish No Later Than & Must Start On.
Should also have Must Finish On ?
All these are applicable to tasks.
For summary tasks & sub-projects a I'm not sure if all or only some 
are relevant.
For Main project I think we need to be able to set Start time or 
Finish time. (Different dialog from sub-projects)
>
> 2. Architecture. I suggest that the PERT/CPM calculations be
> separated from the UI: i.e. defined in different classes. The UI
> could then pass a pointer to an object containing the values it
> wanted changed. This makes it easier to test algorithms outside the
> UI and also to replace bits of code. Although PERT/CPM itself is
> easy, resource allocation is not and may need to be handled by
> heuristics and perhaps have several alternative methods available.
As said above, calculations are placed in the node files. I also put 
drawing there as it was the simplest but I also think it should be 
moved into separate classes (partly done for pert).
-- 
Mvh,
Dag Andersen
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.