VICCI. DeltaEcore. A Model-Based Delta Language Generation Framework. Christoph Seidl Ina Schaefer Uwe Aßmann

Size: px
Start display at page:

Download "VICCI. DeltaEcore. A Model-Based Delta Language Generation Framework. Christoph Seidl Ina Schaefer Uwe Aßmann"

Transcription

1 VICCI Visual and Interactive Cyber-Physical Systems Control and Integration DeltaEcore A Model-Based Delta Language Generation Framework Christoph Seidl Ina Schaefer Uwe Aßmann

2 TurtleBot Driver: A Software Family [Par76, SSA13, SSA14a] Movement Controller Different hardware configurations Keyboard Webservice Gamepad Autonomous Obstacle Detection Bump I Heart Engineering Engine Limited resources (CPU, battery etc.) Infrared Ultrasound DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 2

3 Feature Models Conceptually Capture Variability [KCH+90, CE00, CHE05] TurtleBot Engine Movement Webservice Detection [1..1] [1..3] Keyboard Gamepad Autonomous Bump Infrared Ultrasound Cross-Tree Constraints 1. Autonomous Detection 2. Keyboard Gamepad Webservice Legend Mandatory Feature Optional Feature [m..n] Group Cardinality I Heart Engineering DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 3

4 Software Variant Derivation Procedure [BFG+02] Software Family TurtleBot Engine Movement [1..1] Webservice Detection [1..3] Keyboard Gamepad Autonomous Bump Infrared Ultrasound Variability Model + Configuration Realization Assets (Java, Uml, Certification Material ) Variability Mechanism Software Variant DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 4

5 Delta Modeling as Variability Mechanism [SBB+10, SD10, DS11] Desired Variant Source Variant Target Variant Software Variant Software Variant A Software Variant A B Delta Language Domain specific transformation language Intentionally limit expressiveness to variability Individual for each source language (e.g., Delta Java for Java) Delta Operation: Transformation operation Delta Module: Collection of delta operations DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 5

6 Example: Delta Software Fault Trees (SFTs) Collision (COL) SFT SFT Collision (COL) Bump Sensor Triggers (BST) SFT Delta Module (AddLaserSensor) add basic fault LST { }; remove connection BST -> COL; add gate G1 { }; add connection BST -> G1; add connection LST -> G1; add connection G1 -> COL; Delta Modeling Delta SFT Bump Sensor Triggers (BST) OR (G1) Laser Sensor Triggers (LST) DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 6

7 Software Fault Tree (SFT) Meta Model SFTSoftwareFaultTree -name : String -rootfault AND OR <<enumeration>> SFTGateType Collision (COL) SFTFault -id : String -name : String -description : String -faults 2..* SFTGate -id : String -gatetype : SFTGateType OR (G1) -gate -parentfault SFTBasicFault SFTIntermediateFault -probability : double Bump Sensor Triggers (BST) Distance Sensor Triggers (DST) DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 7

8 Hindrances for Delta Modeling [SBB+10, Sch10, LSK+12, SSA13, HKR+11, HKM+13] Java UML DeltaJava DeltaUML Variant Derivation Process 1 SFT DeltaSFT CFD DeltaCFD Variant Derivation Process 2 Variant GSN DeltaGSN <DSL> Delta<DSL> Variant Derivation Process N DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 8

9 DeltaEcore Outline Model-Based Model-Based Model Transformation Java UML DeltaJava DeltaUML Variant Derivation Process 1 SFT DeltaSFT CFD DeltaCFD Variant Derivation Process 2 Variant GSN DeltaGSN <DSL> Delta<DSL> Variant Derivation Process N Fast and Robust Generation Shared Variant Derivation Process DeltaEcore DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 9

10 Custom Delta Languages in DeltaEcore Custom Delta Language Common Base Delta Language = + Delta Dialect Template for delta language Independent of source language Basic abstract and concrete syntax Language extension (syntax and semantics) Dependent on source language Define different types of delta operations DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 10

11 Types of Delta Operations Standard Delta Operations Custom Delta Operations Set Operation Add Operation Modify Operation User-Defined Operation Unset Operation Insert Operation User-Defined Operation Remove Operation User-Defined Operation Defined syntax and semantics DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 11

12 Automatic Derivation of Standard Delta Operations SFTSoftwareFaultTree -name : String SFTFault -rootfault -id : String -name : String -description : String SFTBasicFault -probability : double -faults 2..* AND OR <<enumeration>> SFTGateType SFTGate -id : String -gatetype : SFTGateType -gate -parentfault SFTIntermediateFault DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 12

13 Set/Unset Delta Operation Alter single-valued reference Set: Assign value to reference Unset: Replace current value of reference with default value SFTSoftwareFaultTree -name : String SFTFault -rootfault -id : String -name : String -description : String -faults 2..* AND OR <<enumeration>> SFTGateType SFTGate -id : String -gatetype : SFTGateType Derivation for (EReference ref : allrefs) { if (ref.ischangeable()) { if (!ref.ismany()) { createsetoperation(ref); createunsetoperation(ref); SFTBasicFault -probability : double -gate -parentfault SFTIntermediateFault } } } DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 13

14 Add/Insert/Remove Delta Operation Manipulate set of values of many-valued references Add: Append element to set of values Insert: Place element at certain position in the set Remove: Detach element from set of values SFTSoftwareFaultTree -name : String SFTFault -rootfault -id : String -name : String -description : String SFTBasicFault -probability : double -faults 2..* AND OR <<enumeration>> SFTGateType SFTGate -id : String -gatetype : SFTGateType -gate -parentfault SFTIntermediateFault Derivation for (EReference ref : allrefs) { if (ref.ischangeable()) { if (ref.ismany()) { createaddoperation(ref); createremoveoperation(ref); if (ref.isordered()) { createinsertoperation(ref); } } } } DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 14

