Representing feature models as class diagrams
|
|
|
- Lucas Sutton
- 10 years ago
- Views:
Transcription
1 Representing feature models as class diagrams Abel Gómez, Isidro Ramos Technical University of Valencia. Departamento de Sistemas Informáticos y Computación. 1 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
2 Metamodels 2 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
3 Notation Binary relationships: Mandatory Optional Groupped relationships: Alternative (XOR) XOR Czarnecki-Eisenecker notation Extended Czarnecki- Eisenecker notation XOR with optional subfeatures Optional (OR) * Figures from ŠÍPKA, M.: Exploring the Commonality in Feature Modeling Notations. In: IIT.SRC 2005 Informatics and Information Technology Student Research Conference. Bratislava, April 2005, V. Vranić (supervisor), pp Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
4 Feature metamodel In the feature metamodel the previous relationships are described by using the lowerbound and upperbound attributes. We have also extended the metamodel in order to enrich the features with attributes. Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
5 Simplified UML-Class diagram metamodel We use Ecore as a simplified version of the UML Class diagram metamodel. * Simplified subset of the Ecore metamodel 5 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
6 Transformation From feature models to class diagrams 6 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
7 Feature2Class Each feature is transformed to a class (Eclass). 7 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
8 Feature2Class model : FeatureModel name = modelname feature : Feature classdiagram E pkg : EPackage name = modelname nsprefix = modelname nsuri modelname class : EClass eclassifiers 8 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
9 FeatureAttribute2ClassAttribute Each feature attribute is transformed to a class attribute (EAttribute). The type of the attribute is transformed to a EDataType. 9 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
10 FeatureAttribute2ClassAttribute model : FeatureModel name = modelname pkg : EPackage name = modelname nsprefix = modelname nsuri modelname eclassifiers feature : Feature type : EDataType name = featureatttype, instancetypename java.lang featureatttype attributes class : EClass featureattribute : Attribute name = featureattname, type = featureatttype type : EDataType etype estructuralfeatures eattribute : EAttribute name = featureattname 10 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
11 SimpleRelationship2Reference Each BinaryRelationship is transformed to a UML composition (containment EReference). The type of relationship determines de multiplicity of the EReference. 11 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
12 SimpleRelationship2Reference model : FeatureModel name = modelname nsuri pkg : EPackage modelname eclassifiers feature : Feature childclass : EClass name = childfeatname attributes class : EClass relationship : BinaryRelationship lowerbound = lower upperbound = upper estructuralfeatures childfeature child : Feature name = childfeatname childclass : EClass etype reference : EReference name = childfeatname containment = true lowerbound = lower upperbound = upper 12 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
13 MultipleRelationship2Reference Each GrouppedRelationship is transformed to a containment EReference. Each child feature inherits from a new class whose name derives from the parent feature. The inheritance relationship is set in the relation «MultipleRelationshipChilds2Classes» 13 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
14 MultipleRelationship2Reference typeclass : EClass Type abstract = true model : FeatureModel name = modelname eclassifiers eclassifiers classdiagram pkg : EPackage childclass : EClass E nsuri modelname name = childfeatname feature : Feature eclassifiers attributes relationship : GrouppedRelationship lowerbound = lower upperbound = upper childfeature child : Feature name = childfeatname parentclass : EClass reference : EReference containment = true lowerbound = lower upperbound = upper where MultipleRelationshipChilds2Classes(childFeature, typeclass, childclass); MultipleRelationshipChilds2Annot(childFeature, featurename, parentclass); estructuralfeatures Features etype typeclass : EClass 14 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
15 MultipleRelationshipChilds2Classes feature : Feature parentclass : EClass classdiagram E esupertypes typeclass : EClass typeclass : EClass typeclass : EClass 15 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
16 MultipleRelationshipChilds2Annot When the upperbound of the GrouppedRelationship is greater than 1, we can automatically generate OCL invariants to avoid duplicated elements in the feature model instance. 16 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
17 MultipleRelationshipChilds2Annot feature : Feature parentclass : EClass classdiagram E eannotations parentclassname : String oclannot : EAnnotation source details oclentry : EStringToStringMapEntry key multiplicity featurename value = oclexpresion where oclexpression = 'self.' + parentclassname + 'Features->select(f : ' + parentclassname + 'Type f.ocliskindof(' + featurename + '))->size() <= 1' 17 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
18 MultipleRelationshipChilds2Annot These OCL invariants can be checked automatically. In the example, the screenshot on the right has a duplicated module (Calendar). Moreover, any OCL invariant can be defined in order to check the consistency of the feature model instance. 18 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
19 Representing feature models as class diagrams Abel Gómez, Isidro Ramos Technical University of Valencia. Departamento de Sistemas Informáticos y Computación. 19 Abel Gómez, Isidro Ramos - Universidad Politécnica de Valencia
An eclipse-based Feature Models toolchain
An eclipse-based Feature Models toolchain Luca Gherardi, Davide Brugali Dept. of Information Technology and Mathematics Methods, University of Bergamo [email protected], [email protected] Abstract.
Integration of Microsoft Visio and Eclipse Modeling Framework Using M3-Level-Based Bridges
Integration of Microsoft Visio and Eclipse Modeling Framework Using M3-Level-Based Bridges Heiko Kern and Stefan Kühne Business Information Systems, University of Leipzig Johannisgasse 26, 04103 Leipzig,
Organization of DSLE part. Overview of DSLE. Model driven software engineering. Engineering. Tooling. Topics:
Organization of DSLE part Domain Specific Language Engineering Tooling Eclipse plus EMF Xtext, Xtend, Xpand, QVTo and ATL Prof.dr. Mark van den Brand GLT 2010/11 Topics: Meta-modeling Model transformations
Eindhoven University of Technology
Eindhoven University of Technology Department of Mathematics and Computer Science Software Engineering and Technology Group Master Thesis mlbnf A Syntax Formalism for Domain Specific Languages M.W. Manders
Software Visualization in 3D - Implementation, Evaluation, and Applicability
Software Visualization in 3D - Implementation, Evaluation, and Applicability Von der Wirtschaftswissenschaftlichen Fakultät der Universität Leipzig genehmigte DISSERTATION zur Erlangung des akademischen
Web Application Development Focused on BP Specifications*
Web Application Development Focused on BP Specifications* Victoria Torres Dept. De Sistemas Informáticos y Computación Universidad Politécnica de Valencia 46022 Valencia [email protected] Pau Giner Dept.
Course 4 27 October 2014. Adrian Iftene [email protected]
Course 4 27 October 2014 Adrian Iftene [email protected] They will not be considered in the maximum values of the laboratory The presentation of the context and of these solutions in the course can
Lecture 12: Entity Relationship Modelling
Lecture 12: Entity Relationship Modelling The Entity-Relationship Model Entities Relationships Attributes Constraining the instances Cardinalities Identifiers Generalization 2004-5 Steve Easterbrook. This
Automatic Generation of Consistency-Preserving Edit Operations for MDE Tools
Automatic Generation of Consistency-Preserving Edit Operations for MDE Tools Michaela Rindt, Timo Kehrer, Udo Kelter Software Engineering Group University of Siegen {mrindt,kehrer,kelter}@informatik.uni-siegen.de
Development of a Feature Modeling Tool using Microsoft DSL Tools.
Development of a Feature Modeling Tool using Microsoft DSL Tools. GIRO Technical Report 2009-1.ver 1.0 (05/01/2009) Rubén Fernández, Miguel A. Laguna, Jesús Requejo, Nuria Serrano. Department of Computer
A technical discussion on modeling with UML 06/11/03 Entity Relationship Modeling with UML
A technical discussion on modeling with UML 06/11/03 Entity Relationship Modeling with UML Davor Gornik Improving software development capability 2 Table of Contents Entity Relationship Modeling... 1 Core
Tool Support for Model Checking of Web application designs *
Tool Support for Model Checking of Web application designs * Marco Brambilla 1, Jordi Cabot 2 and Nathalie Moreno 3 1 Dipartimento di Elettronica e Informazione, Politecnico di Milano Piazza L. Da Vinci,
Introduction à EMF Eclipse Modeling Framework
Ingénierie Dirigée par les Modèles Introduction à Eclipse Modeling Framework Pierre Laforcade Master EIAH 2007 Sources du cours Tutoriaux et cours d' disponibles sur http://www.eclipse.org/modeling/emf/
MQT, an Approach for Runtime Query Translation: From EOL to SQL
MQT, an Approach for Runtime Query Translation: From EOL to SQL Xabier De Carlos 1, Goiuria Sagardui 2, and Salvador Trujillo 1 1 IK4-Ikerlan Research Center, P. J.M. Arizmendiarrieta, 2 20500 Arrasate,
Modernizing Simulation Input Generation and Post-Simulation Data Visualization with Eclipse ICE
and Post- Data Visualization with Eclipse ICE Alex McCaskey Research Staff Oak Ridge National Laboratory [email protected] @amccaskey2223 Taylor Patterson Research Associate Oak Ridge National Laboratory
MDA Transformations Applied to Web Application Development 1
MDA Transformations Applied to Web Application Development 1 Santiago Meliá 1, Andreas Kraus 2, and Nora Koch 2, 3 1 Universidad de Alicante, Spain 2 Ludwig-Maximilians-Universität München, Germany 3 F.A.S.T
Formal Technical Inspection. Using CLIPS to Detect Network Intrusions - (CLIPNIDS)
Formal Technical Inspection Using CLIPS to Detect Network Intrusions - (CLIPNIDS) Submitted in partial fulfillment of the requirements of the degree of MSE Sripriya Marry CIS 895 MSE Project Computing
Development of Tool Extensions with MOFLON
Development of Tool Extensions with MOFLON Ingo Weisemöller, Felix Klar, and Andy Schürr Fachgebiet Echtzeitsysteme Technische Universität Darmstadt D-64283 Darmstadt, Germany {weisemoeller klar schuerr}@es.tu-darmstadt.de
From Models to Code with the Eclipse Modeling Framework
1 From Models to Code with the Eclipse Modeling Framework Ed Merks and Dave Steinberg IBM Rational Software Toronto, Canada EMF and XSD Projects 2005 by IBM; made available under the EPL v1.0 February,
Co-Creation of Models and Metamodels for Enterprise. Architecture Projects.
Co-Creation of Models and Metamodels for Enterprise Architecture Projects Paola Gómez [email protected] Hector Florez [email protected] ABSTRACT The linguistic conformance and the ontological
A Classification of Model Checking-based Verification Approaches for Software Models
A Classification of Model Checking-based Verification Approaches for Software Models Petra Brosch, Sebastian Gabmeyer, Martina Seidl Sebastian Gabmeyer Business Informatics Group Institute of Software
Home Assignment 4 OCL
Home Assignment 4 OCL This home assignment is about writing formal specifications using the Object Constraint Language. You will exercise formulating conditions/invariants on domain models that go beyond
Mapping between Levels in the Metamodel Architecture
Mapping between Levels in the Metamodel Architecture José Álvarez, Andy Evans 2, Paul Sammut 2 Dpto. de Lenguajes y Ciencias de la Computación, University Málaga, Málaga, 2907, Spain [email protected]
Model-Driven Health Tools (MDHT) CDA Tools Overview. http://mdht.projects.openhealthtools.org
Model-Driven Health Tools (MDHT) CDA Tools Overview http://mdht.projects.openhealthtools.org CDA Tools Objectives Accelerate and lower cost of adopting CDAr2 standard Define new CDA templates and implementation
Graph-Grammar Based Completion and Transformation of SDL/UML-Diagrams
Graph-Grammar Based Completion and Transformation of SDL/UML-Diagrams Position Paper Ulrich A. Nickel, Robert Wagner University of Paderborn Warburger Straße 100 D-33098 Paderborn Germany [duke, wag25]@uni-paderborn.de
Turning Emergency Plans into Executable
Turning Emergency Plans into Executable Artifacts José H. Canós-Cerdá, Juan Sánchez-Díaz, Vicent Orts, Mª Carmen Penadés ISSI-DSIC Universitat Politècnica de València, Spain {jhcanos jsanchez mpenades}@dsic.upv.es
Meta Model Based Integration of Role-Based and Discretionary Access Control Using Path Expressions
Meta Model Based Integration of Role-Based and Discretionary Access Control Using Path Expressions Kathrin Lehmann, Florian Matthes Chair for Software Engineering for Business Information Systems Technische
UML Modeling Guidelines
UML Modeling Guidelines Version 1.0 March 13, 2015 ONF TR-514 ONF Document Type: Technical Recommendation ONF Document Name: UML Modeling Guidelines V1.0 Disclaimer THIS SPECIFICATION IS PROVIDED AS IS
Automating the Development of Information Systems with the MOSKitt Open Source Tool
http://www.moskitt.org Automating the Development of Information Systems with the MOSKitt Open Source Tool Vicente Pelechano Universidad Politécnica de Valencia Content PART I: About the Project and the
Chapter 3. Data Modeling Using the Entity-Relationship (ER) Model
Chapter 3 Data Modeling Using the Entity-Relationship (ER) Model Chapter Outline Overview of Database Design Process Example Database Application (COMPANY) ER Model Concepts Entities and Attributes Entity
Object-Oriented Design Guidelines
Adaptive Software Engineering G22.3033-007 Session 8 Sub-Topic 3 Presentation Object-Oriented Design Guidelines Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute
Formal Engineering for Industrial Software Development
Shaoying Liu Formal Engineering for Industrial Software Development Using the SOFL Method With 90 Figures and 30 Tables Springer Contents Introduction 1 1.1 Software Life Cycle... 2 1.2 The Problem 4 1.3
Towards a Common Metamodel for the Development of Web Applications
Towards a Common Metamodel for the Development of Web Applications Nora Koch and Andreas Kraus Ludwig-Maximilians-Universität Munich, Germany Motivation Overwhelming diversity of Web methodologies Goal:
Software Product Lines
Software Product Lines Software Product Line Engineering and Architectures Bodo Igler and Burkhardt Renz Institut für SoftwareArchitektur der Technischen Hochschule Mittelhessen Sommersemester 2015 Questions:
Dr. Jana Koehler IBM Zurich Research Laboratory
Precise Modeling of Business Processes with the Business Process Modeling Notation BPMN 2.0 Dr. Jana Koehler IBM Zurich Research Laboratory ZRL BIT at a Glance Computer Science at ZRL: Security/Cryptography
A Tool Suite for the Generation and Validation of Configurations for Software Availability
A Tool Suite for the Generation and Validation of Configurations for Software Availability A. Gherbi 1, A. Kanso 1, F. Khendek 1, M. Toeroe 2 and A. Hamou-Lhadj 1 1 Concordia University, Montréal, Canada
Example-driven meta-model development
Software and Systems Modeling manuscript No. (will be inserted by the editor) Example-driven meta-model development Jesús J. López-Fernández, Jesús Sánchez Cuadrado, Esther Guerra, Juan de Lara Universidad
Proceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010)
Electronic Communications of the EASST Volume 34 (2010) Proceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010) Position Paper: m2n A Tool for Translating
ONTOLOGY FOR MOBILE PHONE OPERATING SYSTEMS
ONTOLOGY FOR MOBILE PHONE OPERATING SYSTEMS Hasni Neji and Ridha Bouallegue Innov COM Lab, Higher School of Communications of Tunis, Sup Com University of Carthage, Tunis, Tunisia. Email: [email protected];
On translating UML models into graph transformation systems $
ARTICLE IN PRESS Journal of Visual Languages and Computing 17 (2006) 78 105 Journal of Visual Languages & Computing www.elsevier.com/locate/jvlc On translating UML models into graph transformation systems
CompuScholar, Inc. Alignment to Utah's Computer Programming II Standards
CompuScholar, Inc. Alignment to Utah's Computer Programming II Standards Course Title: TeenCoder: Java Programming Course ISBN: 978 0 9887070 2 3 Course Year: 2015 Note: Citation(s) listed may represent
Meta-Model specification V2 D602.012
PROPRIETARY RIGHTS STATEMENT THIS DOCUMENT CONTAINS INFORMATION, WHICH IS PROPRIETARY TO THE CRYSTAL CONSORTIUM. NEITHER THIS DOCUMENT NOR THE INFORMATION CONTAINED HEREIN SHALL BE USED, DUPLICATED OR
From Business World to Software World: Deriving Class Diagrams from Business Process Models
From Business World to Software World: Deriving Class Diagrams from Business Process Models WARARAT RUNGWORAWUT 1 AND TWITTIE SENIVONGSE 2 Department of Computer Engineering, Chulalongkorn University 254
Model-Driven Online Capacity Management for Component-Based Software Systems
Model-Driven Online Capacity Management for Component-Based Software Systems Dissertation Dipl.-Inform. André van Hoorn Dissertation zur Erlangung des akademischen Grades Doktor der Ingenieurwissenschaften
Appendix... B. The Object Constraint
UML 2.0 in a Nutshell Appendix B. The Object Constraint Pub Date: June 2005 Language The Object Constraint Language 2.0 (OCL) is an addition to the UML 2.0 specification that provides you with a way to
Role-based Authorization Constraints Specification Using Object Constraint Language
Role-based Authorization Constraints Specification Using Object Constraint Language Gail-Joon Ahn Department of Computer Science University of North Carolina at Charlotte [email protected] Michael. E. Shin
Modeling the User Interface of Web Applications with UML
Modeling the User Interface of Web Applications with UML Rolf Hennicker,Nora Koch,2 Institute of Computer Science Ludwig-Maximilians-University Munich Oettingenstr. 67 80538 München, Germany {kochn,hennicke}@informatik.uni-muenchen.de
Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1
The Role of Programming in Informatics Curricula A. J. Cowling Department of Computer Science University of Sheffield Structure of Presentation Introduction The problem, and the key concepts. Dimensions
Software Variability Management
Software Variability Management An Exploratory Study with Two Feature Modeling Tools Juliana Alves Pereira, Carlos Souza, Eduardo Figueiredo Computer Science Department, Federal University of Minas Gerais
OO-HMethod and the Structure of a Model
Object-Oriented Conceptual Modeling of Web Application Interfaces: the OO-HMethod Abstract Presentation Model Cristina Cachero 1, Jaime Gómez 1, and Oscar Pastor 2 1 Departamento de Lenguajes y Sistemas
Data Analysis 1. SET08104 Database Systems. Copyright @ Napier University
Data Analysis 1 SET08104 Database Systems Copyright @ Napier University Entity Relationship Modelling Overview Database Analysis Life Cycle Components of an Entity Relationship Diagram What is a relationship?
CloudML@ARTIST: Overview
CloudML@ARTIST: Overview In the context of the ARTIST project, and following the analysis on the state of the art documented in the public ARTIST Deliverable D7.2, it was decided to base our modelling
Visual Studio Class Designer and Unified Modelling Language
SISY 2006 4 th Serbian-Hungarian Joint Symposium on Intelligent Systems Visual Studio Class Designer and Unified Modelling Language Krisztina Katona John von Neumann Faculty of Informatics Budapest Tech
Workflow Access Control from a Business Perspective
Workflow Access Control from a Business Perspective Dulce Domingos, António Rito-Silva 2, Pedro Veiga Informatics Department, University of Lisbon, Faculty of Sciences {dulce, pmv}@di.fc.ul.pt 2 INESC-ID
Modelling the Railway Control Domain rigorously with a UML 2.0 Profile
Modelling the Railway Control Domain rigorously with a UML 2.0 Profile Kirsten Berkenkötter Ulrich Hannemann Germany kirsten,[email protected] Outline Outline 1. Context 2. Railway Control
Unit 2.1. Data Analysis 1 - V2.0 1. Data Analysis 1. Dr Gordon Russell, Copyright @ Napier University
Data Analysis 1 Unit 2.1 Data Analysis 1 - V2.0 1 Entity Relationship Modelling Overview Database Analysis Life Cycle Components of an Entity Relationship Diagram What is a relationship? Entities, attributes,
today 1,700 special programming languages used to communicate in over 700 application areas.
today 1,700 special programming languages used to communicate in over 700 application areas. Computer Software Issues, an American Mathematical Association Prospectus, July 1965, quoted in P. J. Landin
Generating Enterprise Applications from Models
Generating Enterprise Applications from Models Vinay Kulkarni, R Venkatesh, Sreedhar Reddy Tata Research Development and Design Centre, 54, Industrial estate, Hadapsar, Pune, 411 013, INDIA { vinayk, rvenky,
Enterprise architecture Manufacturing operations management Information systems in industry ELEC-E8113
Enterprise architecture Manufacturing operations management Information systems in industry ELEC-E8113 Contents Enterprise architecture (EA) Manufacturing operations management (MOM) Rationale of the lecture:
A Proposal for Constructing Relational Database from Class Diagram
A Proposal for Constructing Relational Database from Class Diagram Mohd Zainuri Saringat Faculty of Information Technology and Multimedia Universiti Tun Hussein Onn Malaysia Parit Raja, Batu Pahat, 86400,
CSE 1020 Introduction to Computer Science I A sample nal exam
1 1 (8 marks) CSE 1020 Introduction to Computer Science I A sample nal exam For each of the following pairs of objects, determine whether they are related by aggregation or inheritance. Explain your answers.
In this Lecture you will Learn: Development Process. Unified Software Development Process. Best Practice
In this Lecture you will Learn: Development Chapter 5C About the Unified Software Development How phases relate to workflows in an iterative life cycle An approach to system development Major activities
Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science. Unit of Study / Textbook Correlation
Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science updated 03/08/2012 Unit 1: JKarel 8 weeks http://www.fcps.edu/is/pos/documents/hs/compsci.htm
Structure of Presentation. Stages in Teaching Formal Methods. Motivation (1) Motivation (2) The Scope of Formal Methods (1)
Stages in Teaching Formal Methods A. J. Cowling Structure of Presentation Introduction to Issues Motivation for this work. Analysis of the Role of Formal Methods Define their scope; Review their treatment
AN ONTOLOGICAL APPROACH TO WEB APPLICATION DESIGN USING W2000 METHODOLOGY
STUDIA UNIV. BABEŞ BOLYAI, INFORMATICA, Volume L, Number 2, 2005 AN ONTOLOGICAL APPROACH TO WEB APPLICATION DESIGN USING W2000 METHODOLOGY ANNA LISA GUIDO, ROBERTO PAIANO, AND ANDREA PANDURINO Abstract.
COMP 378 Database Systems Notes for Chapter 7 of Database System Concepts Database Design and the Entity-Relationship Model
COMP 378 Database Systems Notes for Chapter 7 of Database System Concepts Database Design and the Entity-Relationship Model The entity-relationship (E-R) model is a a data model in which information stored
