53 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
Code Generator Composition for Model-Driven Engineering of Robotics Component & Connector Systems
Engineering software for robotics applications requires multidomain and
application-specific solutions. Model-driven engineering and modeling language
integration provide means for developing specialized, yet reusable models of
robotics software architectures. Code generators transform these platform
independent models into executable code specific to robotic platforms.
Generative software engineering for multidomain applications requires not only
the integration of modeling languages but also the integration of validation
mechanisms and code generators. In this paper we sketch a conceptual model for
code generator composition and show an instantiation of this model in the
MontiArc- Automaton framework. MontiArcAutomaton allows modeling software
architectures as component and connector models with different component
behavior modeling languages. Effective means for code generator integration are
a necessity for the post hoc integration of applicationspecific languages in
model-based robotics software engineering.Comment: 12 pages, 4 figures, In: Proceedings of the 1st International
Workshop on Model-Driven Robot Software Engineering (MORSE 2014), York, Great
Britain, Volume 1319 of CEUR Workshop Proceedings, 201
A comparison of Jiazzi and AspectJ for feature-wise decomposition
technical reportFeature-wise decomposition is an important approach to building configurable software systems. Although there has been research on the usefulness of particular tools for featurewise decomposition, there are not many informative comparisons on the relative effectiveness of different tools. In this paper, we compare AspectJ and Jiazzi, which are two different systems for decomposing Java programs. AspectJ is an aspect-oriented extension to Java, whereas Jiazzi is a component system for Java. To compare these systems, we reimplemented an AspectJ implementation of a highly configurable CORBA Event Service using Jiazzi. Our experience is that Jiazzi provides better support for structuring the system and manipulating features, while AspectJ is more suitable for manipulating existing Java code in non-invasive and unanticipated ways
Composition and Correctness
AbstractThis paper presents an approach to ensure correctness of composed systems. It takes into consideration that correctness can usually be achieved only to a certain degree (except for some small and very mission-critical applications) and complete specifications are usually not practicable. By modelling the parts, the composition activities and the requirements specification we automise the checking procedures using model checking. An important issue hereby is that our approach allows partial modelling and specification
Requirements in feature algebra
Feature Algebra is intended to capture the commonalities of feature oriented software development (FOSD), such as introductions, refinements and quantification. It allows denoting systems composed of features by algebraic terms and transforming the systems by manipulating the terms using the laws of the algebra. The algebraic view abstracts from differences of minor importance and leads to more compact and effective reasoning. While the existing Feature Algebra covers most of the main aspects of FOSD, so far requirements have not been integrated into it. They naturally arise in connection with different aspects of feature orientation, such as feature elicitation, feature dependence, mutual feature exclusion and feature interaction. This paper presents a possibility for integrating requirements into Feature Algebra
- …