15 Modify Delta Operation Modify: Alter values of attributes Difference to Set/Unset Set/Unset can have side-effect (e.g., opposite references) Modify has no side effects (only attributes modified) SFTSoftwareFaultTree -name : String SFTFault -rootfault -id : String -name : String -description : String SFTBasicFault -probability : double -faults 2..* AND OR <<enumeration>> SFTGateType SFTGate -id : String -gatetype : SFTGateType -gate -parentfault SFTIntermediateFault Derivation for (EClass c : allclasses) { if (!c.isabstract()) { for (EAttribute a : c.geteallattributes()) { if (a.ischangeable()) { if (!a.isid()) { createmodifyoperation(a); } } } } } DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 15

16 Excluded Delta Operations Replace Semantics depend on source language Exact same types for parameters? Compatible types for parameters? Semantically equivalent parameters? Alternative Define custom delta operation Delete Complete erase with all references is critical Alternative Delete step by step using remove delta operations Define custom delta operation DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 16

17 Custom Delta Languages Delta module Delta language Custom Delta Language Common Base Delta Language = + Delta Dialect DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 17

18 Common Base Delta Language addgate(sftgate gate, SFTIntermediateFault parentintermediatefault); Binding to meta model using dialect Requiring core assets and other delta modules uniformely Statically typed Dynamic constructors Type inference Reference existing elements (notation dependent identifiers possible) Substitutability of references, expressions, constructors etc. where applicable DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 18

19 Delta Dialects Syntax definition for operations of custom delta language Bind to meta model of source language Define different types of delta operations Use meta model types DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 19

20 Creating Delta Languages with DeltaEcore Source Language DeltaEcore Meta Meta Model (Ecore) conforms to Meta Model (source language) conforms to Model (source language artifact) refers refers refers Common Base Delta Language SFTSoftwareFaultTree -name : String SFTFault -rootfault Delta Dialect -id : String -name : String -description : String SFTBasicFault -probability : double Custom Delta Language -faults 2..* AND OR <<enumeration>> SFTGateType creates + SFTGate -id : String -gatetype : SFTGateType -gate -parentfault SFTIntermediateFault Defined by framework Defined by language developer (or anybody else) Written by variability engineer DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 20

21 Generation in DeltaEcore 1. analyzes Delta Dialect Generator Integrates into common variant derivation mechanism 2. generates Meta Model (source language) refers Delta Dialect 3. reads Delta Language Interpreter Generator conforms to 4. generates Model (source language artifact) refers Custom Delta Language 5. interprets Delta Language Interpreter DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 21

22 Common Base Delta Language Editor Support Delta Parser Delta Completer Delta Sorter Delta Interpreter Variant Derivator Handling Delta Languages with DeltaEcore Delta Language Creation and Application Create Delta Languages Derive Variants Syntax Parser Define Configuration Collect Delta Modules Sort Delta Modules Apply Delta Operations Create Variant DeltaEcore Implementation Source Languages Delta Ecore Source Language 1 Delta Dialect 1 Source Language N Delta Dialect N External User Created Provided by Framework DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 22

23 Conclusion Delta Modeling has great potential for variability management but needs delta languages for all source languages delta language creation is tedious tooling for delta languages is often incompatible DeltaEcore helps overcome some of the hindrances through quick and easy creation of delta languages generation of (initial version of) delta dialects interoperability of delta languages shared variant derivation mechanism DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 23

24 DeltaEcore A Model-Based Delta Language Generation Framework - Christoph Seidl 24

25 Thank you for your attention! Questions, Comments, Feedback?

26 References (1) [BFG+02] J. Bosch, G. Florijn, D. Greefhorst, J. Kuusela, J.H. Obbink, and K. Pohl. Variability Issues in Software Product Lines. In Revised Papers from the 4th International Workshop on Software Product- Family Engineering (PFE), PFE'01, [CE00] K. Czarnecki and U. Eisenecker. Generative Programming: Methods, Tools, and Applications. Addison-Wesley, [CHE05] K. Czarnecki, S. Helsen, and U. Eisenecker. Formalizing Cardinality-Based Feature Models and their Specialization. In Software Process: Improvement and Practice, Wiley Online Library, [DS11] F. Damiani, and I. Schaefer. Dynamic Delta-Oriented Programming. In Proceedings of the 15th International Software Product Line Conference (SPLC), SPLC'11, Managing Variability in Space and Time in Software Families - Christoph Seidl 26

27 References (2) [HKM+13] A. Haber, C. Kolassa, P. Manhart, P. M. S. Nazari, B. Rumpe, and I. Schaefer. First-Class Variability Modeling in Matlab/Simulink. In Proceedings of the 7th International Workshop on Variability Modelling of Software-intensive Systems (VaMoS), VaMoS'13, [HKR+11] A. Haber, T. Kutz, H. Rendel, B. Rumpe, I. Schaefer. Delta- Oriented Architectural Variability Using MontiCore. In Proceedings of the 5th European Conference on Software Architecture: Companion Volume, [KCH+90] K. C. Kang, S. G. Cohen, J. A. Hess, W. E. Novak, and S. Peterson. Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report Carnegie Mellon University Pittsburgh, Software Engineering Institute, [LSK+12] M. Lochau, I. Schaefer, J. Kamischke, and S. Lity. Incremental Model-Based Testing of Delta-Oriented Software Product Lines, In Tests and Proofs, Springer, [Par76] D. L. Parnas. On the Design and Development of Program Families. In Transactions on Software Engineering, IEEE Computer Society, Managing Variability in Space and Time in Software Families - Christoph Seidl 27

28 References (3) [SBB+10] I. Schaefer, L. Bettini, V. Bono, F. Damiani, and N. Tanzarella. Delta-Oriented Programming of Software Product Lines. In Software Product Lines: Going Beyond, Springer, [Sch10] I. Schaefer. Variability Modelling for Model-Driven Development of Software Product Lines. In Proceedings of the 4th International Workshop on Variability Modelling of Software-intensive Systems (VaMoS), VaMoS'10, [SD10] I. Schaefer, and F. Damiani. Pure Delta-Oriented Programming. In Proceedings of the 2nd International Workshop on Feature-Oriented Software Development (FOSD), FOSD'10, [SSA13] C. Seidl, I. Schaefer, and U. Aßmann. Variability-Aware Safety Analysis using Delta Component Fault Diagrams. In Proceedings of the 4th International Workshop on Formal Methods and Analysis in Software Product Line Engineering (FMSPLE), FMSPLE'13, [SSA14a] C. Seidl, I. Schaefer, and U. Aßmann. Capturing Variability in Space and Time with Hyper Feature Models. In Proceedings of the 8th International Workshop on Variability Modelling of Software-intensive Systems (VaMoS), VaMoS'14, Managing Variability in Space and Time in Software Families - Christoph Seidl 28

