Christian Motika
University of Kiel
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Christian Motika.
design, automation, and test in europe | 2013
Reinhard von Hanxleden; Michael Mendler; Joaquin Aguado; Björn Duderstadt; Insa Fuhrmann; Christian Motika; Stephen R. Mercer; Owen O'Brien
Synchronous languages ensure deterministic concurrency, but at the price of heavy restrictions on what programs are considered valid, or constructive. Meanwhile, sequential languages such as C and Java offer an intuitive, familiar programming paradigm but provide no guarantees with regard to deterministic concurrency. The sequentially constructive model of computation (SC MoC) presented here harnesses the synchronous execution model to achieve deterministic concurrency while addressing concerns that synchronous languages are unnecessarily restrictive and difficult to adopt. In essence, the SC MoC extends the classical synchronous MoC by allowing variables to be read and written in any order as long as sequentiality expressed in the program provides sufficient scheduling information to rule out race conditions. The SC MoC is a conservative extension in that programs considered constructive in the common synchronous MoC are also SC and retain the same semantics. In this paper, we identify classes of variable accesses, define sequential constructiveness based on the concept of SC-admissible scheduling, and present a priority-based scheduling algorithm for analyzing and compiling SC programs.
programming language design and implementation | 2014
Reinhard von Hanxleden; Björn Duderstadt; Christian Motika; Steven Smyth; Michael Mendler; Joaquin Aguado; Stephen R. Mercer; Owen O'Brien
We present a new visual language, SCCharts, designed for specifying safety-critical reactive systems. SCCharts use a statechart notation and provide determinate concurrency based on a synchronous model of computation (MoC), without restrictions common to previous synchronous MoCs. Specifically, we lift earlier limitations on sequential accesses to shared variables, by leveraging the sequentially constructive MoC. The semantics and key features of SCCharts are defined by a very small set of elements, the Core SCCharts, consisting of state machines plus fork/join concurrency. We also present a compilation chain that allows efficient synthesis of software and hardware.
monterey conference on large scale complex it systems development operation and management | 2012
Reinhard von Hanxleden; Edward A. Lee; Christian Motika; Hauke Fuhrmann
Multi-view modeling refers to a system designer constructing distinct and separate models of the same system to model different (semantic) aspects of a system. Modeling pragmatics also entails constructing different views of a system, but here the focus is on syntactic/pragmatic aspects, with an emphasis on designer productivity, and the views are constructed automatically by filtering and drawing algorithms. In this paper, we argue that both approaches will have growing influence on model-based design, in particular for complex cyber-physical systems, and we identify a number of general developments that seem likely to contribute to this until 2020. This includes notably the trend towards domain-specific modeling and agile development, novel input devices, and the move to the cloud. We also report on preliminary practical results in this area with two modeling environments, Ptolemy and kieler, and the lessons learned from their combined usage.
ACM Transactions in Embedded Computing Systems | 2014
Reinhard von Hanxleden; Michael Mendler; Joaquin Aguado; Björn Duderstadt; Insa Fuhrmann; Christian Motika; Stephen R. Mercer; Owen O'Brien; Partha S. Roop
Synchronous languages ensure deterministic concurrency, but at the price of heavy restrictions on what programs are considered valid, or constructive. Meanwhile, sequential languages such as C and Java offer an intuitive, familiar programming paradigm but provide no guarantees with regard to deterministic concurrency. The sequentially constructive model of computation (SC MoC) presented here harnesses the synchronous execution model to achieve deterministic concurrency while addressing concerns that synchronous languages are unnecessarily restrictive and difficult to adopt. In essence, the SC MoC extends the classical synchronous MoC by allowing variables to be read and written in any order as long as sequentiality expressed in the program provides sufficient scheduling information to rule out race conditions. The SC MoC is a conservative extension in that programs considered constructive in the common synchronous MoC are also SC and retain the same semantics. In this paper, we identify classes of variable accesses, define sequential constructiveness based on the concept of SC-admissible scheduling, and present a priority-based scheduling algorithm for analyzing and compiling SC programs.
leveraging applications of formal methods | 2014
Christian Motika; Steven Smyth; Reinhard von Hanxleden
SCCharts is a recently proposed statechart language designed for specifying safety-critical reactive systems. We have developed an Eclipse-based compilation chain that synthesizes SCCharts into either hardware or software. The user edits a textual description which is visualized as SCChart and subsequently transformed into VHDL or C code via a series of model-to-model M2M transformation steps. An interactive environment gives the user control over which transformations are applied and allows the user to inspect intermediate transformation results. This Single-Pass Language-Driven Incremental Compilation SLIC approach should conceptually be applicable to other languages as well. Key benefits are: 1 a compact, light-weight definition of the core semantics, 2 intermediate transformation results open to inspection and support for certification, 3i¾?high-level formulations of transformations that define advanced language constructs, 4 a divide-and-conquer validation strategy, 5 simplified language/compiler subsetting and DSL construction.
leveraging applications of formal methods | 2016
Francesca Rybicki; Steven Smyth; Christian Motika; Alexander Schulz-Rosengarten; Reinhard von Hanxleden
The Single-Pass Language-Driven Incremental Compilation (slic) strategy uses a series of model-to-model (M2M) transformations to compile a model or program to a specified target. Tool developer and modeler can inspect the result of each transformation step, using a familiar, graphical syntax of the successively transformed model, which is made possible by harnessing automatic layout. Previous work (presented at ISoLA’14) introduced the basics of the slic approach and illustrated it with a compiler that translated SCCharts, a synchronous, deterministic statechart language developed for safety-critical systems, to software. The compiler is implemented in the Kiel Integrated Environment for Layout Eclipse Rich Client (KIELER), an open-source development framework based on Eclipse.
ACM Transactions in Embedded Computing Systems | 2017
Steven Smyth; Christian Motika; Karsten Rathlev; Reinhard von Hanxleden; Michael Mendler
The synchronous language Esterel provides determinate concurrency for reactive systems. Determinacy is ensured by the “signal coherence rule,” which demands that signals have a stable value throughout one reaction cycle. This is natural for the original application domains of Esterel, such as controller design and hardware development; however, it is unnecessarily restrictive for software development. Sequentially Constructive Esterel (SCEst) overcomes this restriction by allowing values to change instantaneously, as long as determinacy is still guaranteed, adopting the recently proposed Sequentially Constructive model of computation. SCEst is grounded in the minimal Sequentially Constructive Language, which also provides a novel semantic definition and compilation approach for Esterel.
formal methods | 2015
Karsten Rathlev; Steven Smyth; Christian Motika; Reinhard von Hanxleden; Michael Mendler
The synchronous language Esterel provides determinate concurrency for reactive systems. Determinacy is ensured by the “signal coherence rule,” which demands that signals have a stable value throughout one reaction cycle. This is natural for the original application domains of Esterel, such as controller design and hardware development; however, it is unnecessarily restrictive for software development. Sequentially Constructive Esterel (SCEst) overcomes this restriction by allowing values to change instantaneously, as long as determinacy is still guaranteed, adopting the recently proposed Sequentially Constructive model of computation. SCEst is grounded in the minimal Sequentially Constructive Language, which also provides a novel semantic definition and compilation approach for Esterel.
symposium on visual languages and human-centric computing | 2013
Miro Spönemann; Christoph Daniel Schulze; Christian Motika; Christian Schneider; Reinhard von Hanxleden
Automatic layout is a key enabler for pragmatics-aware modeling, which refers to model-driven engineering with designer productivity in mind. This showpiece introduces an infrastructure for the integration of graph layout libraries and their configuration with regard to graphical views of modeling applications.
Proceedings of the 5th ACM SIGPLAN International Workshop on Reactive and Event-Based Languages and Systems - REBLS 2018 | 2018
Steven Smyth; Christian Motika; Reinhard von Hanxleden
Statecharts are an established mechanism to model reactive, state-oriented behavior of embedded systems. We here present an approach to automatically generate code from statecharts, with a particular focus on readability and ease of matching the generated code with the original model. This not only saves programming effort and reduces the error rate compared to manual coding, but it also facilitates the task of verifying that the code does what it is supposed to do. We have implemented this approach for the SCCharts language in an open-source framework. A user study confirmed that the generated code tends to be more readable than code from other code generators.