2. Design and Overview of D2P - Applied Cognitive Science Lab

Apr 8, 2013 ... Tutors built in this architecture are designed to move declarative .... foreign
environment, or a student using a tutor on their home computer. .... at this time,
and are advanced through the learner's use of the 'Next' button presented in the
Java GUI. ...... A problem space approach to expert system specification.

Part of the document


[pic] [pic] College of Information Sciences and Technology
THE PENNSYLVANIA STATE UNIVERSITY
Declarative To Procedural (D2P) Manual
Jeremiah W. Hiam, Frank E. Ritter, Jonathan H. Morgan jwhiam@psu.edu, frank.ritter@psu.edu, jonathan.h.morgan@gmail.com Tech. Report No. 2012-1 (r2) 8 April 2013 Phone 1 (814) 865-4455 College of IST, University Park, PA 16802
Declarative To Procedural Manual
Jeremiah W. Hiam, Frank E. Ritter, Jonathan H. Morgan jwhiam@psu.edu, frank.ritter@psu.edu, jonathan.h.morgan@gmail.com College of Information Sciences and Technology The Pennsylvania State University University Park, PA 16802 8 April 2013
Abstract This documents how to create tutors using the Declarative to Procedural
(D2P) tutoring architecture. Tutors built in this architecture are
designed to move declarative knowledge into procedural knowledge through
practice in applied training systems. There are two example tutors so far,
the Moving Target Tutor (D2P/MTT) and the Combat Lifesaver Tutor (D2P/CLS).
This manual describes how to get started, how to create a simple tutor,
the types of pages, the possible contents of pages, and how to adjust the
automatic/adaptive tutoring algorithms included.
Acknowledgements Tatum Software (Ian Schenk and Jon Staszeiasc) created the first version of
D2P in collaboration with us. ONR grants have supported creating the
Moving Target Tutor (N00014-11-1-0275), the Combat Lifesaver Tutor (N091-
086/P10008), and D2P (N00014-11-M-0342). Mark Cohen created the
instructional designer's tool set. Martin Yeh, and colleagues at Charles
River have provided useful comments. Joseph Sanford contributed to source
code development and provided useful comments as well. Release notes: Update date on title page
spell
Insert new ToC
check dates on title page and on inside page
check section numbering, word is not reliable do by hand
accept changes by previous/other authors Table of Contents 1. Introduction 1
2. Design and Overview of D2P 1
2.1 The Use of Java in D2P 2
2.2 Why Java? 3
2.3 Java GUI 3
2.4 Record Keeping 3
2.5 How to Begin Creating a Tutor 3
2.6 System Requirements to Run D2P 4
2.7 Control Flow in the Tutor 5
2.8 Types of Pages 5
2.6 Media Use in Pages 6
3. XML Tags for Creating Pages 6
3.1 The D2P Page Editor 7
3.2 Overview of Standard Page Tags 7
3.3 Type of Pages (Beans) 8
3.4 Menu Pages 8
3.4.1 Menu Items 8
3.4.2 Title 9
3.4.3 Jumps to Index 9
3.4.4 Thumb Path 9
3.4.5 Description 9
3.5 Test Pages 9
3.5.1 Questions 10
3.5.2 Example Set 10
3.5.3 Timer Delay 10
3.5.4 Filters 10
3.5.5 Entry Key 10
3.5.6 Value 11
3.6 Video Test Pages 11
3.7 Image Test Pages 11
3.8 Results Page 12
3.9 The Question Builder 12
3.10 Multiple Choice Question Pages 12
3.11 Fill in the Blank Questions 12
3.12 Declarative Question Tags 12
3.12.1 Category 12
3.12.2 Number of Questions 13
3.13 Simulation Pages 13
4. XML Structures (beans) 13
4.1 Bean Class 13
4.1.1 Controller 14
4.1.2 Parent Controller 14
4.1.3 Page Model 14
4.1.4 Title 14
4.1.5 Subtitle 14
4.1.6 Value 15
4.1.7 Content 15
4.2 Media Inclusions 15
4.2.1 Image Path 15
4.2.2 Relative Video Path 15
4.2.3 D2P Default behavior for Playing Images and Videos 16
5. Care and Feeding of Logs 16
5.1 What's in a Log? 16
5.2 Setting up a Receiving Server (feature not yet implemented) 17
5.3 The SQL Database 18
6. Communication Between Cognitive Models and the D2P Language 18
7. Small Example Tutor 18
8. Extensibility and future changes 18
9. Summary 19
References 19
A1 Example Menu Page 21
A2 Example Image Page 23
A5 Example Video Test Page? 27
A6 Question Builder Quick Start Information 28
A7 Manual for the Page Editor 31
1. Introduction Declarative to Procedural (D2P) is a language for creating tutoring systems
that teach declarative knowledge and procedural knowledge, and also to then
provide the tutee an opportunity to practice this knowledge so that the
declarative knowledge is proceduralized, thus, Declarative to Procedural or
D2P. Through this practice, the declarative knowledge may be
proceduralized and applied quickly. A theoretical account of this is
available (Kim, Ritter, & Koubek, 2013), and this approach of practice to
proceduralize memories is based on previous work and summaries of learning
(Anderson, 1982, 2000, 2004; Kim, Ritter, & Koubek, 2013; Ritter &
Schooler, 2001). This document describes how to create a tutor, including the numerous
options and definitions available to create a tutor from the D2P tutoring
language. These specifications will prove useful for readers interested in
providing content to a tutor created in the D2P tutoring language, or for
those looking to gain an understanding of the language's capabilities.
Further, it gives an abbreviated relationship between the Java language
that serves as the Graphical User Interface (GUI) generator and the XML
(Extensible Markup Language) that specifies content including pages, menus,
and interactive items within the tutor. We created D2P initially to teach a perceptual motor skill that needed each
of its components practiced by transitioning the learner's declarative
understanding of the steps involved into a procedural knowledge.
Procedural knowledge (or very rapid declarative retrieval) is required as
the learner has to be able to execute this task in a very limited time
frame: approximate 2 to 3 seconds. From developing this custom complete tutoring system came the understanding
that other available tutoring languages were not sufficient either through
lacking compatibility, source code distribution, or the ability to be
extended, although we are continuing to review these other systems. The manual provides an overview of the tutoring approach, and then
describes how to start to create a tutor including how to create pages and
then how to create different pages, how to create and use the logs that can
be created, and how to adjust the tutoring apparatus.
2. Design and Overview of D2P D2P creates a tutoring session by reading in an XML specification of a
tutor using a Java parser that then passes the information to an
architecture that renders the information and displays it in and as a GUI.
This separation between knowledge and architecture was envisioned and
initially created by our early collaborators Tatum Interactive, and was
created to ease the process of designing or extending tutor content. The instructional designer does not need to have familiarity with Java or
object oriented programming to create pages, sections, or a tutor's overall
design. Instead, this approach allows subject matter experts and
instructional designers to contribute meaningfully with less demand on
learning a new language (now through the Page Builder interface) and it
supports reuse and automatic instruction. XML was chosen as the
implementation language for its versatility and similarities to HTML. The
structure of the tutoring approach is shown in Figure 1. [pic] Figure 1. The D2P design architecture.
2.1 The Use of Java in D2P A Java system is used in D2P to parse and visualize the XML pages written
by an instructional designer and present the pages in the form of the
tutor. Further, the Java D2P code creates, as the learner interacts
database records through a connection with an included, portable SQL server
and logs user behavior in a plain text format. For more information on
logging and the SQL information stored, refer to the following sections.
For information on how logs are able to be sent to a remote server, view
the setting up a receiving server topic.
2.2 Why Java? The Java programming language was chosen to accommodate instructional
designers to potentially make use of a D2P tutor in a variety of locations:
be it during deployment in a foreign environment, or a student using a
tutor on their home computer. Because Java boasts compatibility with a
wide range of operating systems and hardware specifications, as well as
providing its own virtual machine for code compiling instead of relying
upon an outside compiler, it seemed the perfect candidate for a tutoring
language with mobility as a core concern.
2.3 Java GUI The tutor works through a combination of XML and the Java programming
language. XML is used by content designers to specify the layout, media,
and other content of pages while the engine built in Java remains
unmodified by content designers. Instead, the Java system is a means of
interpreting the designer's XML input and displaying the information to
learners through a constructed GUI. Where the XML references and indicates
media or text, the Java parses and combines the media into the final
presentation.
2.4 Record Keeping The D2P language stores information about the tutor, the learner, and the
manner in which the tutor was used in three formats. First, the learner
sees most of their information displayed in the tutor through a connection
to a local SQL database (on the learner's machine). This database stores a
wide range of information, from basic items such as their login name, to
more detailed information such as speed and accuracy on examination
questions in an aggregate or detailed manner. Second, D2P retains
information through the use of a log file system. This system records the
learner's behavior, progress, and relative score while using the tutor, as
well as time spent by section, question asked, and overall time spent.
Third, when the learner completes a tutor session, the log file is then
transferred vi