Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Arvid Butting is active.

Publication


Featured researches published by Arvid Butting.


european conference on modelling foundations and applications | 2017

Systematic Language Extension Mechanisms for the MontiArc Architecture Description Language

Arvid Butting; Arne Haber; Lars Hermerschmidt; Oliver Kautz; Bernhard Rumpe; Andreas Wortmann

Architecture description languages (ADLs) combine the benefits of component-based software engineering and model-driven development. Extending an ADL to domain-specific requirements is a major challenge for its successful application. Most ADLs focus on fixed features and do not consider domain-specific language extension. ADLs focusing on extensibility focus on syntactic augmentation only and neither consider semantics, nor the ADL’s tooling. We present a systematic extension method for the MontiArc component and connector ADL that enables extending its syntax and infrastructure. The MontiArc ADL is built on top of the MontiCore workbench for compositional modeling languages and leverages its powerful language integration facilities. Based on these, we conceived systematic extension activities and present their application to customizing MontiArc for three different domains. This application of software language engineering to ADLs reduces effort for their extension and the presented method guides developers in applying it to their domain. This ultimately fosters the application of ADLs to real-world domain-specific challenges.


international conference on systems | 2018

Modeling language variability with reusable language components

Arvid Butting; Robert Eikermann; Oliver Kautz; Bernhard Rumpe; Andreas Wortmann

Proliferation of modeling languages has produced a great variety of similar languages whose individual maintenance is challenging and costly. Reusing the syntax and semantics of modeling languages and their heterogeneous constituents, however, is rarely systematic. Current research on modeling language reuse focuses on reusing abstract syntax in form of metamodel parts. Systematic reuse of static and dynamic semantics is yet to be achieved. We present an approach to compose syntax and semantics of independently developed modeling languages through language product lines and derive new stand-alone language products. Using the MontiCore language workbench, we implemented a mechanism to compose language syntaxes and the realization of their semantics in form of template-based code generators according to language product line configurations. Leveraging variability of product lines greatly facilitates reusing modeling language and alleviates their proliferation.


international conference on model driven engineering and software development | 2018

Retrofitting Type-safe Interfaces into Template-based Code Generators

Kai Adam; Arvid Butting; Oliver Kautz; Jérôme Pfeiffer; Bernhard Dieter Rumpe; Andreas Wortmann

Model-driven development leverages transformations to produce general-purpose programming language artifacts. Model-to-text (M2T) transformations facilitate ad-hoc transformation development by requiring less preparation than model-to-model transformations. Employing template engines is common for M2T transformations. However, the M2T transformation artifacts (templates) rarely provide interfaces to support their black-box integration. Instead, composing templates requires in-depth expertise of their internals to identify and pass the required arguments. This complicates their reuse, and, hence, code generator development. Where switching to more expressive template engines is not feasible, conceiving templates as models can alleviate these challenges. We present a method to retrofit type-safe signatures into templates, generate typed interfaces from these, and show how this can be utilized to compose independently developed templates for more efficient code generator engineering.


2017 IEEE International Conference on Software Architecture (ICSA) | 2017

Semantic Differencing for Message-Driven Component & Connector Architectures

Arvid Butting; Oliver Kautz; Bernhard Rumpe; Andreas Wortmann

Stepwise refinement is a development methodology in which software components progressively evolve under strict adherence of proven properties. This requires means to check whether a new version of a component – with potentially different interface and behavior implementation – refines the behavior of its predecessor. Where architecture description languages (ADLs) support refinement checking, the complexity of their semantic domain requires (partially) manual proving to establish refinement between component versions. We identified a subset of the FOCUS semantics for describing distributed systems as stream processing functions that is powerful enough to model complex and realistic systems, yet sufficiently powerful to support fully automated refinement checking. Leveraging this, we present a refinement checking method for ADLs yielding semantics that can be expressed as stream processing functions. This method relies on transforming architectures into composed port automata and translating these to Buchi automata prior to proving refinement using RABIT for language inclusion checking. This method enables to compare the behaviors of component versions with minimal effort, yields witnesses for non-refining component pairs, and, thus, ultimately facilitates stepwise component refinement.


software language engineering | 2018

Translating grammars to accurate metamodels

Arvid Butting; Nico Jansen; Bernhard Rumpe; Andreas Wortmann

