Release Notes - CMUCTAT/CTAT GitHub Wiki

Jump to CTAT 4.3, CTAT 4.2, CTAT 4.1, CTAT 4.0, CTAT 3.4


CTAT 4.3

General Bug Fixes / Changes

  • Collaborative Tutors
    • Support for collaboration with HTML tutors. Two or more students can work on a tutor problem at the same time and see each other’s work in real time. Communication between the student's sessions requires a minimal version of the CTAT tutoring service to be running at a location accessible to all of the collaborators.
  • Authoring Tools
    • Fixed a bug in the Export wizard that caused packages to not work in Moodle.
    • Pressing Ctrl-P (Windows) or Cmd-P (Mac) in the Jess Working Memory Editor now works as a keyboard shortcut for 'Go to Problem Fact'.
    • Clicking on a state in a graph in Jess mode now updates the HTML student interface to that state and makes the node the current state.
    • The File > Save Jess Templates and File > Save Jess Facts menu options were disabled after the initial template and fact definitions were saved, preventing the user from saving Jess facts or templates more than once. The menu options are no longer disabled.
    • When clicking on a state near the bottom of the graph, the Graph window scrolls to the top instead of staying where you were working, so you have to repeatedly scroll down. This has been fixed.
    • The isNumber() formula function now works the same in the Authoring Tools and in deployed HTML tutors. If the value is a string, such as isNumber("12.27"), the function will return true by default.
    • More HTML example tutors have been added to the installation folders.
    • The built-in Java Help was obsolete and has been removed from the Authoring Tools. Up-to-date documentation is available in this wiki.
  • HTML Components
    • CTATCheckBox now evaluates input correctly when there are ampersands ("&") in the label text.

    • Two new component actions have been added for use in tutor-performed steps. These are useful for changing the appearance of components dynamically via CSS, as well as showing and hiding components.

      Action Input Notes
      addClass CSS class name Adds the class to the element's list of classes.
      removeClass CSS class name Removes the given class from the element's list of classes, if present.
    • CTATComboBox now allows the student to re-select the correct item if the correct item was already selected out of order in an ordered graph. Previously, the student would have to select an incorrect item, then re-select the correct item.

  • JavaScript Example Tracer
    • The CTATCommShell assignDoneProcessor() API function now works.
    • The CTATCommShell showFeedback() API function now works in tutor-performed steps.
    • Fixed a bug in CTATLanguagePack; new values have been added to the default language pack to support internationalization of tutor interface.
    • The JavaScript tracer now properly handles older graphs.
  • JavaScript Logging
    • Fixed a bug that caused log messages to not be sent to DataShop in certain cases.
    • CTAT HTML tutors that use the Jess model tracer now log the rules that fired for each step in a custom field called "rule_names".
    • Fixed a bug where setting the URL for logging in configuration parameters (as shown below) did not work with a non-CTAT HTML tutor.
      CTATConfiguration.set("log_service_url", "http://pslc-qa.andrew.cmu.edu/log/server");
    • When using the JavaScript logging library API to log, setting the "SessionLog" parameter to false caused an error, and a context message was not logged. This problem has been fixed.
      CTATConfiguration.set("SessionLog", "false");
      CTATConfiguration.set("Logging", "ClientToLogServer");
       ...

Known Issues

  • In HTML interfaces that have a tab order specified, the tab order is not followed in Firefox. Newer versions of Firefox ignore the tab order set by the author and use the default order based on the relative position of elements in the document.
  • If a CTATVideo HTML component has tutoring enabled, demonstrating a correct step in the graph records three selection values concatenated together: the component id, the url, and the length of the clip. For example, given id=video1, url=Assets\myVideo.mp4, and clip length=00:00:20.000, in the Edit Student Input Matching dialog, the selection in the "Demonstrated Value" column is video1, but the selection in the "Matcher Settings" column is video1http%3A%2F%2Flocalhost%3A11001%2FAssets%2FmyVideo.mp400:00:20.000. When testing the step in Test Tutor mode, the link does not match. The matcher's selection should be only the component id. A workaround for this issue is to change the matcher type on the Selection to an Any Match, though this will only work if there is no more that one tutored video in the interface.
  • The Jess Editor plugin is not recognized in newer versions of the Eclipse IDE (Luna or later). See Configuring Eclipse for production rule editing for instructions on configuring Eclipse.
  • Double-clicking a BRD file does not load the graph on Mac OS X.

CTAT 4.2

