TU Wien | ZID | ZIDline 9 | TUWIS++

Das Informationssystem TUWIS++

Edmund Dvorak
Zentrale Verwaltung, ADV-Abteilung

edmund.dvorak@tuwien.ac.at

TUWIS++ ( tuwis.tuwien.ac.at ) ist die web-basierte und objektorientierte Erweiterung des seit vielen Jahren bestehenden Informationssystems TUWIS ( www.tuwien.ac.at/ud/ ). TUWIS dient der Beschaffung, Sammlung, Aufschließung und Verbreitung von Informationen über den Lehr- und Studienbetrieb und der Information der Universitätsleitung sowie aller an der TU Wien interessierten Personen.

TUWIS ist eine Eigenentwicklung der ADV-Abteilung der Zentralen Verwaltung, verfügt über einen Datenbestand, der bis in das Jahr 1968 zurück reicht, und wird an der Technischen Universität Wien, an der Universität für Bodenkultur, an der Veterinärmedizinischen Universität und an der Universität für Musik und Darstellende Kunst eingesetzt. TUWIS basiert auf einer ORACLE-Datenbank, deren Datenmodell in den vielen Jahren seines Bestehens den jeweiligen Bedürfnissen der Fachabteilungen der Zentralen Verwaltung laufend angepasst worden ist. Die TUWIS++-Datenbank setzt auf dieser TUWIS-Datenbank auf und ermöglicht gemeinsam mit dem Zope-Programmsystem die Web-Anbindung von TUWIS.

Ziele von TUWIS++

Vorrangiges Ziel von TUWIS++ ist die Schaffung eines zentralen Web-Portals für alle Mitarbeiter, Vortragenden und Studierenden, das jedem anonymen Benutzer einen möglichst übersichtlichen Zugang auf alle offen zugänglichen Informationen der TU Wien erlaubt. Dem authentifizierten Benutzer liefert es seine individuelle Sicht auf die zentral verfügbaren Daten in jener Form, wie er sie für seine tägliche Arbeit benötigt.

Ziel von TUWIS++ ist es auch, Verwaltungsabläufe klarzulegen, Papierversendungen so weit als möglich zu vermeiden und Unterschriften durch eine elektronische "Zustimmung" zu ersetzen. Da die Übertragung dieser oft zahlungsrelevanten Informationen nicht nur im Intranet innerhalb der TU Wien möglich sein soll, sondern von jedem Rechner weltweit, ist nach dem Einloggen eine Verschlüsselung mit https vorgesehen.

TUWIS++ wird nach den Grundsätzen der höchstmöglichen Effizienz weiter ausgebaut. Unter "höchstmöglicher Effizienz" verstehen wir das Verhältnis von Häufigkeit und Nutzen der möglichen Verwendung zum dafür notwendigen Entwicklungs- und Betreuungsaufwand. Das soll heißen, dass jene Dinge mit Priorität behandelt werden, die mit wenig Aufwand den größt- möglichen Nutzen versprechen.

Entwicklungskonzept

Um Zeit und Kosten zu sparen wurden in der Entwicklung die ausgezeichneten Early Prototyping Eigenschaften von Zope (c2.com/cgi/wiki?EarlyPrototyping) eingesetzt. Wir haben versucht, durch flexibles Software-Design TUWIS++ nach Bedarf und nach verfügbarer Entwicklungskapazität zu erweitern und zu verbessern. Dadurch wird es möglich, mehrfach geäußerte Verbesserungsvorschläge und Wünsche der Anwender einfacher und rascher zu realisieren.

TUWIS++ soll leben und Leben ist Veränderung. So wird bewusst in Kauf genommen, dass sich bestimmte, bereits gewohnte Menüstrukturen ändern können und bestimmte Informationen an anderer Stelle auftauchen. Wir sind überzeugt, niemand ist unfehlbar und allwissend und auch bei jeder noch so vollständigen und langfristigen Planung hätte es jede Menge an Veränderungen geben müssen. Gerade im Jahre 2003, mit den gravierendsten Veränderungen an den Universitäten seit Beginn des EDV-Einsatzes (Vollrechtsfähigkeit, neue Fakultätengliederung, SAP-Einsatz), erscheint uns das der richtige und eigentlich der einzig mögliche Ansatz.

