This thesis presents Taskmaster.2, a graphical environment for interactive task specification,
execution and monitoring. Problem solving in the Taskmaster environment can be accomplished
with top-down programming, bottom-up programming, or a mixture of the two. The use of
top-down programming permits the user to start with a high level task and refine this task into
successively lower level subtasks until, at the lowest level, each subtasks represents a software
tool. Bottom-up programming is accomplished by beginning with the lowest level subtasks,
software tools, and then combining these tools into successively higher level subtasks until, at
the highest level, the high level subtask represents the original problem task. These
programming methods provide the user with abstraction capabilities. Another abstraction
capability within the Taskmaster.2 environment is the network tools. The user creates network
tools by selecting several software tools that, combined, provide a certain functionality. These
network tools can then be reused in solving other problem tasks. In fact, these tools appear no
different to the user than the low level software tools: they are both single indivisible units.
Providing complete abstraction capabilities, i.e., mixing programming styles (top-down and
bottom-up) and network tools, maintains the consistency of the Taskmaster.2 environment. This
makes the environment an easy one to learn, as well as remember.