General Bug Fixes / Changes

  • New! Drag-and-drop editor for building CTAT HTML interfaces.
    • The CTAT HTML editor is a web-based tool that allows you to quickly build an HTML tutor interface in the browser, then launch the interface to connect to the Authoring Tools running on your desktop to create and edit behavior graphs. See the Quick Start guide for more information.
  • Improved support for graph editing with HTML tutor interfaces
    • With an HTML interface connected to a graph in the Authoring Tools, switching the tools to "Set Start State" mode caused values that were demonstrated in the interface to not display in the interface, making it difficult to modify the demonstrated values. Now the values are displayed in "Set Start State" mode.
  • In previous versions, unnecessary information about the HTML interface was stored in each behavior graph's start state. This extra information caused problems when the HTML interface was modified after the graph was created. For new graphs, only information required for mass producing behavior graphs is stored in a behavior graph's start state. For existing graphs, you can easily remove the unnecessary information stored in your graphs. In the Authoring Tools:
    1. Open the graph.
    2. Open the HTML interface.
    3. Select Graph > Revise Start State with UI from the menu.
    4. Reload the HTML interface, verify that the interface still displays correctly, and save the graph.
  • A new menu option New Package has been added to the File > New menu in the Authoring Tools. New Package simply creates a new directory with sub folders in your CTAT workspace; this directory structure (which we call a "package") is the recommended layout for HTML interfaces, graphs, and other assets needed by your tutor. Storing all your tutor files in a Package facilitates uploading your tutor to Learner Management Systems, such as TutorShop.
  • The HTML5 Project wizard has been moved to the Tools menu. The CTAT HTML Editor is the recommended way to create tutor interfaces, though users who prefer to write their own HTML instead of using a drag-and-drop editor might find the wizard helpful for getting started.
  • JavaScript Example Tracer
    • Formulas now have access to bug, success, and hint messages. To access the most recent bug message, use <%=buggy_message%>. To access the most recent success message, use <%=success_message%>. For hints, use <%=hints%>; the value will be an array of strings. Note: these variables will only be replaced when the HTML tutor is deployed to a web server and using the JavaScript Example Tracer. They are not replaced when your tutor is connected to the Authoring Tools.

HTML Changes

  • CTATGroupingComponent: If a group is defined using child elements, setting the group to not be visible hid the child elements but not the div element containing the child elements. Now the div element containing the child elements is also hidden.
  • CTATVideo: When an instance of CTATVideo component is set to be graded, an error would occur causing the component to not work properly. This error has been fixed.

Known Issues

  • If a CTATVideo HTML component has tutoring enabled, demonstrating a correct step in the graph records three selection values concatenated together: the component id, the url, and the length of the clip. For example, given id=video1, url=Assets\myVideo.mp4, and clip length=00:00:20.000, in the Edit Student Input Matching dialog, the selection in the "Demonstrated Value" column is video1, but the selection in the "Matcher Settings" column is video1http%3A%2F%2Flocalhost%3A11001%2FAssets%2FmyVideo.mp400:00:20.000. When testing the step in Test Tutor mode, the link does not match. The matcher's selection should be only the component id. A workaround for this issue is to change the matcher type on the Selection to an Any Match, though this will only work if there is no more that one tutored video in the interface.
  • The Jess Editor plugin is not recognized in newer versions of the Eclipse IDE (Luna or later). To enable the plugin, you need to install an extra module that provides support for older plugins. See Configuring Eclipse for production rule editing for instructions on configuring Eclipse.
  • Double-clicking a BRD file does not load the graph on Mac OS X.
  • If the text in a CTATTextArea or CTATTextInput is set in the graph’s start state, the text is not displayed when the author mode is changed to ‘Set Start State’.

CTAT 4.1

