posted on 2004-01-01, 00:00authored byMark Derthick, Stephen F Smith
In most practical domains, scheduling is not a one-shot generative task of producing time and resource assignments for pre-specified sets of requirements and capabilities, but an iterative process of getting the constraints right. Initial solutions are developed (at some level of detail) to understand the feasibility of various requirements and the sufficiency of assumed resources. This requirements analysis leads to reassessment of what requirements can be reasonably met and what resources need to be made available. Changes are made to the constraints governing requirements and resource availability, and eventually a final schedule is elaborated. At early stages of this user-driven process, seeing a fully instantiated schedule is
less important than simply knowing whether a feasible schedule exists and, if not, the approximate magnitude of the
shortfalls for different resources and periods of time. To this end, solutions to relaxed versions of complete scheduling
problems can provide helpful guidance.
In this paper, we describe a system that provides a direct manipulation visual interface for requirements analysis and
reconciliation. The interface incorporates a 3D visualization that identifies resource capacity shortfalls in a tractable
relaxed version of the problem, which are necessarily shortfalls in the original problem. Our visualization can be contrasted with common 2D scheduling displays such as Gantt Charts and Closure Graphs, which are designed for visualizing complete solutions to a given scheduling problem and hence offer only indirect support for identifying inherently over-constrained regions of the solution space. Alternatively, our visualization directly characterizes this underlying constraint space and provides a direct basis for requirements analysis. An analyst iteratively adjusts problem constraints and visualizes the
resulting (relaxed) problem solution until various mismatches between resource requirements and resource availability are
satisfactorily reconciled. Once a reasonable compromise is found, the same interface can then be used to guide more detailed scheduling