-
Notifications
You must be signed in to change notification settings - Fork 319
Design Document: Resource days off should affect project scheduling
The goal is to provide a solution to issue #18 requested many times and long awaited by GanttProject users.
Introduced functionality should keep core model (tasks, resources, their relations, etc) of GanttProject unchanged and work on top of it. So no new concepts for days off are expected to appear at this level. Instead, GanttProject UI should offer valuable checks and hints on project consistency regarding days off, including automatic fixes where possible, at suitable places of the UI.
This feature requires new (Project)Health
(alternative names: Audit
and Assistant
) panel accessible as separate tab along with Gantt
and Resources Chart
tabs. This Health
panel will also serve as a home for other project consistency checks implemented in future. Such checks, for example, could be:
- Overdue tasks (actual progress of a task is less than expected based on current date);
- Over-allocation (resource is allocated more than 100%);
- etc.
Health
panel consists of Tree/TreeTable component and dependent description panel. The tree is showing the found health check violations grouped by check type. Description panel is showing check description and available fix actions for a particular violation.
Automatic fixes
- Assign other resource
Replaces resource with another one chosen by user 2. Remove day off for resource
Removes the day off affecting task from days off configured for resource 3. Extend task duration
Task's end date is shifted by the number of days resource is not available due to days off. Weekends and holiday calendar should respected too.
- Split task
Task is split into 2 parts: one before days off and second after days off with corresponding constaraints set for them. 5. Leave as is
Nothing is changed
As soon as user chooses the the to go from above options corresponding dayoff-task relation is marked as resolved. Resolved dayoff-task relations are not shown in Health
panel anymore. The state of all the relations should be a part of project model to be persisted in project file. Resolved days off go back to unresolved in case of:
- ?