Graph Transformations and Model-Driven Engineering Essays Dedicated to Manfred Nagl on the Occasion of his 65th Birthday

This festschrift volume, published in honor of Manfred Nagl on the occasion of his 65th birthday, contains 30 refereed contributions, that cover graph transformations, software architectures and reengineering, embedded systems engineering, and more.

Saved in:
Bibliographic Details
Main Authors Engels, Gregor, Lewerentz, Claus, Schäfer, Wilhelm, Schürr, Andy, Westfechtel, Bernhard
Format eBook
LanguageEnglish
Published Berlin, Heidelberg Springer Nature 2010
Springer Berlin / Heidelberg
Springer Berlin Heidelberg
Springer
Edition1
SeriesLecture Notes in Computer Science
Subjects
Online AccessGet full text
ISBN9783642173226
3642173225
9783642173219
3642173217
ISSN0302-9743
1611-3349
DOI10.1007/978-3-642-17322-6

Cover

Table of Contents:
  • Algorithm and Tool for Stochastic Simulation -- Conclusion -- References -- Autonomous Units and Their Semantics -The Concurrent Case -- Introduction -- Preliminaries -- Concurrent Graph Transformation Approaches -- Communities of Autonomous Units -- Canonical Derivations -- Related Work -- Conclusion -- References -- Parallel Independence of Amalgamated Graph Transformations Applied to Model Transformation -- Introduction -- Example: Model Transformation from BPMN to BPEL by Amalgamated Graph Transformation -- Type Graphs -- A BPMN Instance Graph: ATM Machine -- Transformation Rules -- Amalgamated Graph Transformation -- Parallel Independence of Amalgamated Graph Transformations -- Related Work -- Conclusions and Future Work -- References -- Extended Triple Graph Grammars with Efficient and Compatible Graph Translators -- Introduction -- TGGs with Negative Application Conditions -- TGG Schema -- TGG Productions -- Simultaneous Evolution of Graph Triples -- Language Translators Based on TGGs -- Fundamental Properties of TGGs and Translators -- Formalization of Constrained TGGs with NACs -- Constrained and Typed Graph Grammars with NACs -- Constrained and Typed Triple Graph Grammars with NACs -- Dangling Edge Condition (DEC) -- Formal introduction to LNCC and DEC -- Dangling Edge Condition by Example -- Extended Translation Algorithm with DEC -- Related Work -- Conclusion and Future Work -- References -- Controlling Reuse in Pattern-Based Model-to-Model Transformations -- Introduction -- Related Work -- The Example Case Study -- Preliminaries -- Pattern-Based Model-to-Model Transformation -- Considering the Meta-model Integrity Constraints -- Generation of Operational Mechanisms -- Parameterization and Heuristics for Rule Derivation -- Check-Before-Enforce Semantics -- Specification Process and Back to the Case Study -- Conclusions and Future Work
  • Title -- Preface -- Organization -- Table of Contents -- Graph Transformations and Model-Driven Engineering: The Merits of Manfred Nagl -- Short CV -- Research -- Students -- Publications -- References -- Graph Transformations: Theory and Applications -- The Edge of Graph Transformation-Graphs for Behavioural Specification -- Background -- A Roadmap through the Graph Zoo -- Nodes for Entities, Edges for Relations -- Nodification -- Edges for Structure, Nodes for Glue -- The Awkwardness of Attributes -- To Type or Not to Type -- Special Graphs for Special Purposes -- The Pushout Scare -- Summary -- Criteria for Behavioural Specification and Analysis -- Learning Curve -- Suitability -- Flexibility -- Scalability -- Maturity -- Tooling -- Summary -- Recommendations -- References -- Graph Transformation by Computational Category Theory -- Introduction -- Categories -- Colimits -- Graphs -- Labeled Graphs -- Graph Transformations -- Conclusions -- References -- On GS-Monoidal Theories for Graphs with Nesting -- Introduction -- An Algebra for Graphs with Nesting and Restrictions -- Graphs with Nesting and Restriction -- The Algebra for Graphs with Nesting -- A Normalised Form for Terms of AGN -- Term Graphs and GS-Monoidal Theories -- GS-Monoidal Theories -- From AGN Terms to Term Graphs -- From Term Graphs to Graphs with Nesting -- Towards an Enhanced Modelling Framework -- On Rewriting NR-Graphs -- Edges with Inner Rank: From Term Graphs to GS-Graphs -- Related Works -- Conclusion and Further Works -- References -- Stochastic Modelling and Simulation of Mobile Systems -- Introduction -- Related Work -- Case Study and Requirements -- Generalised Stochastic Graph Transformation -- The Base: Graph Transformation, Generically -- The Topping: Stochastic Modelling with Global Time -- Stochastic Simulation -- From SGTS to Generalised Semi-Markov Processes
  • References -- Appendix -- Lessons Learned from Building a Graph Transformation System -- Introduction -- Foundations: Metamodels -- Model Transformations -- Model Transformations via Efficient Graph Transformations -- Practical Use of Model Transformations -- The Issue of Verification -- Transformations in Evolution and Adaptation -- Summary and Conclusions -- References -- Workflow-Driven Tool Integration Using Model Transformations -- Introduction -- The Architecture of Tool Integration Chains -- Classification of Development Activities -- Synthesis -- Analysis -- Derivation -- Process-Driven Tool Integration -- Process Metamodel -- Case Study: The DIANA Toolchain -- Models -- Overview of the DIANA System Modeling Process -- Graph Transformation in the DIANA Tool Chain -- Contracts as Graph Patterns -- Example -- Configuration Generation by Graph Transformation -- Implementation of the Tool Integration Framework -- Execution Architecture -- Process Modeling Languages for Tool Integration -- Related Work -- Conclusion -- References -- Software Architectures and Reengineering -- The Architecture Description Language MoDeL -- Introduction -- Architecture Views -- Abstraction Types -- The Static View -- Functional Abstraction -- Data Abstraction -- Interface Extensions and Export Control -- Module Relationships -- Subsystems -- Generics -- Specifying Semantics -- The Dynamic View -- Concrete Architectures -- Concurrency -- Function Type Modules -- Synchronization -- Summary -- References -- Towards Managing Software Architectures with Ontologies -- Introduction -- Architecture Centric Development Processes -- Requirements for an Architecture Design Language to Support the Consistency Checked Code Approach -- An Example System -- Concepts Language and Application Architecture -- Platform Mapping -- Ontologies as an Architecture Design Language
  • The Programming Language PLEX -- Execution Model -- The E-CARES Environment -- Program Analysis -- Building the Structure Graph -- Recovering Functions and Modules -- Architecture Recovery -- Motivation -- Real-Time Object-Oriented Modeling Language -- A Simple Mapping Algorithm -- An Improved Mapping Algorithm -- Realization -- Related Work -- Conclusion -- References -- Process Support -- Do We Really Know How to Support Processes? Considerations and Reconstruction -- Introduction -- Requirements Analysis -- Process Modeling -- Process Execution -- Supporting Domain Specific Process Modeling and Execution -- Process Modeling Primitives -- Domain Specific Process Modeling Constructs -- Supporting Process Execution -- Classification -- Conclusion and Outlook -- References -- A Meta-Method for Defining Software Engineering Methods -- Introduction -- Core Concepts of Software Engineering Methods -- Meta-Modeling for Software Engineering Methods -- Method Engineering -- Introduction to Method Engineering -- Meta-Modeling for Method Engineering -- SPEM -- MetaME - A Meta-Method for Software Engineering Methods -- Meta-Model Architecture of the Meta-Method -- Method Engineering Meta-Method: Product Model -- Method Engineering Meta-Method: Process Model -- Integrating the Views of the Meta-Method -- Defining the Artifact Model of Software Engineering Method -- Software Process Modeling in the Software Engineering Method -- Defining Work of Software Engineering Methods as Transformations -- Tailorable Software Engineering Methodology -- Conclusion -- References -- Techniques for Merging Views of Software Processes -- Introduction -- View Merging - The Basic Idea -- Component Matching Algorithm -- First Pass Score Computation -- Second Pass Score Computation -- Summary and Discussion of Component Matching -- Inconsistency Management Algorithm -- Discussion
  • Benefits of Ontology-Based Modeling -- Ontologies and Rule Systems -- Ontology Specification Packages for Architecture Modeling -- Concepts Consistency Analysis -- Application Architecture Consistency Analysis -- Architecture-Code Consistency Analysis -- Modeling the Example with Ontology and Rule Languages -- Modeling the Concepts Language and Checking for Satisfiability -- Modeling the Application Architecture and Checking for Consistency -- Modeling the Target Platform -- Expressing the Platform Mapping -- Checking for Architecture-Code Consistency -- Related Work -- Conclusion -- References -- Using Role-Play Diagrams to Improve Scenario Role-Play -- Introduction -- Modelling Object-Oriented Software -- CRC-Cards -- Role-Play Diagrams -- The CRC/RPD-Process: Object-Oriented Analysis -- Identify Candidate Classes -- Filter Candidates -- Create CRC-Cards -- Allocate Responsibilities -- Define Scenarios -- Prepare Scenario Role-Play -- The Actual Role-Play -- Record Scenarios -- Update CRC-Cards and Scenarios -- The CRC/RPD-Process: Object-Oriented Design -- An Example Step-by-Step -- Find Candidate Classes -- Filter Candidates -- Create CRC-Cards and Allocate Responsibilities -- Define Scenarios -- Prepare Group Session -- Carry Out and Record the Actual Role-Play -- Possible Extensions or Improvements -- Experience -- Summary -- References -- Reverse Engineering Using Graph Queries -- Introduction -- Software -- Terminology -- Graphs -- Pseudocode -- Regular Expressions and Automata -- Querying -- Path Expressions -- Definitions -- Search Algorithms -- Automaton-Driven Search Algorithms -- Applications of Querying -- Edge Inference -- Call Graph Computation -- Metrics Computation -- Related Work -- Conclusion -- References -- Graph-Based Structural Analysis for Telecommunication Systems -- Introduction -- Background -- GSM Basics
  • Modeling Notation