Guiding Software Design Evolution by Constraint Transformation
Guiding Software Design Evolution by Constraint Transformation
Disciplines
Computer Sciences (100%)
Keywords
-
Transformation,
Design Modeling,
Co-Evolution,
Generation,
UML
In model-driven software engineering, model transformation plays a key role to automatically generate and update models. Most traditional transformation approaches are batch like and the notion of change is only present in specialized solutions. There are many complex issues that need to be solved for model transformation to be incremental. For example, a common issue is the possible loss of manual changes to the generated models. The issue is even more severe with bidirectional transformations. Transformation generates a target model from a source model. In case of bidirectional transformation changes to the source model need to be transformed to the target model and, concurrently, changes to the target model need to be transformed back to the source model (concurrent model synchronizing), with many race condition problems. Furthermore, there are situations where a target model cannot be updated because of uncertainties: uncertainties as in there being no unique transformation result or uncertainties due to incomplete source model changes. Again, this problem is most severe in context of incremental transformation because changes to the source model may not be sufficient to infer precise changes to the target model, leading to missed opportunities for model transformation. This proposed work introduces constraint transformation to generate model constraints instead of models. The novel idea is that constraints, generated from source models, restrict target models and hence avoid the problem of manual information loss. Constraints can embody uncertainties and they can reduce common race-condition problems. Our proposed approach complements traditional model transformation. Traditional model transformation is most useful in situations where a model needs to be first generated (the initial version of a generated model). However, once generated, our proposed approach may be most suited in evolving them thereafter (analogous to co- evolution). The goal of this proposed work is to 1) research the methodology for incremental constraint transformation across arbitrary design models, 2) develop a proof-of-concept tool to demonstrate the approach, and 3) evaluate the methodology and tool on industrial models. We will publish the research results in major peer- reviewed journals and conferences; and pursuit its transition to industrial use. This proposal requests funding for two PhD students and one Master`s student plus their travel needs.
Today, the engineering of systems is unimaginable without software tools. Engineers use them to capture and analyze engineering problems; specify, implement, test, and maintain engineering solutions, and manage engineering processes. Obviously, these tools are quite distinct and engineers use them for different purposes and to capture different kinds of engineering artifacts (e.g., requirements, design or code). Herein lays a key challenge. How do engineers propagate artifacts from one tool to another (e.g., from a requirement specification to a design or from a design to code)? Model transformation is part of the answer to this challenge. In model-driven software engineering, model transformation is used to generate some target model out of a source model (e.g., code out of a design). However, it is problematic when engineers manipulate the source and target models concurrently as is normally the case and/or if there are multiple possible interpretations of a source model and hence multiple possible target models. This project developed constraint-driven modeling (CDM) where transformation is used to generate constraints on the target model rather than the target model itself. In doing so, CDM does not overwrite the target model (avoiding information loss during concurrent engineering) and enumerates multiple transformation options. This project successfully developed CDM and extensively published about it. Its usability is shown in context of several application domains.
- Universität Linz - 100%
- Hoa Khanh Dam, University of Wollongong - Australia
- Tom Mens, Université de Mons - Belgium
- Krzysztof Czarnecki, University of Waterloo - Canada
- Xavier Blanc, Université Bordeaux I - France
- Dániel Varró, Budapest University of Technology and Economics - Hungary
- Jordi Cabot, Luxembourg Institute of Science and Technology - Luxembourg
- Don Batory, The University of Texas at Austin - USA
Research Output
- 687 Citations
- 23 Publications
-
2018
Title An automated and instant discovery of concrete repairs for model inconsistencies DOI 10.1145/3183440.3194979 Type Conference Proceeding Abstract Author Kretschmer R Pages 298-299 -
2016
Title Evolutionary Computation for Software Product Line Testing: An Overview and Open Challenges DOI 10.1007/978-3-319-25964-2_4 Type Book Chapter Author Lopez-Herrejon R Publisher Springer Nature Pages 59-87 -
2016
Title Co-evolution of metamodels and models through consistent change propagation DOI 10.1016/j.jss.2015.03.003 Type Journal Article Author Demuth A Journal Journal of Systems and Software Pages 281-297 -
2016
Title Towards Visualization of Feature Interactions in Software Product Lines DOI 10.1109/vissoft.2016.16 Type Conference Proceeding Abstract Author Illescas S Pages 46-50 -
2016
Title Multi-objective test case prioritization in highly configurable systems: A case study DOI 10.1016/j.jss.2016.09.045 Type Journal Article Author Parejo J Journal Journal of Systems and Software Pages 287-310 Link Publication -
2015
Title Towards Flexible and Efficient Process and Workflow Support in Enterprise Modeling DOI 10.1007/978-3-319-19243-7_26 Type Book Chapter Author Demuth A Publisher Springer Nature Pages 270-281 -
2015
Title DesignSpace DOI 10.1145/2695664.2695697 Type Conference Proceeding Abstract Author Demuth A Pages 1486-1491 -
2017
Title A systematic mapping study of information visualization for software product line engineering DOI 10.1002/smr.1912 Type Journal Article Author Lopez-Herrejon R Journal Journal of Software: Evolution and Process -
2016
Title Efficient detection of inconsistencies in a multi-developer engineering environment DOI 10.1145/2970276.2970304 Type Conference Proceeding Abstract Author Demuth A Pages 590-601 -
2016
Title Developing a DSL-Based Approach for Event-Based Monitoring of Systems of Systems: Experiences and Lessons Learned (E) DOI 10.1109/ase.2015.25 Type Conference Proceeding Abstract Author Vierhauser M Pages 715-725 -
2018
Title Developing and evolving a DSL-based approach for runtime monitoring of systems of systems DOI 10.1007/s10515-018-0241-x Type Journal Article Author Rabiser R Journal Automated Software Engineering Pages 875-915 -
2014
Title Towards Model-and-Code Consistency Checking DOI 10.1109/compsac.2014.91 Type Conference Proceeding Abstract Author Riedl-Ehrenleitner M Pages 85-90 -
2016
Title A variability aware configuration management and revision control platform DOI 10.1145/2889160.2889262 Type Conference Proceeding Abstract Author Linsbauer L Pages 803-806 -
2016
Title Variability extraction and modeling for product variants DOI 10.1007/s10270-015-0512-y Type Journal Article Author Linsbauer L Journal Software & Systems Modeling Pages 1179-1199 Link Publication -
2016
Title Consistent merging of model versions DOI 10.1016/j.jss.2015.06.044 Type Journal Article Author Dam H Journal Journal of Systems and Software Pages 137-155 -
2016
Title Visualization for Software Product Lines: A Systematic Mapping Study DOI 10.1109/vissoft.2016.11 Type Conference Proceeding Abstract Author Lopez-Herrejon R Pages 26-35 -
2016
Title A Source Level Empirical Study of Features and Their Interactions in Variable Software DOI 10.1109/scam.2016.16 Type Conference Proceeding Abstract Author Fischer S Pages 197-206 -
2016
Title Towards efficient risk-identification in risk-driven development processes DOI 10.1145/2904354.2904364 Type Conference Proceeding Abstract Author Demuth A Pages 36-40 -
2015
Title A systematic mapping study of search-based software engineering for software product lines DOI 10.1016/j.infsof.2015.01.008 Type Journal Article Author Lopez-Herrejon R Journal Information and Software Technology Pages 33-51 -
2015
Title Using Traceability for Incremental Construction and Evolution of Software Product Portfolios DOI 10.1109/sst.2015.16 Type Conference Proceeding Abstract Author Linsbauer L Pages 57-60 -
2013
Title Constraint-driven modeling through transformation DOI 10.1007/s10270-013-0363-3 Type Journal Article Author Demuth A Journal Software & Systems Modeling Pages 573-596 -
2015
Title The ECCO Tool: Extraction and Composition for Clone-and-Own DOI 10.1109/icse.2015.218 Type Conference Proceeding Abstract Author Fischer S Pages 665-668 -
2014
Title Enhancing Clone-and-Own with Systematic Reuse for Developing Software Variants DOI 10.1109/icsme.2014.61 Type Conference Proceeding Abstract Author Fischer S Pages 391-400