Forschungsbericht 2007 - Max-Planck-Institut für Informatik

Europas elektronische Grenzen überwinden

Overcoming Europe's electronic boundaries

Autoren
Freiheit, Jörn
Abteilungen

RG1: Automatisierung der Logik (Prof. Dr. Christoph Weidenbach)
MPI für Informatik, Saarbrücken

Zusammenfassung
Europa wächst zusammen. Um auch das Zusammenwachsen der öffentlichen Verwaltungen und der elektronischen Systeme der europäischen Mitgliedsländer zu ermöglichen, sind vielfältige Herausforderungen innerhalb der Informatik zu lösen. Das Max-Planck-Institut für Informatik in Saarbrücken ist an einem von der EU geförderten Projekt beteiligt, um eine sichere und effiziente Zusammenarbeit der öffentlichen Verwaltungen innerhalb der Europäischen Union zu realisieren. Dabei liegt ein besonderes Augenmerk auf der Wahrung der Datensicherheit zum Schutze der Privatsphäre der Bürger.
Summary
Europe coalesces. Several challenges in the field of computer science have to be tackled to support the public administrations and their IT systems growing together. The Max-Planck-Institute for Computer Science is involved in one project, funded by the European Commission, which aims at developing and ensuring a secure and efficient collaboration of Europe’s public administrations. Main research topics in this field deal with so-called services that can easily and efficiently be used by citizens and by other administrations with a strong emphasis on protection of data and privacy.

Einleitung

Mit der Vereinigung Europas wächst der Bedarf nach der Beschleunigung länderübergreifender Prozesse, wie sie zum Beispiel in der Justiz oder der öffentlichen Verwaltung vorkommen. Das bedeutet beispielsweise, dass Visumangelegenheiten grenzenübergreifend elektronisch abgewickelt werden können. Die technologische Herausforderung bei dieser Durchsetzung europaweiter Kollaboration der informationstechnischen Infrastruktur ist vielfältig. Die jeweiligen elektronischen Prozesse der Mitgliedsländer müssen bewahrt, die unterschiedlichen Gesetze beachtet und die Persönlichkeitsrechte der Bürger berücksichtigt bleiben. Wissenschaftler am Max-Planck-Institut für Informatik sind an einem von der Europäischen Union geförderten Projekt beteiligt, welche zum Ziel haben, Mittel und Werkzeuge bereitzustellen, um den sicheren Austausch von Informationen innerhalb der EU zu ermöglichen [1,2].

Serviceorientierte Architekturen sind ein modernes Konzept um die Kollaboration verschiedener elektronischer Geschäfts- und Verwaltungsprozesse zu realisieren. Im Zentrum serviceorientierter Architekturen stehen so genannte Services (auch Dienste genannt), welche von einem Kollaborationspartner angeboten und von den anderen genutzt werden können. Services sind bereits heute dem Bürger bei der Nutzung öffentlicher Verwaltungen bekannt: Der Bürger beantragt ein Visum und enthält einen entsprechenden positiven oder negativen Bescheid. Die so genannte Schnittstelle zwischen Bürger und der Verwaltung besteht demnach in einem Austausch von Dokumenten, der Einreichung des Antrages durch den Bürger und der Ausstellung des Bescheides durch die Verwaltung. Der interne Prozess der Verwaltung zum Zwecke der Antragsbearbeitung bleibt dabei jedoch häufig verborgen. Dieses typische Prinzip eines Services, welches einer Bearbeitung einer bestimmten Eingabe mit anschließender Ausgabe entspricht, lässt sich im Bereich der Informatik auf fast alle, sowohl sehr einfache als auch auf sehr komplexe, Geschäftsprozesse übertragen und bietet einen geeigneten Ansatz, um Prozesse miteinander zu verknüpfen. Technisch müssen dafür mehrer Dinge geklärt werden: Wer bietet einen entsprechenden Service an? Wie trete ich mit diesem Anbieter in Kontakt? Welche Informationen muss meine Anfrage enthalten und welche Art von Informationen erhalte ich zurück? Diese Fragen werden mit dem Konzept serviceorientierter Architekturen beantwortet. Mehrere Standards für Sprachen und Protokolle sind in der Zwischenzeit entwickelt worden, um ein gemeinsames Konzept für eine Registrierung als Serviceanbieter, für einen Austausch der für die Nutzung des Services benötigten Daten und für das Protokoll des Informationsaustausches zu etablieren. Diese Sprachen und Protokolle basieren auf der wohl wichtigsten Sprache zum Datenaustausch, XML.