General Bug Fixes / Changes

  • Improved support for HTML tutor interfaces
    • Many improvments and bug fixes for the HTML components (see HTML changes) below.
    • The JQuery JavaScript library required for HTML interfaces is now available from the same location as the CTAT JavaScript libraries and CSS file. Users no longer need to reference a specific version of JQuery from the JQuery web site in their HTML interface files; existing users should update their .html files to replace URLs pointing to http://code.jquery.com/jquery-2.2.4.min.js with https://cdn.ctat.cs.cmu.edu/releases/latest/jquery.min.js. The CTAT examples and the templates for the HTML Project wizard have been updated. Note: The version on the CTAT CDN site is JQuery 2.2.4. CTAT HTML tutors have been tested extensively with this version; we recommend using the version on our CDN as newer versions might not work properly in all browsers.
    • Better support for mass production. See the section on mass production for HTML components.
    • At author time, choosing 'Demonstrate This Link' from a link's popup menu did not allow the user to demonstrate new input for the step. Users can now re-demonstrate steps in an HTML interface.
    • At author time, choosing 'Add Blank Step' from a graph state's popup menu would always cause the graph to return to the start state with HTML interfaces. Now the current state in the graph is not changed.
    • The goToState() function now works with HTML interfaces.
    • Sometimes the scrim was not removed when the interface was loaded, forcing the student to reload the page. This problem has been fixed.
  • In CTAT 4.0, text changes made in CTAT components in the HTML interface after the graph's start state was created were overwritten by previous values stored in the graph. For example, if the author changes the label for a CTATCheckBox in the .html file after they've created the start state in their graph, the previous value in the graph was not updated to contain the new value. The old value saved in the graph was always displayed as the label text, forcing authors to re-create the graph with a new start state. In this version, the Authoring Tools allow you to easily update the values saved in the graph. In the Authoring Tools:
    1. Open the graph.
    2. Open the modified HTML interface.
    3. Select Graph > Revise Start State with UI from the menu.
    4. Reload the HTML interface, verify that the interface now displays the changes as defined in the modified interface, and save the graph.
  • The HTML5 Project wizard now creates an Assets directory by default in the project's HTML directory. All .css files, .js files, and other resources (e.g., image files) should now be stored in the Assets folder. For example, the .css file provided by the wizard is stored in the Assets folder: workspace-dir/MyHTMLTutor/HTML/Assets/tutor.css.
  • JavaScript Example Tracer
    • In formulas, embedded newlines caused failures in JavaScript evaluation, requiring formulas to be defined as a single line. Now formulas can be written on multiple lines in the Edit Student Input Matching dialog. In formulas, null and undefined are now considered equal. For example, the formula equals(null,undefined) returns true.
    • Fixed a bug causing session messages to not be logged from tutors running in TutorShop.
  • Jess
    • A new Jess function find-cognitive-model-directory has been added. Sample usage:
      (bind ?cog-mod-dir (find-cognitive-model-directory)) 
      (require* module-B-rules (str-cat ?cog-mod-dir "module-B-rules.pr"))
      
    • At author time, diagnostics set up with the Jess (watch ...) function are no longer undone by attempts to model trace.
    • For production rules that define custom fields, those custom fields are now properly logged when used with HTML interfaces.
  • The Java-based Tutoring Service (and CTAT for HTML and Flash) now, by default, listens on HTTP port 12022, HTTPS port 12043, WS port 20080, WSS port 20443, and TCP port 1502.

HTML Changes

  • CTATGroupingComponent
    • The 'data-ctat-use-componentlist' attribute is deprecated and should not be used. If the 'data-ctat-componentlist' attribute is set, the grouping component controls the components in the list; otherwise, the child elements of the grouping component make up the group.
    • Components defined by the group now respond properly to all of the tutor-performed actions supported for groups (e.g., lock, unlock, move, etc.).
  • CTATTable
    • It is now easier to configure the height of a table's cells. In the previous release, the default cell height was almost 2 times the font size, which was typically larger than desired; in addition, the default style for table cells made changing the height difficult. In this release, the default cell height is now just 1.2 times the font size, and authors can override the default more easily in style settings, e.g., .CTATTable--cell {width: 120px; height: 20px;}.
    • If table cells have a background color set, the background color now fills the entire cell.
  • CTATDragAndDrop: The component now supports the actions Add and SetChildren in tutor-performed action links.
  • CTATCheckBox: When the check box labels included some special regex characters, it caused UpdateCheckBox action on correct to clear the check marks because they failed to match. Special characters in labels should now be properly handled.
  • CTATNumericStepper: The stepper now enforces valid values even when numbers are typed into the component. It will set the value to the closest min or max value if the entered value is outside the given range. If a value not in line with the step size is entered, then the closest valid value less than the entered value will be used. If a non-number is entered, it will go to the minimum value.

Known Issues

  • The Jess Editor plugin is not recognized in newer versions of the Eclipse IDE (Luna or later). To enable the plugin, you need to install an extra module that provides support for older plugins. See Configuring Eclipse for production rule editing for instructions on configuring Eclipse.
  • Double-clicking a BRD does not load the graph on Mac OS X
  • If the text in a CTATTextArea or CTATTextInput is set in the graph’s start state, the text is not displayed when the author mode is changed to ‘Set Start State’.

CTAT 4.0