Abbildung 1

Beispiel: Hörsaalbelegung EI 7, Anfang November 2003

Die technische Entwicklung mit dem Verfall der Hardwarepreise und der weltweiten Verfügbarkeit der gleichen Programme auf allen Plattformen ermöglicht allen Mitarbeitern und Studierenden zu relativ geringen Kosten einen Zugang zu einem zentralen Datenbestand, ohne Rücksicht auf  Standort und eingesetzte Hardware.

Häufig auftretende Verwaltungsvorgänge, die schon bisher in traditioneller Weise mit Formularen abgewickelt worden sind, werden als Web-Formulare angeboten, vom eingeloggten Antragsteller ausgefüllt und an die zuständige Fachabteilung elektronisch weitergeleitet, wobei jede involvierte Stelle den Ablauf (Workflow) verfolgen und die Daten sofort am Ort der Entstehung ergänzen kann. Jedes Ausfüllen von Papierformularen bzw. jeder Ausdruck von ausgefüllten Formularen führt zwangsweise zu Doppelarbeit, wenn die Daten weiter verarbeitet werden sollen. Unabhängig vom manipulativen Aufwand und vom Zeitverlust beim Versand entsteht vor allem durch fehlerhafte oder unvollständige Anträge auf Papier beträchtliche Mehrarbeit für die Ausfüllenden und für die Fachabteilung  ("Papier ist geduldig").

Alle Zugriffsrechte in TUWIS++ sind in Rollen zusammengefasst und an beliebig definierbare Personengruppen delegierbar. Berechtigte Benutzer können jede ihrer Rollen bei Bedarf an Personen ihres Vertrauens weitergeben und, sollte dieser Bedarf nicht mehr gegeben sein, auch diesen Personen wieder entziehen Es gibt daher keine Notwendigkeit, mit Zustimmung des Inhabers einer Rolle unter "falschem Namen" zu arbeiten.

Dies kann immer wieder zu Missverständnissen und Verwirrung führen und erschwert außerdem die Fehlersuche oft enorm.

Datenqualität

Die weite Verbreitung des Internets ist als Chance für die Verbesserung der Datenqualität zentraler Datenbestände zu sehen. Nur wenn alle Betroffenen ihre individuelle Sicht auf die Daten erhalten und diese auch wahrnehmen, wird es möglich sein, die Daten laufend zu aktualisieren, zu vervollständigen und die Datenqualität zu verbessern. Nicht laufend in Verwendung befindliche Daten entwickeln sich recht rasch zu "Datenfriedhöfen" ohne praktischen Nutzen. Eine hohe Datenqualität ist aber die Voraussetzung für die Akzeptanz des ganzen Systems und damit für den effizienten Ablauf der Verwaltungsvorgänge.

Nicht der Zwang zur Verwendung eines Informationssystems kann dessen Verbreitung sichern, sondern nur der Nutzen für jede individuelle Benutzergruppe.

So ist immer zwischen Erhebungsaufwand und potentiellem Nutzen abzuwägen, bevor neue Daten von Benutzern eingefordert werden dürfen. Der Bedarf an Daten ist fast immer von jenen gegeben, die mit der Erhebung nichts zu tun haben wollen - aber die Lust und Zeit zum Erheben und Einfordern dieser Daten ist naturgemäß sehr gering.

Nur wenn die Vorteile für jene, die die Daten liefern sollen, überwiegen, werden sie bereit sein, ihre wertvolle Zeit für die Datenerhebung zur Verfügung zu stellen, und nur wenn die Datenverantwortlichen die Möglichkeit haben, mit ihren Daten selbst zu arbeiten, werden sie auf Aktualität und Vollständigkeit achten.

Abbildung 2

Beispiel: Beauftragung Lehrangebot

Zentrale Web-Services an der TU Wien

In den letzten Jahren hat sich eine fast unüberschaubare Fülle von verschiedenen zentralen, web-basierten Informationssystemen an der TU Wien (HISTU, LZK, SIDES, SIDES-4mi, White Pages, SW-Lizenzen, Publikationsdatenbank, FoDok, Web-Mail usw.) entwickelt, von ganz unterschiedlichen Organisationseinheiten betreut, deren "Harmonisierung" dem neuen (und alten) Rektor und seinem Rektorat ein großes Anliegen ist.

