Conversion of the Computer Aided Instruction Tools to use Database Connectivity International Conference on Computer Science and its Applications 2004.

Slides:



Advertisements
Similar presentations
Question examples. Session 1 Objectives Why certify? Positioning of the non-technical version What is Java? Key advantages of Java Java Applications vs.
Advertisements

Lecture 1 Introduction to the ABAP Workbench
Case Tools Trisha Cummings. Our Definition of CASE  CASE is the use of computer-based support in the software development process.  A CASE tool is a.
Creating a Program In today’s lesson we will look at: what programming is different types of programs how we create a program installing an IDE to get.
Programming Creating programs that run on your PC
Oct 31, 2000Database Management -- Fall R. Larson Database Management: Introduction to Terms and Concepts University of California, Berkeley School.
1 ICCSA 2005 Tutor Writer Tool for Creating a Tutor as a Java Applet Kazumi Slott, M.S. Rika Yoshii, Ph.D. Computer Science Department.
Requirements Analysis 5. 1 CASE b505.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis CASE Computer.
Input Validation For Free Text Fields ADD Project Members: Hagar Offer & Ran Mor Academic Advisor: Dr Gera Weiss Technical Advisors: Raffi Lipkin & Nadav.
Java Programming, 3e Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
The C++ Tracing Tutor: Visualizing Computer Program Behavior for Beginning Programming Courses Rika Yoshii Alastair Milne Computer Science Department California.
1 Info 1409 Systems Analysis & Design Module Lecture 8 – Modelling tools and techniques HND Year /9 De Montfort University.
Chapter 3 Software Two major types of software
Database Management Systems (DBMS)
L EC. 01: J AVA FUNDAMENTALS Fall Java Programming.
LESSON 1 INTRODUCTION Compiled By: Edwin O. Okech [Tutor, Amoud University] JAVA PROGRAMMING.
Computer Software.
Your Interactive Guide to the Digital World Discovering Computers 2012.
Activity 1 - WBs 5 mins Go online and spend a moment trying to find out the difference between: HIGH LEVEL programming languages and LOW LEVEL programming.
Advanced OOP MCS-3 OOP BSCS-3 Lecture # 1
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Microsoft Visual Basic 2012 CHAPTER ONE Introduction to Visual Basic 2012 Programming.
Introduction 01_intro.ppt
Java Programming, 2E Introductory Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
CSC 142 A 1 CSC 142 Introduction to Java [Reading: chapter 0]
CS110/CS119 Introduction to Computing (Java)
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
CSCI 224 Introduction to Java Programming. Course Objectives  Learn the Java programming language: Syntax, Idioms Patterns, Styles  Become comfortable.
M1G Introduction to Programming 2 4. Enhancing a class:Room.
COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” CHAPTER 4 Lecture-6/ T. Nouf Almujally 1.
Meir Botner David Ben-David. Project Goal Build a messenger that allows a customer to communicate with a service provider for a fee.
Rika Yoshii, Ph.D. and Jacquelyn Hernandez CSIS Department California State University, San Marcos Send us suggestions and requests to.
CMSC 202 Computer Science II for Majors Object-Oriented Programming.
Integrated Development Environments (IDEs) CS 21a: Introduction to Computing I First Semester,
Web-Enabled Decision Support Systems
Parser-Driven Games Tool programming © Allan C. Milne Abertay University v
CHAPTER FOUR COMPUTER SOFTWARE.
Introduction to Interactive Media Interactive Media Tools: Software.
M1G Introduction to Database Development 6. Building Applications.
Computer Programming A program is a set of instructions a computer follows in order to perform a task. solve a problem Collectively, these instructions.
Python – Part 1 Python Programming Language 1. What is Python? High-level language Interpreted – easy to test and use interactively Object-oriented Open-source.
CHAPTER TEN AUTHORING.
1 3. Computing System Fundamentals 3.1 Language Translators.
IDEs Department of Information Systems and Computer Science Ateneo de Manila University.
Copyright © 2007 Addison-Wesley. All rights reserved.1-1 Reasons for Studying Concepts of Programming Languages Increased ability to express ideas Improved.
CS 390 Unix Programming Summer Unix Programming - CS 3902 Course Details Online Information Please check.
Team Members Team Members Tim Geiger Joe Hunsaker Kevin Kocher David May Advisor Dr. Juliet Hurtig November 8, 2001.
National Taiwan University Department of Computer Science and Information Engineering National Taiwan University Department of Computer Science and Information.
Lesson 01: Introduction to Database Software. At the end of this lesson, students should be able to: State the usage of database software. Start a database.
Computing System Fundamentals 3.1 Language Translators.
3 Copyright © 2004, Oracle. All rights reserved. Working in the Forms Developer Environment.
Introduction to Interactive Media Interactive Media Tools: Authoring Applications.
Implementation of a Relational Database as an Aid to Automatic Target Recognition Christopher C. Frost Computer Science Mentor: Steven Vanstone.
 Programming - the process of creating computer programs.
