151,243 research outputs found
Towards Product Lining Model-Driven Development Code Generators
A code generator systematically transforms compact models to detailed code.
Today, code generation is regarded as an integral part of model-driven
development (MDD). Despite its relevance, the development of code generators is
an inherently complex task and common methodologies and architectures are
lacking. Additionally, reuse and extension of existing code generators only
exist on individual parts. A systematic development and reuse based on a code
generator product line is still in its infancy. Thus, the aim of this paper is
to identify the mechanism necessary for a code generator product line by (a)
analyzing the common product line development approach and (b) mapping those to
a code generator specific infrastructure. As a first step towards realizing a
code generator product line infrastructure, we present a component-based
implementation approach based on ideas of variability-aware module systems and
point out further research challenges.Comment: 6 pages, 1 figure, Proceedings of the 3rd International Conference on
Model-Driven Engineering and Software Development, pp. 539-545, Angers,
France, SciTePress, 201
Report from GI-Dagstuhl Seminar 16394: Software Performance Engineering in the DevOps World
This report documents the program and the outcomes of GI-Dagstuhl Seminar
16394 "Software Performance Engineering in the DevOps World".
The seminar addressed the problem of performance-aware DevOps. Both, DevOps
and performance engineering have been growing trends over the past one to two
years, in no small part due to the rise in importance of identifying
performance anomalies in the operations (Ops) of cloud and big data systems and
feeding these back to the development (Dev). However, so far, the research
community has treated software engineering, performance engineering, and cloud
computing mostly as individual research areas. We aimed to identify
cross-community collaboration, and to set the path for long-lasting
collaborations towards performance-aware DevOps.
The main goal of the seminar was to bring together young researchers (PhD
students in a later stage of their PhD, as well as PostDocs or Junior
Professors) in the areas of (i) software engineering, (ii) performance
engineering, and (iii) cloud computing and big data to present their current
research projects, to exchange experience and expertise, to discuss research
challenges, and to develop ideas for future collaborations
A Model-Based Approach to Managing Feature Binding Time in Software Product Line Engineering
Software Product Line Engineering (SPLE) is a software reuse paradigm for developing software products, from managed reusable assets, based on analysis of commonality and variability (C & V) of a product line. Many approaches of SPLE use a feature as a key abstraction to capture the C&V. Recently, there have been increasing demands for the provision of flexibility about not only the variability of features but also the variability of when features should be selected (i.e., variability on feature binding times). Current approaches to support variations of feature binding time mostly focused on ad hoc implementation mechanisms. In this paper, we first identify the challenges of feature binding time management and then propose an approach to analyze the variation of feature binding times and use the results to specify model-based architectural components for the product line. Based on the specification, components implementing variable features are parameterized with the binding times and the source codes for the components and the connection between them are generated
Model-driven Enterprise Systems Configuration
Enterprise Systems potentially lead to significant efficiency gains but require a well-conducted configuration process. A promising idea to manage and simplify the configuration process is based on the premise of using reference models for this task. Our paper continues along this idea and delivers a two-fold contribution: first, we present a generic process for the task of model-driven Enterprise Systems configuration including the steps of (a) Specification of configurable reference models, (b) Configuration of configurable reference models, (c) Transformation of configured reference models to regular build time models, (d) Deployment of the generated build time models, (e) Controlling of implementation models to provide input to the configuration, and (f) Consolidation of implementation models to provide input to reference model specification. We discuss inputs and outputs as well as the involvement of different roles and validation mechanisms. Second, we present an instantiation case of this generic process for Enterprise Systems configuration based on Configurable EPCs
The complex dynamics of products and its asymptotic properties
We analyse global export data within the Economic Complexity framework. We
couple the new economic dimension Complexity, which captures how sophisticated
products are, with an index called logPRODY, a measure of the income of the
respective exporters. Products' aggregate motion is treated as a 2-dimensional
dynamical system in the Complexity-logPRODY plane. We find that this motion can
be explained by a quantitative model involving the competition on the markets,
that can be mapped as a scalar field on the Complexity-logPRODY plane and acts
in a way akin to a potential. This explains the movement of products towards
areas of the plane in which the competition is higher. We analyse market
composition in more detail, finding that for most products it tends, over time,
to a characteristic configuration, which depends on the Complexity of the
products. This market configuration, which we called asymptotic, is
characterized by higher levels of competition.Comment: 20 pages, 5 figures, supporting information. This paper was published
on PLOS One on May 17, 201
Data-driven Design of Engineering Processes with COREPROModeler
Enterprises increasingly demand IT support for the coordination of their engineering processes, which often consist of hundreds up to thousands of sub-processes. From a technical viewpoint, these sub-processes have to be concurrently executed and synchronized considering numerous interdependencies.
So far, this coordination has mainly been accomplished manually, which has resulted in errors and inconsistencies. In order to deal with this problem, we have to better understand the interdependencies between the subprocesses to be coordinated. In particular, we can benefit from the fact that sub-processes are often correlated to the assembly of a product (represented by a product data structure). This information can be utilized for the modeling and execution of so-called data-driven process structures. In this paper, we present the COREPRO demonstrator that supports the data-driven modeling of these process structures. The approach explicitly establishes a close linkage between product data structures and engineering processes
Clafer: Lightweight Modeling of Structure, Behaviour, and Variability
Embedded software is growing fast in size and complexity, leading to intimate
mixture of complex architectures and complex control. Consequently, software
specification requires modeling both structures and behaviour of systems.
Unfortunately, existing languages do not integrate these aspects well, usually
prioritizing one of them. It is common to develop a separate language for each
of these facets. In this paper, we contribute Clafer: a small language that
attempts to tackle this challenge. It combines rich structural modeling with
state of the art behavioural formalisms. We are not aware of any other modeling
language that seamlessly combines these facets common to system and software
modeling. We show how Clafer, in a single unified syntax and semantics, allows
capturing feature models (variability), component models, discrete control
models (automata) and variability encompassing all these aspects. The language
is built on top of first order logic with quantifiers over basic entities (for
modeling structures) combined with linear temporal logic (for modeling
behaviour). On top of this semantic foundation we build a simple but expressive
syntax, enriched with carefully selected syntactic expansions that cover
hierarchical modeling, associations, automata, scenarios, and Dwyer's property
patterns. We evaluate Clafer using a power window case study, and comparing it
against other notations that substantially overlap with its scope (SysML, AADL,
Temporal OCL and Live Sequence Charts), discussing benefits and perils of using
a single notation for the purpose
- …