MODELLING COMPOSITIONS OF MODULAR EMBEDDED SOFTWARE PRODUCT LINES

MODELLING COMPOSITIONS OF MODULAR EMBEDDED SOFTWARE PRODUCT LINES MODELLING COMPOSITIONS OF MODULAR EMBEDDED SOFTWARE PRODUCT LINES Wolfgang Friess AUDI AG wolfgang.friess@audi.de Julio Sincero University Erlangen-Nuernberg sincero@informatik.uni-erlangen.de Wolfgang

More information

Guiding System Modelers in Multi View Environments: A Domain Engineering Approach

Guiding System Modelers in Multi View Environments: A Domain Engineering Approach Guiding System Modelers in Multi View Environments: A Domain Engineering Approach Arnon Sturm Department of Information Systems Engineering Ben-Gurion University of the Negev, Beer Sheva 84105, Israel

More information

Generic Modeling using UML extensions for variability

Generic Modeling using UML extensions for variability Generic Modeling using UML extensions for variability Intershop Research Intershop, Jena Matthias Clauß Software Engineering Group Dresden University of Technology M.Clauss@intershop.com September 14,

More information

A MODEL-DRIVEN APPROACH TO VARIABILITY MANAGEMENT IN PRODUCT-LINE ENGINEERING

A MODEL-DRIVEN APPROACH TO VARIABILITY MANAGEMENT IN PRODUCT-LINE ENGINEERING Nordic Journal of Computing A MODEL-DRIVEN APPROACH TO VARIABILITY MANAGEMENT IN PRODUCT-LINE ENGINEERING ANDRÉ L. SANTOS 1, KAI KOSKIMIES 1, ANTÓNIA LOPES 2 1 Institute of Software Systems, Tampere University

More information

First-Class Variability Modeling in Matlab/Simulink

First-Class Variability Modeling in Matlab/Simulink First-Class Variability Modeling in Matlab/Simulink Arne Haber Software Engineering RWTH Aachen University, Germany http://www.se-rwth.de/ Pedram Mir Seyed Nazari Software Engineering RWTH Aachen University,

More information

User-Driven Adaptation of Model Differencing Results

User-Driven Adaptation of Model Differencing Results User-Driven Adaptation of Model Differencing Results Klaus Müller, Bernhard Rumpe Software Engineering RWTH Aachen University Aachen, Germany http://www.se-rwth.de/ Abstract In model-based software development,

More information

Integrating Domain Specific Modeling into the Production Method of a Software Product Line

Integrating Domain Specific Modeling into the Production Method of a Software Product Line Integrating Domain Specific Modeling into the Production Method of a Software Product Line Gary J. Chastek Software Engineering Institute John D. McGregor Clemson University Introduction This paper describes

More information

Carrying Ideas from Knowledge-Based Configuration to Software Product Lines. Tiihonen, Juha Tapani.

Carrying Ideas from Knowledge-Based Configuration to Software Product Lines. Tiihonen, Juha Tapani. https://helda.helsinki.fi Carrying Ideas from Knowledge-Based Configuration to Software Product Lines Tiihonen, Juha Tapani Springer International Publishing AG 2016-05 Tiihonen, J T, Raatikainen, M, Myllärniemi,

More information

Product Line Evolution Using Source Packages

Product Line Evolution Using Source Packages Product Line Evolution Using Source Packages Arie van Deursen Merijn de Jonge CWI P.O. Box 94079, 1090 GB Amsterdam, The Netherlands http://www.cwi.nl/ {arie,mdejonge} Abstract We present a language-independent

More information

Svamp An Integrated Approach to Modeling Functional and Quality Variability

Svamp An Integrated Approach to Modeling Functional and Quality Variability Svamp An Integrated Approach to Modeling Functional and Quality Variability Mikko Raatikainen, Eila Niemelä, Varvana Myllärniemi, Tomi Männistö Helsinki University of Technology (TKK), VTT Technical Research

More information

Modeling variability with UML

Modeling variability with UML Modeling variability with UML Matthias Clauß Intershop Research Software Engineering Group Intershop, Jena Dresden University of Technology Matthias.Clauss@gmx.de Keywords: product families, domain modeling,

More information

Using a Configurator for Modelling and Configuring Software Product Lines based on Feature Models

Using a Configurator for Modelling and Configuring Software Product Lines based on Feature Models Using a Configurator for Modelling and Configuring Software Product Lines based on Feature Models Timo Asikainen, Tomi Männistö, and Timo Soininen Helsinki University of Technology, Software Business and

More information

31. Feature Models and MDA for Product Lines

31. Feature Models and MDA for Product Lines Fakultät Informatik - Institut Software- und Multimediatechnik - Softwaretechnologie Prof. Aßmann - Softwaretechnologie II 31. Feature Models and MDA for Product Lines Prof. Dr. U. Aßmann Technische Universität

More information

Using Software Product Lines to Manage Model Families in Model-Driven Engineering

Using Software Product Lines to Manage Model Families in Model-Driven Engineering Using Software Product Lines to Manage Model Families in Model-Driven Engineering Orlando Avila-García Open Canarias, S.L. Santa Cruz de Tenerife, Spain orlando@opencanarias.com Antonio Estévez García

More information

Feature Assembly: A New Feature Modeling Technique

