Entwurf einer Referenzarchitektur für Personenbenachrichtigungssysteme und deren prototypische Realisierung

Autoren
T. Gratz, M. Augdoppler
Masterarbeit
MT0803 (April, 2008)
Betreut von
o. Univ.-Prof. Dr. Michael Schrefl
Angeleitet von
Mag. Andreas Bögl
Ausgeführt an
Universität Linz, Institut für Wirtschaftsinformatik - Data & Knowledge Engineering

Kurzfassung (Englisch)

This work introduces a concept for a reference architecture for notification systems focused on people notification.

Systems for notification of people exist in different variations. In a few areas like in emergency organisations automation of notification processes is well established. In other domains the processes are controlled completely manually or just partly automated. The main goal of this work is to present an architecture for automated people notification systems, adaptable to diverse scenarios based on defined design criteria.

The publish/subscribe paradigm, a widely-used approach for message based services, is used as startingpoint for the design of the basic communication principles. Furthermore the concepts of Service Oriented Architectures are the basis for the system architectural structure. It consists of loosely coupled subsystems implemented as web services. Web Services, including their relationship to Service Oriented Architectures, are discussed in a separate chapter of this work. The underlying standards of web services as well as the ability of implementing transactions are discussed.

Processes for people notification follow mostly predefined flows, also called workflows. Therefore workflow technologies and fundamental standards are discussed in detail. With BPEL4WS, XPDL, Wf-XML, YAWL, Windows Workflow Foundation and RuleML existing approaches, technologies and protocols are introduced.

The focus of this work is on the development of the reference architecture. The requirements for the implementation of people notification systems are defined. Beside achieving high availability, universal applicability and extensibility are the main challenges of the architectural design. The description of the architecture shows the partitioning of the notification task into individual, specialized modules. All necessary functions and module interfaces are specified and their concrete interaction in case of a notification is explained.

To verify the concept of the reference architecture a reference implementation was done. In that implementation all specified services are realized as prototypes. The prototype services have the ability to perform a complete notification process. The services were installed on two different servers and locations. Notifications are executed by phone, e-mail or SMS message. The phone notification service is also able to process the response of a person. The response, realized by pressing a button on the phone, affects the further activities and decisions in the notification process.

Finally three academic publication with similar objectives are discussed in a separate chapter.

Kurzfassung (Deutsch)

Die vorliegende Arbeit beschäftigt sich mit dem Entwurf einer Referenzarchitektur für Personenbenachrichtigungssysteme.

Systeme zur Benachrichtigung von Personen gibt es in unterschiedlichen Ausprägungen. Die Automatisierung von Benachrichtigungsprozessen ist in einzelnen, wenigen Bereichen, wie beispielsweise bei Notfallorganisationen, bereits etablierter Standard. In anderen Domänen laufen Benachrichtigungsprozesse entweder vollkommen manuell oder nur mit geringem Automatisierungsgrad ab. Ziel dieser Arbeit ist es, eine Architektur für Personenbenachrichtigungssysteme zu entwerfen, die auf Basis definierter Entwurfskriterien die automatisierte Benachrichtigung von Personen in unterschiedlichen Anwendungsszenarien ermöglicht.

Mit dem Publish/Subscribe-Paradigma wird ein weit verbreiteter Ansatz als Ausgangspunkt für den Entwurf der Kommunikationsprinzipien verwendet. Die Grundsätze serviceorientierter Architekturen stellen die Grundlage für die Systemarchitektur dar. Sie besteht aus einzelnen, lose gekoppelten Teilsystemen, die technisch als Web Services implementiert werden.

Web Services werden umfassend betrachtet. Dabei werden die Einordnung im Bereich SOA, die zugrundeliegenden Standards und die Verwendung von Web Services im Zusammenhang mit Transaktionen behandelt.

Nachdem es sich bei Prozessen zur Personenbenachrichtigung meist um vordefinierte Abläufe beziehungsweise Workflows handelt, werden im Rahmen dieser Arbeit auch Technologien zur Beschreibung und Umsetzung dieser untersucht. Mit BPEL4WS, XPDL, Wf-XML, YAWL, Windows Workflow Foundation und RuleML werden unterschiedlichste Ansätze, Protokolle und Beschreibungssprachen vorgestellt.

Die Entwicklung der Referenzarchitektur steht im Mittelpunkt dieser Arbeit. Es werden daher die Anforderungen für eine Implementierung eines Benachrichtigungssystems für Personen formuliert. Neben dem Erreichen einer hohen Ausfallsicherheit, stellen die universelle Einsetzbarkeit und Erweiterbarkeit von Implementierungen die zentrale Herausforderung dar. Die Architekturbeschreibung zeigt die Aufteilung der Gesamtaufgaben auf mehrere spezialisierte Teilkomponenten. Es werden die notwendigen Funktionen und Schnittstellen der einzelnen Dienste spezifiziert und das konkrete Zusammenspiel der Einzelkomponenten bei einer Benachrichtigung beschrieben.

Um die Referenzarchitektur auf ihre Anwendbarkeit zu überprüfen, wurde exemplarisch eine Referenzimplementierung erstellt. Mit den Prototypen, die auf zwei Standorten auf unterschiedlichen Servern installiert wurden, können vordefinierte Benachrichtigungsvorgänge abgewickelt werden. Die Benachrichtigung der einzelnen Personen kann dabei per Telefon, E-Mail oder SMS-Nachricht erfolgen. Bei Benachrichtigungen via Telefonanruf wurde auch die Verarbeitung von Rückantworten implementiert, die als Entscheidungskriterium für die weitere Abarbeitung eines Benachrichtigungsvorganges herangezogen werden können.

Abschließend werden drei wissenschaftliche Publikationen im Bereich von Benachrichtigungssystemen vorgestellt.