TY - THES A1 - Becker, Basil T1 - Architectural modelling and verification of open service-oriented systems of systems T1 - Architekturmodellierung und Verifikation von offenen und service-orientierten Systems of Systems N2 - Systems of Systems (SoS) have received a lot of attention recently. In this thesis we will focus on SoS that are built atop the techniques of Service-Oriented Architectures and thus combine the benefits and challenges of both paradigms. For this thesis we will understand SoS as ensembles of single autonomous systems that are integrated to a larger system, the SoS. The interesting fact about these systems is that the previously isolated systems are still maintained, improved and developed on their own. Structural dynamics is an issue in SoS, as at every point in time systems can join and leave the ensemble. This and the fact that the cooperation among the constituent systems is not necessarily observable means that we will consider these systems as open systems. Of course, the system has a clear boundary at each point in time, but this can only be identified by halting the complete SoS. However, halting a system of that size is practically impossible. Often SoS are combinations of software systems and physical systems. Hence a failure in the software system can have a serious physical impact what makes an SoS of this kind easily a safety-critical system. The contribution of this thesis is a modelling approach that extends OMG's SoaML and basically relies on collaborations and roles as an abstraction layer above the components. This will allow us to describe SoS at an architectural level. We will also give a formal semantics for our modelling approach which employs hybrid graph-transformation systems. The modelling approach is accompanied by a modular verification scheme that will be able to cope with the complexity constraints implied by the SoS' structural dynamics and size. Building such autonomous systems as SoS without evolution at the architectural level --- i. e. adding and removing of components and services --- is inadequate. Therefore our approach directly supports the modelling and verification of evolution. N2 - Systems of Systems (SoS) sind ein seit längerem bekanntes Konzept, das jedoch in letzter Zeit vermehrt Aufmerksamkeit erhielt. Das Hauptaugenmerk dieser Arbeit wird auf SoS liegen, die mit Hilfe von Techniken aus Service-Orientierten Architekturen erstellt werden. Somit vereinen die hier betrachteten SoS die Vorteile und Herausforderungen beider Paradigmen. SoS können definiert werden als Zusammenschlüsse einzelner, autonomer Systeme, die zu einem größeren System integriert werden. In diesem Zusammenhang interessant ist, dass die ehemals isolierten Systeme nach wie vor isoliert voneinander weiterentwickelt und gewartet werden. Desweiteren kommt der Strukturdynamik innerhalb des SoS eine beachtliche Bedeutung zu, da jederzeit Systeme dem SoS beitreten und es verlassen können. Zusammen mit der Tatsache, dass die Kooperationen zwischen den konstituierenden Systemen nicht immer beobachtbar sind, führt dies dazu, dass wir diese Systeme als offene Systeme bezeichnen. Wobei das System natürlich jederzeit eine klar definierte Grenze besitzt, diese aber nur durch ein Anhalten des Systems zu bestimmen ist. Dies jedoch ist, von einer praktischen Perspektive aus betrachtet, unmöglich. Häufig stellen SoS eine Kombination aus Softwaresystemen und pyhsikalischen Systemen dar mit der Folge, dass ein Fehler in der Software eine SoS schnell eine immense physikalische Wirkung entwickeln kann. Von daher fallen SoS leicht in die Klasse der sicherheitskritischen Systeme. In dieser Arbeit werden wir einen Modellierungsansatz vorstellen, der die Sprache SoaML der OMG erweitert. Die grundlegenden Konzepte dieses Ansatzes sind die Modellierung mit Kollaborationen und Rollen als Abstraktionsebene über Komponenten. Der vorgestellte Ansatz erlaubt es uns SoS auf einer architekturellen Ebene zu betrachten. Die formale Semantik unseres Modellierungsansatzes ist durch hybride Graphtransformationssysteme gegeben. Abgestimmt auf die Modellierung werden wir ebenfalls ein Verfahren zu Verifikation von SoS vorstellen, welches trotz der inhärenten Komplexität von SoS, diese zu verifizieren. Die Modellierung und Verifikation von Evolution wird von unserem Ansatz direkt unterstützt. KW - Modellierung KW - Verifikation KW - Evolution KW - Systems of Systems KW - Service-orientierte Systeme KW - modelling KW - verification KW - evolution KW - systems of systems KW - service-oriented systems Y1 - 2013 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-70158 ER - TY - THES A1 - Polyvyanyy, Artem T1 - Structuring process models T1 - Strukturierung von Prozessmodellen N2 - One can fairly adopt the ideas of Donald E. Knuth to conclude that process modeling is both a science and an art. Process modeling does have an aesthetic sense. Similar to composing an opera or writing a novel, process modeling is carried out by humans who undergo creative practices when engineering a process model. Therefore, the very same process can be modeled in a myriad number of ways. Once modeled, processes can be analyzed by employing scientific methods. Usually, process models are formalized as directed graphs, with nodes representing tasks and decisions, and directed arcs describing temporal constraints between the nodes. Common process definition languages, such as Business Process Model and Notation (BPMN) and Event-driven Process Chain (EPC) allow process analysts to define models with arbitrary complex topologies. The absence of structural constraints supports creativity and productivity, as there is no need to force ideas into a limited amount of available structural patterns. Nevertheless, it is often preferable that models follow certain structural rules. A well-known structural property of process models is (well-)structuredness. A process model is (well-)structured if and only if every node with multiple outgoing arcs (a split) has a corresponding node with multiple incoming arcs (a join), and vice versa, such that the set of nodes between the split and the join induces a single-entry-single-exit (SESE) region; otherwise the process model is unstructured. The motivations for well-structured process models are manifold: (i) Well-structured process models are easier to layout for visual representation as their formalizations are planar graphs. (ii) Well-structured process models are easier to comprehend by humans. (iii) Well-structured process models tend to have fewer errors than unstructured ones and it is less probable to introduce new errors when modifying a well-structured process model. (iv) Well-structured process models are better suited for analysis with many existing formal techniques applicable only for well-structured process models. (v) Well-structured process models are better suited for efficient execution and optimization, e.g., when discovering independent regions of a process model that can be executed concurrently. Consequently, there are process modeling languages that encourage well-structured modeling, e.g., Business Process Execution Language (BPEL) and ADEPT. However, the well-structured process modeling implies some limitations: (i) There exist processes that cannot be formalized as well-structured process models. (ii) There exist processes that when formalized as well-structured process models require a considerable duplication of modeling constructs. Rather than expecting well-structured modeling from start, we advocate for the absence of structural constraints when modeling. Afterwards, automated methods can suggest, upon request and whenever possible, alternative formalizations that are "better" structured, preferably well-structured. In this thesis, we study the problem of automatically transforming process models into equivalent well-structured models. The developed transformations are performed under a strong notion of behavioral equivalence which preserves concurrency. The findings are implemented in a tool, which is publicly available. N2 - Im Sinne der Ideen von Donald E. Knuth ist die Prozessmodellierung sowohl Wissenschaft als auch Kunst. Prozessmodellierung hat immer auch eine ästhetische Dimension. Wie das Komponieren einer Oper oder das Schreiben eines Romans, so stellt auch die Prozessmodellierung einen kreativen Akt eines Individuums dar. Somit kann ein Prozess auf unterschiedlichste Weise modelliert werden. Prozessmodelle können anschließend mit wissenschaftlichen Methoden untersucht werden. Prozessmodelle liegen im Regelfall als gerichtete Graphen vor. Knoten stellen Aktivitäten und Entscheidungspunkte dar, während gerichtete Kanten die temporalen Abhängigkeiten zwischen den Knoten beschreiben. Gängige Prozessmodellierungssprachen, zum Beispiel die Business Process Model and Notation (BPMN) und Ereignisgesteuerte Prozessketten (EPK), ermöglichen die Erstellung von Modellen mit einer beliebig komplexen Topologie. Es gibt keine strukturellen Einschränkungen, welche die Kreativität oder Produktivität durch eine begrenzte Anzahl von Modellierungsalternativen einschränken würden. Nichtsdestotrotz ist es oft wünschenswert, dass Modelle bestimmte strukturelle Eigenschaften haben. Ein bekanntes strukturelles Merkmal für Prozessmodelle ist Wohlstrukturiertheit. Ein Prozessmodell ist wohlstrukturiert genau dann, wenn jeder Knoten mit mehreren ausgehenden Kanten (ein Split) einen entsprechenden Knoten mit mehreren eingehenden Kanten (einen Join) hat, und umgekehrt, so dass die Knoten welche zwischen dem Split und dem Join liegen eine single-entry-single-exit (SESE) Region bilden. Ist dies nicht der Fall, so ist das Modell unstrukturiert. Wohlstrukturiertheit ist aufgrund einer Vielzahl von Gründen wünschenswert: (i) Wohlstrukturierte Modelle sind einfacher auszurichten, wenn sie visualisiert werden, da sie planaren Graphen entsprechen. (ii) Wohlstrukturierte Modelle zeichnen sich durch eine höhere Verständlichkeit aus. (iii) Wohlstrukturierte Modelle haben oft weniger Fehler als unstrukturierte Modelle. Auch ist die Wahrscheinlichkeit fehlerhafter Änderungen größer, wenn Modelle unstrukturiert sind. (iv) Wohlstrukturierte Modelle eignen sich besser für die formale Analyse, da viele Techniken nur für wohlstrukturierte Modelle anwendbar sind. (v) Wohlstrukturierte Modelle sind eher für die effiziente Ausführung und Optimierung geeignet, z.B. wenn unabhängige Regionen eines Prozesses für die parallele Ausführung identifiziert werden. Folglich gibt es eine Reihe von Prozessmodellierungssprachen, z.B. die Business Process Execution Language (BPEL) und ADEPT, welche den Modellierer anhalten nur wohlstrukturierte Modelle zu erstellen. Solch wohlstrukturiertes Modellieren impliziert jedoch gewisse Einschränkungen: (i) Es gibt Prozesse, welche nicht mittels wohlstrukturierten Prozessmodellen dargestellt werden können. (ii) Es gibt Prozesse, für welche die wohlstrukturierte Modellierung mit einer erheblichen Vervielfältigung von Modellierungs-konstrukten einhergeht. Aus diesem Grund vertritt diese Arbeit den Standpunkt, dass ohne strukturelle Einschränkungen modelliert werden sollte, anstatt Wohlstrukturiertheit von Beginn an zu verlangen. Anschließend können, sofern gewünscht und wo immer es möglich ist, automatische Methoden Modellierungsalternativen vorschlagen, welche "besser" strukturiert sind, im Idealfall sogar wohlstrukturiert. Die vorliegende Arbeit widmet sich dem Problem der automatischen Transformation von Prozessmodellen in verhaltensäquivalente wohlstrukturierte Prozessmodelle. Die vorgestellten Transformationen erhalten ein strenges Verhaltensequivalenzkriterium, welches die Parallelität wahrt. Die Resultate sind in einem frei verfügbaren Forschungsprototyp implementiert worden. KW - Strukturierung KW - Wohlstrukturiertheit KW - Prozesse KW - Verhalten KW - Modellierung KW - Structuring KW - Well-structuredness KW - Process KW - Behavior KW - Modeling Y1 - 2012 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-59024 ER -