© Siemens AG, CT SE 2, 12.03.2007 Iris Groher, Markus Voelter C O R P O R A T E T E C H N O L O G Y XWeave – Models and Aspects in Concert 1 XWeave Models.

Slides:



Advertisements
Similar presentations
Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
Advertisements

Applying the Human Views for MODAF to the conception of energy-saving work solutions Dr Anne Bruseberg Systems Engineering & Assessment Ltd, UK on behalf.
Automated Evaluation of Runtime Object States Against Model-Level States for State-Based Test Execution Frank(Weifeng) Xu, Gannon University Dianxiang.
Aspect Oriented Programming. AOP Contents 1 Overview 2 Terminology 3 The Problem 4 The Solution 4 Join point models 5 Implementation 6 Terminology Review.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 32 Slide 1 Aspect-oriented Software Development.
Analysis Modeling.
Meng Tian Extension in Domain Specific Code Generation with Ontology Based Aspect Weaving Supervisor: Julian Rathke
Formal Techniques in Software Engineering Universiteit AntwerpenIntroduction 1.1 Formal Techniques in Software Engineering 3de BAC Informatica Chapter.
Π-Method: A Model-Driven Formal Method for Architecture- Centric Software Engineering By Flavio Oquendo Presented by: Sajith Wickramaratne.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
AspectJ2EE/Clasa Israel Institute of Technology The Computer Science department Itay Maman.
Aspect-Oriented Software Development (236608) 1 Aspect-Oriented Software Development (AOSD) Tutorial #1 Course site :
CSC230 Software Design (Engineering)
Smart Grid Architecture Committee Semantic Working Party Update Jay Britton / Steve Ray Dec. 7, 2011.
Roles and Responsibilities Jahangheer Shaik. Service Specification Specification requires development of three inter-related documents CIM, PIM and PSM.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Advanced Applications Of Model-to-Model Transformation © 2008 INRIA Advanced Applications Of Model-to-Model Transformation Hugo Bruneliere & Frédéric.
Workshop on Generative Computing, Model-Driven Architecture (MDA) and Model-Driven Software Development (MDSD) Medieninformatik-Forum, , Hochschule.
Chapter 6 System Engineering - Computer-based system - System engineering process - “Business process” engineering - Product engineering (Source: Pressman,
Faculty of Informatics and Information Technologies Slovak University of Technology Peter Kajsa and Ľubomír Majtás Design.
1 The Architectural Design of FRUIT: A Family of Retargetable User Interface Tools Yi Liu, H. Conrad Cunningham and Hui Xiong Computer & Information Science.
MDA and QVT  Tom Gullion, Director of Product Management, Together Products.
By: Md Rezaul Huda Reza 5Ps for SE Process Project Product People Problem.
MDE Model Driven Engineering Xavier Blanc Université Pierre et Marie Curie
Introduction to MDA (Model Driven Architecture) CYT.
A REFACTORING TOOL FOR DESIGN PATTERNS WITH MODEL TRANSFORMATIONS Zekai Demirezen Yasemin Topaloğlu Ege University Department of Computer Engineering
What is “model transformation”? Distinction between source and target Source may be same as target May be multiple sources, or targets Reaching a fixed.
 Mathias Dutour / UAB Dev. team  UNICOS regular meeting  29 January 2009.
Reviewing Recent ICSE Proceedings For:.  Defining and Continuous Checking of Structural Program Dependencies  Automatic Inference of Structural Changes.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 32 Slide 1 Aspect-oriented Software Development 1.
MOTOROLA and the Stylized M Logo are registered in the US Patent & Trademark Office. All other product or service names are the property of their respective.
Validated Model Transformation Tihamér Levendovszky Budapest University of Technology and Economics Department of Automation and Applied Informatics Applied.
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
A Framework for the Reconfiguration of Ubicomp Systems Pau Giner, Carlos Cetina, Joan Fons, Vicente Pelechano.
1 Metadata –Information about information – Different objects, different forms – e.g. Library catalogue record Property:Value: Author Ian Beardwell Publisher.
Graphical Modeling Framework (GMF) Creation Review Richard C. Gronback Borland Software Corp. April 13, 2005.
© M a rk u s V ö l t e r Handling Variability in Model Transformations and Generators Handling Variability in Model Transformations and.
ModelPedia Model Driven Engineering Graphical User Interfaces for Web 2.0 Sites Centro de Informática – CIn/UFPe ORCAS Group Eclipse GMF Fábio M. Pereira.
© Siemens AG, CT SE 2 C O R P O R A T E T E C H N O L O G Y 1 Model-Driven Development for Pluggable Collaborations Iris Groher, Stephan Bleicher, Christa.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
Semantics for DSL Group Members: Ritu Arora, Diyang Chu, Zekai Demirezen, Jeff Gray, Jacob Gulotta, Luis Pedro, Arturo Sanchez, Greg Sullivan,Ximing Yu.
Weaving a Debugging Aspect into Domain-Specific Language Grammars SAC ’05 PSC Track Santa Fe, New Mexico USA March 17, 2005 Hui Wu, Jeff Gray, Marjan Mernik,
Lab 5 CPIT 250 System Analysis and Design.
Cooperative Computing & Communication Laboratory A Survey on Transformation Tools for Model-Based User Interface Development Robbie Schäfer – Paderborn.
POSL (Principles of Software Languages) Gr. Kyushu Institute of Technology, Japan 1 A Verification Mechanism for Weaving.
© Fraunhofer IESE Fraunhofer IESE Multi-Language Development of Embedded Systems Dr. Thomas Kuhn Tel.:
Chapter 19: Building Systems with Assurance Dr. Wayne Summers Department of Computer Science Columbus State University
Introduction to Modeling Extracted from textbook: Object Oriented Modeling and Design with UML M. Blaha, J. Rumbaugh.
Simplifying Algebraic Expressions. 1. Evaluate each expression using the given values of the variables (similar to p.72 #37-49)
Chapter – 8 Software Tools.
Aspect-Oriented Software Development (AOSD)
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Graphical Modeling Framework (GMF) Creation Review Richard C. Gronback Borland Software Corp. April 13, 2005.
Design Pattern Support based on principles of model driven development Zihao Zhao.
1 Model Driven Health Tools Design and Implementation of CDA Templates Dave Carlson Contractor to CHIO
Multi-disciplinary Approach for Industrial Phases in Space Projects Evolution of classic SE into MBSE Harald EisenmannAstrium Satellites Joachim Fuchs.
MDD-Kurs / MDA Cortex Brainware Consulting & Training GmbH Copyright © 2007 Cortex Brainware GmbH Bild 1Ver.: 1.0 How does intelligent functionality implemented.
Aspect-oriented Code Generation Approaches Abid Mehmood & Dayang N. A. Jawawi Department of Software Engineering Faculty of Computer Science and Information.
Page 1 Hitachi Ltd. – FhI FOKUS TTCN-3 User Conference, June 2005 MDA based approach for generation of TTCN-3 test specifications Hideto Ogawa, Hitachi.
CHESS Methodology and Tool Federico Ciccozzi MBEES Meeting Sälen, January 2011 January 2011.
M&CML: A Monitoring & Control Specification Modeling Language
Interface Concepts Modeling Core Team
Introduction to Software Modeling
SysML v2 Formalism: Requirements & Benefits
Designing Software for Ease of Extension and Contraction
Analysis models and design models
Semantic Markup for Semantic Web Tools:
MDT OCL 1.3 Mini-deck June 10, 2009.
Software Architecture & Design
Presentation transcript:

© Siemens AG, CT SE 2, Iris Groher, Markus Voelter C O R P O R A T E T E C H N O L O G Y XWeave – Models and Aspects in Concert 1 XWeave Models and Aspects in Concert Iris Groher Siemens AG, CT SE 2 Markus Voelter Independent Consultant

© Siemens AG, CT SE 2, Iris Groher, Markus Voelter C O R P O R A T E T E C H N O L O G Y XWeave – Models and Aspects in Concert 2 Contents 1.Model-Driven Software Development in a Nutshell 2.Model Weaving 3.XWeave 4.Home Automation Example (Smart Home) 1.Smart Home (Meta) Models 2.Examples 5.Evaluation 6.Conclusion and Future Work

© Siemens AG, CT SE 2, Iris Groher, Markus Voelter C O R P O R A T E T E C H N O L O G Y XWeave – Models and Aspects in Concert 3 Model-Driven Software Development (MDSD) Systems are mostly described in terms of models Models play the role of source code Models do not only constitute documentation Models are processed by tools Models are instances of meta models Meta models describe the abstract syntax of models Meta models are instances of meta meta models MOF, Ecore Infrastructure Editors Model transformations Used for processing and refining models Generators

© Siemens AG, CT SE 2, Iris Groher, Markus Voelter C O R P O R A T E T E C H N O L O G Y XWeave – Models and Aspects in Concert 4 Model Weaving Model Evolution Changes are localized in aspects Simplifies traceability and change management Product Line Engineering Variable (optional) parts are captured in aspect models Woven to minimal core common to all products Architectural Viewpoints Combination of different viewpoints to form a consistent whole

© Siemens AG, CT SE 2, Iris Groher, Markus Voelter C O R P O R A T E T E C H N O L O G Y XWeave – Models and Aspects in Concert 5 XWeave Model weaver based on EMF’s Ecore meta meta model Weaving of both meta models and models Takes a base model and one or more aspect models as input Weaves content of aspect model into base model (asymmetric AO) Base model defines core abstractions Aspect model defines delta to core abstractions and pointcuts All properties of the aspect element including its child elements are woven into the base model

© Siemens AG, CT SE 2, Iris Groher, Markus Voelter C O R P O R A T E T E C H N O L O G Y XWeave – Models and Aspects in Concert 6 Pointcut Definition Name matching If a model element in the aspect model has a corresponding element in the base model the element if woven. Name and type have to be equal Expressions Defined external to both models Uses oAW expression language, based on OCL %expressionName Path expressions Working with collections Selection/filtering

© Siemens AG, CT SE 2, Iris Groher, Markus Voelter C O R P O R A T E T E C H N O L O G Y XWeave – Models and Aspects in Concert 7 Home Automation Example (Smart Home) Electrical and electronic devices (e.g. lights, blinds,...) Sensors measure physical values Controllers activate devices State can be monitored and changed from common UI

© Siemens AG, CT SE 2, Iris Groher, Markus Voelter C O R P O R A T E T E C H N O L O G Y XWeave – Models and Aspects in Concert 8 Smart Home (Meta) Models Smart Home Meta Model Smart Home Model

© Siemens AG, CT SE 2, Iris Groher, Markus Voelter C O R P O R A T E T E C H N O L O G Y XWeave – Models and Aspects in Concert 9 Examples – Model Weaving Aspect Model Resulting Model Base Model

© Siemens AG, CT SE 2, Iris Groher, Markus Voelter C O R P O R A T E T E C H N O L O G Y XWeave – Models and Aspects in Concert 10 Examples – Meta Model Weaving Aspect Model Resulting Model Base Model

© Siemens AG, CT SE 2, Iris Groher, Markus Voelter C O R P O R A T E T E C H N O L O G Y XWeave – Models and Aspects in Concert 11 Example – State Machine

© Siemens AG, CT SE 2, Iris Groher, Markus Voelter C O R P O R A T E T E C H N O L O G Y XWeave – Models and Aspects in Concert 12 Evaluation Weaving of both EMF meta models and models Pointcut definition based on name matching and expressions Limited advice No changing, removing, or overriding of base model elements Only additive weaving is supported

© Siemens AG, CT SE 2, Iris Groher, Markus Voelter C O R P O R A T E T E C H N O L O G Y XWeave – Models and Aspects in Concert 13 Conclusion and Future Work Model weaving is a possible way of integrating AOSD and MDSD XWeave simplifies Model evolution Variability on model level Combination of architectural views We are currently implementing a demonstrator of a product line that uses XWeave to implement variability on model level. Future Work Combine XWeave with a variant management tool Removing, changing, and overriding of base model elements Symmetric weaving

© Siemens AG, CT SE 2, Iris Groher, Markus Voelter C O R P O R A T E T E C H N O L O G Y XWeave – Models and Aspects in Concert 14