An der TU Graz wird bereits seit sechs Jahren mit enormem personellem und finanziellem Aufwand ein wirklich beeindruckendes Informationssystem TUG-Online (https://online.tu-graz.ac.at/tug_online/webnav.ini) aufgebaut, das zu Recht nationale und internationale Anerkennung erlangt hat. Die TU Wien wird versuchen, mit wesentlich bescheideneren Mitteln ein auf ihre Bedürfnisse zugeschnittenes einheitliches Informationssystem zu entwickeln, das im Ansatz wohl mit TUG-Online vergleichbar sein soll (eine zentrale Datenbasis, Zugriff für alle Mitarbeiter und Studierenden, Transparenz der Daten und Abläufe, SingleSignOn), in der Realisierung aber moderner und herstellerunabhängig (Open-Source, objektorientierte Datenbank, integriertes CMS) und mit wesentlich geringeren Hardware-Ressourcen (Zope-Cluster, Load Balancing) auskommen soll. Angelehnt an das von der PR-Abteilung entwickelte Corporate Design der TU Wien, über Style-Sheets jederzeit änderbar, soll das Layout an die statischen Seiten der Verwaltung (www.tuwien.ac.at/zv/) angepasst sein und die Basis für einen einheitlichen Web-Auftritt des Unternehmens darstellen.

(Kurze) Entwicklungsgeschichte

Die Geschichte von TUWIS++ ist noch sehr kurz: Nach den gescheiterten Vertragsverhandlungen mit der TU Graz über die Mitverwendung von TUG-Online wurde am 8. 4. 2003 dem Vizerektor für Lehre und den Studiendekanen von Dipl.-Ing. Felix Beer ein Prototyp eines "Lehrveranstaltungs-Erfassungs- und -Beauftragungssystems" (LVPLAN) vorgestellt, das nicht nur ein vollständiger Ersatz des in Ungnade gefallenen SIDES LVA-Editors war, sondern zusätzlich noch die Möglichkeit der Neuankündigung von Lehrveranstaltungen (LVAs) inklusive der Reservierung von Hörsaalterminen beinhaltete und allen Vortragenden einen Workflow zeigte, wo jederzeit der Ankündigungszustand der LVA abgelesen werden konnte. Die LVA-Ankündigung ging als erste TUWIS++-Applikation noch im Mai in den Echtbetrieb - für die Komplexität der Aufgabenstellung eine, wie wir glauben, sensationell kurze Entwicklungszeit.

Als nächster Schritt, und nach den Erfahrungen der erfolgreichen LVA-Erhebung für das laufende Studienjahr mutig geworden, erfolgte durch Vizerektor Schimak nicht zuletzt aus Gründen des hinreichend bekannten Spar-Budgets von 2003 - die Neuentwicklung von TUWIS++ kam der TU ganz wesentlich billiger als der laufende Betrieb der dadurch abgelösten Systeme - der Auftrag zur Schaffung eines Ersatzsystems für den Lehrzielkatalog (LZK) und SIDES-4mi. Das System sollte unter Anleitung und Mitarbeit von Dipl.-Ing. Felix Beer von der ADV-Abteilung entwickelt und betrieben werden. Zwar nicht ganz im geplanten Funktionsumfang, aber rechtzeitig zum 1. 9. 2003 war damit die eigentliche "Geburtsstunde" von TUWIS++ gegeben, als offenes LVA-Informationssystem mit Studienplänen, Anzeige der Organisationseinheiten und deren Vortragenden und einer grafischen Stundenplandarstellung von Hörsälen und Seminarräumen, aber auch als Basis eines vollständigen Informationssystems für Mitarbeiter, Vortragende und Studierende mit Authentifizierung mittels des TU-Passworts.

Geplante Erweiterungen

Als nächster Schritt ist die Ausweitung von TUWIS++ vom Schwerpunkt LVAs auf "Allgemeine Informationen" vorgesehen, wobei über

Informationen geliefert werden sollen.

Welche Applikationen im Einzelnen als "besonders wichtig" eingestuft werden und daher früher begonnen werden, ist noch nicht entschieden. Nach den bereits im Echtbetrieb befindlichen Applikationen

wären sicher wünschenswert:

Eingesetzte Software

TUWIS++ ist in Zope (www.zope.org) realisiert. Zope ist ein Open-Source-Webanwendungs-Server und unterstützt Arbeitsgruppen beim Erstellen und Verwalten von dynamischen web-basierten Geschäftsanwendungen wie Intranets und Portalen. Er wird von der Zope-Corporation (www.zope.com) laufend weiter entwickelt, läuft auf praktisch allen UNIX- und NT-Plattformen und kann mit dem eigenen, integrierten Web-Server oder jedem beliebigen anderen (in unserem Fall: Apache) eingesetzt werden.

Zope ist in Python (www.python.org) geschrieben, einer mächtigen, objektorientierten Programmiersprache, die mit der steigenden Beliebtheit von Google stark an Bekanntheit gewonnen hat, weil große Teile von Google in Python geschrieben sind. Die in Zope integrierte, auf Transaktionen basierende, objektorientierte Datenbank kann nicht nur Daten und Programmcode speichern, sondern auch dynamische HTML-Templates und ausführbare Scripts, enthält eine interne Suchmaschine und kann Verbindungen zu unterschiedlichen relationalen Datenbanken herstellen.

Programme in Zope können in verschiedenen Programmiersprachen entwickelt werden, allen voran natürlich Python, DTML, Page Templates, aber auch z.B. Perl wäre möglich.

Das in Zope enthaltene, höchst komplexe und vielfältige Sicherheits-Modell erlaubt die sichere Delegation von Rollen und Rechten und damit die Entwicklung von Zope-Objekten oder Applikationen direkt im Web-Browser von überall in der Welt.

Eine fast unüberschaubare Menge von Zope-Plug-Ins ist als Open-Source im Internet verfügbar und ermöglicht eine individuelle Konfiguration der eigenen Entwicklungsumgebung nach den persönlichen Bedürfnissen. Der Bogen reicht von kompletten e-Commerce-Applikationen über Content- und Dokumenten-Managementsysteme, Workflow-Systeme und Caching-Algorithmen bis zum Load-Balancing bei Großanwendungen. Die weltweit sehr aktive Zope-Community kann für jedes Problem verschiedenste Lösungen anbieten - Interessenten finden z.B. auf der Site der Deutschen Zope User Group (www. dzug.org) eine Fülle von weiteren Informationen.

Technische Realisierung

Bei der Realisierung von TUWIS++ konnte auf den Source Code des Pilotsystems LVPLAN und des ein Jahr zuvor an der Universität für Bodenkultur entstandenen BLIS (Boku Lehre-Informationssystem) zurückgegriffen werden.

Obwohl diese Systeme auf unterschiedlicher Hardware, mit unterschiedlichen Betriebssystemen und unterschiedlichen Datenbanken eingesetzt wurden, fiel der Aufwand zur Portierung sehr gering aus.

BLIS arbeitet auf einem Dual-Pentium-III System (2x 1.26 GHz, 1 GB RAM, SCSI) mit SuSE-Linux und PostgreSQL-Datenbank, LVPLAN wurde auf einer SUN (2x 600 MHz, 600 MB RAM, SCSI) unter Solaris und Oracle 8i eingesetzt und TUWIS++ schließlich läuft auf einem Dual-Xeon-Rechner mit Hyperthreading (2x 2.4 GHz, 2 GB RAM, SCSI) und RedHat-Linux Advanced Server auf Oracle 9i.

Als Entwicklungsplattform für TUWIS++ wird ein PC (Athlon 800 MHz, 256 MB RAM, IDE) unter Gentoo Linux mit Oracle 8i eingesetzt, der von bis zu vier Entwicklern gleichzeitig verwendet wird.

Anfängliche Befürchtungen, Zope als Plattform könnte dem Ansturm möglicherweise nicht gewachsen sein, haben sich inzwischen zerstreut, und auch für zukünftige Herausforderungen ist ausreichend Spielraum vorhanden - sollte irgendwann ein Server nicht mehr ausreichen, könnte über ZEO eine skalierbare Clusterlösung geschaffen werden.

Abbildung 3

Zope Cluster

Entwicklungsumgebung

Für die Entwicklung einer Zope-Anwendung wird normalerweise nicht mehr benötigt als ein Zope-Server und ein installierter Web-Browser.

Die Programmentwicklung kann komplett über den Browser abgewickelt werden, spezielle Entwicklungswerkzeuge sind in der Regel nicht nötig. TUWIS++ wurde vorwiegend in DTML und Python entwickelt.

Das Zusatzprodukt "externalEditor" gestattet die Einbindung der Lieblings-(Programm-/Bild-/Web-)Editoren des jeweiligen Entwicklers, wenn dieser das wünscht.

SingleSignOn, SingleLogin

Eine wesentliche Anforderung an TUWIS++ war die Notwendigkeit, die Benutzeranmeldung (Authentifizierung) über das TU-Passwort zu realisieren, weil zum einen der LDAP-Dienst im Auslaufen begriffen ist und andererseits eine eigene Benutzerverwaltung aufwendig zu pflegen, für die Benutzer unbequem (Passwortänderung) und darüber hinaus unsinnig wäre.

Die Authentifizierung von Benutzern ist in Zope über so genannte "User Folder" realisiert, die in verschiedensten Ausprägungen verfügbar sind. Ein besonders interessantes und flexibles Produkt ist der "extensible User Folder" (XUF), der sich durch leichte Erweiterbarkeit und austauschbare (wenn auch nicht beliebig kombinierbare) Authentifizierungs- und Property-Verwaltungs-Module auszeichnet.

Dieser Folder wurde an die an der TU herrschenden Verhältnisse angepasst und regelt sowohl die Anmeldung als auch die Vergabe der Rollen an die Benutzer.

Unter SingleSignOn versteht man den Versuch, alle verwendeten Web-Applikationen (Programme) so zusammenzuschalten, dass nur eine einzige Anmeldung des Benutzers nötig ist, unter SingleLogin einfach den Umstand, dass ein und derselbe Benutzer alle Programme mit derselben Benutzername / Passwort-Kombination benutzen kann, dieses aber womöglich beim Wechsel von einem Programm zum anderen extra eingeben muss.

Dem verständlichen Wunsch des Rektors nach einer integrierten Lösung Rechnung tragend wurden die bislang schon von der ADV-Abteilung gewarteten Programme mit TUWIS++ soweit integriert, dass keine neuerliche Anmeldung vonnöten ist.

Datenbankanbindung

Die Anbindung an die Datenbanken erfolgt über "Datenbankadapter", der eigentliche Zugriff auf die Daten über "Queries" (Abfragen), wobei einem Query ein Datenbankadapter zugeordnet wird. Durch Tauschen des Adapters kann ein Programm im Idealfall ohne weitere Anpassungen an eine neue Datenbank gebunden werden. Innerhalb von Zope können mehrere Datenbankadaptoren gleichzeitig verwendet werden.

Die Anbindung an die TUWIS++-Datenbank erfolgt über den Datenbankadapter "DCOracle2", Connection-Pooling und Transaction-Handling wird von Zope selbst beigesteuert.

Zukunftsaussichten von TUWIS++

Wiewohl ein neues System und das zwangsweise Verlassen einer gewohnten Umgebung eher zu Kritik als zu Lob ermutigen, haben die Anwender TUWIS++ recht positiv aufgenommen.  Neben durchwegs konstruktiver Kritik haben die positiven Meinungen bei weitem überwogen und gerade am Anfang, als viele Funktionen noch nicht optimal gelaufen sind, hat uns das vielfach erhaltene Lob gezeigt, dass wir auf dem richtigen Weg sind.

Wir stehen selbstverständlich auch Ihnen für Anregungen, Wünsche, Beschwerden und Fragen unter tuwis@zv.tuwien.ac.at zur Verfügung und bemühen uns, im Rahmen unserer Kapazitäten so schnell wie möglich darauf zu reagieren.


Seitenanfang | ZIDline 9 - Dezember 2003 | ZID | TU Wien