004
ual
age
ast,
'en.
ers,
the
N
C
C
LLL
€————P ——
get
jle.
ith,
the
isa
se,
| is
ent
If
der
en
ety
International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Vol XXXV, Part B6. Istanbul 2004
The more interactivity is needed, the more inevitable is the
use of a program language. Java provides the most flexible
solution and allows web-applications based on applets.
Applets are loaded together with the web page from the
server and are executed in the client's virtual machine.
If it is necessary to compose a website in dependence of a
user input, an interface has to be available, which allow the
web-server to call external programs, which generate HTML
code and send it back to the client.
In this case the Java Server Pages (JSPs) concept is
appropriate, which allows a separation of content and
visualization. On the server, JSPs are compiled on first call
and a servlet is generated. A so called container for servlet
administration has to be implemented. This task is managed
by the reference implementation Tomcat (see Figure 2).
T
send to em LES Lan
FA ; T x Processing,
Me
HTTP-recuest get back | VM of | database
de se { I j
A MA — MQSEIVET SS BODeSS
e" e
HTTP-response ; arena iN
DCT SSA SRE
=k start servlets à
webserver (e.g, tomcat) — compile 25Ps
Figure 2. JSP technology
4.2 User Management
As already mentioned, it is necessary to introduce a user
management for adapting the training course to the learners’
knowledge. All information about user activities is stored in a
user database.
user
log ID 5 test log
ID Kin name Il ID
user ID password user ID
date date chapter ID
time time date
state time
question log chapter ID answered questions
ID assessment
user ID result log
question ID ID
date — user ID
time chapter ID
answer flag date
state time
Figure 3. Tables needed for user administration
After successful registration and authentication a new user
and several other tables are created, recording all information
needed for obtaining the user state and assessing the students'
capability (see Figure 3).
141
Each user record contains fields for user name and password,
date and fime of first registration. The s/ate and the
chapter id field gives information about the chapter which
has recently been worked on. These keys allow the user to
continue working at the point he had left the course before. In
the assessment column the performance ratio of the student is
stored. Information in the result log and question log tables
is needed for the calculation of this assessment value. More
details are given in chapter 4.4.
4.3 Administration of Chapters
The modular approach of the learning system requires
administration of course content, which is structured in
hierarchical chapters as seen in Figure 1. Storing
informations about the modules in a database allows
separation of context from the sequence of the tutorial. Once
the learning path is defined, linking the modules and
generation of the table of contents are processed
automatically. Later changes in course and structure will be
assisted by a seperate management tool, which will be
developed in the near future.
metadata
ter ID
author
keywords
date
name
order
directo
r af
estions
er
name lon
content
er ID
directo
arder
Figure 4. Data base tables for chapters
The structure of database tables used for chapter organization
is seen in Figure 4. An individual /D is assigned to each
chapter automatically by the system. The field name
characterizes the content and is used for building the main
menue of the training course. Directory describes the file
location in the file system. Other significant columns are
chapter id, which marks the relation of the chapter in the
hierarchical tree structure (compare with Figure 1), order,
number of questions and name long. As explaind by the
name, the order field is responsible for the sequenze the
learning path follows. Number of questions defines the
amount of questions the student has to answer in the specific
chapter throughout the test procedure, name long is used in
the automatically generated table of content which forms the
main menue of the training course (right column in Figure 8).
Level of difficulty in the content table influences the
sequence of the learning path. Depending on learners'
capability a simplier or more advanced course is offered. An
example of the MySQL user table is illustrated in Table 1.
Metadata information about the author, keywords and date of
creation are stored in a separate table which make the
chapters re-usable in future.
Corresponding to the entries in the database, all web pages
are stored in the appropriate directory. Up to now this is
handled manually, automatic support is planed in the future.