Feature Assembly: A New Feature Modeling Technique Feature Assembly: A New Feature Modeling Technique Lamia Abo Zaid 1, Frederic Kleinermann 1, and Olga De Troyer 1 1 Vrije Universiteit Brussel (VUB) Pleinlaan 2, 1050 Brussel Belgium {Lamia.Abo.Zaid, Frederic.Kleinermann,

More information

A Lightweight Language for Software Product Lines Architecture Description

A Lightweight Language for Software Product Lines Architecture Description A Lightweight Language for Software Product Lines Architecture Description Eduardo Silva, Ana Luisa Medeiros, Everton Cavalcante, Thais Batista DIMAp Department of Informatics and Applied Mathematics UFRN

More information

Name Resolution Strategies in Variability Realization Languages for Software Product Lines

Name Resolution Strategies in Variability Realization Languages for Software Product Lines Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Name Resolution Strategies in Variability Realization Languages for Software Product Lines Sven Schuster, Christoph Seidl, Ina Schaefer

More information

1 Version management tools as a basis for integrating Product Derivation and Software Product Families

1 Version management tools as a basis for integrating Product Derivation and Software Product Families 1 Version management tools as a basis for integrating Product Derivation and Software Product Families Jilles van Gurp, Christian Prehofer Nokia Research Center, Software and Application Technology Lab

More information

Usually software system variants, developed by Clone-and-own approach, form

Usually software system variants, developed by Clone-and-own approach, form ABSTRACT Usually software system variants, developed by Clone-and-own approach, form a starting point for building Software Product Line. To migrate software systems which are deemed similar to a product

More information

Towards a Family-based Analysis of Applicability Conditions in Architectural Delta Models

Towards a Family-based Analysis of Applicability Conditions in Architectural Delta Models Towards a Family-based Analysis of Applicability Conditions in Architectural Delta Models Arne Haber 1, Thomas Kutz 1, Holger Rendel 1, Bernhard Rumpe 1, and Ina Schaefer 2 1 Software Engineering, RWTH

More information

Expressing Feature-Based Variability in Structural Models

Expressing Feature-Based Variability in Structural Models Expressing Feature-Based Variability in Structural Models Iris Groher 1, Markus Voelter 2 1 Siemens AG, CT SE 2, Munich, Germany 2 Independent Consultant, Goeppingen, Germany iris.groher.ext@siemens.com,

More information

ADLARS: An Architecture Description Language for Software Product Lines

ADLARS: An Architecture Description Language for Software Product Lines ADLARS: An Architecture Description Language for Software Product Lines R. Bashroush, T.J. Brown, I. Spence, P. Kilpatrick Queens University Belfast, School of Computer Science, 18 Malone Road, Belfast

More information

Model-Driven Generation of Context-Specific Feature Models

Model-Driven Generation of Context-Specific Feature Models Model-Driven Generation of Context-Specific Feature Models Thibaut Possompès, Christophe Dony, Marianne Huchard, Chouki Tibermacine LIRMM, CNRS and Montpellier 2 University Montpellier, France {possompes,

More information

Supporting Stepwise, Incremental Product Derivation in Product Line Requirements Engineering

Supporting Stepwise, Incremental Product Derivation in Product Line Requirements Engineering Supporting Stepwise, Incremental Product Derivation in Product Line Requirements ing Reinhard Stoiber, Martin Glinz Department of Informatics, University of Zurich, Switzerland Email: {stoiber, glinz}@ifi.uzh.ch

More information

53) Feature Models, Domain Models and Product Lines

53) Feature Models, Domain Models and Product Lines Fakultät Informatik, Institut für Software- und Multimediatechnik, Lehrstuhl für Softwaretechnologie 53) Feature Models, Domain Models and Product Lines 1. Feature Models 2. Product Linie Configuration

More information

Towards Modeling Data Variability in Software Product Lines

Towards Modeling Data Variability in Software Product Lines Towards Modeling Data Variability in Software Product Lines Lamia Abo Zaid 1, and Olga De Troyer 1 1 WISE Lab, Computer Science Department Vrije Universiteit Brussel (VUB) Pleinlaan 2, 1050 Brussel Belgium

More information

Timeline Variability. The Variability of Binding Time of Variation Points. Eelco Dolstra Gert Florijn Eelco Visser

Timeline Variability. The Variability of Binding Time of Variation Points. Eelco Dolstra Gert Florijn Eelco Visser Timeline Variability The Variability of Binding Time of Variation Points Eelco Dolstra Gert Florijn Eelco Visser Technical Report UU-CS-2003-052 Institute of Information and Computing Sciences Utrecht

More information

Using Constraint Programming to Reason on Feature Models Λ

Using Constraint Programming to Reason on Feature Models Λ Using Constraint Programming to Reason on Feature Models Λ David Benavides, Pablo Trinidad, Antonio Ruiz-Cortés Dpto. de Lenguajes y Sistemas Informáticos University of Seville Av. de la Reina Mercedes

More information

Features and Feature Interactions in Software Engineering using Logic

Features and Feature Interactions in Software Engineering using Logic Features and Feature Interactions in Software Engineering using Logic Ragnhild Van Der Straeten rvdstrae@vub.ac.be System and Software Engineering Lab Vrije Universiteit Brussel, Belgium Johan Brichau

More information

Tracing Software Product Line Variability From Problem to Solution Space

Tracing Software Product Line Variability From Problem to Solution Space Tracing Software Product Line Variability From Problem to Solution KATHRIN BERG, JUDITH BISHOP University of Pretoria and DIRK MUTHIG Fraunhofer IESE The management of variability plays an important role

More information

Knowledge Engineering in Software Product Lines

Knowledge Engineering in Software Product Lines Knowledge Engineering in Software Product Lines Michael Schlick 1 and Andreas Hein 2 Abstract. A software product-line is a collection of products sharing a common set of that address the specific needs

More information

Variant Management and Reuse

Variant Management and Reuse 11 Variant Management and Reuse Variability management and reuse are important concerns in the development of variant-rich software-intensive systems. In this chapter, the extension of the SPES metamodel

More information

Compositional Model Based Software Development

