This monograph describes a methodology for the design of knowledge-based
systems. A knowledge-based system contains knowledge as well as
information and data. The information and data in such a system can be
modelled and imple- mented as a database. The knowledge in such a system
can be implemented either in a programming language or in an expert
systems shell. This methodology has two distinguishing features. First,
it is "unified". A unified methodology repre- sents the data,
information and knowledge in a homogeneous manner, as well as the
relationships between them. Second, the methodology builds a maintenance
mechanism into the design. In knowledge engineering terms, the
representation used by this methodology to model knowledge bases applies
equally to databases. In database terms, the representation used by this
methodology to model databases applies equally to the database rules.
The unified methodology unifies the design of the "knowledge base compo-
nent" and the "database component". "Unification" is achieved in five
senses.