Modellierung

Aufgrund der Praktikabilität und der Effizienz serviceorientierter Architekturen für die Kollaboration vieler Partner wird dieses Konzept auch im Projekt R4eGov (Architecture for eGovernment) verwendet, um ein Rahmenkonzept zur Interoperabilität der Verwaltungen der EU-Mitgliedsstaaten zu realisieren. Dabei muss die hohe Komplexität der Verwaltungsprozesse und deren Interaktion mittels Webservices berücksichtigt werden, welche eine Verifikation der Korrektheit erfordert. Das bedeutet, dass sichergestellt werden muss, dass die jeweiligen Prozesse der an der Kollaboration beteiligten Partner „zueinander passen“. Um dies sicherzustellen werden alle an der Kollaboration beteiligten Prozesse zunächst in einer formalen Sprache modelliert, welche sich neben ihrer mathematischen Genauigkeit auch durch eine grafische Veranschaulichung auszeichnet. Dieser im Projekt R4eGov gewählte Ansatz ist somit ein modellbasierter. Nach der Erstellung der formalen Modelle werden diese in eine durch einen Computer ausführbare Sprache umgewandelt und diese Ausführung unter Verwendung der Modelle sowohl visualisiert als auch analysiert. Die Resultate der Analyse werden zur Optimierung der Prozesse verwendet. Ein Überblick dieses Ansatzes ist in Abbildung 1 dargestellt.

Dieser Modellschritt bietet in mehrfacher Hinsicht Vorteile: Einerseits dient die Modellierungssprache aufgrund ihrer grafischen Veranschaulichung der gemeinsamen Kommunikation zwischen Nutzern aus der Verwaltung und den die Prozesse implementierenden IT-Experten. Dies stellt sicher, dass die zu realisierenden elektronischen Prozesse den Anforderungen der Verwaltungen entsprechen. Andererseits können für die formalen Modelle Beweisverfahren angewendet werden, die Korrektheitsaussagen ermöglichen. Solche Korrektheitsaussagen betreffen einerseits die isolierten Prozesse und beschreiben beispielsweise, dass keine Dokumente oder Anträge unbearbeitet innerhalb des Prozesses „vergessen“ werden, sondern dass vielmehr jeder Antrag mit einem Bescheid an den Antragsteller endet. Darüber hinaus kann aber auch die Korrektheit der Kollaboration bewiesen werden. Dabei wird untersucht, ob empfangene Daten auch tatsächlich erwartet und dass Anfragen auch tatsächlich beantwortet werden. Typische so genannte Verklemmungssituationen, wie das gegenseitige Warten von Partnern auf bestimmte Daten, können somit erkannt und vermieden werden. Neben diesen die Ausführung der Prozesse betreffenden Eigenschaften, werden weitere die Sicherheit der Daten betreffende Korrektheitsbedingungen untersucht, wie sie im Abschnitt über Sicherheit beschrieben werden.

Prozessausführung

Ein weiterer Vorteil des modellbasierten Ansatzes liegt in der Fähigkeit begründet, die Modelle automatisch in einer Prozessausführungssprache zu übersetzen. Verschiedene Prozessausführungssprachen sind oder werden gegenwärtig standardisiert. Der Fokus innerhalb des Projektes R4eGov liegt auf der Business Process Execution Language – BPEL, die am weitesten verbreitete und angewandte Ausführungssprache von Geschäftsprozessen. Die automatisch aus den Modellen erzeugten BPEL-Prozesse können auf so genannten BPEL engines ausgeführt werden und realisieren somit unter zusätzlicher Verwendung ebenfalls automatisch aus den Modellen erzeugter so genannter WSDL-Dateien zur Beschreibung der Schnittstellen zwischen BPEL-Prozessen eine computergestützte Kollaboration elektronischer Prozesse. (Abb. 2).

Trotz der großen Mächtigkeit der Sprache BPEL erfüllt diese jedoch (noch) nicht alle Anforderungen der öffentlichen Verwaltungen der Mitgliedsstaaten an ausführbare kollaborierende Prozesse. Zu den Mängeln gehören die zwar bereits standardisierte jedoch noch in wenigen BPEL ´engines´ integrierte Beschreibung der Nutzerinteraktion mit BPEL-Prozessen, aber auch die mangelnde Umsetzung komplexer Modelle von Organisationen und den in den Organisationen arbeiten Mitarbeiter sowie ihrer Rollen innerhalb der Prozesse. Eine Rolle, auch Benutzerrolle, definiert in der Welt der Geschäftsprozesse eine bestimmte Aufgabenzuweisung und Nutzerrechte. Das Konzept der Rolle wird verwendet, um Zuständigkeiten zwischen Aktionen und Akteuren zuzuweisen, ohne konkrete Mitarbeiter betrachten zu müssen. Eine Zuweisung von Mitarbeitern zu Rollen erfolgt separat.

