TY - BOOK A1 - Becker, Basil A1 - Giese, Holger A1 - Neumann, Stefan T1 - Correct dynamic service-oriented architectures : modeling and compositional verification with dynamic collaborations N2 - Service-oriented modeling employs collaborations to capture the coordination of multiple roles in form of service contracts. In case of dynamic collaborations the roles may join and leave the collaboration at runtime and therefore complex structural dynamics can result, which makes it very hard to ensure their correct and safe operation. We present in this paper our approach for modeling and verifying such dynamic collaborations. Modeling is supported using a well-defined subset of UML class diagrams, behavioral rules for the structural dynamics, and UML state machines for the role behavior. To be also able to verify the resulting service-oriented systems, we extended our former results for the automated verification of systems with structural dynamics [7, 8] and developed a compositional reasoning scheme, which enables the reuse of verification results. We outline our approach using the example of autonomous vehicles that use such dynamic collaborations via ad-hoc networking to coordinate and optimize their joint behavior. N2 - Bei der Modellierung Service-orientierter Systeme werden Kollaborationen verwendet, um die Koordination mehrerer Rollen durch Service-Verträge zu beschreiben. Dynamische Kollaborationen erlauben ein Hinzufügen und Entfernen von Rollen zur Kollaboration zur Laufzeit, wodurch eine komplexe strukturelle Dynamik entstehen kann. Die automatische Analyse service-orientierter Systeme wird durch diese erheblich erschwert. In dieser Arbeit stellen wir einen Ansatz zur Modellierung und Verifikation solcher dynamischer Kollaborationen vor. Eine spezielle Untermenge der UML ermöglicht die Modellierung, wobei Klassendiagramme, Verhaltensregeln für die strukturelle Dynamik und UML Zustandsdiagramme für das Verhalten der Rollen verwendet werden. Um die Verifikation der so modellierten service-orientierten Systeme zu ermöglichen, erweiterten wir unsere früheren Ergebnisse zur Verifikation von Systemen mit struktureller Dynamik [7,8] und entwickelten einen kompositionalen Verifikationsansatz. Der entwickelte Verifikationsansatz erlaubt es Ergebnisse wiederzuverwenden. Die entwickelten Techniken werden anhand autonomer Fahrzeuge, die dynamische Kollaborationen über ad-hoc Netzwerke zur Koordination und Optimierung ihres gemeinsamen Verhaltens nutzen, exemplarisch vorgestellt. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 29 Y1 - 2009 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-30473 SN - 978-3-940793-91-1 ER - TY - BOOK A1 - Giese, Holger A1 - Hildebrandt, Stephan T1 - Efficient model synchronization of large-scale models N2 - Model-driven software development requires techniques to consistently propagate modifications between different related models to realize its full potential. For large-scale models, efficiency is essential in this respect. In this paper, we present an improved model synchronization algorithm based on triple graph grammars that is highly efficient and, therefore, can also synchronize large-scale models sufficiently fast. We can show, that the overall algorithm has optimal complexity if it is dominating the rule matching and further present extensive measurements that show the efficiency of the presented model transformation and synchronization technique. N2 - Die Model-getriebene Softwareentwicklung benötigt Techniken zur Übertragung von Änderungen zwischen verschiedenen zusammenhängenden Modellen, um vollständig nutzbar zu sein. Bei großen Modellen spielt hier die Effizienz eine entscheidende Rolle. In diesem Bericht stellen wir einen verbesserten Modellsynchronisationsalgorithmus vor, der auf Tripel-Graph-Grammatiken basiert. Dieser arbeitet sehr effizient und kann auch sehr große Modelle schnell synchronisieren. Wir können zeigen, dass der Gesamtalgortihmus eine optimale Komplexität aufweist, sofern er die Ausführung dominiert. Die Effizient des Algorithmus' wird durch einige Benchmarkergebnisse belegt. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 28 KW - Model Transformation KW - Model Synchronisation KW - Tripel-Graph-Grammatik KW - Modell-getriebene Softwareentwicklung KW - Model Transformation KW - Model Synchronization KW - Triple Graph Grammars KW - Model-Driven Engineering Y1 - 2009 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-29281 SN - 978-3-940793-84-3 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Giese, Holger A1 - Hildebrandt, Stephan A1 - Lambers, Leen T1 - Toward bridging the gap between formal semantics and implementation of triple graph grammars N2 - The correctness of model transformations is a crucial element for the model-driven engineering of high quality software. A prerequisite to verify model transformations at the level of the model transformation specification is that an unambiguous formal semantics exists and that the employed implementation of the model transformation language adheres to this semantics. However, for existing relational model transformation approaches it is usually not really clear under which constraints particular implementations are really conform to the formal semantics. In this paper, we will bridge this gap for the formal semantics of triple graph grammars (TGG) and an existing efficient implementation. Whereas the formal semantics assumes backtracking and ignores non-determinism, practical implementations do not support backtracking, require rule sets that ensure determinism, and include further optimizations. Therefore, we capture how the considered TGG implementation realizes the transformation by means of operational rules, define required criteria and show conformance to the formal semantics if these criteria are fulfilled. We further outline how static analysis can be employed to guarantee these criteria. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 37 Y1 - 2010 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-45219 SN - 978-3-86956-078-6 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Krause, Christian A1 - Giese, Holger T1 - Quantitative modeling and analysis of service-oriented real-time systems using interval probabilistic timed automata N2 - One of the key challenges in service-oriented systems engineering is the prediction and assurance of non-functional properties, such as the reliability and the availability of composite interorganizational services. Such systems are often characterized by a variety of inherent uncertainties, which must be addressed in the modeling and the analysis approach. The different relevant types of uncertainties can be categorized into (1) epistemic uncertainties due to incomplete knowledge and (2) randomization as explicitly used in protocols or as a result of physical processes. In this report, we study a probabilistic timed model which allows us to quantitatively reason about nonfunctional properties for a restricted class of service-oriented real-time systems using formal methods. To properly motivate the choice for the used approach, we devise a requirements catalogue for the modeling and the analysis of probabilistic real-time systems with uncertainties and provide evidence that the uncertainties of type (1) and (2) in the targeted systems have a major impact on the used models and require distinguished analysis approaches. The formal model we use in this report are Interval Probabilistic Timed Automata (IPTA). Based on the outlined requirements, we give evidence that this model provides both enough expressiveness for a realistic and modular specifiation of the targeted class of systems, and suitable formal methods for analyzing properties, such as safety and reliability properties in a quantitative manner. As technical means for the quantitative analysis, we build on probabilistic model checking, specifically on probabilistic time-bounded reachability analysis and computation of expected reachability rewards and costs. To carry out the quantitative analysis using probabilistic model checking, we developed an extension of the Prism tool for modeling and analyzing IPTA. Our extension of Prism introduces a means for modeling probabilistic uncertainty in the form of probability intervals, as required for IPTA. For analyzing IPTA, our Prism extension moreover adds support for probabilistic reachability checking and computation of expected rewards and costs. We discuss the performance of our extended version of Prism and compare the interval-based IPTA approach to models with fixed probabilities. N2 - Eine der wichtigsten Herausforderungen in der Entwicklung von Service-orientierten Systemen ist die Vorhersage und die Zusicherung von nicht-funktionalen Eigenschaften, wie Ausfallsicherheit und Verfügbarkeit von zusammengesetzten, interorganisationellen Diensten. Diese Systeme sind oft charakterisiert durch eine Vielzahl von inhärenten Unsicherheiten, welche sowohl in der Modellierung als auch in der Analyse eine Rolle spielen. Die verschiedenen relevanten Arten von Unsicherheiten können eingeteilt werden in (1) epistemische Unsicherheiten aufgrund von unvollständigem Wissen und (2) Zufall als Mittel in Protokollen oder als Resultat von physikalischen Prozessen. In diesem Bericht wird ein probabilistisches, Zeit-behaftetes Modell untersucht, welches es ermöglicht quantitative Aussagen über nicht-funktionale Eigenschaften von einer eingeschränkten Klasse von Service-orientierten Echtzeitsystemen mittels formaler Methoden zu treffen. Zur Motivation und Einordnung wird ein Anforderungskatalog für probabilistische Echtzeitsysteme mit Unsicherheiten erstellt und gezeigt, dass die Unsicherheiten vom Typ (1) und (2) in den untersuchten Systemen einen Ein uss auf die Wahl der Modellierungs- und der Analysemethode haben. Als formales Modell werden Interval Probabilistic Timed Automata (IPTA) benutzt. Basierend auf den erarbeiteten Anforderungen wird gezeigt, dass dieses Modell sowohl ausreichende Ausdrucksstärke für eine realistische und modulare Spezifikation als auch geeignete formale Methoden zur Bestimmung von quantitativen Sicherheits- und Zuverlässlichkeitseigenschaften bietet. Als technisches Mittel für die quantitative Analyse wird probabilistisches Model Checking, speziell probabilistische Zeit-beschränkte Erreichbarkeitsanalyse und Bestimmung von Erwartungswerten für Kosten und Vergütungen eingesetzt. Um die quantitative Analyse mittels probabilistischem Model Checking durchzuführen, wird eine Erweiterung des Prism-Werkzeugs zur Modellierung und Analyse von IPTA eingeführt. Die präsentierte Erweiterung von Prism ermöglicht die Modellierung von probabilistischen Unsicherheiten mittelsWahrscheinlichkeitsintervallen, wie sie für IPTA benötigt werden. Zur Verifikation wird probabilistische Erreichbarkeitsanalyse und die Berechnung von Erwartungswerten durch das Werkzeug unterstützt. Es wird die Performanz der Prism-Erweiterung untersucht und der Intervall-basierte IPTA-Ansatz mit Modellen mit festen Wahrscheinlichkeitswerten verglichen. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 56 KW - Service-orientierte Systme KW - Echtzeitsysteme KW - Quantitative Analysen KW - Formale Verifikation KW - service-oriented systems KW - real-time systems KW - quantitative analysis KW - formal verification methods Y1 - 2012 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-57845 SN - 978-3-86956-171-4 PB - Universitätsverlah Potsdam CY - Potsdam ER - TY - BOOK A1 - Giese, Holger A1 - Hildebrandt, Stephan A1 - Neumann, Stefan A1 - Wätzoldt, Sebastian T1 - Industrial case study on the integration of SysML and AUTOSAR with triple graph grammars N2 - During the overall development of complex engineering systems different modeling notations are employed. For example, in the domain of automotive systems system engineering models are employed quite early to capture the requirements and basic structuring of the entire system, while software engineering models are used later on to describe the concrete software architecture. Each model helps in addressing the specific design issue with appropriate notations and at a suitable level of abstraction. However, when we step forward from system design to the software design, the engineers have to ensure that all decisions captured in the system design model are correctly transferred to the software engineering model. Even worse, when changes occur later on in either model, today the consistency has to be reestablished in a cumbersome manual step. In this report, we present in an extended version of [Holger Giese, Stefan Neumann, and Stephan Hildebrandt. Model Synchronization at Work: Keeping SysML and AUTOSAR Models Consistent. In Gregor Engels, Claus Lewerentz, Wilhelm Schäfer, Andy Schürr, and B. Westfechtel, editors, Graph Transformations and Model Driven Enginering - Essays Dedicated to Manfred Nagl on the Occasion of his 65th Birthday, volume 5765 of Lecture Notes in Computer Science, pages 555–579. Springer Berlin / Heidelberg, 2010.] how model synchronization and consistency rules can be applied to automate this task and ensure that the different models are kept consistent. We also introduce a general approach for model synchronization. Besides synchronization, the approach consists of tool adapters as well as consistency rules covering the overlap between the synchronized parts of a model and the rest. We present the model synchronization algorithm based on triple graph grammars in detail and further exemplify the general approach by means of a model synchronization solution between system engineering models in SysML and software engineering models in AUTOSAR which has been developed for an industrial partner. In the appendix as extension to [19] the meta-models and all TGG rules for the SysML to AUTOSAR model synchronization are documented. N2 - Bei der Entwicklung komplexer technischer Systeme werden verschiedene Modellierungssprachen verwendet. Zum Beispiel werden bei der Entwicklung von Systemen in der Automobilindustrie bereits früh im Entwicklungsprozess Systemmodelle verwendet, um die Anforderungen und die grobe Struktur des Gesamtsystems darzustellen. Später werden Softwaremodelle verwendet, um die konkrete Softwarearchitektur zu modellieren. Jedes Modell stellt spezifische Entwurfsaspekte mit Hilfe passender Notationen auf einem angemessenen Abstraktionsniveau dar. Wenn jedoch vom Systementwurf zum Softwareentwurf übergegangen wird, müssen die Entwicklungsingenieure sicherstellen, dass alle Entwurfsentscheidungen, die im Systemmodell enthalten sind, korrekt auf das Softwaremodell übertragen werden. Sobald danach auch noch Änderungen auftreten, muss die Konsistenz zwischen den Modellen in einem aufwändigen manuellen Schritt wiederhergestellt werden. In diesem Bericht zeigen wir, wie Modellsynchronisation und Konsistenzregeln zur Automatisierung dieses Arbeitsschrittes verwendet und die Konsistenz zwischen den Modellen sichergestellt werden können. Außerdem stellen wir einen allgemeinen Ansatz zur Modellsynchronisation vor. Neben der reinen Synchronisation umfasst unsere Lösung weiterhin Tool-Adapter, sowie Konsistenzregeln, die sowohl die Teile der Modelle abdecken, die synchronisiert werden können, als auch die restlichen Teile. Der Modellsynchronisationsalgorithmus basiert auf Tripel-Graph-Grammatiken und wird im Detail erläutert. An Hand einer konkreten Transformation zwischen SysML- und AUTOSAR-Modellen, die im Rahmen eines Industrieprojektes entwickelt wurde, wird der Ansatz demonstriert. Im Anhang des Berichts sind alle TGG-Regeln für die SysML-zu-AUTOSAR-Transformation dokumentiert. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 57 KW - Model Transformation KW - Model Synchronisation KW - SysML KW - AUTOSAR KW - Tripel-Graph-Grammatik KW - Model Transformation KW - Model Synchronization KW - SysML KW - AUTOSAR KW - Triple Graph Grammar Y1 - 2012 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-60184 SN - 978-3-86956-191-2 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Becker, Basil A1 - Giese, Holger T1 - Cyber-physical systems with dynamic structure : towards modeling and verification of inductive invariants N2 - Cyber-physical systems achieve sophisticated system behavior exploring the tight interconnection of physical coupling present in classical engineering systems and information technology based coupling. A particular challenging case are systems where these cyber-physical systems are formed ad hoc according to the specific local topology, the available networking capabilities, and the goals and constraints of the subsystems captured by the information processing part. In this paper we present a formalism that permits to model the sketched class of cyber-physical systems. The ad hoc formation of tightly coupled subsystems of arbitrary size are specified using a UML-based graph transformation system approach. Differential equations are employed to define the resulting tightly coupled behavior. Together, both form hybrid graph transformation systems where the graph transformation rules define the discrete steps where the topology or modes may change, while the differential equations capture the continuous behavior in between such discrete changes. In addition, we demonstrate that automated analysis techniques known for timed graph transformation systems for inductive invariants can be extended to also cover the hybrid case for an expressive case of hybrid models where the formed tightly coupled subsystems are restricted to smaller local networks. N2 - Cyber-physical Systeme erzielen ihr ausgefeiltes Systemverhalten durch die enge Verschränkung von physikalischer Kopplung, wie sie in Systemen der klassichen Igenieurs-Disziplinen vorkommt, und der Kopplung durch Informationstechnologie. Eine besondere Herausforderung stellen in diesem Zusammenhang Systeme dar, die durch die spontane Vernetzung einzelner Cyber-Physical-Systeme entsprechend der lokalen, topologischen Gegebenheiten, verfügbarer Netzwerkfähigkeiten und der Anforderungen und Beschränkungen der Teilsysteme, die durch den informationsverabeitenden Teil vorgegeben sind, entstehen. In diesem Bericht stellen wir einen Formalismus vor, der die Modellierung der eingangs skizzierten Systeme erlaubt. Ein auf UML aufbauender Graph-Transformations-Ansatz wird genutzt, um die spontane Bildung eng kooperierender Teilsysteme beliebiger Größe zu spezifizieren. Differentialgleichungen beschreiben das kombinierte Verhalten auf physikalischer Ebene. In Kombination ergeben diese beiden Formalismen hybride Graph-Transformations-Systeme, in denen die Graph-Transformationen diskrete Schritte und die Differentialgleichungen das kontinuierliche, physikalische Verhalten des Systems beschreiben. Zusätzlich, präsentieren wir die Erweiterung einer automatischen Analysetechnik zur Verifikation induktiver Invarianten, die bereits für zeitbehaftete Systeme bekannt ist, auf den ausdrucksstärkeren Fall der hybriden Modelle. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 64 KW - Cyber-Physical-Systeme KW - Verifikation KW - Modellierung KW - hybride Graph-Transformations-Systeme KW - Cyber-physical-systems KW - verification KW - modeling KW - hybrid graph-transformation-systems Y1 - 2012 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-62437 SN - 978-3-86956-217-9 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Hebig, Regina A1 - Giese, Holger T1 - MDE settings in SAP : a descriptive field study N2 - MDE techniques are more and more used in praxis. However, there is currently a lack of detailed reports about how different MDE techniques are integrated into the development and combined with each other. To learn more about such MDE settings, we performed a descriptive and exploratory field study with SAP, which is a worldwide operating company with around 50.000 employees and builds enterprise software applications. This technical report describes insights we got during this study. For example, we identified that MDE settings are subject to evolution. Finally, this report outlines directions for future research to provide practical advises for the application of MDE settings. N2 - Techniken der modellgetriebenen Entwicklung (MDE) werden mehr und mehr in der Praxis eingesetzt. Dabei gibt es wenige detaillierte Berichte darüber wie unterschiedliche MDE-Techniken kombiniert und in die Entwicklung integriert werden. Die vorliegende beschreibende Feldstudie dient dem Zweck, in SAP genutzte MDE-Ansätze detailliert zu beschreiben. SAP ist ein weltweit operierendes Unternehmen, hat ca. 50 000 Mitarbeiter und stellt Softwarelösungen für Firmen her. Der vorliegende technische Bericht beschreibt die Einblicke die wir in dieser Studie erhalten haben. Dazu gehört die Einsicht, dass MDE Ansätze einer Evolution unterliegen. Schließlich umreißt dieser Bericht mögliche Richtungen für zukünftige Forschung um praktische Ratschläge für die Gestaltung von MDE Ansätzen geben zu können. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 58 KW - Model Transformation KW - Model Synchronisation KW - SysML KW - AUTOSAR KW - Tripel-Graph-Grammatik KW - modellgetriebene Entwicklung KW - beschreibende Feldstudie Y1 - 2012 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-60193 SN - 978-3-86956-192-9 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Neumann, Stefan A1 - Giese, Holger T1 - Scalable compatibility for embedded real-time components via language progressive timed automata N2 - The proper composition of independently developed components of an embedded real- time system is complicated due to the fact that besides the functional behavior also the non-functional properties and in particular the timing have to be compatible. Nowadays related compatibility problems have to be addressed in a cumbersome integration and configuration phase at the end of the development process, that in the worst case may fail. Therefore, a number of formal approaches have been developed, which try to guide the upfront decomposition of the embedded real-time system into components such that integration problems related to timing properties can be excluded and that suitable configurations can be found. However, the proposed solutions require a number of strong assumptions that can be hardly fulfilled or the required analysis does not scale well. In this paper, we present an approach based on timed automata that can provide the required guarantees for the later integration without strong assumptions, which are difficult to match in practice. The approach provides a modular reasoning scheme that permits to establish the required guarantees for the integration employing only local checks, which therefore also scales. It is also possible to determine potential configuration settings by means of timed game synthesis. N2 - Die korrekte Komposition individuell entwickelter Komponenten von eingebetteten Realzeitsystemen ist eine Herausforderung, da neben funktionalen Eigenschaften auch nicht funktionale Eigenschaften berücksichtigt werden müssen. Ein Beispiel hierfür ist die Kompatibilität von Realzeiteigenschaften, welche eine entscheidende Rolle in eingebetteten Systemen spielen. Heutzutage wird die Kompatibilität derartiger Eigenschaften in einer aufwändigen Integrations- und Konfigurationstests am Ende des Entwicklungsprozesses geprüft, wobei diese Tests im schlechtesten Fall fehlschlagen. Aus diesem Grund wurde eine Zahl an formalen Verfahren Entwickelt, welche eine frühzeitige Analyse von Realzeiteigenschaften von Komponenten erlauben, sodass Inkompatibilitäten von Realzeiteigenschaften in späteren Phasen ausgeschlossen werden können. Existierenden Verfahren verlangen jedoch, dass eine Reihe von Bedingungen erfüllt sein muss, welche von realen Systemen nur schwer zu erfüllen sind, oder aber, die verwendeten Analyseverfahren skalieren nicht für größere Systeme. In dieser Arbeit wird ein Ansatz vorgestellt, welcher auf dem formalen Modell des Timed Automaton basiert und der keine Bedingungen verlangt, die von einem realen System nur schwer erfüllt werden können. Der in dieser Arbeit vorgestellte Ansatz enthält ein Framework, welches eine modulare Analyse erlaubt, bei der ausschließlich miteinender kommunizierende Komponenten paarweise überprüft werden müssen. Somit wird eine skalierbare Analyse von Realzeiteigenschaften ermöglicht, die keine Bedingungen verlangt, welche nur bedingt von realen Systemen erfüllt werden können. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 65 KW - Formale Verifikation KW - Realzeitsysteme KW - Eingebettete Systeme KW - Timed Automata KW - verification KW - real-time systems KW - timed automata KW - embedded-systems Y1 - 2013 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-63853 SN - 978-3-86956-226-1 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Giese, Holger A1 - Becker, Basil T1 - Modeling and verifying dynamic evolving service-oriented architectures N2 - The service-oriented architecture supports the dynamic assembly and runtime reconfiguration of complex open IT landscapes by means of runtime binding of service contracts, launching of new components and termination of outdated ones. Furthermore, the evolution of these IT landscapes is not restricted to exchanging components with other ones using the same service contracts, as new services contracts can be added as well. However, current approaches for modeling and verification of service-oriented architectures do not support these important capabilities to their full extend.In this report we present an extension of the current OMG proposal for service modeling with UML - SoaML - which overcomes these limitations. It permits modeling services and their service contracts at different levels of abstraction, provides a formal semantics for all modeling concepts, and enables verifying critical properties. Our compositional and incremental verification approach allows for complex properties including communication parameters and time and covers besides the dynamic binding of service contracts and the replacement of components also the evolution of the systems by means of new service contracts. The modeling as well as verification capabilities of the presented approach are demonstrated by means of a supply chain example and the verification results of a first prototype are shown. N2 - Service-Orientierte Architekturen erlauben die dynamische Zusammensetzung und Rekonfiguration komplexer, offener IT Landschaften durch Bindung von Service Contracts zur Laufzeit, starten neuer Komponenten und beenden von veralteten. Die Evolution dieser Systeme ist nicht auf den Austausch von Komponenten-Implementierungen bei Beibehaltung der Service-Contracts beschränkt, sondern das Hinzufügen neuer Service-Contracts wird ebenfalls unterstützt. Aktuelle Ansätze zur Modellierung und Verifikation Service-Orientierter Architekturen unterstützen diese wichtigen Eigenschaften, wenn überhaupt, nur unvollständig. In diesem Bericht stellen wir eine Erweiterung des aktuellen OMG Vorschlags zur Service Modellierung mit UML - SoaML - vor, die diese Einschränkungen aufhebt. Unser Ansatz erlaubt die Modellierung von Service Contracts auf verschiedenen Abstraktionsniveaus, besitzt eine fundierte formale Semantik für alle eingeführten Modellierungskonzepte und erlaubt die Verifikation kritischer Eigenschaften. Unser kompositionaler und inkrementeller Verifikationsansatz erlaubt die Verifikation komplexer Eigenschaften einschließlich Kommunikationsparameter und Zeit und deckt neben der dynamischen Bindung von Service Contracts sowie dem Austausch von Komponenten auch die Evolution des gesamten Systems durch das Hinzufügen neuer Service Contracts ab. Die Modellierungs- als auch die Verifikationsfähigkeiten unseres vorgestellten Ansatzes werden durch ein Anwendungsbeispiel aus dem Bereich des Lieferkettenmanagements veranschaulicht. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 75 KW - Service-Orientierte Architekturen KW - Verifikation KW - Contracts KW - Evolution KW - Unbegrenzter Zustandsraum KW - Invarianten KW - Modellierung KW - SoaML KW - Service-Oriented Architecture KW - Verification KW - Contracts KW - Evolution KW - Infinite State KW - Invariants KW - Modeling KW - SoaML KW - Runtime Binding Y1 - 2013 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-65112 SN - 978-3-86956-246-9 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Vogel, Thomas A1 - Giese, Holger T1 - Model-driven engineering of adaptation engines for self-adaptive software : executable runtime megamodels N2 - The development of self-adaptive software requires the engineering of an adaptation engine that controls and adapts the underlying adaptable software by means of feedback loops. The adaptation engine often describes the adaptation by using runtime models representing relevant aspects of the adaptable software and particular activities such as analysis and planning that operate on these runtime models. To systematically address the interplay between runtime models and adaptation activities in adaptation engines, runtime megamodels have been proposed for self-adaptive software. A runtime megamodel is a specific runtime model whose elements are runtime models and adaptation activities. Thus, a megamodel captures the interplay between multiple models and between models and activities as well as the activation of the activities. In this article, we go one step further and present a modeling language for ExecUtable RuntimE MegAmodels (EUREMA) that considerably eases the development of adaptation engines by following a model-driven engineering approach. We provide a domain-specific modeling language and a runtime interpreter for adaptation engines, in particular for feedback loops. Megamodels are kept explicit and alive at runtime and by interpreting them, they are directly executed to run feedback loops. Additionally, they can be dynamically adjusted to adapt feedback loops. Thus, EUREMA supports development by making feedback loops, their runtime models, and adaptation activities explicit at a higher level of abstraction. Moreover, it enables complex solutions where multiple feedback loops interact or even operate on top of each other. Finally, it leverages the co-existence of self-adaptation and off-line adaptation for evolution. N2 - Die Entwicklung selbst-adaptiver Software erfordert die Konstruktion einer sogenannten "Adaptation Engine", die mittels Feedbackschleifen die unterliegende Software steuert und anpasst. Die Anpassung selbst wird häufig mittels Laufzeitmodellen, die die laufende Software repräsentieren, und Aktivitäten wie beispielsweise Analyse und Planung, die diese Laufzeitmodelle nutzen, beschrieben. Um das Zusammenspiel zwischen Laufzeitmodellen und Aktivitäten systematisch zu erfassen, wurden Megamodelle zur Laufzeit für selbst-adaptive Software vorgeschlagen. Ein Megamodell zur Laufzeit ist ein spezielles Laufzeitmodell, dessen Elemente Aktivitäten und andere Laufzeitmodelle sind. Folglich erfasst ein Megamodell das Zusammenspiel zwischen verschiedenen Laufzeitmodellen und zwischen Aktivitäten und Laufzeitmodellen als auch die Aktivierung und Ausführung der Aktivitäten. Darauf aufbauend präsentieren wir in diesem Artikel eine Modellierungssprache für ausführbare Megamodelle zur Laufzeit, EUREMA genannt, die aufgrund eines modellgetriebenen Ansatzes die Entwicklung selbst-adaptiver Software erleichtert. Der Ansatz umfasst eine domänen-spezifische Modellierungssprache und einen Laufzeit-Interpreter für Adaptation Engines, insbesondere für Feedbackschleifen. EUREMA Megamodelle werden über die Spezifikationsphase hinaus explizit zur Laufzeit genutzt, um mittels Interpreter Feedbackschleifen direkt auszuführen. Zusätzlich können Megamodelle zur Laufzeit dynamisch geändert werden, um Feedbackschleifen anzupassen. Daher unterstützt EUREMA die Entwicklung selbst-adaptiver Software durch die explizite Spezifikation von Feedbackschleifen, der verwendeten Laufzeitmodelle, und Adaptionsaktivitäten auf einer höheren Abstraktionsebene. Darüber hinaus ermöglicht EUREMA komplexe Lösungskonzepte, die mehrere Feedbackschleifen und deren Interaktion wie auch die hierarchische Komposition von Feedbackschleifen umfassen. Dies unterstützt schließlich das integrierte Zusammenspiel von Selbst-Adaption und Wartung für die Evolution der Software. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 66 KW - Modellgetriebene Softwareentwicklung KW - Modellierungssprachen KW - Modellierung KW - Laufzeitmodelle KW - Megamodell KW - Ausführung von Modellen KW - Model-Driven Engineering KW - Modeling Languages KW - Modeling KW - Models at Runtime KW - Megamodels KW - Model Execution KW - Self-Adaptive Software Y1 - 2013 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-63825 SN - 978-3-86956-227-8 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Meinel, Christoph A1 - Plattner, Hasso A1 - Döllner, Jürgen Roland Friedrich A1 - Weske, Mathias A1 - Polze, Andreas A1 - Hirschfeld, Robert A1 - Naumann, Felix A1 - Giese, Holger A1 - Baudisch, Patrick T1 - Proceedings of the 7th Ph.D. Retreat of the HPI Research School on Service-oriented Systems Engineering N2 - Design and Implementation of service-oriented architectures imposes a huge number of research questions from the fields of software engineering, system analysis and modeling, adaptability, and application integration. Component orientation and web services are two approaches for design and realization of complex web-based system. Both approaches allow for dynamic application adaptation as well as integration of enterprise application. Commonly used technologies, such as J2EE and .NET, form de facto standards for the realization of complex distributed systems. Evolution of component systems has lead to web services and service-based architectures. This has been manifested in a multitude of industry standards and initiatives such as XML, WSDL UDDI, SOAP, etc. All these achievements lead to a new and promising paradigm in IT systems engineering which proposes to design complex software solutions as collaboration of contractually defined software services. Service-Oriented Systems Engineering represents a symbiosis of best practices in object-orientation, component-based development, distributed computing, and business process management. It provides integration of business and IT concerns. The annual Ph.D. Retreat of the Research School provides each member the opportunity to present his/her current state of their research and to give an outline of a prospective Ph.D. thesis. Due to the interdisciplinary structure of the Research Scholl, this technical report covers a wide range of research topics. These include but are not limited to: Self-Adaptive Service-Oriented Systems, Operating System Support for Service-Oriented Systems, Architecture and Modeling of Service-Oriented Systems, Adaptive Process Management, Services Composition and Workflow Planning, Security Engineering of Service-Based IT Systems, Quantitative Analysis and Optimization of Service-Oriented Systems, Service-Oriented Systems in 3D Computer Graphics sowie Service-Oriented Geoinformatics. N2 - Der Entwurf und die Realisierung dienstbasierender Architekturen wirft eine Vielzahl von Forschungsfragestellungen aus den Gebieten der Softwaretechnik, der Systemmodellierung und -analyse, sowie der Adaptierbarkeit und Integration von Applikationen auf. Komponentenorientierung und WebServices sind zwei Ansätze für den effizienten Entwurf und die Realisierung komplexer Web-basierender Systeme. Sie ermöglichen die Reaktion auf wechselnde Anforderungen ebenso, wie die Integration großer komplexer Softwaresysteme. Heute übliche Technologien, wie J2EE und .NET, sind de facto Standards für die Entwicklung großer verteilter Systeme. Die Evolution solcher Komponentensysteme führt über WebServices zu dienstbasierenden Architekturen. Dies manifestiert sich in einer Vielzahl von Industriestandards und Initiativen wie XML, WSDL, UDDI, SOAP. All diese Schritte führen letztlich zu einem neuen, vielversprechenden Paradigma für IT Systeme, nach dem komplexe Softwarelösungen durch die Integration vertraglich vereinbarter Software-Dienste aufgebaut werden sollen. "Service-Oriented Systems Engineering" repräsentiert die Symbiose bewährter Praktiken aus den Gebieten der Objektorientierung, der Komponentenprogrammierung, des verteilten Rechnen sowie der Geschäftsprozesse und berücksichtigt auch die Integration von Geschäftsanliegen und Informationstechnologien. Die Klausurtagung des Forschungskollegs "Service-oriented Systems Engineering" findet einmal jährlich statt und bietet allen Kollegiaten die Möglichkeit den Stand ihrer aktuellen Forschung darzulegen. Bedingt durch die Querschnittstruktur des Kollegs deckt dieser Bericht ein große Bandbreite aktueller Forschungsthemen ab. Dazu zählen unter anderem Self-Adaptive Service-Oriented Systems, Operating System Support for Service-Oriented Systems, Architecture and Modeling of Service-Oriented Systems, Adaptive Process Management, Services Composition and Workflow Planning, Security Engineering of Service-Based IT Systems, Quantitative Analysis and Optimization of Service-Oriented Systems, Service-Oriented Systems in 3D Computer Graphics sowie Service-Oriented Geoinformatics. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 83 KW - Hasso-Plattner-Institut KW - Forschungskolleg KW - Klausurtagung KW - Service-oriented Systems Engineering KW - Hasso Plattner Institute KW - Research School KW - Ph.D. Retreat KW - Service-oriented Systems Engineering Y1 - 2014 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-63490 SN - 978-3-86956-273-5 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Hebig, Regina A1 - Giese, Holger A1 - Batoulis, Kimon A1 - Langer, Philipp A1 - Zamani Farahani, Armin A1 - Yao, Gary A1 - Wolowyk, Mychajlo T1 - Development of AUTOSAR standard documents at Carmeq GmbH T1 - Entwicklung der AUTOSAR-Standarddokumente bei Carmeq GmbH BT - a case study BT - eine Fall Studie N2 - This report documents the captured MDE history of Carmeq GmbH, in context of the project Evolution of MDE Settings in Practice. The goal of the project is the elicitation of MDE approaches and their evolution. N2 - Dieser technische Bericht dokumentiert wie sich der MDE Ansatz zur Entwicklung von Softwarestandardisierungsdokumenten bei der Carmeq GmbH im Laufe der Zeit verändert hat. Diese Historie wurde im Rahmen des Projektes "Evolution of MDE Settings in Practice" (Evolution von MDE Ansätzen in der Praxis) erstellt. Ziel dieses Projektes ist die Erhebung von MDE Ansätzen und ihrer Evolution. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 92 KW - model-driven engineering KW - MDE settings KW - evolution in MDE KW - case study KW - modellgetriebene Entwicklung KW - MDE Ansatz KW - Evolution in MDE KW - Fallstudie Y1 - 2015 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-71535 SN - 978-3-86956-317-6 SN - 1613-5652 SN - 2191-1665 IS - 92 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Wätzoldt, Sebastian A1 - Giese, Holger T1 - Modeling collaborations in self-adaptive systems of systems BT - terms, characteristics, requirements, and scenarios N2 - An increasing demand on functionality and flexibility leads to an integration of beforehand isolated system solutions building a so-called System of Systems (SoS). Furthermore, the overall SoS should be adaptive to react on changing requirements and environmental conditions. Due SoS are composed of different independent systems that may join or leave the overall SoS at arbitrary point in times, the SoS structure varies during the systems lifetime and the overall SoS behavior emerges from the capabilities of the contained subsystems. In such complex system ensembles new demands of understanding the interaction among subsystems, the coupling of shared system knowledge and the influence of local adaptation strategies to the overall resulting system behavior arise. In this report, we formulate research questions with the focus of modeling interactions between system parts inside a SoS. Furthermore, we define our notion of important system types and terms by retrieving the current state of the art from literature. Having a common understanding of SoS, we discuss a set of typical SoS characteristics and derive general requirements for a collaboration modeling language. Additionally, we retrieve a broad spectrum of real scenarios and frameworks from literature and discuss how these scenarios cope with different characteristics of SoS. Finally, we discuss the state of the art for existing modeling languages that cope with collaborations for different system types such as SoS. N2 - Steigende Anforderungen zum Funktionsumfang und der Flexibilität von Systemen führt zur Integration von zuvor isolierten Systemlösungen zu sogenannten System of Systems (SoS). Weiterhin sollten solche SoS adaptive Eigenschaften aufweisen, die es ihm ermöglichen auf sich ändernde Anforderungen und Umwelteinflüsse zu reagieren. Weil SoS aus unterschiedlichen, unabhängigen Subsystemen zusammengesetzt sind, die wiederum das übergeordnete SoS zu beliebigen Zeitpunkten erweitern oder verlassen können, ist das SoS durch eine variable Systemstruktur gekennzeichnet. Weiterhin definieren sich der Funktionsumfang des SoS und dessen Potenzial aus den enthaltenen Subsystemen. Solche komplexen Systemzusammenstellungen erfordern neue Untersuchungstechniken, um die Interaktion der einzelnen Subsysteme, die Kopplung von geteilten Daten und den Einfluss von lokalen Adaptionsstrategien auf das Gesamtsystem besser verstehen zu können. In diesem Bericht formulieren wir aktuelle Forschungsfragen mit dem Fokus auf der Modellierung von Interaktionen zwischen verschiedenen Systemteilen innerhalt eines SoS. Weiterhin definieren wir wichtige Systemtypen und Begriffe aus diesem Bereich durch das Zusammentragen aktueller Literatur. Nachdem wir ein gemeinsames Verständnis über SoS geschaffen haben, leiten wir typische SoS Eigenschaften und allgemeine Anforderungen für eine Modellierungssprache für Kollaborationen ab. Zusätzlich führen wir eine Literaturstudie durch, in der wir ein breites Spektrum von realen Szenarios und existierenden Frameworks zusammentragen, an denen wir die aufgezeigten SoS Eigenschaften diskutieren. Abschließend beschreiben wir den Stand der Wissenschaft bezüglich existierender Modellierungssprachen, die sich mit Kollaborationen in verschiedenen Arten von Systemen, wie SoS, beschäftigen. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 96 KW - modeling KW - collaboration KW - system of systems KW - cyber-physical systems KW - feedback loops KW - adaptive systems KW - Modellierung KW - Kollaborationen KW - System of Systems KW - Cyber-Physical Systems KW - Feedback Loops KW - adaptive Systeme Y1 - 2015 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-73036 SN - 978-3-86956-324-4 SN - 1613-5652 SN - 2191-1665 IS - 96 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Beyhl, Thomas A1 - Giese, Holger T1 - Efficient and scalable graph view maintenance for deductive graph databases based on generalized discrimination networks N2 - Graph databases provide a natural way of storing and querying graph data. In contrast to relational databases, queries over graph databases enable to refer directly to the graph structure of such graph data. For example, graph pattern matching can be employed to formulate queries over graph data. However, as for relational databases running complex queries can be very time-consuming and ruin the interactivity with the database. One possible approach to deal with this performance issue is to employ database views that consist of pre-computed answers to common and often stated queries. But to ensure that database views yield consistent query results in comparison with the data from which they are derived, these database views must be updated before queries make use of these database views. Such a maintenance of database views must be performed efficiently, otherwise the effort to create and maintain views may not pay off in comparison to processing the queries directly on the data from which the database views are derived. At the time of writing, graph databases do not support database views and are limited to graph indexes that index nodes and edges of the graph data for fast query evaluation, but do not enable to maintain pre-computed answers of complex queries over graph data. Moreover, the maintenance of database views in graph databases becomes even more challenging when negation and recursion have to be supported as in deductive relational databases. In this technical report, we present an approach for the efficient and scalable incremental graph view maintenance for deductive graph databases. The main concept of our approach is a generalized discrimination network that enables to model nested graph conditions including negative application conditions and recursion, which specify the content of graph views derived from graph data stored by graph databases. The discrimination network enables to automatically derive generic maintenance rules using graph transformations for maintaining graph views in case the graph data from which the graph views are derived change. We evaluate our approach in terms of a case study using multiple data sets derived from open source projects. N2 - Graphdatenbanken bieten natürliche Möglichkeiten Graphdaten zu speichern und abzufragen. Im Gegensatz zu relationalen Datenbanken ermöglichen Graphdatenbanken Anfragen, die direkt auf der Graphstruktur der Daten arbeiten. Zum Beispiel können Graphmuster zur Formulierung von Anfragen an die Graphdatenbanken verwendet werden. Allerdings können wie für relationale Datenbanken komplexe Anfragen sehr zeitaufwendig sein und interaktive Anfrageszenarien mit der Datenbank verhindern. Ein möglicher Ansatz mit diesem Geschwindigkeitsproblem umzugehen, ist das Vorberechnen von Antworten für komplexe und häufig gestellt Suchanfragen in Form von sogenannten Datenbanksichten. Dabei muss sichergestellt sein, dass Anfragen, die mit Hilfe von Datenbanksichten beantwortet werden, zu jeder Zeit die gleichen Suchergebnisse zurückliefern als wenn sie ohne Datenbanksichten beantwortet werden, sodass Datenbanksichten gewartet werden müssen bevor Suchanfragen mit Hilfe dieser Datenbanksichten beantwortet werden. Eine solche Wartung von Datenbanksichten muss effizient erfolgen, anderenfalls kann sich der Aufwand für die Erzeugung und Wartung der Datenbanksichten nicht auszahlen. Zum Zeitpunkt der Anfertigung dieses technischen Berichts, ist keine Graphdatenbank bekannt, die solche Datenbanksichten unterstützt. Lediglich Indizes werden durch Graphdatenbanken unterstützt, die es ermöglichen Knoten und Kanten eines Graphen für die schnelle Anfragenbeantwortung zu indizieren, aber ermöglichen es nicht vorberechnete Antworten auf Suchanfragen zu warten. Die Unterstützung von Datenbanksichten durch Graphdatenbanken wird zusätzlich erschwert wenn Negation und Rekursion unterstützt werden sollen wie bei relationalen deduktiven Datenbanken. In diesen technischen Bericht beschreiben wir einen effizienten und skalierenden Ansatz zur inkrementellen Wartung von Dankenbanksichten für deduktive Graphdatenbanken. Das Hauptkonzept des Ansatzes ist ein sogenanntes verallgemeinertes Discrimination Network, dass es ermöglicht geschachtelte Graph Conditions inklusive Negation und Rekursion zu modellieren, die es ermöglichen den Inhalt von Datenbanksichten für Graphdatenbanken in Form von Graphmustern zu spezifizieren. Das Discrimination Network erlaubt die Ableitung von Regeln für die Wartung der Datenbanksichten wenn die Graphdaten von denen die Datenbanksichten abgeleitet wurden modifiziert werden. Wir evaluieren den Ansatz in Form einer Fallstudie und mehreren Graphdatensätzen, die aus Open Source Projekten abgeleitet wurden. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 99 KW - incremental graph pattern matching KW - graph databases KW - view maintenance KW - inkrementelles Graph Pattern Matching KW - Graphdatenbanken KW - Wartung von Graphdatenbanksichten Y1 - 2015 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-79535 SN - 978-3-86956-339-8 SN - 1613-5652 SN - 2191-1665 IS - 99 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Dyck, Johannes A1 - Giese, Holger T1 - Inductive invariant checking with partial negative application conditions N2 - Graph transformation systems are a powerful formal model to capture model transformations or systems with infinite state space, among others. However, this expressive power comes at the cost of rather limited automated analysis capabilities. The general case of unbounded many initial graphs or infinite state spaces is only supported by approaches with rather limited scalability or expressiveness. In this report we improve an existing approach for the automated verification of inductive invariants for graph transformation systems. By employing partial negative application conditions to represent and check many alternative conditions in a more compact manner, we can check examples with rules and constraints of substantially higher complexity. We also substantially extend the expressive power by supporting more complex negative application conditions and provide higher accuracy by employing advanced implication checks. The improvements are evaluated and compared with another applicable tool by considering three case studies. N2 - Graphtransformationssysteme stellen ein ausdrucksstarkes formales Modell zur Verfügung, um Modelltransformationen und Systeme mit unendlichem Zustandsraum zu beschreiben. Allerdings sorgt diese Ausdrucksstärke für signifikante Einschränkungen bei der automatischen Analyse. Ansätze, die die Analyse allgemeiner Systeme mit unendlichem Zustandsraum oder beliebig vielen initialen Graphen unterstützen, sind in ihrer Skalierbarkeit oder Ausdrucksstärke stark eingeschränkt. In diesem Bericht beschreiben wir Verbesserungen eines existierenden Ansatzes für die automatische Verifikation induktiver Invarianten in Graphtransformationssystemen. Durch die Verwendung partieller negativer Anwendungsbedingungen für die Repräsentation und Überprüfung einer Vielzahl an Bedingungen in kompakterer Form können Regeln und Bedingungen von deutlich höhrerer Komplexität verifiziert werden. Weiterhin wird die Ausdrucksstärke des Ansatzes beträchtlich erhöht, indem die Verwendung komplexerer negativer Anwendungsbedingungen und erweiterter Implikationstests ermöglicht wird. Alle diese Verbesserungen werden evaluiert und mit einem anderen anwendbaren Werkzeug anhand von drei Fallstudien verglichen. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 98 KW - verification KW - inductive invariant checking KW - graph transformation KW - partial application conditions KW - Verifikation KW - induktives Invariant Checking KW - Graphtransformationen KW - partielle Anwendungsbedingungen Y1 - 2015 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-77748 SN - 978-3-86956-333-6 SN - 1613-5652 SN - 2191-1665 IS - 98 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Beyhl, Thomas A1 - Blouin, Dominique A1 - Giese, Holger A1 - Lambers, Leen T1 - On the operationalization of graph queries with generalized discrimination networks N2 - Graph queries have lately gained increased interest due to application areas such as social networks, biological networks, or model queries. For the relational database case the relational algebra and generalized discrimination networks have been studied to find appropriate decompositions into subqueries and ordering of these subqueries for query evaluation or incremental updates of query results. For graph database queries however there is no formal underpinning yet that allows us to find such suitable operationalizations. Consequently, we suggest a simple operational concept for the decomposition of arbitrary complex queries into simpler subqueries and the ordering of these subqueries in form of generalized discrimination networks for graph queries inspired by the relational case. The approach employs graph transformation rules for the nodes of the network and thus we can employ the underlying theory. We further show that the proposed generalized discrimination networks have the same expressive power as nested graph conditions. N2 - Graph-basierte Suchanfragen erfahren in jüngster Zeit ein zunehmendes Interesse durch Anwendungsdomänen wie zum Beispiel Soziale Netzwerke, biologische Netzwerke und Softwaremodelle. Für relationale Datenbanken wurden die relationale Algebra und sogenannte generalisierte Discrimination Networks bereits studiert um Suchanfragen angemessen in kleinere Suchanfragen für die inkrementelle Auswertung zu zerlegen und zu ordnen. Allerdings gibt es für Graphdatenbanken derzeit keine formale Grundlage, die es erlaubt solche Zerlegungen zu finden. Daher schlagen wir ein Konzept für die Zerlegung und Ordnung von komplexen Suchanfragen vor. Das Konzept basiert auf generalisierten Discrimination Networks, die aus relationalen Datenbanken bekannt sind. Der Ansatz verwendet Graphtransformationsregeln für Knoten in diesen Netzwerken, sodass die Theorie von Graphen und Graphtransformationen angewendet werden kann. Darüber hinaus zeigen wir auf, dass diese Discrimination Networks die gleiche Ausdrucksstärke besitzen wie Nested Graph Conditions. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 106 KW - graph queries KW - discrimination networks KW - incremental graph pattern matching KW - nested graph conditions KW - Graph-basierte Suche KW - Discrimination Networks KW - Inkrementelle Graphmustersuche KW - Nested Graph Conditions Y1 - 2016 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-96279 SN - 978-3-86956-372-5 SN - 1613-5652 SN - 2191-1665 IS - 106 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - GEN A1 - Giese, Holger A1 - Henkler, Stefan A1 - Hirsch, Martin T1 - A multi-paradigm approach supporting the modular execution of reconfigurable hybrid systems N2 - Advanced mechatronic systems have to integrate existing technologies from mechanical, electrical and software engineering. They must be able to adapt their structure and behavior at runtime by reconfiguration to react flexibly to changes in the environment. Therefore, a tight integration of structural and behavioral models of the different domains is required. This integration results in complex reconfigurable hybrid systems, the execution logic of which cannot be addressed directly with existing standard modeling, simulation, and code-generation techniques. We present in this paper how our component-based approach for reconfigurable mechatronic systems, M ECHATRONIC UML, efficiently handles the complex interplay of discrete behavior and continuous behavior in a modular manner. In addition, its extension to even more flexible reconfiguration cases is presented. T3 - Zweitveröffentlichungen der Universität Potsdam : Mathematisch-Naturwissenschaftliche Reihe - 410 KW - code generation KW - hybrid systems KW - reconfigurable systems KW - simulation Y1 - 2017 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-402896 ER - TY - BOOK A1 - Dyck, Johannes A1 - Giese, Holger T1 - k-Inductive invariant checking for graph transformation systems N2 - While offering significant expressive power, graph transformation systems often come with rather limited capabilities for automated analysis, particularly if systems with many possible initial graphs and large or infinite state spaces are concerned. One approach that tries to overcome these limitations is inductive invariant checking. However, the verification of inductive invariants often requires extensive knowledge about the system in question and faces the approach-inherent challenges of locality and lack of context. To address that, this report discusses k-inductive invariant checking for graph transformation systems as a generalization of inductive invariants. The additional context acquired by taking multiple (k) steps into account is the key difference to inductive invariant checking and is often enough to establish the desired invariants without requiring the iterative development of additional properties. To analyze possibly infinite systems in a finite fashion, we introduce a symbolic encoding for transformation traces using a restricted form of nested application conditions. As its central contribution, this report then presents a formal approach and algorithm to verify graph constraints as k-inductive invariants. We prove the approach's correctness and demonstrate its applicability by means of several examples evaluated with a prototypical implementation of our algorithm. N2 - Während Graphtransformationssysteme einerseits einen ausdrucksstarken Formalismus bereitstellen, existieren andererseits nur eingeschränkte Möglichkeiten für die automatische Analyse. Dies gilt insbesondere für die Analyse von Systemen mit einer Vielzahl an initialen Graphen oder mit großen oder unendlichen Zustandsräumen. Ein möglicher Ansatz, um diese Einschränkungen zu umgehen, sind induktive Invarianten. Allerdings erfordert die Verifkation induktiver Invarianten oft erweitertes Wissen über das zu verifizierende System; weiterhin muss diese Verifikationstechnik mit den spezifischen Problemen der Lokalität und des Mangels an Kontextwissen umgehen. Dieser Bericht betrachtet k-induktive Invarianten - eine Verallgemeinerung induktiver Invarienten - für Graphtransformationssysteme als einen möglichen Ansatz, um diese Probleme anzugehen. Zusätzliches Kontextwissen, das durch die Analyse mehrerer (k) Schritte gewonnen werden kann, macht den entscheidenden Unterschied zu induktiven Invarianten aus und genügt oft, um die gewünschten Invarianten ohne die iterative Entwicklung zusätzlicher Eigenschaften zu verifizieren. Um unendliche Systeme in endlicher Zeit zu analysieren, führen wir eine symbolische Kodierung von Transformationssequenzen ein, die auf verschachtelten Anwendungsbedingungen basiert. Unser zentraler Beitrag ist dann ein formaler Ansatz und Algorithmus zur Verifikation von Graphbedingungen als k-induktive Invarianten. Wir führen einen formalen Beweis, um die Korrektheit unseres Verfahrens nachzuweisen, und demonstrieren die Anwendbarkeit des Verfahrens an mehreren Beispielen, die mit einer prototypischen Implementierung verifiziert wurden. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 119 KW - formal verification KW - static analysis KW - graph transformation KW - typed graph transformation systems KW - graph constraints KW - nested application conditions KW - k-inductive invariants KW - k-induction KW - k-inductive invariant checking KW - transformation sequences KW - s/t-pattern sequences KW - formale Verifikation KW - statische Analyse KW - Graphtransformationen KW - Graphtransformationssysteme KW - Graphbedingungen KW - verschachtelte Anwednungsbedingungen KW - k-induktive Invarianten KW - k-Induktion KW - k-induktives Invariant-Checking KW - Transformationssequenzen KW - Sequenzen von s/t-Pattern Y1 - 2017 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-397044 SN - 978-3-86956-406-7 SN - 1613-5652 SN - 2191-1665 IS - 119 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Maximova, Maria A1 - Giese, Holger A1 - Krause, Christian T1 - Probabilistic timed graph transformation systems T1 - Probabilistische zeitbehaftete Graphtransformationssysteme N2 - Today, software has become an intrinsic part of complex distributed embedded real-time systems. The next generation of embedded real-time systems will interconnect the today unconnected systems via complex software parts and the service-oriented paradigm. Therefore besides timed behavior and probabilistic behaviour also structure dynamics, where the architecture can be subject to changes at run-time, e.g. when dynamic binding of service end-points is employed or complex collaborations are established dynamically, is required. However, a modeling and analysis approach that combines all these necessary aspects does not exist so far. To fill the identified gap, we propose Probabilistic Timed Graph Transformation Systems (PTGTSs) as a high-level description language that supports all the necessary aspects of structure dynamics, timed behavior, and probabilistic behavior. We introduce the formal model of PTGTSs in this paper and present a mapping of models with finite state spaces to probabilistic timed automata (PTA) that allows to use the PRISM model checker to analyze PTGTS models with respect to PTCTL properties. N2 - Software gehört heutzutage zu einem wesentlichen Bestandteil von komplexen eingebetteten Echtzeitsystemen. Die nächste Generation von eingebetteten Echtzeitsystemen wird in der Zukunft die bisher nicht verbundenen Systeme durch komplexe Softwarelösungen unter der Verwendung des serviceorientierten Paradigmas verbinden. Deswegen wird neben der Beschreibung des zeitbehafteten und probabilistischen Verhaltens auch die Betrachtung der Strukturdynamik benötigt, um die Modellierung der Architekturänderungen während der Laufzeit zu ermöglichen, wie z. B. die dynamische Anbindung von den Endpunkten der Services oder die dynamische Erstellung der komplexen Kollaborationen. Allerdings gibt es noch keinen Ansatz für die Modellierung und Analyse, der all diese drei notwendigen Aspekte kombiniert. Um die identifizierte Lücke zu schließen, führen wir probabilistische zeitbehaftete Graphtransformationssysteme (kurz PTGTS) ein, die als abstrakte Beschreibungssprache dienen und die notwendigen Aspekte der Strukturdynamik, des zeitbehafteten Verhaltens und des probabilistischen Verhaltens unterstützen. Außerdem stellen wir den Formalismus der probabilistischen zeitbehafteten Graphtransformationssysteme vor und definieren eine Abbildung zwischen den Modellen mit endlichen Zustandsräumen und probabilistischen zeitbehafteten Automaten, die die Nutzung des PRISM Modell-Checkers für die Analyse der PTGTS Modelle in Bezug auf PTCTL Eigenschaften ermöglichen. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 118 KW - graph transformations KW - probabilistic timed automata KW - PTCTL KW - PRISM model checker KW - HENSHIN KW - Graphtransformationen KW - probabilistische zeitbehaftete Automaten KW - PTCTL KW - PRISM Modell-Checker KW - HENSHIN Y1 - 2017 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-397055 SN - 978-3-86956-405-0 SN - 1613-5652 SN - 2191-1665 IS - 118 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Dyck, Johannes A1 - Giese, Holger A1 - Lambers, Leen T1 - Automatic verification of behavior preservation at the transformation level for relational model transformation N2 - The correctness of model transformations is a crucial element for model-driven engineering of high quality software. In particular, behavior preservation is the most important correctness property avoiding the introduction of semantic errors during the model-driven engineering process. Behavior preservation verification techniques either show that specific properties are preserved, or more generally and complex, they show some kind of behavioral equivalence or refinement between source and target model of the transformation. Both kinds of behavior preservation verification goals have been presented with automatic tool support for the instance level, i.e. for a given source and target model specified by the model transformation. However, up until now there is no automatic verification approach available at the transformation level, i.e. for all source and target models specified by the model transformation. In this report, we extend our results presented in [27] and outline a new sophisticated approach for the automatic verification of behavior preservation captured by bisimulation resp. simulation for model transformations specified by triple graph grammars and semantic definitions given by graph transformation rules. In particular, we show that the behavior preservation problem can be reduced to invariant checking for graph transformation and that the resulting checking problem can be addressed by our own invariant checker even for a complex example where a sequence chart is transformed into communicating automata. We further discuss today's limitations of invariant checking for graph transformation and motivate further lines of future work in this direction. N2 - Die Korrektheit von Modelltransformationen ist von zentraler Wichtigkeit bei der Anwendung modellgetriebener Softwareentwicklung für die Entwicklung hochqualitativer Software. Insbesondere verhindert Verhaltensbewahrung als wichtigste Korrektheitseigenschaft die Entstehung semantischer Fehler während des modellgetriebenen Entwicklungsprozesses. Techniken zur Verifikation von Verhaltensbewahrung zeigen, dass bestimmte spezifische Eigenschaften bewahrt bleiben oder, im allgemeineren und komplexeren Fall, dass eine Form von Verhaltensäquivalenz oder Verhaltensverfeinerung zwischen Quell- und Zielmodell der Transformation besteht. Für beide Ansätze existieren automatisierte Werkzeuge für die Verifikation auf der Instanzebene, also zur Überprüfung konkreter Paare aus Quell- und Zielmodellen der Transformation. Allerdings existiert kein automatischer Verifikationsansatz, der auf der Transformationsebene arbeitet, also Aussagen zu allen Quell- und Zielmodellen einer Modelltransformation treffen kann. Dieser Bericht erweitert unsere Vorarbeit und Ergebnisse aus [27] und stellt einen neuen Ansatz zur automatischen Verifikation von Verhaltensbewahrung vor, der auf Bisimulation bzw. Simulation basiert. Dabei werden Modelltransformationen durch Triple-Graph-Grammatiken und Verhaltensdefinitionen mittels Graphtransformationsregeln beschrieben. Insbesondere weisen wir nach, dass das Problem der Verhaltensbewahrung durch Bisimulation auf Invariant-Checking für Graphtransformationssysteme reduziert werden kann und dass das entstehende Invariant-Checking-Problem für ein komplexes Beispiel durch unser Werkzeug zur Verifikation induktiver Invarianten gelöst werden kann. Das Beispiel beschreibt die Transformation von Sequenzdiagrammen in Systeme kommunizierender Automaten. Darüber hinaus diskutieren wir bestehende Einschränkungen von Invariant-Checking für Graphtransformationssysteme und Ansätze für zukünftige Arbeiten in diesem Bereich. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 112 KW - model transformation KW - behavior preservation KW - semantics preservation KW - relational model transformation KW - bisimulation KW - simulation KW - invariant checking KW - transformation level KW - behavioral equivalenc KW - behavioral refinement KW - behavioral abstraction KW - graph transformation systems KW - graph constraints KW - triple graph grammars KW - Modelltransformationen KW - Verhaltensbewahrung KW - relationale Modelltransformationen KW - Bisimulation KW - Simulation KW - Invariant-Checking KW - Transformationsebene KW - Verhaltensäquivalenz KW - Verhaltensverfeinerung KW - Verhaltensabstraktion KW - Graphtransformationssysteme KW - Graph-Constraints KW - Triple-Graph-Grammatiken Y1 - 2017 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-100279 SN - 978-3-86956-391-6 SN - 1613-5652 SN - 2191-1665 IS - 112 PB - Universitätsverlag Potsdam CY - Potsdam ER -