Knowledge engineers
From Wikipedia, the free encyclopedia
Knowledge engineers are computer systems experts who are trained in the field of expert systems. Receiving information from domain experts, the knowledge engineers interpret the presented information and relay it to computer programmers who code the information in to systems databases to be accessed by end-users. Knowledge engineers are used primarily in the construction process of computer systems[1].
Using information relayed by the domain experts, knowledge engineers are experts at constructing meaningful, useful, and simplistic Knowledge-Based Systems (KBS). Often knowledge engineers are employed to break down the information passed on by domain experts into more simplistic terms which cannot be easily communicated by the highly technalized domain expert [2].
In recent years, the role of knowledge engineers has come under intense scrutiny from those specializing in the area of KBS and expert systems. Many computer systems experts believe that knowledge experts role in the creation and maintenance of complex computer systems is unnecessary, and can be simply left out of the process of systems creation. Conversely, some computer systems experts believe that their role is vital in the fact that they provide a good middle-man between highly specialized domain experts and computer coders. Known for their ability to simplify experts information and instructions, knowledge engineers are useful in that they can interpret, and organize internal information on how to make systems decisions[3].
Knowledge engineering is a relatively new profession – the purpose of the job is to work with a client who wants an expert system created for them or their business. A knowledge engineer would collect the information that the client wants in the system and then put it all into the program. For example, if a client, who is an expert in snakes, wanted a program to identify different types of snakes, then the knowledge engineer will need to collect the necessary information about different species and attributes. It is up to the knowledge engineer to capture the knowledge of the domain expert into a knowledge base, which is then used for an expert system.
Contents |
[edit] Skills Required
There is a wide range of skills that a knowledge engineer is required to have. Many of these skills are needed in order to ensure that the knowledge engineer will be able to create the necessary, important documentation that is needed such as analyses, overviews, feedback reports, knowledge database FAQs and more. Knowledge engineers also need to have knowledge of several different languages and applications so that they can create expert systems with great ease and with little error as possible.
Some of the main skills that are required are:
- They need to be able to create the necessary documentation, such as procedure oriented documentation and network diagrams. This means that knowledge engineers need to have good written and verbal communication skills. They also need to be able to pick out the most pertinent pieces of information.
- Knowledge engineers need to be able to analyse and apply problem-solving techniques so that they can document troubleshooting.
- They need to be able to work under pressure and meet tight deadlines. They need to be able to manage and work independently on multiple tasks of various sizes and topics. This means they need to be able to manage their time and work quickly.
- There are several different types of programming languages that a knowledge engineer might be required to know. These include: Standard Generalised Mark-up Language (SGML), XML, HTML, Document Type Definitions (DTD), Extensible Style-sheet Language (XSL), and various other web authoring tools.
- Knowledge engineers usually need to have a general knowledge of JavaScript, Visual Basic for Applications (VBA), networking and also Unix.
- They also need to have knowledge of several software applications, which include Microsoft Office, Microsoft FrontPage, Microsoft Visio, Adobe Acrobat and several graphic software applications.
- Knowledge engineers need around 2 or 3 years of experience in the IT industry, mainly in areas such as the Internet and networking.
[edit] Validation & Verification with Knowledge Engineers
Validation is the process of ensuring that something is correct or conforms to a certain standard. A knowledge engineer is required to carry out data collection and data entry, but they must use validation in order to ensure that the data they collect, and then enter into their systems, fall within the accepted boundaries of the application collecting the data.
It is important that a knowledge engineer incorporates validation procedures into their systems within the program code. This means that when a user enters information into the system, mistakes will not be made. For example, if the expert system asks for a ‘yes’ or ‘no’ answer, it is up to the knowledge engineer to include code in the program that will stop the user from entering any information other than a yes or no answer. Another example is if the user is asked to enter their surname, the knowledge engineer will need to incorporate a validation procedure that causes the program to validate that only letters are entered and not numbers.