Compositional Model Based Software Development Compositional Model Based Software Development Prof. Dr. Bernhard Rumpe http://www.se-rwth.de/ Seite 2 Our Working Groups and Topics Automotive / Robotics Autonomous driving Functional architecture Variability

More information

Roles in Software Development using Domain Specific Modelling Languages

Roles in Software Development using Domain Specific Modelling Languages Roles in Software Development using Domain Specific Modelling Languages Holger Krahn Bernhard Rumpe Steven Völkel Institute for Software Systems Engineering Technische Universität Braunschweig, Braunschweig,

More information

Model-driven Support for Source Code Variability in Automotive Software Engineering

Model-driven Support for Source Code Variability in Automotive Software Engineering Model-driven Support for Source Code Variability in Automotive Software Engineering Cem Mengi, Christian Fuß, Ruben Zimmermann, and Ismet Aktas Computer Science 3 (Software Engineering) RWTH Aachen University,

More information

Modeling Variability for Object-Oriented Product Lines

Modeling Variability for Object-Oriented Product Lines Modeling Variability for Object-Oriented Product Lines Matthias Riebisch, Detlef Streitferdt, Ilian Pashov Technical University Ilmenau, Max-Planck-Ring 14, 98684 Ilmenau, Germany {matthias.riebisch detlef.streitferdt

More information

Information Hiding and Aspect-Oriented Modeling

Information Hiding and Aspect-Oriented Modeling Information Hiding and Aspect-Oriented Modeling Wisam Al Abed and Jörg Kienzle School of Computer Science, McGill University Montreal, QC H3A2A7, Canada Wisam.Alabed@mail.mcgill.ca, Joerg.Kienzle@mcgill.ca

More information

Mapping Software Product Line Features to Unmanned Aerial Vehicle Models

Mapping Software Product Line Features to Unmanned Aerial Vehicle Models Mapping Software Product Line Features to Unmanned Aerial Vehicle Models Vanderson H. Fragal, Edson A. Oliveira Junior, Itana M. S. Gimenes Informatics Department State University of Maringá Maringá-PR,

More information

Model-Level Integration of the OCL Standard Library Using a Pivot Model with Generics Support

Model-Level Integration of the OCL Standard Library Using a Pivot Model with Generics Support Faculty of Computer Science, Institute for Software- and Multimedia-Technology, Chair for Software Technology Matthias Bräuer and Birgit Demuth Model-Level Integration of the Using a Pivot Model with Generics

More information

A Solution Based on Modeling and Code Generation for Embedded Control System

A Solution Based on Modeling and Code Generation for Embedded Control System J. Software Engineering & Applications, 2009, 2: 160-164 doi:10.4236/jsea.2009.23023 Published Online October 2009 (http://www.scirp.org/journal/jsea) A Solution Based on Modeling and Code Generation for

More information

An MDA Approach for Variability Management in Product-Line Engineering

An MDA Approach for Variability Management in Product-Line Engineering An MDA Approach for Variability Management in Product-Line Engineering André L. Santos 1 *, Antónia Lopes 1, and Kai Koskimies 2 1 Department of Informatics, Faculty of Sciences, University of Lisbon Campo

More information

Product Lines, Features, and MDD 1

Product Lines, Features, and MDD 1 Product Lines, Features, and MDD 1 Bruno González-Baixauli, Miguel A. Laguna, Yania Crespo Department of Computer Science, University of Valladolid, Campus M. Delibes, 47011 Valladolid, Spain {bbaixauli,

More information

Integrating Feature Modeling into UML

Integrating Feature Modeling into UML Integrating Feature Modeling into UML Valentino Vranić and Ján Šnirc Institute of Informatics and Software Engineering Faculty of Informatics and Information Technology Slovak University of Technology,

More information

ArchFeature: A Modeling Environment Integrating Features into Product Line Architecture

ArchFeature: A Modeling Environment Integrating Features into Product Line Architecture ArchFeature: A Modeling Environment Integrating Features into Product Line Architecture Gharib Gharibi and Yongjie Zheng School of Computing and Engineering, University of Missouri-Kansas City, Kansas

More information

A Comparison of Ecore and GOPPRR through an Information System Meta Modeling Approach

A Comparison of Ecore and GOPPRR through an Information System Meta Modeling Approach A Comparison of Ecore and GOPPRR through an Information System Meta Modeling Approach Vladimir Dimitrieski, Milan Čeliković, Vladimir Ivančević and Ivan Luković University of Novi Sad, Faculty of Technical

More information

Reverse Engineering Feature Models From Programs Feature Sets

Reverse Engineering Feature Models From Programs Feature Sets 2011 18th Working Conference on Reverse Engineering Reverse Engineering Feature Models From Programs Feature Sets Evelyn Nicole Haslinger k0855482@students.jku.at Roberto E. Lopez-Herrejon roberto.lopez@jku.at

More information

Ontology-based Model Transformation

Ontology-based Model Transformation Ontology-based Model Transformation Stephan Roser Advisor: Bernhard Bauer Progamming of Distributed Systems Institute of Computer Science, University of Augsburg, Germany [roser,bauer]@informatik.uni-augsburg.de

More information

Introduction to MDE and Model Transformation

Introduction to MDE and Model Transformation Vlad Acretoaie Department of Applied Mathematics and Computer Science Technical University of Denmark rvac@dtu.dk DTU Course 02291 System Integration Vlad Acretoaie Department of Applied Mathematics and

More information

Architecture Viewpoint Template for ISO/IEC/IEEE 42010

Architecture Viewpoint Template for ISO/IEC/IEEE 42010 Architecture Viewpoint Template for ISO/IEC/IEEE 42010 Rich Hilliard r.hilliard@computer.org VERSION 2.1b Abstract This is a template for specifying architecture viewpoints in accordance with ISO/IEC/IEEE

More information

Semantics of cardinality-based service feature diagrams based on linear logic

Semantics of cardinality-based service feature diagrams based on linear logic Article Semantics of cardinality-based service feature diagrams based on linear logic Ghulam Mustafa Assad 1, Muhammad Naeem 2, Hafiz Abdul Wahab 3, Faisal Bahadur 1, Sarfraz Ahmed 4 1 Department of Information

More information

A Feature-Oriented Approach for Web Service Customization

A Feature-Oriented Approach for Web Service Customization 2010 IEEE International Conference on Web Services A -Oriented Approach for Web Service Customization Tuan Nguyen, Alan Colman Swinburne University of Technology, Melbourne, Australia {tmnguyen,acolman}@swin.edu.au

More information

Modeling Context and Dynamic Adaptations with Feature Models

Modeling Context and Dynamic Adaptations with Feature Models Modeling Context and Dynamic Adaptations with Feature Models Mathieu Acher 1, Philippe Collet 1, Franck Fleurey 2, Philippe Lahire 1, Sabine Moisan 3, and Jean-Paul Rigault 3 1 University of Nice Sophia

More information

Design of a UML profile for feature diagrams and its tooling implementation

Design of a UML profile for feature diagrams and its tooling implementation Design of a UML profile for feature diagrams and its tooling implementation Thibaut Possompès, Christophe Dony, Marianne Huchard, Chouki Tibermacine IBM France PSSC Montpellier Montpellier, France thibaut.possompes@fr.ibm.com

More information

Introduction to Dependable Systems: Meta-modeling and modeldriven

Introduction to Dependable Systems: Meta-modeling and modeldriven Introduction to Dependable Systems: Meta-modeling and modeldriven development http://d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics 3 Software development Automated software

More information

Reduction of Program-generation Times by Transformation-sequence Optimization

Reduction of Program-generation Times by Transformation-sequence Optimization Reduction of Program-generation Times by Transformation-sequence Optimization Martin Kuhlemann, Andreas Lübcke and Gunter Saake University of Magdeburg, Magdeburg, Germany {mkuhlema, luebcke, saake}@ovgu.de

More information

Cross-checking Disambiguated Product Line Variability Models

Cross-checking Disambiguated Product Line Variability Models University of Namur University of Duisburg-Essen Cross-checking Disambiguated Product Line Variability Models P. Heymans, A. Metzger, P-Y. Schobbens, K. Pohl, G. Saval, A. Hubaux svpp 08, VUB 8-9/8/2008

More information

Domain-Driven Development with Ontologies and Aspects

Domain-Driven Development with Ontologies and Aspects Domain-Driven Development with Ontologies and Aspects Submitted for Domain-Specific Modeling workshop at OOPSLA 2005 Latest version of this paper can be downloaded from http://phruby.com Pavel Hruby Microsoft

More information

arxiv: v1 [cs.pl] 21 Jan 2013

arxiv: v1 [cs.pl] 21 Jan 2013 A DSL for Mapping Abstract Syntax Models to Concrete Syntax Models in ModelCC Luis Quesada, Fernando Berzal, and Juan-Carlos Cubero Department Computer Science and Artificial Intelligence, CITIC, University

More information

Towards a Search-based Interactive Configuration of Cyber Physical. System Product Lines 1

Towards a Search-based Interactive Configuration of Cyber Physical. System Product Lines 1 Towards a Search-based Interactive Configuration of Cyber Physical System Product Lines Kunming Nie, Tao Yue, Shaukat Ali Software Engineering Institute, Beihang University, Beijing, China niekunming@cse.buaa.edu.cn

More information

An Implementation of the Behavior Annex in the AADL-toolset Osate2

An Implementation of the Behavior Annex in the AADL-toolset Osate2 2011 16th IEEE International Conference on Engineering of Complex Computer Systems An Implementation of the Behavior Annex in the AADL-toolset Osate2 Gilles Lasnier, Laurent Pautet Inst. TELECOM - TELECOM

More information

OMG Workshop MDA. Tool Chains for MDA? Let's consider leaving our tool chains behind us.

OMG Workshop MDA. Tool Chains for MDA? Let's consider leaving our tool chains behind us. Karl Frank Principal Architect: Product Strategy and Architecture kfrank@borland.com OMG Workshop MDA Tool Chains for MDA? Let's consider leaving our tool chains behind us. Please note the existence of

More information

Automating Feature-Oriented Domain Analysis

Automating Feature-Oriented Domain Analysis Automating eature-oriented Domain Analysis ei Cao, Barrett R. Bryant, Carol C. Burt Department of Computer and Information Sciences University of Alabama at Birmingham caof, bryant, cburt@cis.uab.edu Zhisheng

More information

SWE 760 Lecture 1: Introduction to Analysis & Design of Real-Time Embedded Systems

SWE 760 Lecture 1: Introduction to Analysis & Design of Real-Time Embedded Systems SWE 760 Lecture 1: Introduction to Analysis & Design of Real-Time Embedded Systems Hassan Gomaa References: H. Gomaa, Chapters 1, 2, 3 - Real-Time Software Design for Embedded Systems, Cambridge University

More information

The Eclipse Modeling Framework and MDA Status and Opportunities

The Eclipse Modeling Framework and MDA Status and Opportunities The Eclipse Modeling Framework and MDA Status and Opportunities David Frankel Consulting df@davidfrankelconsulting.com www.davidfrankelconsulting.com Portions adapted from the book Model Driven Architecture:

More information

(Meta)Models between MetaEdit+

(Meta)Models between MetaEdit+ The Interchange of (Meta)Models between MetaEdit+ and Eclipse EMF Heiko Kern kern@informatik.uni-leipzig.de ni ig Nashville, Tennessee, 10/19/2008 1 Agenda 1. Introduction 2. MetaEdit-EMF-Bridge EMF 3.

More information

Transformational Design with

Transformational Design with Fakultät Informatik, Institut für Software- und Multimediatechnik, Lehrstuhl für Softwaretechnologie Transformational Design with Model-Driven Architecture () Prof. Dr. U. Aßmann Technische Universität

More information

FaMa-OVM: A Tool for the Automated Analysis of OVMs

FaMa-OVM: A Tool for the Automated Analysis of OVMs FaMa-OVM: A Tool for the Automated Analysis of OVMs Fabricia Roos-Frantz, José A. Galindo, David Benavides and Antonio Ruiz-Cortés University of Seville 41012 Seville, Spain {fabriciaroos,jagalindo,benavides,aruiz}@us.es

More information

Automated Configuration of Component-based Distributed Real-time and Embedded Systems from Feature Models

Automated Configuration of Component-based Distributed Real-time and Embedded Systems from Feature Models Automated Configuration of Component-based Distributed Real-time and Embedded Systems from Feature Models Jules White and Douglas C. Schmidt Vanderbilt University Department of Electrical Engineering and

More information

Management of Guided and Unguided Code Generator Customizations by Using a Symbol Table

Management of Guided and Unguided Code Generator Customizations by Using a Symbol Table Management of Guided and Unguided Code Generator Customizations by Using a Symbol Table Pedram Mir Seyed Nazari Alexander Roth Bernhard Rumpe Software Engineering RWTH Aachen University, Germany {nazari,roth,rumpe}@se-rwth.de

More information

Software Architecture

Software Architecture Software Architecture Benjamin Satzger Distributed Systems Group TU Wien http://www.infosys.tuwien.ac.at/staff/ bsatzger Models Terms Unified Modeling Language (UML) Architecture Description Language (ADL)

More information

AMASS. Architecture-driven, Multi-concern and Seamless Assurance and

AMASS. Architecture-driven, Multi-concern and Seamless Assurance and AMASS Architecture-driven, Multi-concern and Seamless Assurance and Architecture-driven, Multi-concern and Seamless Assurance and Certification of Cyber-Physical Systems AMASS Usage Scenario 2: Process

More information

Quality-Driven Architecture Design Method

Quality-Driven Architecture Design Method Quality-Driven Architecture Design Method Matinlassi Mari, Niemelä Eila P.O. Box 1100, 90571 Oulu Tel. +358 8 551 2111 Fax +358 8 551 2320 {Mari.Matinlassi, Eila.Niemela}@vtt.fi Abstract: In this paper

More information

Variability issues in the evolution of information system ecosystems

Variability issues in the evolution of information system ecosystems Variability issues in the evolution of information system ecosystems Hendrik Brummermann 1, Markus Keunecke 2, Klaus Schmid 2 1 Hochschul-Informations-System GmbH, Goseriede 9, 30159 Hannover, Germany

More information

Towards Compositional Domain Specific Languages

Towards Compositional Domain Specific Languages Andreas Horst, Bernhard Rumpe Software Engineering RWTH Aachen University, Germany http://www.se-rwth.de/ 1 Introduction The deployment of Domain Specific Languages (DSL) and in particular Domain Specific

More information

Language engineering and Domain Specific Languages

Language engineering and Domain Specific Languages Language engineering and Domain Specific Languages Perdita Stevens School of Informatics University of Edinburgh Plan 1. Defining languages 2. General purpose languages vs domain specific languages 3.

More information

Proceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010)

Proceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010) Electronic Communications of the EASST Volume X (2010) Proceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010) Teaching Model Driven Language Handling Terje

