skip to main content
Programmer's documentation > Developing with the JViews Gantt SDK > Critical path analysis > Critical path analysis overview
 
Critical path analysis overview
JViews Gantt provides basic facilities for automatically or manually computing the critical path for a Gantt data model. Critical path analysis is the process of finding those activities in the data model that, if delayed, will hinder completion of the entire project schedule.
The ilog.views.gantt.model package contains the following classes that perform critical path analysis:
*IlvCriticalPathCalculator: Performs manual critical path analysis of a Gantt data model on request.
*IlvGanttModelScheduler: Uses an instance of IlvCriticalPathCalculator to perform automatic critical path analysis of a Gantt data model each time the activities in the schedule change.
The following figure shows the relationship of these classes.
JViews Gantt performs critical path analysis by rescheduling all activities in the Gantt data model to occur as soon as possible after the project start time. This is done by modifying the activity start and end times. Preceding and succeeding constraints are taken into account in the analysis. Activities that are computed to have a total slack time that is less than a threshold are considered to be on the critical path. The default threshold value is zero.
NOTE Activity reservations are not taken into account and resource leveling is not performed when critical path analysis is performed.
In addition to updating each activity's start and end times, critical path analysis sets several additional properties for each activity. If the default property names conflict with properties that are already being used in your Gantt data model, property naming methods are available for both IlvCriticalPathCalculator and IlvGanttModelScheduler. These methods are used so the class instances can be customized to set different property names for your activities.
The following table shows the activity properties set by critical path analysis.
Description
Property type
Default activity property
Methods to change property name
Earliest start time
Date
earliestStart
String getEarliestStartProperty()
void setEarliestStartProperty( String propertyName)
Earliest finish time
Date
earliestFinish
String getEarliestFinishProperty()
void setEarliestFinishProperty( String propertyName)
Latest start time
Date
latestStart
String getLatestStartProperty()
void setLatestStartProperty( String propertyName)
Latest finish time
Date
latestFinish
String getLatestFinishProperty()
void setLatestFinishProperty( String propertyName)
Total slack
IlvDuration
totalSlack
String getTotalSlackProperty()
void setTotalSlackProperty( String propertyName)
Critical
Boolean
critical
String getCriticalProperty()
void setCriticalProperty( String propertyName)

Copyright © 2018, Rogue Wave Software, Inc. All Rights Reserved.