Feinspezifikation von serverzentrierten Web Quizzes ◦ Überblick ◦ ?

Dieses Beispiel veranschaulicht eine einfache Feinspezifikation, die von den bereits vorliegenden Produkten Access Quizzes und Clientzentrierte Web Quizzes ausgeht. Die Feinspezifikationen vieler betrieblicher Anwendungen sind komplexer und können Monate beanspruchen. Sie unterscheiden sich vom Projekt "Web Quiz" vor allem durch aufwändige Befragungen der künftigen Benutzer und des Auftraggebers.

### Einleitung

Die folgende Tabelle beschreibt ausgewählte Methoden der Anzeige und Änderung von Daten auf dem WWW:

Methode | Funktionalität | Entwicklungsaufwand | Server-Software | Client-Software
HTML-Seiten | Statische Daten anzeigen (Daten zur Exportzeit) | gering |  | beliebiger Browser
Data Access Pages (Datenzugriffsseiten) | Access-/SQL Serverdaten interaktiv anzeigen und beschränkt editieren lassen (Daten zur Anzeigezeit) | durchschnittlich | MS-kompatibler Web Server | MS Office, Internet Explorer
Active Server Pages (ASP) | Dynamische Serverdaten interaktiv anzeigen und voll editieren lassen | gross | MS-kompatibler Web Server, ADO, HTML, ASP-kompatible Programmiersprache | beliebiger Browser

1. C lientzentrierte Web Quizzes basieren auf der grün markierten Methode exportierter HTML-Seiten. Ein Klick auf die Schaltfläche »Web Quiz mit Selbstkorrektur des Formulars Tests ausgeben exportiert einen Quiz als DHTML-Code. Der Testteilnehmer kann die exportierte Datei in den Web Browser laden und die Aufgaben lösen.
2. Eine serverzentrierte Variante überlässt die Auswertung und ev. auch die Darbietung von Quizaufgaben einem zentralen Netzrechner. Zur Implementation eignen sich zum Beispiel Data Access Pages oder Active Server Pages: Data Access Pages sind zwar anwendungs- und entwicklungsfreundlich, erfordern aber für jeden Client eine Office-Lizenz. Trifft diese Voraussetzung nicht zu, so bieten sich für Microsoft-kompatible Web Server Active Server Pages an.

Die folgende Spezifikation eines serverzentrierten Web Quiz ist einfach, weil sie von zwei ähnlichen, bereits bestehenden Komponenten ausgeht, nämlich von den Spezifikationen einer Access Quiz-Komponente und einer clientzentrierten Variante des Web Quiz. Achten Sie deshalb darauf, dass sich Ihre Benutzerschnittstelle möglichst wenig vom Access Quiz-Interface unterscheidet.

### A Produktumgebung

Die Generierung von Web Quizzes ist eine Funktion des Anwendungspakets TESTS. TESTS kann Aufgaben standalone, über ein lokales Netzwerk oder auf dem World Wide Web verwalten:

1. Die Autorenkomponente Testverwaltung.mdb verwaltet Aufgabenbanken für schriftliche Klausuren und interaktive Tests. Sie erlaubt die automatische Bewertung und Analyse von Aufgaben und TestteilnehmerInnen. Alle Aufgabentypen lassen sich auf dem Drucker ausgeben und schriftlich lösen.
2. Die Darbietungskomponente lässt Testteilnehmer Mehrfachwahl- und Zuordnungsaufgaben unter Access oder Internet Explorer interaktiv bearbeiten.

### B Funktionalität

Durch einen Klick auf »Web Quiz exportieren exportiert die Testautorin den Code und die Daten als serverzentrierten Web Quiz, der sich mit Internetanschluss bearbeiten lässt. Die Korrektur erfolgt off line in der Autorenkomponente. Eine Änderung der Datenbankstruktur von TESTVERWALTUNG_BACKEND ist nicht erforderlich. Web Quizzes verwenden die gleichen Tabellen wie Access Quizzes. Auch die Benutzerschnittstellen für Web und Access Quizzes soll gleich sein. Auch das Startformular von Web Quiz enthält die folgenden Menüpunkte:

