Download EMERGO toolkit architecture

Transcript
1. Introduction
This document is meant for whom who wants to know how the EMERGO toolkit is
build and how it can be adjusted or extended.
The toolkit is meant for the web-based development and delivery of scenario-based
educational games, called cases. For this it contains administrator, author, run
management, tutor and student environments. A player environment is developed
for playing the case. These environments are described shortly within this document.
For a more extensive description we refer to documents ‘Installation and
administrator manual’, ‘Author manual’ and ‘User manual’.
The toolkit is developed such that components can be added rather easily, without
having to change the domain model. And even without having to change most of the
environments. The player environment has to be extended with a player for the
added component. And sometimes the author environment has to be adjusted to be
able to enter specific content.
Having said components can be added rather easily, what do we mean by component
en content?
By component we mean a software component that is used to enter a specific kind of
case content and to play it. So it is always related to case functionality. Within the
toolkit every component has a definition which defines a part of this functionality.
By content we mean plain content (assets), structure of the content, relations
between content and rules that operate on the content. So it is all that’s entered
within the (case) author environment to make the case work.
Component definition, content and end user progress are saved as XML data (see
paragraph 4 ‘XML use’).
The most important component is the ‘scripts’ component which allows authors to
enter rules, which will fire based on user interaction, timers or other fired rules.
The toolkit is developed in Java using Eclipse. We used two frameworks, ZK
(http://www.zkoss.org/) and Spring (http://www.springsource.org/), to build it.
MySQL is used for the database. See further document ‘Installation and
administrator manual’.
We best illustrate all kind of aspects of the toolkit architecture and features by
describing the domain model, see figure 1.
After the domain model we describe the different application layers with their own
features. It concerns mainly describing all Java packages we created.
Then we describe where we used XML within the toolkit. By using XML we could
simplify the domain model and make adding new components rather easy. But then
the XML structure is also a kind of domain model. That’s why we describe it here
extensively.
And at last we describe what steps to take to add a new EMERGO component, so to
extend the toolkit.
In two appendices we give an overview of all XML Elements used and the initial
EMERGO SQL script, to be used to initialise a new database.
2. Domain model
Open Universiteit in the Netherlands
4