An expert system is software system with two basic components: a knowledge base and an inference engine. The system mimics an expert's reasoning process.