An expert system is a computer application that performs tasks that would otherwise require human expertise. It uses a knowledge base of rules provided by human experts, and an inference engine that reasons through the rules to solve problems, similar to how a human expert would. To create an expert system, a knowledge engineer studies how human experts make decisions and translates that knowledge into rules for the computer. The system is then tested using sample problems to validate it can provide accurate solutions.