Differences Training BAAN IVc-BaanERP 5.0c: Application Administration, Customization and Exchange BaanERP 5.0c Tools / Exchange.
©2016 Pearson Education, Inc. Upper Saddle River, NJ. All Rights Reserved. CSC 110 – INTRO TO COMPUTING - PROGRAMMING Overview of Programming.
Integrated Development Environments (IDEs) CS 21a: Introduction to Computing I Department of Information Systems and Computer Science Ateneo de Manila.
ITP 109 Week 2 Trina Gregory Introduction to Java.
Lecture #1: Introduction to Algorithms and Problem Solving Dr. Hmood Al-Dossari King Saud University Department of Computer Science 6 February 2012.
Introduction to Programming 1 1 2Introduction to Java.
 Project Team: Suzana Vaserman David Fleish Moran Zafir Tzvika Stein  Academic adviser: Dr. Mayer Goldberg  Technical adviser: Mr. Guy Wiener.
Introduction to Algorithm. What is Algorithm? an algorithm is any well-defined computational procedure that takes some value, or set of values, as input.
Advanced Higher Computing Science
Working in the Forms Developer Environment
Database Management:.
Data base management system dbms
(Computer fundamental Lab)
Review of Previous Lesson
Outcome of the Lecture Upon completion of this lecture you will be able to understand Fundamentals and Characteristics of Java Language Basic Terminology.
Programming Logic and Design Eighth Edition
Presentation transcript:

Conversion of the Computer Aided Instruction Tools to use Database Connectivity International Conference on Computer Science and its Applications 2004 Julian Rosenthal Rika Yoshii, Ph.D. (advisor) Computer Science Department California State University, San Marcos, USA Please ignore the paper in the Proceedings and read the revised version that was included in the packet.

Background of the CSUSM Tutoring Tools Projects Set of authoring tools and languages to create tutoring systems. Written in Java. Little or no programming experience is needed. Conversational tutoring with high-quality frequent interactions to provide adaptive learning with individualized pacing. Based on the Irvine-Geneva Course Development System. (Educational Technology Center of UC Irvine)

Introduction The CSUSM Script Editor-Interpreter Pair The two parts are The Script Editor which is used by a pedagogical designer to create conversational lessons. The Script Interpreter which causes the actions of the tutor. Can go back and forth in the Editor-Interpreter pair to test out ideas during a design session.

Features allows students to enter free form answers and analyze it to provide individualized help. able to use student performance records to determine help and exercise sequences. makes it easy to create graphics sequences.

Editor Parts Module Creation Screen Specify lesson module name and file name. Overall Design Screen Add and delete tracks and their exercises. Exercise Creation Screen Specify track and exercise name. Specify text display speed. Use tabs to go to various screens for specifying exercise components.

