ABSTRACT

This chapter presents familiarity with the basic principles and concepts of expert systems. It reviews software engineering principles, and discusses ways in which software engineering techniques can be applied to expert system development. By the mid-1980s, expert systems were being built to solve new kinds of problems, many of which were extremely complex. An expert system design is similar in form but is usually less detailed. The architecture identifies the major components of the expert system; these may include user interfaces, report generators, databases, and other software components, as well as the knowledge base. A major goal of software engineering during the last decade has been “software reusability.” The term refers to the fact that programmers tend to spend most of their time writing code that is very similar to code that already exists. Software engineering has made a number of significant contributions to expert system development.