1.

Record Nr.

UNISA996465469003316

Autore

Heckel Reiko

Titolo

Graph transformation for software engineers : with applications to model-based development and domain-specific language engineering / / Reiko Heckel, Gabriele Taentzer

Pubbl/distr/stampa

Cham : , : Springer International Publishing : , : Imprint : Springer, , 2020

ISBN

3-030-43916-X

Edizione

[1st ed. 2020.]

Descrizione fisica

1 online resource (323 pages) : illustrations

Disciplina

005.1

Soggetti

Computers

Software engineering

Lingua di pubblicazione

Inglese

Formato

Materiale a stampa

Livello bibliografico

Monografia

Nota di bibliografia

Includes bibliographical references and index.

Nota di contenuto

Part I, Graph Transformation -- Graphs for Modeling and Specification -- Graph Transformation Concepts -- Beyond Individual Rules: Usage Scenarios and Control Structures -- Analysis and Improvement of Graph Transformation Systems -- Part II, Graph Transformation in Software Engineering -- Detecting Inconsistent Requirements in a Use Case-Driven Approach -- Service Specification and Matching -- Model-Based Testing -- Reverse Engineering: Inferring Visual Contracts from Java Programs -- Stochastic Analysis of Dynamic Software Architectures -- Advanced Modeling Language Definition: Integrating Meta-modeling with Graph Transformation -- Improving Models and Understanding Model Changes -- Translating and Synchronizing Models.

Sommario/riassunto

This book is an introduction to graph transformation as a foundation to model-based software engineering at the level of both individual systems and domain-specific modelling languages. The first part of the book presents the fundamentals in a precise, yet largely informal way. Besides serving as prerequisite for describing the applications in the second part, it also provides a comprehensive and systematic survey of the concepts, notations and techniques of graph transformation. The second part presents and discusses a range of applications to both model-based software engineering and domain-specific language engineering. The variety of these applications demonstrates how



broadly graphs and graph transformations can be used to model, analyse and implement complex software systems and languages. This is the first textbook that explains the most commonly used concepts, notations, techniques and applications of graph transformation without focusing on one particular mathematical representation or implementation approach. Emphasising the research and engineering methodologies used, it will be a valuable resource for graduate students, practitioners and researchers in software engineering, foundations of programming and formal methods.