Zugriffskontrolle (Abb. 3)

Die separate Zuweisung von Mitarbeiten auf Rollen kann im einfachsten Fall statisch erfolgen. Das bedeutet, dass ein oder mehrere Mitarbeiter einer bestimmten Rolle für die gesamte Ausführungszeit des Prozesses zugeordnet werden. Auch wenn das für die Aufgabenzuweisung sinnvoll erscheint, so ist dieses Konzept für die gleichzeitig durchgeführte Zuweisung von Benutzerrechten zu unflexibel. Selbst wenn in einer einzigen Rolle erlaubt ist, Anträge sowohl zu bescheiden als auch diese Bescheide zu kontrollieren, so muss gewährleistet sein, dass derselbe Antrag nicht von dem gleichen Mitarbeiter beschieden und kontrolliert wird. Darüber hinaus bieten statische Rollenzuweisungen keine geeigneten Verfahren zur Delegation von Rechten. Eine solche Delegation ist im Krankheits- oder Urlaubsfall notwendig. Delegationen beinhalten jedoch ein höheres Sicherheitsrisiko, da die Revokation der Rechte (die Rücknahme der Delegation) berücksichtigen muss, dass in der Zwischenzeit weitere Rechtedelegationen vorgenommen wurden. Im Projekt R4eGov werden deshalb dynamische Rollenzuweisungsalgorithmen entwickelt und mithilfe formaler Methoden verifiziert.

Die Umsetzung der innerhalb des Projektes entwickelten Algorithmen zur Zugriffskontrolle erfolgt auf Basis des von der Organization for the Advancement of Structured Information Standards - OASIS vorgeschlagenen Web Services Security Standards.

Visualisierung und Analyse

Um während der Ausführung den Fortschritt der Prozesse zu beobachten, eignen sich wiederum Modelle. Durch die automatische Transformation der Modelle in ein ausführbares Format besteht eine direkte Relation zwischen den Modellen und den ausgeführten Prozessen. Diese Relation lässt sich ausnutzen, um durch Hervorhebungen oder textuelle Beschreibungen den jeweiligen Status (Zustand) der Prozesse zu visualisieren. Unter zusätzlicher Spezifikation des Beobachters entsprechend der Rollendefinition kann die Visualisierung eingeschränkt werden. Das bedeutet, dass man die Visualisierung einer bestimmten Rolle wählt, um die dieser Benutzerrolle entsprechende Prozessdynamik zu beobachten.

Neben der Visualisierung zur Laufzeit des Prozesses wird im Projekt R4eGov eine Software implementiert, die die Analyse des Prozesses nach dessen Ausführung erlaubt. Dabei liegt der Fokus auf der Prozessperformanz. Unter Verwendung der während der Prozessausführung protokollierten Parameter wie zum Beispiel der Zeitpunkt der Ausführung einer bestimmten Aktion und deren Akteur werden Leistungsmaße berechnet, wie der Durchsatz von Dokumenten, die Arbeitsbelastung von Rollen oder Mitarbeitern und mittlere Bearbeitungszeiten von Anträgen. Mithilfe dieser Leistungsmaße lassen sich exakte Vorschläge zur Optimierung der Prozesse ableiten.

Projekt und Resultate

Die hier diskutierten Konzepte, Methoden und Algorithmen werden derzeit unter Verwendung frei verfügbarer Entwicklungs- und Ausführungswerkzeuge implementiert. Für das im Februar 2009 endende Projekt R4eGov wurden zwei Fallbeispiele ausgewählt, anhand derer das entwickelte Rahmenkonzept getestet und evaluiert wird: einerseits ein komplexes reales Szenario bei den R4eGov-Projektpartnern Europol und Eurojust (in Kollaboration mit mehreren Mitgliedsstaaten) und andererseits ein sehr interaktiver Prozess beim Projektpartner Bundeskanzleramt Österreich. Neben dem Max-Planck-Institut für Informatik sind 20 weitere europäische Partner aus Industrie, Wissenschaft und öffentlichen Verwaltungen am Projekt beteiligt.

Zur Redakteursansicht