By applying recent advances in the standards for distributed computing
, we have developed an architecture for a CORBA implementation of a li
brary of platform-independent, sharable problem-solving methods and kn
owledge bases. The aim of this library is to allow developers to reuse
these components across different tasks and domains. Reuse should be
cost-effective; therefore, the library will include standard problem-s
olving methods whose semantics are well understood and are described w
ith a language for stating the requirements and capabilities of a comp
onent. In addition, when a developer needs to adapt a component to a n
ew task, the adaptation costs should be minimal. Thus, we advocate the
use of separate mediating components that isolate these adaptations f
rom the original component. We demonstrate our approach with an exampl
e: an implementation of a problem-solving method, a knowledge-base ser
ver, and mediating components that adapt the method to different knowl
edge bases and tasks. (C) 1998 Academic Press.