Software, recorded on a computer-readable medium, for enabling a user to utilize a plurality of knowledge acquisition approaches to find a solution to a task using a task-method-knowledge approach and a structure-behavior-function approach, the software performing the steps of:
- acquiring a task by receiving information specifying at least one input parameter, one output parameter, and an initial approach;
- analyzing the provided information using the task-method-knowledge approach and the structure-behavior-function approach based on the specified initial approach;
- processing the task using the determined approach to achieve a solution, the processing utilizing the input parameter;
- the processing further comprising using a structure-behavior-function behavior and encoding the behavior using a task-method-knowledge hierarchy which is collected from the user;
- the processing further comprising using a task-method-knowledge hierarchy and encoding the input parameter and the output parameter using a structure-behavior-function model which is collected from the user.