Systementwicklungsprojekt: Dokumentation und Publikation der Prozesse des Studiensekretariats Webpublisher Ausarbeitung Version Autor QS Datum 1.0 Gunter Gemmel E-Mail: [email protected] 10.01.05 1.1 Gunter Gemmel 18.01.05 Status Kommentar Änderungen von Herrn Lankes umgesetzt Diverse Erweiterungen 1.2 Gunter Gemmel 26.01.05 Änderungen von Herrn Lankes umgesetzt 1.3 Gunter Gemmel 05.02.05 Änderungen von Herrn Lankes umgesetzt 1.4 Gunter Gemmel 22.02.05 Änderungen von Herrn Lankes umgesetzt 1.5 Gunter Gemmel 01.03.05 Änderungen von Herrn Lankes umgesetzt Gunter Gemmel Seite 1 von 14 14.05.2016 Gliederung 1. Einleitung ................................................................................................................................................................3 2. Aufgabenstellung und Vorgehensweise .....................................................................................................................4 3. Anforderungsanalyse ................................................................................................................................................5 3.1. Musskriterien....................................................................................................................................................5 3.2. Wunschkriterien ................................................................................................................................................5 3.3. Ideen für zukünftige Entwicklungen....................................................................................................................5 4. Design .....................................................................................................................................................................6 4.1. Entscheidung ....................................................................................................................................................6 4.2. UML-Darstellung ...............................................................................................................................................7 5. Technische Realisierung ...........................................................................................................................................9 5.1. Eingabeumgebung ............................................................................................................................................9 5.2. Webpublisher ................................................................................................................................................ 10 5.3. Ausgabeumgebung ........................................................................................................................................ 10 5.4. Anwendung des Webpublishers (Handbuch).................................................................................................... 11 Ausführung ....................................................................................................................................................... 11 Rechteverwaltung ............................................................................................................................................. 11 Vorlagen ........................................................................................................................................................... 11 6. Beispiele der Prozessdarstellung ........................................................................................................................... 12 7. Literatur ............................................................................................................................................................... 14 Gunter Gemmel Seite 2 von 14 14.05.2016 1. Einleitung Prozesse gewinnen im beruflichen Leben immer mehr an Bedeutung. Ihre Darstellungen beschreiben präzise die Arbeitsabläufe von Unternehmen und bieten Möglichkeiten zur Optimierung. Die grafische Darstellung als Flussdiagramm machen sie intuitiv verständlich und erfassbar. Daraus resultiert die Anwendung zu Dokumentationszwecken der Prozessdarstellung. Auch an der TU München lässt sich diese Technik gerade in den stark regulierten Aufgabenbereichen zur Qualitätsverbesserung und Dokumentation anwenden. Daher wurde im Rahmen eines SEPs, welches vom Lehrstuhl für Wirtschaftsinformatik Prof. Matthes angeboten wurde, nach Möglichkeiten gesucht diese Prozessdarstellung für die Mitarbeiter des Studiensekretariats sowie die Studenten der Informatik gewinnbringend einzusetzen. Die Motivation des SEPs liegt in bestehenden Verbesserungspotentialen bezüglich Kommunikation und Publikation von Prozessabläufen im Studiensekretariat. Prozesse wie Durchführung von Eignungfeststellungsverfahren, Wiederanmeldung zu Prüfungen u.ä. erfordern, dass auch Prozessbeteiligte außerhalb des Studiensekretariats, wie beispielsweise Studenten oder Mitarbeiter anderer Lehrstühle darüber informiert sind, wie der entsprechende Prozess initiiert wird und wie er dann abläuft. Besondere Relevanz erhält diese Problematik durch die aktuellen zahlreichen Änderungen im Bereich des Studiensekretariats, beispielsweise im Rahmen der neu eingeführten Bachelor- und Masterstudiengänge. Die Unternehmen EK Design AG und Gungem stellen der TU München das Prozessdesignwerkzeug VisualQM zur Verfügung, um die Prozesse als Flussdiagramm abzubilden. Über einen Webpublisher werden die mit VisualQM erstellten Dokumente auf den Internetseiten der Fakultät für Informatik bereitgestellt, so dass Studenten eine einfache Zugriffsmöglichkeit gegeben ist. Gunter Gemmel Seite 3 von 14 14.05.2016 2. Aufgabenstellung und Vorgehensweise Aufgabenstellung war es den in der Einleitung erwähnten Webpublisher zu entwickeln, sowie einige Prozesse des Studiensekretariats für Testzwecke abzubilden. Das Studiensekretariat sollte durch den Webpublisher in die Lage versetzt werden, die mit der Software VisualQM modellierten Prozesse auf den Internetseiten der Informationsdrehscheibe der Fakultät für Informatik der TU München zu publizieren. Hiermit können sich Studenten und Lehrstühle gezielter über Arbeitsaktivitäten und organisatorische Abläufe informieren. System aus VisualQM, Webpublisher und Drehscheibe Modellieren der Prozesse mit VisualQM Studenten Mitarbeiter des Studiensekretariats Publizieren der VisualQM Dokumente Internetseiten abrufen * Lehrstühle * Vor dem Start des SEPs wurde eine Projektbeschreibung angefertigt, um sicherzustellen, welcher Umfang in welchem zeitlichen Rahmen geleistet werden soll. Dieser ist durch das Wintersemester 2004/05 bestimmt. Nachdem die Projektbeschreibung von allen Beteiligten akzeptiert wurde, konnte das SEP beginnen: Zunächst wurde untersucht welche Anforderungen seitens der für die Drehscheibe verantwortlichen Mitarbeiter, sowie der Mitarbeiter des Studiensekretariats gegeben sind. Diese Untersuchung wurde in Form von Interviews durchgeführt. Unter Berücksichtung der Ergebnisse wurde ein Pflichtenheft nach Balzert-Standard (vgl. [1]) erstellt, welches die Anforderungen in Musskriterien, Wunschkriterien und Ideen für zukünftige Entwicklungen eingeordnet. Darauf folgend wurden verschiedene Lösungsmöglichkeiten untersucht den durch das Pflichtenheft gegebenen und bewerteten Anforderungen möglicht gerecht zu werden: Im nächsten Schritt wurde die gefundene Lösung in Java implementiert. Die sich hierzu ergebenden Fragen oder Probleme wurden parallel zur Implementierung mit den zuständigen Mitarbeitern geklärt. Abschließend konnte der Webpublisher erfolgreich in die Webserverumgebung des Studiensekretariats eingebunden werden. Der gesamte Erarbeitungsprozess des SEPs wurde von einem Anfangs- und Abschlussvortrag im Oberseminar des Lehrstuhl Prof. Matthes umrahmt. Die Dokumentation einiger Beispielprozesse erfolgte unabhänig und parallel zur Entwicklung des Webpublishers. Gunter Gemmel Seite 4 von 14 14.05.2016 3. Anforderungsanalyse Aus den Gesprächen mit Herrn Dr. Koch, dem Entwickler der Informationsdrehscheibe, Herrn Dr. Herzog, dem Leiter des Studiensekretariats, sowie Herrn Dr. Jobmann, dem Administrator der Drehscheibe, ergaben sich die folgenden Anforderungen an den Webpublisher. Sie sind je nach Priorität in Musskriterien, Wunschkriterien sowie Ideen für zukünftige Entwicklungen eingeordnet. 3.1. Musskriterien Bereitstellung der mit VisualQM erstellten VQM-Dokumente auf den Internetseiten der Drehscheibe. Die Umwandlung muss leicht und schnell von den Zielgruppen durchführbar sein. Die Ausgabe muss kompatibel mit Mozilla Browsern und Internet Explorer sein. Die erzeugten Dokumente unterliegen einer Rechteverwaltung. 3.2. Wunschkriterien Verknüpfungen auf Subprozesse innerhalb eines Prozesses bleiben auch im Ergebnisdokument erhalten. Diese Subprozesse können direkt aus dem Ergebnisdokument aufgerufen werden. Ausgabe kompatibel mit Netscape 4 Erstellung einer rein textbasierten Website, für nicht grafikfähige Browser Benutzertest, welcher die Akzeptanz der erarbeiteten Darstellungsform misst. Für diesen Test sollen Personen mit durchschnittlichem technischem Vorwissen befragt werden. 3.3. Ideen für zukünftige Entwicklungen Textersetzungssystem, womit periodisch wiederkehrende Anpassungen der Symboleigenschaften automatisiert werden können. Z.B. bei Prüfungsterminen oder Fristen erleichtert dies das manuelle Ändern der Daten im Ausgangsdokument. Möglichkeit Dokumente zweisprachig anzulegen bzw. automatisch zu übersetzen. Zugriffsrechte auf Basis unterschiedlicher Ansichten. Je nach Rechten des Anwenders werden Symbole bestimmter Prozessabschnitte angezeigt bzw. ausgeblendet. Damit der Prozess in sich korrekt bleibt, werden die Symbole zu einem gröberen Flussdiagramm verbunden. Gunter Gemmel Seite 5 von 14 14.05.2016 4. Design 4.1. Entscheidung Alternative 1: Client Alternative 2: Servlet Anwender speichert VQM-Dokumente und startet Webpublisher Webserver Anfrage HTML-Dok. Java-Servlet Client erzeugt Internetseiten VQM-Dok. lage Webserver VQM-Dok. Anfrage & Antwort Anwender speichert VQM-Dokumente Beschreibung: Bei dieser Designalternative bearbeiten Mitarbeiter des Studiensekretariats die VQM-Dokumente lokal auf ihren Rechnern. Zusammenarbeit auf den gleichen Dokumenten müssten sie dabei z.B. über ein gemeinsames Verzeichnis organisieren. Um die VQM-Dokumente als Webseiten mit SVGDarstellungen zu publizieren, kommt eine ClientAnwendung zum Einsatz, die die entsprechende Übersetzung vornimmt und die dabei enstehenden Dokumente auf ein Verzeichnis auf dem Webserver überträgt. Die Verwaltung der Zugriffsrechte geschieht mittels der Zugriffsrechteverwaltung des eingesetzten Webservers. Beschreibung: Bei dieser Designalternative werden die HTML- und SVG-Dateien der Prozessdarstellungen bei jeder entsprechenden Anfrage an den Webserver von einem Servlet neu generiert. Dazu greift das Servlet auf die entsprechenden VQM-Dateien zurück, die in einem vom Servlet aus zugreifbaren Verzeichnis vorgehalten werden. Die Verwaltung der Zugriffsrechte wird dabei vom Servlet selbst übernommen. Vorteile: Anwender steuert Aktualisierung. Keine Belastung des Webservers, da Vorübersetzung der VQM-Dokumente Lösung universell einsetzbar. Selbst Speichern auf CD-ROM als Zielverzeichnis denkbar. Vorteile: Keine Übersetzung von Seiten des Anwenders nötig. Spätere Integration in VisualQM . Architect möglich, da kommandozeilenbasiert. Nachteile: Nachteile: Problem beim Verschieben von Dokumenten (Problem liegt bei VisualQM . Architect - der Gunter Gemmel Seite 6 von 14 Problem beim Verschieben von Dokumenten, da enthaltene Verknüpfungen nach dem Verschieben 14.05.2016 Webpublisher übersetzt nur) Mitarbeiter können Hochladen auf den Server vergessen nicht mehr stimmig sind. Dieses Problem ergibt sich aus der Tatsache, dass die gesetzten Verknüpfungen relativ angegeben sind und nicht automatisch beim Verschieben der Datei angepasst werden. (Problem liegt bei VisualQM . Architect - der Webpublisher übersetzt nur) Hoher Implementierungsaufwand im Bereich der Rechteverwaltung und damit hohe Fehleranfälligkeit in diesem wichtigen Bereich Sicherheit Evt. Redundante Speicherung der Benutzerrechte, falls die bestehenden Systeme nicht vereinbar sind. Schwer anpassbar bei Änderungen an der Rechtevergabe der Drehscheibe. Diese Änderung der Rechtevergabe ist bereits geplant! Servlet-Lösung auf TU München Umgebung abgestimmt, geringere Flexibilität. Ergebnis: Alternative 2: Servlet hat vor allem im Bereich der Rechtevergabe Nachteile gegenüber Alternative 1. Eine Rechteverwaltung wäre nur mit großem Implementierungsaufwand und zukünftigem Pflegeaufwand realisierbar. Das Studiensekretariat müsste parallel zur Rechtevergabe in Drehscheibe und eigenem Webserver eine weitere Rechteverwaltung pflegen. Die eigene Rechteverwaltung des Webpublishers ist dann nötig, wenn der Zugriff auf das bestehende System der Drehscheibe oder eines eigenen Webservers nicht möglich ist bzw. das jeweilige System gar keine Rechteverwaltung beinhaltet. Darüberhinaus bietet Alternative 1 mehr Flexibilität, z.B. alle Prozesse auf CD-ROM zu brennen. Insgesamt kamen wir zu dem Ergebnis, dass Alternative 1: Client die Anforderungen besser erfüllen kann. 4.2. UML-Darstellung Aufbauend auf der Alternative 1 (Client) wurde ein Design auf Basis des Visitor-Musters entwickelt. Dabei bilden die in SVG zu übersetzenden Darstellungen eine Liste, die durch verschiedene Visitors besucht werden. Diese nehmen dabei unterschiedliche Übersetzungsaufgaben war. Folgende Gründe sprachen für die Wahl dieses Musters: Das Visitor-Muster ist flexibel in Hinblick auf die Aufgaben, die mit den Zielobjekten durchzuführen sind. Weniger Flexibel im Hinblick auf Änderungen in den Klassen der Zielobjekten selbst. Da beim Webpublisher nicht mit neuen Klassen für Graphikelemente zu rechnen ist (diese decken bereits das komplette, für reichhaltige Grafiken benötigte Spektrum ab), sind zukünftige Änderungen in den Klassen weniger zu erwarten. Hinzu kommt, dass diese Klassen-Erweiterung zudem auch in der kompletten VisualQM Umgebung durchgeführt werden müssten. Hingegen sind neue Übersetzungsaufgaben teil der Erweiterungsanregungen, wie z.B. eine rein textbasierte Webseite. Hier ist das Visitor-Muster vorteilhaft. Gunter Gemmel Seite 7 von 14 14.05.2016 XML FileTreeWalker FileTypeFilter FileVisitor +getDocument() +newDocument() +saveDocument() +start() 1 * 1 1 Main +main() Schnittstelle 1 1 SVGProducer PropertyProducer MainProducer +visitFile() +visitFile() +visitFile() 1 1 FlowContainer +getElement() * 1 Object +getElement() Symbol Arrow -listProperties -listDocs * 1 Point Gunter Gemmel 1 * Property Seite 8 von 14 14.05.2016 Folgende Klassen bilden das Kerngerüst des Designs: FileTreeWalker, FileTypeFiler, FileVisitor implementieren das Visitor-Design-Pattern (vgl. [2], S. 301). FileTreeWalker wandert rekursiv über das Quellverzeichnis mit den VQM-Dokumenten. FileTypeFiler filtert die in den Verzeichnissen enthaltenen Dateien so, dass nur VQM-Dokumente zur Übersetzung herangezogen werden. FileVisitor beschreibt die Schnittstelle für die konkreten Besucher SVGProducer, PropertyProducer, MainProducer. XML liefert statische Funktionen zur einfachen XML-Verarbeitung. Main ist die Hauptklasse, welche beim Programmstart geladen wird. SVGProducer, PropertyProducer, MainProducer enthalten die Schnittstelle FileVisitor und wandern jeweils durch den Quellverzeichnisbaum um auf jeder Datei die entsprechende Aufgabe auszuführen: SVGProducer erzeugt die Grafik im SVG-Format. PropertyProducer erzeugt alle Eigenschaftsseiten zu den einzelnen Symbolen des Prozesses. MainProducer erzeugt die Hauptseite, welche die Grafik mit Überschrift enthält. FlowContainer bildet den in der VQM-Datei enthaltenen Prozess ab. Die Abbildung des Prozesses enthält Objekte welche entweder vom konkreten Typ Symbol oder Arrow sind. Point und Property kapseln Eigenschaften eines Symbol. Point enspricht hierbei einem Punkt, welcher für das freie Symbol benötigt wird. Property enthält alle Eigenschaften die der Anwender dem Symbol zugewiesen hat, wie beispielsweise Prozessverantwortliche, Links, etc.. 5. Technische Realisierung 5.1. Eingabeumgebung Dokumentumwandlung durch den Webpublisher (Die Rechtecke symbolisieren Quell- und Zielverzeichnis): Webpublisher VQM-Dokumente mit VisualQM erstellt Prozessdarstellungen als SVG-Dokumente auf dem Webserver Die VQM-Dokumente befinden sich an einem zentralen Speicherort. Verknüpfungen innerhalb der VQM-Dokumente auf weitere VQM-Dokumente sind relativ, so dass sie im Webserververzeichnis ebenfalls korrekt sind. Verknüpfungen auf Formulare, Dokumente sind absolut, so dass der Zugriff auch aus dem Webserververzeichnis möglich ist. Gunter Gemmel Seite 9 von 14 14.05.2016 5.2. Webpublisher Als Parameter werden ein Quellverzeichnis und ein Zielverzeichnis übergeben. Eine Oberfläche ist nicht nötig, da nach Programmstart keine Interaktion mehr stattfinden muss. Alle VQM-Dateien im Quellverzeichnis und dessen Subverzeichnissen werden übersetzt und in der gleichen Struktur in das Zielverzeichnis übernommen. Pro VQM-Dokument wird eine HTML-Datei als Rahmen, ein SVG-Dokument mit Flussdiagramm, sowie mehre HTML Dateien für die einzelnen Prozesssymbole erzeugt. 5.3. Ausgabeumgebung Zielverzeichnis auf Webserver, auf das per SSH zugegriffen werden kann Schematische Darstellung im Webbrowser Internetseite des Studiensekretariats Inhaltsbereich des Studiensekretariats HTML Dokument vom Webpublisher Navigation SVG-Dokument / Eigenschaftenseite vom Webpublisher Link auf weiteres SVGDokument bzw. Eigenschaftseite zum Symbol Gunter Gemmel Seite 10 von 14 14.05.2016 5.4. Anwendung des Webpublishers (Handbuch) Ausführung Der Webpublisher ist eine ausführbare JAR-Datei. Über Programmparameter können Quellverzeichnis, temporäres Verzeichnis, sowie Serververzeichnis definiert werden. Im Quellverzeichnis befinden sich die VQMDokumente. In das temporäre Verzeichnis (targetdir) werden die übersetzten Dokumente geschrieben, bevor sie komplett auf den Server ins das Serververzeichnis übertragen werden. Für die Übertragung auf den Server ist das Programm PSCP.EXE, erforderlich (siehe [3]), da es intern vom Webpublisher aufgerufen wird. Werden die Serverangaben weggelassen erfolgt die Umwandlung der VQM-Dokumente nur clientseitig. Befehlszeile der JAR-Datei: webpub sourcedir targetdir [host:serverdir username password] Rechteverwaltung Eine Rechteverwaltung kann direkt über den Webserver eingerichtet werden. Der Webpublisher unterstützt eine beliebige Verzeichnisstruktur so dass beispielsweise die Verzeichnisse private und public eingerichtet werden können die geheime und öffentliche Prozessdarstellungen enthalten. Der Webserver muss nun so konfiguriert werden, dass das private Verzeichnis nur von autorisierten Personen zugreifbar ist. Bei jedem Update werden die jeweils aktuellen Dokumente in das richtige Verzeichnis kopiert und die Rechtevergabe bleibt automatisch erhalten. Vorlagen Der Webpublisher erzeugt Internetseiten basierend auf den Beiden Vorlagen main.html sowie property.html. Die Vorlage main.html regelt das Erscheinungsbild der Hauptseite, welche die SVG-Grafik enthält. Die Eigenschaftsseiten werden über property.html definiert. Das Attribut webpub markiert im HTML-Quelltext die Stellen (Tags), welche durch den Webpublisher mit seitenspezifischen Informationen gefüllt werden. Unterstützt werden… In property.html… webpub="caption" zum Einfügen der Überschrift. webpub="text" zum Einfügen der Symbolbeschreibung. webpub="properties" zum Einfügen eines Tabellenkörpers mit den Symboleigenschaften. In main.html… webpub="caption" zum Einfügen der Überschrift. webpub="svg" zum Einfügen des passenden SVG-Dokuments. Gunter Gemmel Seite 11 von 14 14.05.2016 6. Beispiele der Prozessdarstellung Die Informationen zur Gestaltung der Prozesse erhielten wir zum überwiegenden Teil aus Interviews mit dem Studiensekretariat. Unterstützend gewirkt haben die bereits vorhandenen Internetseiten des Studiensekretatriats sowie persönliche Erfahrungen mit den Prozessabläufen. Die studentische Sicht auf die Prozesse ist für jeden zugänglich. Im Gegensatz dazu beschreibt die interne Darstellung, den Prozess aus Sicht der Mitarbeiter des Studiensekretariats. Vertrauliche Daten können in dieser Sicht ebenfalls enthalten sein, wodurch es nötig ist, dass die Prozessdarstellung durch eine Rechteverwaltung geschützt ist. Studentische Sicht auf die Eignungsfestellungsprüfung: Gunter Gemmel Seite 12 von 14 14.05.2016 Sicht des Studiensekretariats auf die Eignungsfestellungsprüfung: Gunter Gemmel Seite 13 von 14 14.05.2016 7. Literatur [1] Balzert, Lehrbuch der Software-Technik, Spektrum Akademischer Verlag [2] Gamma / Helm / Johnson, Entwurfsmuster, Addison-Wesley, München [3] Putty-Internetseite: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html Gunter Gemmel Seite 14 von 14 14.05.2016