There is a software language engineering gap between metamodel-based languages and grammar-based languages. Grammars can support integrated definition of concrete syntax and abstract syntax, which facilitates processing models, but usually prevents reusing the variety of language tools operating on Ecore metamodels (such as editors, interpreters, debuggers, etc.). Existing work on translating grammars to Ecore metamodels features very cursory translations only, which requires re-engineering intricacies natural to grammars for the metamodels again. We conceived a translation from an EBNF-like syntax to Ecore metamodels that considers the grammars’ intricacies. This translation is realized as a fully automated toolchain from grammars into Ecore & OCL using the language workbench MontiCore. Using this translation enables grammar-based languages to leverage the benefits of Ecore-compatible language tools while supporting natural definition of concrete and abstract syntax.


software language engineering | 2018

Deriving fluent internal domain-specific languages from grammars

Arvid Butting; Manuela Dalibor; Gerrit Leonhardt; Bernhard Rumpe; Andreas Wortmann

A prime decision of engineering domain-specific languages (DSLs) is implementing these as external DSLs or internal DSLs. Agile language engineering benefits from easily switching between both shapes to provide rapidly developed prototypes before settling on a specific syntax. This switching, however, is rarely feasible due to the effort of re-implementing language tooling for both shapes. Current research in software language engineering focuses either on internal DSLs or external DSLs. We conceived a concept to automatically derive customizable internal DSLs from grammars that operate on the same abstract syntax as the external DSL. This supports reusing tooling (such as model checkers or code generators) between both shapes. We realized our concept with the MontiCore language workbench and Groovy as host language for internal DSLs. This concept is applicable to many grammar-based language definition


model driven engineering languages and systems | 2018

Teaching model-based systems engineering for industry 4.0: student challenges and expectations

Arvid Butting; Sinem Konar; Bernhard Rumpe; Andreas Wortmann

Industry 4.0 and its international siblings envision revolutionizing manufacturing through integrating software-intensive systems from business plans to manufacturing systems to products and across the complete value-added chain. We observe a trend towards model-based systems engineering in the context of Industry 4.0, which requires finding a balance between modeling challenges and manufacturing challenges in educating software engineering students to become a vital part of this revolution. We conducted a project class on model-based systems engineering for Industry 4.0 to uncover the challenges in preparing the participating computer science students for playing a role contributing to the vision of Industry 4.0. To this end, we instrumented the class with a questionnaire and semi-structured interviews to understand the challenges and expectations of students on this topic. We report the results of both and lessons learned for future project classes on model-based systems engineering for Industry 4.0.


Federation of International Conferences on Software Technologies: Applications and Foundations | 2017

On the Need for Artifact Models in Model-Driven Systems Engineering Projects

Arvid Butting; Timo Greifenberg; Bernhard Rumpe; Andreas Wortmann

Model-driven development has shown to facilitate systems engineering. It employs automated transformation of heterogeneous models into source code artifacts for software products, their testing, and deployment. To this effect, model-driven processes comprise several activities, including parsing, model checking, generating, compiling, testing, and packaging. During this, a multitude of artifacts of different kinds are involved that are related to each other in various ways. The complexity and number of these relations aggravates development, maintenance, and evolution of model-driven systems engineering (MDSE). For future MDSE challenges, such as the development of collaborative cyber-physical systems for automated driving or Industry 4.0, the understanding of these relations must scale with the participating domains, stakeholders, and modeling techniques. We motivate the need for understanding these relations between artifacts of MDSE processes, sketch a vision of formalizing these using artifact models, and present challenges towards it.


acm conference on systems programming languages and applications software for humanity | 2016

Model-driven separation of concerns for service robotics

Kai Adam; Arvid Butting; Robert Heim; Oliver Kautz; Bernhard Rumpe; Andreas Wortmann

Robotics currently adopts model-driven engineering focusing software modeling languages. This forces domain experts to employ these languages instead of enabling application of more appropriate DSLs. This ultimately produces monolithic, hardly reusable applications. We present an infrastructure for the development of service robotics applications employing DSLs aimed at domain experts and tailored to domain challenges. It facilitates separation of concerns of participating robotics, domain, and software engineering experts and integrates their models via a component & connector reference architecture and a combined code generation framework. The infrastructure was successfully deployed and evaluated with robotics manufacturers, caregivers, and software engineers in a German hospital. We believe that model-driven engineering with languages tailored to the various stakeholders’ needs can greatly facilitate robotic application engineering.


Grand Challenges in Modeling 2017 | 2017

Taming the Complexity of Model-Driven Systems Engineering Projects.

Arvid Butting; Bernhard Rumpe; Michael von Wenckstern; Timo Greifenberg

Collaboration


Dive into the Arvid Butting's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Kai Adam

RWTH Aachen University

View shared research outputs
Top Co-Authors

Avatar

Robert Heim

RWTH Aachen University

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Arne Haber

RWTH Aachen University

View shared research outputs
Researchain Logo
Decentralizing Knowledge