In order to achieve flexibility in knowledge representations, it is important to develop a formalism for coding archivable modules that allows maximal generality and applicability of the modules. This is best achieved by avoiding over-specification of modules, i.e. to achieve maximum generality by including only information essential to definition of a module. Every bit of spurious information included in a module definition becomes a constraint which can reduce the applicability of the module. A second step toward reducing the complexity of the modeling process involves the utilization of graphical, icon-based module interfaces, wherein the structure of the module is represented diagramatically, so that new users can recognize the major interactions at a glance. Scientists with little or no programming experience can begin building and running models almost immediately.
Inherent constraints make it much easier to generate bug-free models.
Built-in tools for display and analysis facilitate understanding, debugging, calibration and analysis of the module dynamics. In light of the previous comments on generality, it is essential that the simplification inherent in the adoption of familiar graphical metaphors for the model building blocks does not turn into a new set of constraints on the model structure, but is chosen in order to allow greater freedom for development and reorganization of components. One major advantage of this graphical approach to modeling is that the process of modeling can become a consensus building tool. The graphical representation of the model can serve as a blackboard for group brainstorming, allowing students, educators, policy makers, scientists, and stakeholders to all be involved in the modeling process. New ideas can be tested and scenarios investigated using the model within the context of group discussion as the model grows through a collaborative process of exploration.