- Ein Klick auf »Test lösen führt zu einem Menü jener Aufgaben, welche die Testautorin in der Autorenkomponente als serverzentrierten Web Quiz definiert hat (vgl. Test lösen in Access Quiz).

- Der Bericht »Musterlösung anzeigen gibt die richtigen Antworten auf dem Bildschirm oder Drucker aus (vgl. Musterlösung ausgeben in einem Access Quiz). Er kann nur gewählt werden, wenn die Testautorin die Korrektur durch den Testteilnehmer erlaubt.

- Spätestens wenn der Bearbeiter »Test verlassen und ev. abgeben gewählt hat, werden die Quizantworten in der Serverdatenbank TESTVERWALTUNG_BACKEND gespeichert.

Achten Sie darauf, dass die Formulare des Web Quiz möglichst wenig von den entsprechenden Access Quiz-Formularen abweichen.

### C Entwicklungsumgebung

- Der Quiz muss ohne Access-Lizenz lauffähig sein. Dies schliesst die Verwendung von Datenzugriffsseiten (Data Access Pages) aus.

- Die Wahl der Werkzeuge ist didaktisch motiviert: Die Implementation soll für Studierende mit Erfahrung in Access und Visual Basic sowie Grundkenntnissen in HTML und ASP verständlich sein. Achten Sie deshalb auf gut lesbaren und dokumentierten Code.

- Wählen Sie eine der folgenden Client/Server-Implementationen:

> 1. Export einer Clientdatei pro Test

> > Exportieren Sie aus der Autorenkomponente - ähnlich wie bei clientzentrierten Web Quizzes - eine Clientdatei, die wie bei Access Quizzes mit Fremdkorrektur nur dann über ASP mit dem Server kommunizieren muss, wenn der Quizteilnehmer seine Antworten abgibt. Vorteil dieser Lösung ist die geringe Abhängigkeit vom Server und die minimale Netzbelastung. Nachteilig ist hingegen, dass für jeden Test eine neue Clientdatei verteilt werden muss.

> 1. Zugriff aus einer gleichbleibenden Clientdatei auf die Server-Aufgabenbank

>    Gehen Sie von einer gleichbleibenden Client-Datei aus. Diese greift je nach Test auf unterschiedliche Aufgaben von TESTVERWALTUNG_BACKEND zu. Die Autorin spezifiziert in der Autorenkomponente den jeweils aktuellen Quiz. Die Antworten werden dem Server (ähnlich wie bei Web Quizzes mit Fremdkorrektur) erst nach Beendigung des Web Quiz übermittelt. Nachteil ist die stärkere Abhängigkeit vom Server und die etwas grössere Netzbelastung, Vorteil der geringere Aufwand bei der Testvorbereitung (gleichbleibende Clientdatei).

### D Vorgehen

1. Access Quizzes und clientzentrierte Web Quizzes beziehen die Quizaufgaben aus der zuvor generierten Access-Datenbank QUIZ_BACKEND. Diese Datenbank besteht aus einer vom Testautor gewählten Teilmenge von TESTVERWALTUNG_BACKEND. Studieren Sie das Datenbankmodell von QUIZ_BACKEND, damit Sie erkennen, welche Testdaten aus TESTVERWALTUNG_BACKEND stammen.

2. Entwickeln Sie mit einem HTML-Autorenwerkzeug (zum Beispiel FrontPage) einen Beispielquiz, der unter Internet Explorer 5.0 oder später abläuft. Gehen Sie der Einfachheit halber von einer festen Zahl von Aufgaben aus.

3. Abstrahieren Sie vom konkreten Beispielquiz und wählen Sie eine ASP-Struktur, die eine beliebige Anzahl von Testfragen und Zuordnungspaaren erlaubt. Trennen Sie dabei systematisch zwischen Template und Platzhaltern.

4. Implementieren Sie in der Autorenkomponente Testverwaltung.mdb die Ereignisprozedur BtnWebQuizMitFremdkorrektur() so, dass der markierte Testtermin mit Hilfe von ASP-Seiten als Web Quiz dargeboten werden kann.

Feinspezifikation einer clientzentrierten Web Quiz-Variante

Spezifikation