140 likes | 298 Views
Java Maketest (jMKT). A Project Overview. Matt Healy mjh@cs.rit.edu 12Apr04. Project overview. What is Maketest (MKT)? Why JMaketest (jMKT)? Some expected features Core technologies & dependencies Data path Expected challenges Current status Long-term view. What is Maketest (MKT)?.
E N D
Java Maketest (jMKT) A Project Overview Matt Healy mjh@cs.rit.edu 12Apr04
Project overview • What is Maketest (MKT)? • Why JMaketest (jMKT)? • Some expected features • Core technologies & dependencies • Data path • Expected challenges • Current status • Long-term view
What is Maketest (MKT)? • A test-assembling application • Written by Prof. Reek • Curses-based, running primarily on Solaris • Frequently used in the CS department • Allows generation of printable exams and keys from "pools" of previously-prepared items • Supports some standard question formats • Allows some randomization of question content (ordering)
Why JMaketest (jMKT)? • Maketest has some limitations: • Only a curses-based UI exists • Test item content is nroff-based • No means for validating structure (missing components) • Relies on external tools (nroff/eqn/etc.) for rendering • Limited portability (due in part to tool dependencies) • Output format is basically Postscript • No support for "embedded previewing" • Limited extensibility for new question/test formats • Logical organization of items must be physically expressed on disk
Some expected features • Window-based UI, with integrated "rich preview" support • XML-based data storage • Rendering to PDF, PS, PCL via XSL-FO • Portability to other platforms • Supporting tools for item generation • Conversion of existing roff-based test pools • Scripted generation of new content • Extensible design to support: • additional data sources (web, database, etc.) • generating/presenting tests for distance learning students
Core enabling technologies • Java • Portable programming • XML (Extensible Markup Language) • Defining item content & portable formatting • XML-Schema • Content validation • XSL (Extensible Stylesheet Language) • XSLT (stylesheet transforms) • XSL-FO (XSL formatting objects)
jMKT dependencies • J2SE 1.4 / 1.5 • Swing/AWT for UIs • XML APIs for XSL transforms/validation • Collections framework • etc. • Formatting Object Processor (FOP) for Java • Part of the Apache XML project • Implements XSL-FO functionality • JDOM (JSR-102) • In-memory manipulation of XML
XSLT (jMKT UI) Exam File (XML) XSL-FO Content jMKT UI Item Pool (XML) XSLT (FOP) "Print Preview" PDF PS PCL .... Data path
Expected challenges • Functional requirements specification • Developing extensible design and content models for reuse • Developing mechanisms for test item generation • Target skill sets • Customization requirements • Ease-of use concerns
Current status • Researching "state of the art" • Identifying "MKT alternatives" for evaluation • UI • Currently developing prototypes for use in requirements-gathering phase • Content manipulation • Defining core interfaces (UML) • Some testing in UI prototypes
Current status (ctd.) • Content structure • Defining schemas, sample data for item/test representation • Rendering support • Defining stylesheets for: • content->FO transforms (final rendering) • content->HTML transforms (rapid previews)
Long-term view • Long-term goals include: • Support for additional storage mechanisms • Extensibility/reuse in online testing • Introduction to larger audience • Increasing sophistication of content generation
XSL-FO Demo • (Time permitting)