General Bug Fixes / Changes

  • Support for HTML tutor interfaces
    • A complete set of HTML5 components. These components are based on the Flash AS3 components and provide similar appearance and functionality.
    • CTAT for Flash has been renamed as CTAT for HTML and Flash. This version of the authoring tools supports both HTML and Flash tutor interfaces.
    • A wizard for creating a new HTML interface and graph from a choice of templates. Select File > New > New HTML5 Project... to run the wizard.
    • A new set of documentation to support HTML users is available on Github.
    • A complete set of HTML examples for all available components.
  • Export Wizard: A tool for generating a package that contains an HTML student interface and behavior graph has been added to the File menu. The wizard supports the following platforms:
    • SCORM packages compatible with Moodle, Blackboard, etc.
    • OLI (Open Learning Initiative)
    • OpenEdX XBlock
  • JavaScript Example Tracer
    • A reimplementation of the Java-based Example Tracer that runs directly in the browser, eliminating the need to connect to a remote server. Supports HTML and Flash interfaces.
    • Supports saving a student's partially completed problem, restoring the student's work on that problem when resumed later.
  • Better support for accessing and saving tutors in a directory of your choosing (referred to as the CTAT Workspace). In previous versions, the default location for the user’s tutor files was the CTAT/Projects folder. Because newer versions of some operating systems (e.g., Windows 10) do not permit users to save files in the CTAT installation directories, users might not have permission to save files in the Projects folder. You can specify any folder to use as your default directory for new or existing tutor projects; this can be in your home directory (as suggested by the Workspace Configuration dialog) or any other directory in which you have permission to save files, including the CTAT/Projects folder. The Default Projects Folder preference has been replaced with the CTAT Workspace preference to reflect this change.
  • CTAT preferences are now stored in the user’s home directory (in /.ctat/brPrefs.xml). Existing preferences stored in the CTAT installation directory are moved the the user’s home directory during installation.
  • A new search feature for graphs that allows you to find links and states containing a given text string. The Find menu option is located on the Edit menu.
  • Log Replay (under development)

Flash Changes

  • Flash is still supported for this release but will not be supported in the future.
  • CommTextInput has a new "Tab on Enter" parameter that is enabled by default. If enabled, pressing the Enter or Return key is treated the same as pressing the Tab key. This fixes a problem in the previous version where input was not submitted when the student pressed Enter.
  • CommTable is not included in this release.

Known Issues

  • The Jess Editor plugin is not recognized in newer versions of the Eclipse IDE (Luna or later). To enable the plugin, you need to install an extra module that provides support for older plugins.
  • Double-clicking a BRD does not load the graph on Mac OS X
  • If the text in a CTATTextArea or CTATTextInput is set in the graph’s start state, the text is not displayed when the author mode is changed to ‘Set Start State’.

CTAT 3.4

General Bug Fixes / Changes

  • Better support for quizzes.
    • A new feedback policy has been added to the Graph menu: “Hide feedback but require all steps”. Behavior graphs that have this policy set require the student to provide an answer to every question before submitting. In this new policy and the “Hide Feedback” policy, ordering and traversal count constraints have been relaxed, eliminating the need to modify the maximum allowed link traversals or remove ordered groups from graphs.
  • The CTAT installers are now signed. This fixes a problem on Mac OS X, where the installer was reported as “damaged”. In this version, when you try to run the installer a message is displayed saying that it is from an “unidentified developer” because the installer is signed with a certificate not provided by Apple. To run the installer, locate it in the Finder, press the Control key and click the app icon, then choose Open from the popup menu.
  • Support for SCORM v1.2. A tool for generating a package that contains a Flash student interface and behavior graph has been added to the Tools/Advanced menu. The package can be uploaded as a SCORM activity into Learning Management Systems such as Moodle.
  • Support for collaboration, where multiple students can work on a tutor problem at the same time and see each other’s work in real time.
  • Support for Java 6 has been dropped. Oracle Java 7 or greater is required. You can download Java from http://java.com. Note: Oracle Java is only available for Mac OS X 10.7.3 (Lion) and above. Users with older versions of the Mac OS will need to upgrade in order to install and run CTAT.

Flash Changes

  • Flash .zxp files are signed to assure users that the package is valid and has not been tampered with.
  • CommNumericStepper (new)--An auxillary component used with complex components that allow controllers, such as CommFractionBar and CommNumberLine.
  • CommScrollPaneComponent (new)--A scrollable panel that can contain a group of Flash tutor components saved as a movie clip. Use this component to get more tutoring into your Flash file than you could previously; now you can make a tutor of any width and height.
  • Text components now have a Text parameter. The Text parameter is useful for pre-configuring text content and for specifying a variable that can be replaced through mass production.
  • UpdateTutors command. This command, which appears on the Commands menu in the Flash IDE, updates each of the CTAT Flash components in a set of student interfaces to the latest version. Note that a “Resolve Library Conflict” prompt is displayed for each component being updated. At each prompt choose the “Replace existing items” options and click OK.
  • CommShell has new parameters for configuring various static info and warning messages. Great for multi-lingual support.
  • CommNumberLine, CommJumble, and CommDragNDrop have been updated to include additional configuration parameters.

Known Issues

  • The Jess Editor plugin is not recognized in newer versions of the Eclipse IDE (Luna). To enable the plugin, you need to install an extra module that provides support for older plugins.
  • Double-clicking a BRD does not load the graph on Mac OS X
  • AS3 CommHintWindow should display scroll bars when an image exceeds its dimensions
  • AS3 components do not create Jess templates in Cognitive Tutor (Jess) mode.
⚠️ **GitHub.com Fallback** ⚠️