Exercise Creation Screen Specify/enter: –Instructional material –Question –Student answer categories and patterns for each category –Hints –Graphics With sequence of actions between them as transition signals –Go to next exercise from here (SN) –Go to a specified exercise (e.g. SL02) –Go to a specific port in an exercise and its specified text with or without clearing the port (e.g. SQ-00, SHC01, SG100) Depending on student performance (e.g. got answer category 1 more than 4 times E0101>>04)

The motivation for the new phase of the project 1.) improve compatibility with other JDK based tools/IDEs 2.) improve the usability for the designer 3.) implementation of a Database driven application to ease the conversion to an applet

Five Parts of the New Phase 1.Independence from Visual Café 2.Implementation of the Signal Dialog -To help the designer create transition signals 3.Implementation of the Exercise Diagram -To present an overview of an exercise to the designer 4.Creation and Connection of the Database tables for the Script Editor to store the lesson design -works with MySQL and Oracle 5.Creation and Connection of the Database tables for the Script Interpreter to use the lesson design and to store the student performance -works with MySQL and Oracle

Independence from Visual Cafe Visual Café was the Integrated Development Environment initially used for our CAI Tools. Makes the program dependent on Visual Café, because some of Visual Café’s classes are not provided with Sun’s JDK, which means that it was not possible to edit and run lessons with the CAI tools without Visual Café. The Script Editor and Script Interpreter can now be run using any Integrated Development Environment that uses Sun’s JDK.

Implementation of the Signal Dialog The SignalDialog Aids a designer to create syntactically correct “trasnsition signals” by making selections from a Graphical User Interface. Displays English version of the signals as confirmation. The user does not need to know or remember the syntax of the signals. Any non-programmer should be able to create a lesson using the CAI tool.

Implementation of the Signal Dialog Example: For ##SCC00##

Implementation of the Exercise Diagram The Exercise Diagram Gives the designer a way to review a particular lesson from a structural standpoint. == Graphical representation of a signal sequence between exercise parts.

Implementation of the Exercise Diagram Example:

Creation and Connection of the DB tables for the Script Editor The DataBase implementation is a step away from the JDK version dilemma problem when using object serialization. The DataBase implementation is a step towards the creation of a centralized collection of student data for a lesson. The use of a DataBase, instead of files to read from and write to, is a step towards easing the process of converting the Editor tool into an applet.

Creation and Connection of the DB tables for the Script Editor Example: Exercise Screen

Creation and Connection of the DB tables for the Script Interpreter While the implementation of the Editor was focused on collecting data while moving from JPanel to JPanel or from Table to Table, the focus of the Interpreter lies strictly with retrieving a lot of lesson and student data at start-up to initialize the system and then to run it and to update the student performance data.

Creation and Connection of the DB tables for the Script Interpreter Example: Student History Screen

Future Tasks for the Next Phase Usability analysis and modifications The conversion of these Tools into applets The maintenance of a centralized database with all the inherent security issues. Some guidance or food for thought: The applet sandbox and the Java security model for applets might hinder the conversion initially. The most important points to know and consider are: What is the applet sandbox? What constitutes the security model for an applet? How is this security model different from that of an application? Can an applet open a DB connection to the server without violating the sandbox and/or security model?

Setup Requirements The Java Virtual Machine -any version of the Java Software Development Kit (SDK, aka JDK) or Java Runtime Environment (JRE) after version 1.1 available for free from the Sun Microsystems website ( Java Database Connectivity Drivers for MySQL Driver version was used in order to stay compatible with versions of the JDK prior to JDK 1.4 and herewith not to create another dependency problem. Java Database Connectivity Drivers for Oracle The Drivers are contained in following file: classes12_g.zip Additional useful tools -JBuilder Foundation is a Java Integrated Development Environment available for free from Borlands’ website ( - Case Studio is a Database Planning and Creation Tool available from following web-site: ( This tool was extremely useful for script creation, Field Planning, Relation Creations and Entity Relationship Diagrams. -FreeVCS is a free Source Code Control tool available at following website: ( ).