More information

Using Higher-order Transformations to Derive Variability Mechanism for Embedded Systems

Using Higher-order Transformations to Derive Variability Mechanism for Embedded Systems Using Higher-order Transformations to Derive Variability Mechanism for Embedded Systems Goetz Botterweck 1, Andreas Polzer 2, and Stefan Kowalewski 2 1 Lero, University of Limerick Limerick, Ireland goetz.botterweck@lero.ie

More information

Model Driven Development with xtuml and BridgePoint

Model Driven Development with xtuml and BridgePoint Model Driven Development with xtuml and BridgePoint xtuml Executable and Translatable UML Unified Modeling Language Industry standard notation Family of languages Executable UML Defines a method, including:

More information

Using Product Lines to Manage Variability in Mobile Context-Aware Applications

Using Product Lines to Manage Variability in Mobile Context-Aware Applications Using Product Lines to Manage Variability in Mobile Context-Aware Applications Dean Kramer School of Computing and Technology Thames Valley University, London, UK, W5 5RF dean.kramer@tvu.ac.uk 1 Introduction

More information

Automatized Generating of GUIs for Domain-Specific Languages

Automatized Generating of GUIs for Domain-Specific Languages Automatized Generating of GUIs for Domain-Specific Languages Michaela Bačíková, Dominik Lakatoš, and Milan Nosáľ Technical University of Košice, Letná 9, 04200 Košice, Slovakia, (michaela.bacikova, dominik.lakatos,

More information

Taxonomy-based Annotations for Variability Management

Taxonomy-based Annotations for Variability Management Taxonomy-based Annotations for Variability Management Agustina Buccella 1, Maximiliano Arias 12, Matias Pol la 12, and Alejandra Cechich 1 1 GIISCO Research Group Departamento de Ingeniería de Sistemas

More information

Design Specification of Cyber-Physical Systems: Towards a Domain-Specific Modeling Language based on Simulink, Eclipse Modeling Framework, and Giotto

Design Specification of Cyber-Physical Systems: Towards a Domain-Specific Modeling Language based on Simulink, Eclipse Modeling Framework, and Giotto Design Specification of Cyber-Physical Systems: Towards a Domain-Specific Modeling Language based on Simulink, Eclipse Modeling Framework, and Giotto Muhammad Umer Tariq, Jacques Florence, and Marilyn

More information

A Contractual Specification of Functional and Non-Functional Requirements of Domain-Specific Components

A Contractual Specification of Functional and Non-Functional Requirements of Domain-Specific Components www.ijcsi.org 172 A Contractual Specification of Functional and Non-Functional Requirements of Domain-Specific Components Maryem Rhanoui 1, Bouchra El Asri 2 1 IMS Team, SIME Laboratory, ENSIAS, Mohammed

More information

Christian Doppler Laboratory

Christian Doppler Laboratory Christian Doppler Laboratory Software Engineering Integration For Flexible Automation Systems AutomationML Models (in EMF and EA) for Modelers and Software Developers Emanuel Mätzler Institute of Software

More information

Delta Modeling for Software Architectures

Delta Modeling for Software Architectures Delta Modeling for Software Architectures Arne Haber 1, Holger Rendel 1, Bernhard Rumpe 1, Ina Schaefer 2 1 Software Engineering RWTH Aachen University, Germany http://www.se-rwth.de/ 2 Software Systems

More information

Towards a Model-Driven Product Line for SCM Systems

Towards a Model-Driven Product Line for SCM Systems Towards a Model-Driven Product Line for SCM Systems Thomas Buchmann Lehrstuhl Angewandte Informatik 1 University of Bayreuth thomas.buchmann@uni-bayreuth.de Alexander Dotor Lehrstuhl Angewandte Informatik

More information

COVAMOF: A Framework for Modeling Variability in Software Product Families

COVAMOF: A Framework for Modeling Variability in Software Product Families COVAMOF: A Framework for Modeling Variability in Software Product Families Marco Sinnema, Sybren Deelstra, Jos Nijhuis, Jan Bosch Department of Mathematics and Computing Science, University of Groningen,

More information

Plan. Language engineering and Domain Specific Languages. Language designer defines syntax. How to define language

Plan. Language engineering and Domain Specific Languages. Language designer defines syntax. How to define language Plan Language engineering and Domain Specific Languages Perdita Stevens School of Informatics University of Edinburgh 1. Defining languages 2. General purpose languages vs domain specific languages 3.

More information

A Product Line Architecture for Web Applications

A Product Line Architecture for Web Applications A Product Line Architecture for Web Applications L. Balzerani, D. Di Ruscio, A. Pierantonio Dipartimento di Informatica Università degli Studi di L Aquila I 67100 L Aquila, Italy {balzerani, diruscio,

More information

Flight Systems are Cyber-Physical Systems

Flight Systems are Cyber-Physical Systems Flight Systems are Cyber-Physical Systems Dr. Christopher Landauer Software Systems Analysis Department The Aerospace Corporation Computer Science Division / Software Engineering Subdivision 08 November

More information

Formal Approach to Integrating Feature and Architecture Models

Formal Approach to Integrating Feature and Architecture Models Formal Approach to Integrating Feature and Architecture Models Mikoláš Janota 1 and Goetz Botterweck 2 1 School of Computer Science and Informatics, Lero, University College Dublin, Dublin, Ireland mikolas.janota@ucd.ie

More information

CISC836: Models in Software Development: Methods, Techniques and Tools

CISC836: Models in Software Development: Methods, Techniques and Tools CISC836: Models in Software Development: Methods, Techniques and Tools Topic 4: Code Generation with EMF Meta modeling Languages for meta models: Ecore Using EMF and Ecoreto define a data model Using EMF

More information

Access Control in Rich Domain Model Web Applications

Access Control in Rich Domain Model Web Applications Access Control in Rich Domain Model Web Applications Extended Abstract João de Albuquerque Penha Pereira joao.pereira@ist.utl.pt Instituto Superior Técnico November 25, 2010 Abstract Rich Domain Model

More information

THE ADAPTABILITY CHALLENGE FOR EMBEDDED CONTROL SYSTEM SOFTWARE.

THE ADAPTABILITY CHALLENGE FOR EMBEDDED CONTROL SYSTEM SOFTWARE. THE ADAPTABILITY CHALLENGE FOR EMBEDDED CONTROL SYSTEM SOFTWARE V. Cechticky 1, A. Pasetti 1,2, W. Schaufelberger 1 1 Institut für Automatik, ETH-Zürich, Physikstr. 3, Zürich, CH-8092 2 P&P Software GmbH,

More information

Modelling Variation in Quality Attributes

Modelling Variation in Quality Attributes Modelling Variation in Quality Attributes Leire Etxeberria, Goiuria Sagardui, Lorea Belategi Faculty of Engineering University of Mondragon Limerick 16.01.2007 Research group &3 ;078 9 4143/7, 43 Research

More information

Expressing variability for design patterns re-use

Expressing variability for design patterns re-use Expressing variability for design patterns re-use Nicolas Arnaud Agnès Front Dominique Rieu LSR-IMAG, équipe SIGMA 681 rue de la passerelle BP 72 38402 Saint Martin d Hères Cedex {surname.name}@imag.fr

More information

Introduction to EGF. Benoît Langlois / Thales Global Services.

Introduction to EGF. Benoît Langlois / Thales Global Services. www.thalesgroup.com Introduction to EGF Benoît Langlois / Thales Global Services 2 / Agenda Introduction EGF Architecture Concepts & Practice EGF Portfolios 3 / Agenda Introduction EGF Architecture Concepts

More information

VARIABILITY MODELING FOR CUSTOMIZABLE SAAS APPLICATIONS

VARIABILITY MODELING FOR CUSTOMIZABLE SAAS APPLICATIONS VARIABILITY MODELING FOR CUSTOMIZABLE SAAS APPLICATIONS ABSTRACT Ashraf A. Shahin 1, 2 1 College of Computer and Information Sciences, Al Imam Mohammad Ibn Saud Islamic University (IMSIU) Riyadh, Kingdom

More information

Towards Supporting Feature Configuration by Interactive Visualisation

Towards Supporting Feature Configuration by Interactive Visualisation Towards Supporting Feature Configuration by Interactive Visualisation Goetz Botterweck 1, Daren Nestor 1, André Preußner 2, Ciarán Cawley 1, Steffen Thiel 1 1 Lero the Irish Software Engineering Research

More information

Orccad, a Model Driven Architecture and Environment for Real-Time Control. Soraya Arias Florine Boudin Roger Pissard-Gibollet Daniel Simon

Orccad, a Model Driven Architecture and Environment for Real-Time Control. Soraya Arias Florine Boudin Roger Pissard-Gibollet Daniel Simon 1 Orccad, a Model Driven Architecture and Environment for Real-Time Control Soraya Arias Florine Boudin Roger Pissard-Gibollet Daniel Simon 2 Orccad : status and motivations Model: Control design oriented

More information