Tutor Types

CTAT supports the creation of two types of tutors: example-tracing tutors, which can be created without programming but require problem-specific authoring, and cognitive tutors, which require AI programming to build a cognitive model of student problem solving but support tutoring across a range of problems.

If you are new to the process of creating a tutor, we recommend that you start with an example-tracing tutor.

Example-Tracing Tutors

Example-tracing tutors, formerly called 'pseudo tutors' as a shorthand for pseudo-intelligent tutors, resemble cognitive tutors. The example-tracing tutor's knowledge, however, is not generalizable; it is unable to reason on its own across multiple problem scenarios. You must therefore 'teach' the tutor various behavior for each of the problems you create. Depending on the complexity and number of problems, this trait may be a consideration. If, in the future, you decide to construct a full cognitive tutor, your example-tracing tutor can serve as a building block for that cognitive tutor.

Example-tracing tutors can be built quickly, and can serve as a tool for "rapid prototyping", or creating iterative prototypes over a short amount of time.

Cognitive Tutors

Cognitive tutors are the more robust of the two tutor types. They are based on cognitive psychology theory, particularly the ACT-R theory. Developing a cognitive tutor involves creating a cognitive model of student problem solving by writing production rules that characterize the variety of strategies and misconceptions students may acquire. Cognitive Tutors are sometimes are also called "Production Rule Tutors", a reference to the production rules you will create.

Your decision may also depend on:

Choosing between HTML, Flash, and Java for Authoring and Delivery

Before developing a tutor, you must choose between creating the user interface in HTML, Java, or Flash. For each of these languages, CTAT provides a set of specialized tutoring widgets. These widgets can be used to create interfaces in drag-and-drop manner, without requiring any programming. (If you're familiar with programming in either JavaScript, Java, or ActionScript, you can customize the interfaces and add non-standard behavior, but this is often not necessary.)

Note: Flash and Java interfaces are still supported but may not be supported in future releases. We highly recommend implementing your tutor interface using the new HTML components.

HTML, Flash, and Java development compared
Cost All software is free Adobe Flash Professional is offered as a 30-day trial; continued use requires you to purchase it from Adobe (price varies) All software (Java, Eclipse) is free
Web delivery The free TutorShop platform supports HTML interfaces. CTAT provides specific tools to import into popular learning systems, such as Moodle, Blackboard, OpenEdx, OLI and any other site supporting LTI. The free TutorShop platform supports Flash interfaces. The required Flash player is light-weight and easy to install; it's widely installed on desktops globally. TutorShop support exists but is more recent. Java Web Start can be used for web delivery. The Java browser plugin is not as ubiquitous as the Flash player.
Look and feel of student
Emphasis is on presentation; easy to include movies, graphics, and sound. Appearance of interface can be customized with CSS. Emphasis is on presentation; easy to include movies, graphics, and sound More difficult to include other media
Availability of developers
and third-party code
Well established programming environment, so many programmers available Less established programming environment, so fewer programmers available More established programming language, so more programmers available; more third-party code available in a wide variety of applications, especially scientific and mathematical
Other Advantages HTML interfaces run in all browsers on a wide selection of devices. Easy to download, install and configure; easy to upgrade to the newest CTAT components
Other Disadvantages Different browsers might display interfaces slightly differently Not all browsers provide support for Flash Java SDK is required, plus the Eclipse IDE (integrated development environment), which can be complicated for non-programmers to use. Java tutors cannot be delivered as a stand-alone desktop application.

Other alternatives

In addition to the options explained above, you may want to use CTAT to facilitate a number of other goals. You may want to:

If you would like to accomplish any of those goals, please contact us for assistance.

Continue to CTAT Requirements.