Architektur eines verteilten Lernobjektrepositoriums

Werbung
Architektur eines verteilten Lernobjektrepositoriums
Sascha Bobrowski, Olaf Nowaczyk
2006
Forschungsberichte
des Fachbereichs Elektrotechnik & Informationstechnik
ISSN 0945-0130
2/2006
Fachbereich Elektrotechnik
Lehrgebiete
Allgemeine und Theoretische Elektrotechnik
Prof. Dr.-Ing. R. Pregla
Datenverarbeitungstechnik
Prof. Dr.-Ing. B. Krämer
Informationstechnik
Prof. Dr.-Ing. W.A. Halang
Prozeßsteuerung und Regelungstechnik
Prof. Dr.-Ing. H. Hoyer
Optische Nachrichtentechnik
Prof. Dr.-Ing. J. Jahns
Herausgeber:
Satz:
Vertrieb:
Bauelemente der Elektrotechnik
Prof. Dr.rer.nat. W. Fahrner
Elektrische Energietechnik
Prof. Dr.-Ing. D. Hackstein
Elektronische Schaltungen
Prof. Dr.-Ing. H. Wupper
Kommunikationssysteme
Prof. Dr.-Ing. F. Kaderali
Prof. Dr.-Ing. B. Krämer
FernUniversität Hagen
Nur über Internet: http://www.fernuni-hagen.de/etit/fachbereich/forschung/index.html
Forschungsbericht 2/2006
Architektur eines verteilten Lernobjektrepositoriums
Sascha Bobrowski, Olaf Nowaczyk
2006
Zur Veröffentlichung empfohlen von Prof. Dr.-Ing. Krämer
© Sascha Bobrowski, Olaf Nowaczyk 2006
Architektur eines verteilten Lernobjektrepositoriums1
Sascha Bobrowski, Olaf Nowaczyk
FernUniversität in Hagen, 58084 Hagen, Germany
{sascha.bobrowski|olaf.nowaczyk}@fernuni-hagen.de
Kurzfassung
Die Gestaltung einer Architektur für ein Lernobjektrepositorium weist einige Besonderheiten auf, die es zu beachten gilt. Auf Grund der Hemmschwelle, Inhalte auf
einem zentralen Server einzustellen, was einen Verlust der Kontrolle über die Materialien bedeuten würde, ist für das CampusContent-Repositorium eine verteilte Architektur vorgesehen. Somit besteht die Möglichkeit, einen eigenen Server aufzusetzen, auf dem die Materialien bereitgestellt und allen Nutzern des Repositoriums zur
Verfügung gestellt werden. Weiterhin ist die Möglichkeit eines Schutzes von bestimmten Inhalten vorgesehen, um einen Zugriff nur mit bestimmten Rechten zu ermöglichen. Das vorliegende Dokument gibt einen Überblick sowohl über die voraussichtlichen Module und Funktionalitäten des Repositoriums, als auch einen
Ausblick auf die benötigten und verwendeten Technologien und physischen Ressourcen. Zur Trennung der verschiedenen Aspekte der Gesamtarchitektur werden
hierbei verschiedene Sichten verwendet, welche sich am Open Distributed Processing (ODP) Referenzmodell für offene, verteilte Datenverarbeitung ( ISO, 1996) orientieren.
Keywords: Repositorium, Architektur, CampusContent
1
Überblick
Aufgrund der Komplexität und des Umfangs der Gesamtarchitektur des CampusContentRepositoriums wurde im Folgenden eine logische Unterteilung in fünf aufeinander aufbauende Sichten vorgenommen (Abbildung 1). Eine Grundlage hierfür bot das Open Distributed
Processing (ODP) Referenzmodell für offene, verteilte Datenverarbeitung (ISO, 1996). Dieses
stellt einheitliche Konzepte und Regeln bereit, um eine Architektur für verteilte Anwendungen umfassend zu beschreiben und hierbei auch die besonderen Anforderungen an verteilten
Anwendungen wie Transparenz der Verteilung, Flexibilität von Anwendungskomponenten
und Portabilität auf andere Plattformen zu modellieren. Um eine hohe Verfügbarkeit der Infrastruktur zu gewährleisten und den am Leistungszentrum beteiligten Autor(inn)en und Institutionen einen hohen Grad an Autonomie im Hinblick auf Organisation und Betrieb des von
Ihnen genutzten Teils des Leistungszentrums einräumen zu können, wird im Projekt eine verteilte Architektur bevorzugt. Dies ermöglicht es den Lehrenden verschiedener Institutionen
1
Dieser Beitrag ist entstanden im Rahmen des Forschungsprojektes "CampusContent"
(http://www.campuscontent.de), das unter der Kennziffer 44200719 von der Deutschen Forschungsgemeinschaft (DFG; http://www.dfg.de) gefördert wird.
-1-
ihre Materialien auf ihren eigenen Rechnern zu halten, was die Kontrollmöglichkeiten erhöhen und die Hemmschwelle zur Einstellung von Lernmaterialien senken dürfte.
Um die hohe Komplexität einer verteilten Anwendung besser erfassbar zu machen, wurden unterschiedliche Sichten eingeführt, die so genannten Viewpoints. Das ODP Referenzmodell bietet fünf Viewpoints an, die jeweils unterschiedliche Aspekte und Phasen in der Entstehung als auch beim Betrieb einer verteilten Anwendung abdecken, ohne sich dabei
wesentlich zu überschneiden. In Rahmen dieses Papiers sollen noch keine Spezifikationen
abgeben werden, sondern verschiedene Alternativen vorgestellt und verglichen werden und
unter Umständen eine unverbindliche Empfehlung abgegeben werden.
Abbildung 1: Viewpoints des CampusContent-Repositorium
2
Enterprise Viewpoint
Wesentliche Aspekte des „Enterprise Viewpoints“ sind die Modellierung der Zielsetzungen,
Verfahren und Regeln (vgl. SAGA, 2003:32) der Anwendung. Zentrales Ziel von CampusContent ist die Bereitstellung einer Infrastruktur für den Austausch von Lehr- und Lernmaterialien zwischen verschiedenen Institutionen und damit eine Förderung der Wiederverwendung, sowie die Entwicklung eines Systems zur Unterstützung der Lehrenden bei der
Erzeugung und Nutzung didaktischer Szenarien. Weiterhin sollen im Rahmen von CampusContent die Lernmaterialen mit pädagogischen Funktionen wie Lernzielen und Handlungsempfehlungen angereichert werden, um sie didaktisch „aufzuwerten“. Für das geplante Repositorium ergeben sich daraus Anforderungen an geeignete Werkzeugfunktionen und die
Gestaltung der Benutzungsschnittstelle des Repositoriums.
-2-
Abbildung 2 gibt einen Überblick über die geplante Architektur und eine mögliche Organisation der Zugriffsrechte auf die Inhalte des verteilten CampusContent-Repositoriums.
Abbildung 2: Verteilungsarchitektur und Nutzergruppen des CC-Repositoriums
Das verteilte Repositorium in Abbildung 2 besteht aus insgesamt n Installationen der
Software bei verschiedenen Institutionen (Universitäten, Fachhochschulen). Die unterschiedlich schraffierten Flächen der Teilrepositorien und Anwendergruppen in Abbildung 2 haben
dabei folgende Bedeutung. Die Schraffuren bei den Repositorien stehen für einen Anteil geschützter Inhaltsobjekte, die nicht allgemein zugänglich sind und für die gesonderte Zugriffsrechte notwendig sind. In Abbildung 2 besitzt die dritte Anwendergruppe zum Beispiel die
erforderlichen Zugriffsrechte, um auf die geschützten Inhalte des zweiten Repositoriums
zugreifen zu können (identische Schraffur).
Das verteile Repositorium wird mit Inhalten durch verschiedene Domänengruppen gespeist. Domänengruppen umfassen Expertinnen und Experten desselben Fachgebietes, derselben Bildungseinrichtung, mit ähnlichen Interessen oder ähnlichem Profil, die Inhalte in das
Repositorium einstellen. Dabei ist es durchaus realistisch, dass eine Domänengruppe die In-3-
halte nur auf bestimmten, ihrer Institution zugehörigen Servern verwaltet. Die Anwendergruppen repräsentieren verschiedene Nutzergruppen, die Inhalte aus dem Repositorium beziehen. Bei den verschiedenen Gruppen in Abbildung 2 ist zu betonen, dass es sich dabei nur um
Rollen im softwaretechnischen Sinn handelt. Reale Personen können sowohl mehreren Anwender- als auch Domänengruppen zugehörig sein.
Kommuniziert wird mit dem System über eine Schnittstelle, welche verschiedene (Web-)
Services wie das Suchen, Publizieren und Herunterladen von Inhalten anbietet. Diese Schnittstellen werden im Computational Viewpoint genauer angegeben.
3
Information Viewpoint
Mit dem „Information Viewpoint“ werden die semantische Struktur und somit die inhaltlichen
Bezüge der modellierten Daten innerhalb der Anwendung festgelegt. Nach dem CampusContent-Modell werden Materialien begrifflich in möglichst didaktikfreie Informationsobjekte auf
der einen Seite sowie den damit verbindbaren Beschreibungen der intendierten Lernaktivitäten (Handlungsempfehlungen, Lernziele) auf der anderen Seite unterschieden (Heyer, 2005;
Heyer, 2006; Bobrowski, 2006). Der daraus zu erwartende Vorteil ist die Erhöhung der Wiederverwendbarkeit sowohl der fachspezifischen Inhalte, als auch der weitestgehend generisch
zu haltenden und damit vielseitiger einzusetzenden didaktischen Einbettung.
Abbildung 3: Information Viewpoint (Klassendiagramm aus Heyer, 2006)
-4-
Abbildung 3 zeigt, dass Informationsobjekte (im Diagramm als Resource bezeichnet) mit bestimmten Lernzielen verbunden werden können, welche einem intendierten kognitiven Prozess und einem Wissenstyp der Taxonomie Anderson & Krathwohls (2001) zugeordnet sind.
Die Klasse Educational_scenario ist im obigen Diagramm noch ein Platzhalter und ihre
Verbindung zu anderen Klassen ist zurzeit noch Gegenstand der Forschungsarbeit.
Für die Ressourcen können generische Lernziele empfohlen werden, welche sich am
Knowledge_type des Informationsobjektes orientieren. Weiterhin wird bei den Lernzielempfehlungen davon ausgegangen, dass sich für die verschiedenen Ausprägungen der Wissensdimension spezielle Ausprägungen der Prozessdimension am Besten eignen (Tabelle 1; Anderson & Krathwohl, 2001:239f). Für Faktenwissen eignet sich ein kognitiver Prozesse der
Kategorie Erinnern am Besten, während sich für konzeptuelles und prozedurales Wissen eher
Prozesse der kognitiv höherwertigeren Kategorien Verstehen und Anwenden anbieten.
Zusätzlich sind Lernziele noch von den Autoren frei definierbar und explizit einem Informationsobjekt zuweisbar, was unserer Meinung nach die semantisch hochwertigste Form
der Verbindung bildet.
Erinnern
Faktenwissen
Verstehen
Anwenden
███
Konzeptwissen
███
Prozesswissen
███
Tabelle 1: Zusammenhang Wissensart -> kognitiver Prozess (Ausschnitt aus der Anderson & Krathwohl
Taxonomie, 2001)
4
Computational Viewpoint
Hauptaufgabe des „Computational Viewpoints“ ist die Modellierung der einzelnen Komponenten des Repositoriums, sowie die Festlegung der Kommunikationsschnittstellen.
Abbildung 4 gibt einen Überblick über die vorgesehenen Komponenten des CampusContentRepositoriums. Dabei stellen Client-Programme über standardisierte Schnittstellen verschiedene Anfragen an vom System bereitgestellte und unabhängig voneinander funktionierende
Services.
-5-
Abbildung 4: Computational Viewpoint
4.1 Komponenten des Repositoriums
Folgende Komponenten gelten für ein Lernobjektrepositorium als essentiell und sollten auch
im CampusContent Repositorium Verwendung finden.
4.1.1
Benutzerverwaltung
Das Modul für die Benutzerverwaltung ist verantwortlich für das Nachhalten der Benutzerprofile, der Zugriffsrechte einer Person sowie sämtlicher Angaben einer Person, die für eine
gewünschte Personalisierung des Portals notwendig sind. Benutzerinnen steht es offen, Angaben zu ihrem für sie interessantem/relevanten Themenbereich zu machen, der bei einer Suche
nach Lernmaterialien voreingestellt ist. Weiterhin können persönliche Suchabfragen gespeichert werden, um sie zu einem späteren Zeitpunkt zu reaktivieren. Suchanfragen, die nicht
zum Erfolg führten, können als Filter für Services gespeichert werden, die bei der Ablage
eines neuen Objekts die gespeicherten Filter automatisch aktivieren und, sollte die Suchabfrage auf das neue Objekt passen, eine Meldung an die Besitzerinnen der passenden Filter
versenden.
4.1.2
Versionsmanagement
In das Repositorium eingestellte Materialen sollen von allen berechtigten Benutzern bearbeitet und damit verbessert werden können. Das Versionsmanagement stellt sämtliche Funktionalitäten zur Verfügung, um Varianten und Versionen von Lernmaterialien zu verwalten und
frühere Versionen wieder herzustellen. Bei einer Zusammenstellung verschiedener Materia-6-
lien zu größeren Einheiten kann es zu Inkompatibilitäten kommen, wenn eine Teileinheit einer zwischenzeitlichen Änderung unterzogen wurde. Daher sollten alle Versionen separat
gespeichert werden. Lehrende, welche diese Einheit in ihrem Kurs einsetzen, werden über
eine Alert-Funktionalität benachrichtigt, ob sie in ihrer Kurszusammenstellung auf die neue
Version umstellen möchten. Die separate Speicherung aller neuen Version ist allerdings sehr
aufwändig, speicherintensiv und bei kleineren Änderungen oft unnötig. Es gilt daher im Laufe
des Projektfortschritts einen Kompromiss zwischen möglichen Inkompatibilitäten und hohem
Aufwand zu finden.
4.1.3
Autorenwerkzeuge
Autorenwerkzeuge bieten verschiedene Möglichkeiten, bestehende Inhalte zu modifizieren
oder neue zu erstellen. Dabei müssen Funktionalitäten zum Einbinden von Grafiken, Videos
und anderen Multimedia-Elementen vorhanden sein. Gespeichert wird das neue erstellte Material im XML-Format, wobei eingebundene Elemente wie Grafiken innerhalb des XMLCodes referenziert werden.
4.1.4
Import / Export
Materialien aus anderen Repositorien und Lernmanagementsystemen (LMS) können über die
Import-Schnittstelle des CampusContent-Repositoriums eingepflegt werden. Weiterhin können Materialien exportiert werden, um sie in anderen LMS einsetzbar zu machen. Für das
Projekt CampusContent bieten sich verschiedene Austauschformate wie beispielsweise
SCORM an. Dabei wird die Version 1.2 von SCORM im Gegensatz zur Version
SCORM2004 bereits von nahezu jedem LMS unterstützt. Hierbei sei angemerkt, dass zwar
der eigentliche Inhalt exportiert werden kann, doch der didaktische Mehrwert in Form entsprechender Metadaten nach dem CampusContent-Modell verloren geht, da Bestandteile wie
zum Beispiel Handlungsempfehlungen, Lernziele und eine Einordnung in eine Prozess- und
Wissensdimension im SCORM-Standard nicht vorgesehen sind.
4.1.5
Ressourcenverwaltung
Hauptaufgabe dieses Moduls ist die Verwaltung sämtlicher Materialien (Informationsobjekte,
Übungsaufgaben, Lernziele etc.). Dazu gehören die physische Strukturierung auf den Dateiservern2 sowie die Sicherstellung der korrekten Adressierung der Materialien, um eine fehlerfreie Präsentation zu gewährleisten. Weiterhin speichert die Ressourcenverwaltung die Be2
Ob Fileserver zum Einsatz kommen oder die Lerninhalte als „Binary Large Objects“ (BLOBs) in der Datenbank gespeichert werden, ist bisher noch unklar.
-7-
schreibung der Zusammenstellung von Materialien zu größeren Einheiten und die Verknüpfung von Materialien. Ein Beispiel für eine solche Zusammenstellung ist die Gestaltung von
Lernobjekten im Projekt CampusContent. Dabei werden Informationsobjekte mit didaktischen
Aspekten wie Lernzielen, Handlungsempfehlungen und Übungsaufgaben „angereichert“.
4.2 Web-Services
Das CampusContent-Repositorium entspricht dem Aufbau einer Service-orientierten Architektur (SOA), wobei verschiedene Web-Services angeboten werden (vgl. Abbildung 4). Die
Kommunikation zwischen den Clients und dem verteilten Repositorium erfolgt dabei über das
Protokoll SOAP3. Eingehende Suchanfragen (suchen) werden an alle dem verteilten Repositorium zugehörigen Installationen der Software weitergeleitet und das Suchergebnis an die Benutzerin weiter gegeben (liefern). Suchanfragen ohne Ergebnis können im individuellen Nutzerprofil gespeichert werden. Falls im Zeitverlauf Materialien eingestellt werden, welche der
Suchanfrage entsprechen, wird die Benutzerin darüber in Kenntnis gesetzt (alarmieren). Webservices wie erzeugen und aktualisieren ermöglichen eine Erstellung neuer und die Modifikation bereits bestehender Materialien. Im Repositorium hinterlegte Materialien können über
den Dienst veröffentlichen freigegeben werden, wobei optional der Zugriff auf bestimmte
Nutzergruppen beschränkt werden kann. Weiterhin sollen sich alle Materialien über einen
bereitgestellten Service (kombinieren) miteinander zu größeren Einheiten zusammenstellen
lassen. Der Webservice „mit Lernzielen verbinden“ stellt eine wichtige Basisfunktionalität
des CampusContent Repositoriums dar. Wie im Information Viewpoint bereits spezifiziert,
werden didaktische Aspekte aus den Lernobjekten zunächst herausgetrennt um zu möglichst
didaktikfreien Informationsobjekten zu gelangen. Der Webservice bietet nun die Möglichkeit
die Informationsobjekte im Sinne einer „late composition“ mit verschiedenen Lernzielen zu
verbinden um eine Anpassung an verschiedene Nutzungsumfelder zu ermöglichen
(Bobrowski, 2006). Analog hierzu sind Mechanismen zur Verbindung von Informationsobjekten mit Übungsaufgaben und Handlungsempfehlung vorgesehen.
5
Engineering Viewpoint
Der „Engineering Viewpoint“ beschreibt die Verteilung eines Systems auf physische Ressourcen und gibt die Verbindungen zwischen den einzelnen Elementen wieder. Hierzu gehören beispielsweise Rechner- und Kommunikationsinfrastrukturen sowie die verschiedenen
3
seit Version 1.2 keine offizielle Abkürzung mehr. Davor die Abkürzung für Simple Object Access Protocol.
-8-
Arten von Software-Plattformen, die in verteilten Systemen zum Tragen kommen. Auch wenn
für die Erstellung eines Funktionsprototyps Gesichtspunkte wie Performanz unter großer Last,
Skalierung, Verteilung und Hochverfügbarkeit zunächst nachrangig sind, sollten diese trotzdem möglichst früh in den Planungen mitbedacht werden, um eine spätere Erweiterung auf
den Produktivbetrieb zu erleichtern. Die hierbei zu bedenkenden Punke (vgl. BSI, 2004) sind:
Skalierbarkeit von Systemen und Infrastruktur
Das geplante Repositorium muss sowohl bezüglich Anzahl und Umfang der abgelegten Inhalte, als auch bezüglich der Nutzerzahl möglichst gut skalierbar sein. In einem verteilten System
sind Replikationsmechanismen für Nutzerprofile, rechnerübergreifende Single-sign-onMechanismen (Blum, 2004) und eine standortübergreifende Indizierung der Inhalte, etwa
durch Vergabe einer eindeutigen Netzwerkkennung (global_DOI), vorzusehen.
Höchstmögliche Verfügbarkeit
Hierzu gehört sowohl die zuverlässige, robuste Zugreifbarkeit auf die Systeme im Sinne einer
Rund-um-die-Uhr-Verfügbarkeit, als auch eine hohe Verfügbarkeit der bereitgestellten Funktionalität auf möglichst vielen Client- und Server-seitigen Plattformen.
Physischer Schutz der Systeme
Für den Produktivbetrieb sollte beachtet werden, dass die Rechnersysteme in dafür speziell
ausgerüsteten Räumen des jeweiligen Rechnerbetriebs bzw. Hochschulrechenzentrums unterzubringen sind. Diese sind zumeist mit einer redundanten Stromversorgung und Klimatisierung zum Schutz der Rechner vor Überhitzung ausgestattet. Datensicherungen müssen regelmäßig nach einem Datensicherungsplan von dafür geschultem Personal durchgeführt und an
einem sicheren (feuerfesten) Ort, getrennt von den Rechnersystemen gelagert werden.
Ein Vorschlag für den Engineering Viewpoints des CampusContent Repositoriums ist in
Abbildung 5 gegeben. Hierbei ist für jeden CampusContent-Standort eine aus Datenbank-,
Applikations- und Web-Server bestehende Infrastruktur vorgesehen. Diese drei Server sind
sauber durch Protokolle getrennt und der optimale Ansatzpunkt für eine Skalierung. Für den
bei CampusContent im ersten Projektabschnitt geplanten Prototyp soll die Skalierung zunächst jedoch in die andere Richtung betrieben werden, indem Datenbank-, Applikations- und
Web-Server auf einem einzelnen Prozessor ausgeführt werden. Mit der Vorwegplanung von
Schnittstellen und Protokollen, die zunächst einen Mehraufwand darstellt, wird eine spätere
Erweiterung und Verteilung der Ressourcen entscheidend erleichtert.
-9-
- 10 Abbildung 5: Engineering Viewpoint
5.1 Authentifizierungsserver
Wie in Abbildung 5 zu sehen, wird der Zugang zu den an verschiedenen Standorten verteilten
Repositorien durch eine zentrale Authentifizierungsstelle gewährt. Diese Stelle verwaltet die
Nutzerprofile und Zugangsberechtigungen der registrierten Benutzerinnen. Da es sich hierbei
um personenbezogene Daten handelt, erfordert der Authentifizierungs-Server besondere technische und organisatorische Maßnahmen, um die Datensicherheit konform zum Bundesdatenschutzgesetz4 zu gewährleisten.
5.2 Datenbankserver
Der Datenbank-Server dient zur Speicherung der Referenzen auf die auf dem Dateiserver5
befindlichen (Lern-)Inhalte des Repositoriums. Weiterhin werden in ihm auch von den Benutzern erstellte Strukturierungen der Mediendateien abgelegt. Für die konkrete Ausprägung
empfiehlt es sich aus verschiedenen Gründen, die an dieser Stelle aus Platzgründen nicht diskutiert werden sollen, eine bewährte relationale Datenbank zu verwenden. Als Standardsprache für die Abfrage und Manipulation von Daten in relationalen Datenbanken hat sich SQL
(Structured Query Language) etabliert. Dieser standardisierte Zugang, der gleichzeitig auch
die Austauschbarkeit zwischen verschiedenen Open-Source und kommerziellen Datenbankimplementierungen ermöglicht, wird daher auch für das CampusContent-Repositorium empfohlen. Ein direkter Zugriff auf die Datenbankinhalte durch die Benutzerinnen wird ähnlich
wie schon beim Authentifizierungs-Server unterbunden. Stattdessen wird ausschließlich der
mittelbare Zugriff über die im Folgenden dargestellten Applikations- und Web-Server erlaubt.
5.3 Applikationsserver
Der Applikations-Server stellt den Benutzern verschiedene Dienste in Form von standardisierten Web-Services zur Verfügung (siehe hierzu das Kapitel Web-Services im Computational
Viewpoint). Für den Engineering Viewpoint gesondert herauszustellen sind hier die Replikations- und Indexmechanismen, mit denen ein transparenter, standortübergreifender Zugriff auf
Medieninhalte in verteilten Repositorien ermöglicht werden kann. Mithilfe einer Peer-to-PeerVerteilung können Inhaltsverzeichnisse und Metadaten beständig zwischen den Repositorien
abgeglichen werden, so dass unabhängig vom Einstiegspunkt eine Übersicht über den Gesamtverbund eingeholt werden kann. Alternativ hierzu wären auch Federated-Search-
4
http://bundesrecht.juris.de/bdsg_1990/ (siehe Anlage zu § 9 Satz 1, zuletzt geprüft am 19. Januar 2006)
Dateiserver sind in Abbildung 5 nicht berücksichtigt. Es ist auch möglich, sämtliche Lerninhalte als „binary
large objects“ in der Datenbank zu speichern, womit keine Referenzen mehr notwendig wären.
5
- 11 -
Mechanismen denkbar, die erst im Falle einer konkreten Anfrage entfernte Repositorien über
entsprechende Web-Services durchsuchen. Diese Lösung ist sicherlich weniger aufwändig in
ihrer Implementierung, bedeutet auf Seiten der Benutzer jedoch wesentlich höhere Wartezeiten.
5.4 Webserver
Der Web-Server bietet über das Hypertext Transfer Protokoll (HTTP) einen Zugriff auf die
CampusContent-Inhalte nach außen an, so dass diese unter Verwendung eines StandardBrowsers eingesehen werden können. Er ist verantwortlich für die Verwaltung und korrekte
Auslieferung der vom Applikationsserver generierten Webseiten und damit der Haupteinstiegspunkt in das Repositorium. Über diese Webseiten erfolgt ein Zugriff auf die verschiedenen in Form von Services angebotenen Funktionalitäten des Repositoriums.
6
Technology Viewpoint
Im technologischen Viewpoint werden die Standards und Techniken, welche bei der Implementierung des Repositoriums von Bedeutung sind, spezifiziert. Die hier vorgestellte 4Schichten-Software Architektur entstand unter dem Einfluss verschiedener Grundsatzentscheidungen. Diese beinhalteten vor allem ein komponentenbasiertes Schema für eine schnellere Entwicklung von flexibleren Anwendungssystemen von höherer Qualität und zu reduzierten Kosten.
Auf Grund der Anforderungen für die Verwendung bestimmter Präsentationsformate und
der einfachen Zugriffsmöglichkeit über einen Internetbrowser wurde der technologische
Viewpoint anhand der von Alonso (2004:6f) vorgeschlagenen vier Teilschritte eines TopDown-Entwurfs vorgenommen.
- 12 -
Abbildung 6: Vier-Schicht Architektur des CC-Repositoriums
6.1 Clientschicht
Der Clientzugriff auf das CampusContent Repositorium sollte keine spezielle Software benötigen, sondern per Browser erfolgen können. Bei einer gewünschten Zugriffsmöglichkeit per
PDA oder Mobiltelefon sind auf Grund des erheblich kleineren Formats des Ausgabegerätes
verschiedene Technologien und Standards in der Präsentationsschicht zu berücksichtigen.
6.2 Präsentationsschicht
Für den Zugriff per Webbrowser sind dabei etablierte Auszeichnungssprachen wie HTML6
und XML7 vorgesehen sowie CSS8 zur W3C-konformen Formatierung der Webseiten. Für
Mobiltelefone und andere Ausgabemedien mit kleinem Bildschirm ist HTML nicht konzipiert
und nur eingeschränkt brauchbar. Für diesen Bereich haben sich Standards wie UMTS9 und
GSM10, sowie Auszeichnungssprachen wie WML11 durchgesetzt (Krämer, 2005). Bei der
Verwendung von Java als Programmiersprache, kommen unter Umständen noch Technologien wie Applets und Java Server Pages zum Einsatz. Weiterhin können die HTML-Seiten
durch dynamische Javascript-Inhalte ergänzt werden. Zu beachten ist hierbei, dass nicht jeder
6
Hypertext Markup Language
eXtensible Markup Language
8
Cascading Stylesheets
9
Universal Mobile Telecommunications System
10
Global System for Mobile Communications
11
Wireless Markup Language
7
- 13 -
Benutzer Javascript in seinem Browser aktiviert hat. Daher ist auch im Hinblick auf eine einzuhaltende Barrierefreiheit darauf zu achten, dass Javascript zwar verwendet, doch keine
Grundvoraussetzung für die Benutzung der Funktionalitäten des Repositoriums sein darf.
6.3 Mittelschicht
Die Mittelschicht beinhaltet die wesentlichen Bestandteile der Anwendungslogik. Dabei werden die Daten aus der Persistenzschicht die durch Datenbanksysteme realisiert wird, gelesen,
durch die Anwendungslogik modifiziert und schließlich der Präsentationsschicht übergeben.
Für die Implementierung der Anwendungslogik kommen als mögliche Alternativen J2EE in
Kombination mit einem Application-Server, J2SE mit Tomcat als Servlet-Engine oder PHP in
Kombination mit dem Webserver Apache in Frage. Für die Entwicklung von Anwendungen,
dessen Bestandteile auf Wiederverwendung ausgelegt sind, hat sich Java 2 Enterprise Edition
(J2EE) als besonders geeignet herausgestellt. Dabei ist die Enterprise Edition von Java mit
seinen Programmierschnittstellen und Bibliotheken speziell für die Entwicklung von komponentenbasierter Software ausgelegt. Gegenüber der Standard Edition von Java werden unter
anderem Technologien wie Enterprise Java Beans (EJB) und WebServices geboten. Die
Zugriffe auf die Datenbank erfolgen mit Hilfe von Java Database Connectivity (JDBC). Zur
Bereitstellung einer Laufzeitumgebung für J2EE Komponenten wird ein spezieller Application-Server (vgl. Abbildung 6) benötigt. Wichtige Vertreter der kommerziellen ApplicationServer sind BEA WebLogic, IBM WebSphere und die Application Server von Oracle und
SAP. Unter den Open Source Application Servern ist vor allem JBoss zu nennen. JBoss
zeichnet neben seinen niedrigen Kosten vor allem seine Stabilität und seine Standardkonformität aus.
Die Standardedition von Java erlaubt die Erstellung von „normalen“ Java Beans, welche
in Java Server Pages (JSP) eingebunden werden können. Die Java Server Pages werden dabei
von Tomcat in Servlets übersetzt, was eine Ausführung in der Servlet Engine ermöglicht.
Verschiedene Frameworks wie zum Beispiel Struts bilden bei beiden Java Editionen eine robuste Grundlage für die Entwicklung von umfangreichen Web-Applikationen.
Als Alternative für einfache E-Learning Anwendungen bietet sich als Programmiersprache (die Skriptsprache) PHP in der Version 4.X oder 5.X an in Kombination mit Apache als
WebServer an. PHP wurde speziell für die Bedürfnisse des Webs entwickelt und verfügt über
eine sehr große Nutzergemeinschaft. Mit der Version 5 wurde die in der vorigen Version eingeführte Objektorientierung weiter ausgebaut. Auf Grundlage der Programmiersprache PHP
- 14 -
wurden im Rahmen der CampusSource12 Initiative bereits verschiedene Learning Management Systeme wie Moodle oder ILIAS realisiert.
6.4 Persistenzschicht
Für die Speicherung der Daten der Benutzer und für die Ressourcenverwaltung bieten sich in
der Persistenzschicht verschiedene Datenbankmodelle an. Während das hierarchische und das
Netzwerkdatenbankmodell zunehmend an Bedeutung verlieren und nur noch in Spezialfällen
eingesetzt werden, besitzen aus heutiger Sicht das relationale und das objektorientierte Datenbankmodell die größte Relevanz.
In relationalen Datenbanken werden die Daten in verschiedenen zweidimensionalen Tabellen gespeichert. Dabei bildet jede Spalte der Tabelle ein Attribut und jede Zeile einen Datensatz (auch Tupel genannt). Jeder Datensatz verfügt in der Regel über einen eindeutigen
Primärschlüssel. Die Verknüpfungen der einzelnen Tabellen untereinander sind über Fremdschlüssel realisiert.
Objektorientierte Datenbanken speichern ihre Daten in Form von Objekten im Sinne der
objektorientierten Programmierung. Ein Objekt ist hierbei ein Exemplar einer Klasse, welche
durch eine Menge von Attributen und Methoden definiert ist. Die Vorteile von objektorientierten Datenbanken gegenüber den relationalen Datenbanken sind unter anderem die Möglichkeiten, Klassen ineinander zu schachteln (d.h. ein Objekt einer Klasse ist Ausprägung eines Attributes einer anderen Klasse) und die Verwendung von Vererbungsstrukturen.
Nachteile gegenüber relationalen Datenbanken sind die geringere Verbreitung und die etwas
schlechtere Performance.
12
http://www.campussource.de
- 15 -
Literatur
Alonso, Gustavo; Casati, Fabio; Kuno, Harumi; Machiraju, 2004: Web-Services − Concepts,
Architectures and Applications, Springer Verlag Berlin, 2004
Anderson, Lorin W.; Krathwohl, David R. [Eds.], 2001: A Taxonomy For Learning, Teaching, And Assessing : A Revision of Bloom’s Taxonomy of Educational Objectives, Complete
Edition. New York: Addison Wesley Longman.
Blum, Thorsten, 2004: Entwicklung eines Single-Sign-On-Verfahrens auf Basis einer Certification Authority für verteilte Web-Systeme zur Integration und sicheren Nutzung angebotener
Dienste, 2004, Forschungsbericht, ISSN 0945-0130 1/2004, http://www.fernunihagen.de/etit/fachbereich/forschung/ForBer1-2004_blum.pdf, geprüft am 16.03.2006
Bobrowski, Sascha; Nowaczyk, Olaf: Übertragung softwaretechnischer Entwurfsmethoden
auf die Entwicklung wieder verwendbarer E-Learning Inhalte, 2006, eingereicht für Gesellschaft für Medien in der Wissenschaft e.V., GMW06
BSI, 2004: IT-Grundschutzhandbuch, Bundesamt für Sicherheit in der Informationstechnik,
November 2004, http://www.bsi.bund.de/gshb/deutsch/index.htm , geprüft am 01.02.2006.
Heyer, Susanne, 2005: An Analysis of Learning Resources Using a Cognitive Process Taxonomy, International Conference Interactive Computer Aided Learning 2005: Ambient and Mobile Learning . Kassel: Kassel University Press.
Heyer, Susanne, 2006: Pedagogical Enrichment of Information Objects, eingereicht für Integrated Design and Process Technology, IDPT-2006
ISO, 1996: ISO/IEC 10746-3: Information Technology − Open Distributed Processing − Reference Model: Architecture, Genf 1996
Krämer, Bernd, 2005: Mobile Learning: The Next Generation of Learning, FernUniversität’s
Contributions to the 2nd Year of the Leonardo Project mlearn2, 2005, http://www.fernunihagen.de/etit/fachbereich/forschung/Forschungsbericht_5_2005.pdf, geprüft am 16.03.2006
SAGA, 2003 − Standards und Architekturen für E-Government-Anwendungen Version 2.0,
http://www.kbst.bund.de/Anlage304275/SAGA-Dokument+Version+2.0+(2,3+MB, geprüft
16.01.2006
- 16 -
Herunterladen