A task defines how to use a tool and implements some elementary operation. A flow defines the order in which tasks are used to solve a (design) problem. Tasks and flows are the main objects of the task level. If present, a task level is a homogeneous, interactive environment, optionally equipped with a programming interface, in which tasks and task flows can be defined and executed.
Figure 2.1: Integrated system without task and data level
Figure 2.1 shows a system without task level. Task flows are defined in a heterogeneous environment. Flow control information (indicated by shaded areas in Figure 2.1) is typically distributed among shell scripts and several input decks.
Figure 2.2: Integrated system with explicit task and data level
A task level provides a tool-independent environment for flow definition (the actual tools interfaces may still be tool-dependent) and all sequencing ideally takes place outside the tools, within the task level environment. As depicted in Figure 2.2, the task-level concept suites tool modularization. The advantages are that only one unified syntax and one thread of control and sequencing is used, compared to the different control threads and distributed task flow of a system without a dedicated task level.