Abstract
Interest in decision-support programs for clinical medicine soared in the 1970s. Since
that time, workers in medical informatics have been particularly attracted to rule-based
systems as a means of providing clinical decision support. Although developers have
built many successful applications using production rules, they also have discovered
that creation and maintenance of large rule bases is quite problematic. In the 1980s,
several groups of investigators began to explore alternative programming abstractions
that can be used to build decision-support systems. As a result, the notions of “generic
tasks” and of reusable problem-solving methods became extremely influential. By the
1990s, academic centers were experimenting with architectures for intelligent systems
based on two classes of reusable components: (1) problem-solving methods – domain-independent
algorithms for automating stereotypical tasks – and (2) domain ontologies that captured
the essential concepts (and relationships among those concepts) in particular application
areas. This paper highlights how developers can construct large, maintainable decision-support
systems using these kinds of building blocks. The creation of domain ontologies and
problem-solving methods is the fundamental end product of basic research in medical
informatics. Consequently, these concepts need more attention by our scientific community.
Keywords
Scalable Software Architectures - Decision Support - Software Engineering - Ontologies
- Problem Solving