25.1 Translational Frameworks (MDA with transformations)

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "25.1 Translational Frameworks (MDA with transformations)"

Transcription

1 Literature TU Dresden Fakultät für Informatik Institut für Software- und Multimediatechnik 25. From Code Frameworks to Model-Driven Architecture (MDA) and Component-Based Software Development (CBSD) Prof. Dr. Uwe Aßmann Institut für Software- und Multimediatechnik (SMT) Fakultät für Informatik TU Dresden , 1/24/11 1) MDA 2) CBSE Frameworks 3) Stability-Change Analysis 4) Planned and Unplanned MDA 5) MDA beyond Code Frameworks U. Aßmann. Invasive Software Composition. Springer, 2003 Aßmann, Uwe, Johannes, Jendrik, Henriksson, Jakob, Savga, Ilie, Composition of Rule Sets and Ontologies. Reasoning Web, Second International Summer School 2006, pp , 2006, LNCS 4126, Springer Uwe Aßmann. Model-driven architecture (MDA) and component-based software development (CBSE). In S. Estok, M.M. Lindwer, G. Gopakumar, and L. Posta, editors, XOOTIC Magazine, number 4126 in XOOTIC Magazine, pages 5-7, Eindhoven, September XOOTIC. Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 2 Introduction Frameworks, where are we going from here? Model-Driven Architecture (MDA OMG) Component-based Software Engineering How to have reuse of models in MDA (model frameworks)? How to realize the MDA components? How to unify MDA and CBSE? However, Different abstraction levels MDA is about design reuse Components about code reuse Different instantiation mechanisms MDA: translation Components: connection TU Dresden Fakultät für Informatik Institut für Software- und Multimediatechnik 25.1 Translational Frameworks (MDA with transformations) See also Softwaretechnogie-II Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 3

2 MDA Describes Product Lines The platform stack is a translational framework The products of the product line Domain model for application domain Computationally Computationally Model Model (CIM) (CIM) Requirements Requirements specification specification Model Model (PIM) (PIM) Model (PIM) Model (PSM) Specific Model Model (PSM) (PSM) Model (PSM) Code Code Code Code Code Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 5 A Weaving Architecture: MDA MDA with Aspect Mappings Describe platform specific extension (PSE) as aspects: The PIM is the core, the PSM the weaved system The model mapping becomes an aspect weaver MDA uses transformations to implement the weaving PIM PIM PSE Aspect 1 PSE Aspect 1 PSE Aspect 3 PSE Aspect 3 PSM Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 6 Aspects Important for Embedded Systems PSE Aspect 2 PSE Aspect 2 Models (PIM) Specific Extensions (PSE) MDA weavers integrate platform variants Models (PSM) Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 8 Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 7 Life-time aspects in MDA How long does an object live? Resource aspects in MDA Representation of collections (SetL) Middleware aspects Representation of connectors Transactions, persistency,... Real-time aspects in MDA Profile info OCL-RT info Quality aspects in MDA Contracts Security

3 MDA With Several Layers for Resource-Constrained Systems Example: MDA for RT-UML PIM PIM PSM-1 PSM-1 PSE Aspect 1 (time) PSE Aspect 1 (time) PSE Aspect 2 (memory) PSE Aspect 2 (memory) EU project High Integrity Distributed Object-Oriented Real-Time Systems (HIDOORS) German BMBF project SuReal MDA for RT-UML Realtime sequence diagrams (MSC) UML realtime statecharts Mapping to timed automata of Uppaal model checker PSM-2 PSM-2 Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 9 RT Sequence Diagram (UML) RT Extension Aspect Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 10 RT-SD und RT-Statecharts are Aspects A GetRate() <<subject>> Heart Rate Server C Subscribe() <<observer>> <<observer>> HR Trend Join PointsHR Sensor Recoder Subscribe() Advice: GetRate() {D-C<=1ms} {B-A <= 2ms} PIM: UML class diagram PIM: UML class diagram PSM-1 PSM-1 RT Sequence diagram RT Sequence diagram B D RT-Statecharts RT-Statecharts Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 11 PSM-2 PSM-2 Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 12

4 What MDA Really Is About MDA is about weaving platform-extension model aspects Problem: We need weavers for every level With different modeling languages Who will build them? TU Dresden Fakultät für Informatik Institut für Software- und Multimediatechnik 25.2 Frameworks with other Component Models (Frameworks with CBSE) Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 13 Frameworks, Components, and Products Planning several products from one common code base, but several variant parameterizations Office Framework Frameworks are Larger Components Filled spot Components Framework Hot spot Word Processor Spreadsheet Slide Editor Instantiation Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 15 Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 16

5 Software Composition Systems A composition system has Component Model Composition Composition Language Language for for programming-in-the-large programming-in-the-large and and architecture architecture Composition Technique [ISC Book, 2003] Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 17 Component Models at Different Composition Times <<connector>> Universal component model <<connector>> <<connector>> The Ladder of Composition Systems Grey Black Software Composition Systems Aspect Systems View Systems Architecture Systems Classical Component Systems Object-Oriented Systems Composition Language Aspect Separation Crosscutting Merge erator Architecture as Aspect Standard Components Objects as Run-Time Components Invasive Composition Piccola Aspect/J Composition Filters Hyperslices Role modeling Darwin ACME.NET CORBA Beans EJB Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 18 C Java Modular Systems Modules as Compile- Modula Ada-85 Time Components Frameworks in Stages Frameworks (PIF) Specific Extensions components (PSE) Fragment component model COTS component model Run time component model Code Fragment Components COTS components Run time components Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 19 Products (PSP) 1 phase or several Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 20

6 TU Dresden Fakultät für Informatik Institut für Software- und Multimediatechnik TU Dresden Fakultät für Informatik Institut für Software- und Multimediatechnik 25.3 Stability/Change Analysis (SCA) Old Tales About Change- Oriented Design Parnas information hiding principle for change-oriented design Modules (Information-Hiding- Based Design a la Parnas) Every module hides the an important design decision behind a well-defined interface which does not change when the decision changes. Commonality-Variability Analysis (CVA) The Parnas principle has been refined in Commonality-Variability Analysis Finding common assets for a product line Separating them from variable assets CVA can be realized with many technologies We We can can attempt attempt to to define define our our modules modules around around assumptions assumptions which which are are likely likely to to change. change. One One then then designs designs a a module module which which hides hides or or contains contains each each one. one. Such Such modules modules have have rather rather abstract abstract interfaces interfaces which which are are relatively relatively unlikely unlikely to to change. change. Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 23 Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 24

7 What is Change? SCA and its subclasses [Parnas 72] tells us that commonality/variability is just a special case of Stability/Change Analysis (SCA) Variability is preplanned, evolution is unforeseen Change Stability-Change Analysis (SCA) Parnas Planned Variability Evolution Unplanned Commonality-Variability Analysis (CVA) (Product Lines) Stability-Extension Analysis (SEA) (Evolution) Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 25 Planning Variations - Unforeseen Extensions Planning relies on variation points Templates with slots Frameworks with Preelike metapatterns Extension relies on extension points Cores with hooks or joinpoints Cores with extension views Commonality/ -Variability Analysis (MDA) MDA Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 26 TU Dresden Fakultät für Informatik Institut für Software- und Multimediatechnik 25.4 Planned and Unplanned MDA for Stability/Change Analysis (SCA) Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 27

8 Problem Parnas requires interfaces between modules which are not in MDA which relies on implicit extension points (implicit hooks on models) Can we extend the Parnas' principle to a parametric MDA? For planned variants Needs explicit composition interfaces between PIM and PSM Planned MDA with Modules (Original Idea of Parnas) Modules parameterize in planned ways Module interface is composition interface but not with crosscutting Modules Variation Point Parametrization Modules Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 29 Planned MDA (MDA with Generic Templates) Templates parameterize in planned ways Template interface is composition interface but not with crosscutting Systems Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 30 Planned MDA with Code Frameworks Code Frameworks can be parameterized in planned ways Variability design patterns form the interface Variability hooks Templates Variation Point Parameters Framework Variability Hook Parametrization Objects Systems Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 31 Systems Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 32

9 Planned MDA with Role/Mixin Layers Role layers (mixin layers) can be parameterized in planned ways Variability by mixin or role-object composition can be extended in unplanned ways Core Object Base Layer Mixin Objects Unplanned MDA with Code Frameworks Code Frameworks can be extended in unplanned ways Extensibility design patterns form the interface n-t H, T<=H framework hooks (extension points) Framework Extension Hook Parametrization Objects Objects Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 33 Systems Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 34 Unplanned Extensible Eclipse Unplanned Extensible MDA Eclipse plugins extend in unforeseen ways n-t H, T<=H framework hooks (extension points) Aspect-model weavers extend in unforeseen ways Using transformations Frameworks (PIF) Extensions (PSE) Models (PIM) Extensions (PSE) Products (PSP) Models (PSM) Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 35 Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 36

10 Unforeseeable Extensible MDA Planning Variations - Unforeseen Extensions Hyperslices extend in unforeseen ways, but not with crosscutting Models (PIM) Extensions (PSE) Planning relies on variation points MDA with templates modules blackbox component models variable frameworks Role layers Extension relies on extension points MDA with extensible frameworks role layers views aspects Models (PSM) Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 37 Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 38 Variation and Extension Facets Conclusion: It's Your Choice! We can distinguish several facets of variation and extension Time of instantiation (binding time) Time of exchange Granularity of binding point Contract on extension MDA can be employed for many different variability technologies Both for CVA and SCA! With many different CBSE technologies MDA for commonality/variability-based design can be planned Using a composition interface with declared variation points MDA for stability/extension-based design can be done for unforeseen extensions using a composition interface with implicit hooks (join points) Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 39 Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 40

11 Change MDA is Concern Separation Variability Change Evolution MDA is not about platforms MDA is a design framework approach with subcategories Variability-based MDA (for variation) Templates (mappings are parameterizations) Modules Variablility frameworks Connector-based frameworks (mappings are refinements) Extensible MDA (for unforeseen extension) Views (mappings are extensions) Aspects Extensible frameworks Translation-based, Rewrite-based MDA Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 41 The Real MDA Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 42 The End MDA generalized the framework approach of this course MDA is a CBSE approach, applicable to all component models Greybox composition PIM and PSE are greybox components Blackbox composition PIM and PSE are blackbox components Without unforeseen extension everything is planned You can do it in C, but you must plan carefully Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 43 Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 44

12 Future MDA with SCA Variability is preplanned, evolution is unforeseen Commonality-Variability Analysis (CVA) (Product Lines) Stability-Change Analysis (SCA) Universal Pointcuts Stability-Extension Analysis (SEA) (Evolution) Universal Reuse Add-ons Commonality/ -Variability Analysis (MDA) singular Parnas crosscutting singular crosscutting gmda emda Prof. Dr. U. Aßmann TU Dresden, Institut für Software- und Multimediatechnik 45

Component-Based Software Engineering (CBSE) Announcements

Component-Based Software Engineering (CBSE) Announcements Component-Based Software Engineering (CBSE) Announcements Prof. Dr. Uwe Aßmann Technische Universität Dresden Institut für Software- und Multimediatechnik http://st.inf.tu-dresden.de 11-0.1, Apr 05, 2011

More information

Domain Models and Product Lines

Domain Models and Product Lines Fakultät Informatik, Institut für Software- und Multimediatechnik, Lehrstuhl für Softwaretechnologie Domain Models and Product Lines Prof. Dr. U. Aßmann Technische Universität Dresden Institut für Software-

More information

Software Engineering. Software Engineering. Component-Based. Based on Software Engineering, 7 th Edition by Ian Sommerville

Software Engineering. Software Engineering. Component-Based. Based on Software Engineering, 7 th Edition by Ian Sommerville Software Engineering Component-Based Software Engineering Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain that CBSE is concerned with developing standardised components

More information

Chapter 18 Emerging Technologies

Chapter 18 Emerging Technologies Lecture Software Engineering Chapter 18 Emerging Technologies Lecture Software Engineering Topics Introduction Aspect-Oriented Technology Model-Driven Technology Component-Based Technology Service-Oriented

More information

Aspect-Oriented Programming

Aspect-Oriented Programming Aspect-Oriented Programming An Introduction to Aspect-Oriented Programming and AspectJ Niklas Påhlsson Department of Technology University of Kalmar S 391 82 Kalmar SWEDEN Topic Report for Software Engineering

More information

Foundations of Model-Driven Software Engineering

Foundations of Model-Driven Software Engineering Model-Driven Software Engineering Foundations of Model-Driven Software Engineering Dr. Jochen Küster (jku@zurich.ibm.com) Contents Introduction to Models and Modeling Concepts of Model-Driven Software

More information

RoSI Kickoff Meeting. Beyond Simple Objects

RoSI Kickoff Meeting. Beyond Simple Objects Fakultät für Informatik Institut für Software- und Multimediatechnik RoSI Kickoff Meeting Beyond Simple Objects Prof. Dr. Uwe Aßmann Institut für Software- und Multimediatechnik (SMT) Fakultät für Informatik,

More information

Embedded/Real-Time Software Development with PathMATE and IBM Rational Systems Developer

Embedded/Real-Time Software Development with PathMATE and IBM Rational Systems Developer Generate Results. Real Models. Real Code. Real Fast. Embedded/Real-Time Software Development with PathMATE and IBM Rational Systems Developer Andreas Henriksson, Ericsson andreas.henriksson@ericsson.com

More information

Exploring Cyber-Physical Systems

Exploring Cyber-Physical Systems Fakultät für Informatik Institut für Software- und Multimediatechnik Resubic Lab Dresden Exploring Cyber-Physical Systems http://www.resubic.org O, quae mutatio rerum. Prof. Dr. Uwe Aßmann Version 04.04.11

More information

SERVICE ORIENTED AND MODEL-DRIVEN DEVELOPMENT METHODS OF INFORMATION SYSTEMS

SERVICE ORIENTED AND MODEL-DRIVEN DEVELOPMENT METHODS OF INFORMATION SYSTEMS 7th International DAAAM Baltic Conference INDUSTRIAL ENGINEERING 22-24 April 2010, Tallinn, Estonia SERVICE ORIENTED AND MODEL-DRIVEN DEVELOPMENT METHODS OF INFORMATION SYSTEMS Lemmik, R.; Karjust, K.;

More information

Design with Reuse. Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1

Design with Reuse. Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1 Design with Reuse Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1 Objectives To explain the benefits of software reuse and some reuse

More information

MDA and Programming Languages

MDA and Programming Languages MDA and Programming Languages Michael Eichberg University of Technology Darmstadt eichberg@informatik.tu-darmstadt.de September 2002 Abstract One of the open issues in Model Driven Architecture (MDA) is

More information

Overview. Stakes. Context. Model-Based Development of Safety-Critical Systems

Overview. Stakes. Context. Model-Based Development of Safety-Critical Systems 1 2 Model-Based Development of -Critical Systems Miguel A. de Miguel 5/6,, 2006 modeling Stakes 3 Context 4 To increase the industrial competitiveness in the domain of software systems To face the growing

More information

Unification of AOP and FOP in Model Driven Development

Unification of AOP and FOP in Model Driven Development Chapter 5 Unification of AOP and FOP in Model Driven Development I n this chapter, AOP and FOP have been explored to analyze the similar and different characteristics. The main objective is to justify

More information

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 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

More information

Agile Modeling and Design of Service-Oriented Component Architecture

Agile Modeling and Design of Service-Oriented Component Architecture Agile Modeling and Design of Service-Oriented Component Architecture Zoran Stojanovic, Ajantha Dahanayake, Henk Sol Systems Engineering Group, Faculty of Technology, Policy and Management, Delft University

More information

Architectural Decisions as Service Realization Methodology in Model-Driven SOA Construction

Architectural Decisions as Service Realization Methodology in Model-Driven SOA Construction December 4 6, 2006 Zurich, Switzerland Business Track Session 2, Talk 2 Architectural Decisions as Service Realization Methodology in Model-Driven SOA Construction From Analysis-Level Process Models to

More information

Configuration Management

Configuration Management 83 Chapter 6 Configuration Management Published as: Configuration Management in Component Based Product Populations, Rob van Ommering, 10th International Workshop on Software Configuration Management,

More information

Managing Variability in Software Architectures 1 Felix Bachmann*

Managing Variability in Software Architectures 1 Felix Bachmann* Managing Variability in Software Architectures Felix Bachmann* Carnegie Bosch Institute Carnegie Mellon University Pittsburgh, Pa 523, USA fb@sei.cmu.edu Len Bass Software Engineering Institute Carnegie

More information

Systems Integration: Co C mp m onent- t bas a e s d s o s ftw ft a w r a e r e ngin i eeri r n i g

Systems Integration: Co C mp m onent- t bas a e s d s o s ftw ft a w r a e r e ngin i eeri r n i g Systems Integration: Component-based software engineering Objectives To explain that CBSE is concerned with developing standardised components and composing these into applications To describe components

More information

Generating Aspect Code from UML Models

Generating Aspect Code from UML Models Generating Aspect Code from UML Models Iris Groher Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich, Germany Iris.Groher@fh-hagenberg.at Stefan Schulze Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich,

More information

Jairson Vitorino. PhD Thesis, CIn-UFPE February 2009. Supervisor: Prof. Jacques Robin. Ontologies Reasoning Components Agents Simulations

Jairson Vitorino. PhD Thesis, CIn-UFPE February 2009. Supervisor: Prof. Jacques Robin. Ontologies Reasoning Components Agents Simulations CHROME: A Model-Driven Component- Based Rule Engine Jairson Vitorino PhD Thesis, CIn-UFPE February 2009 Supervisor: Prof. Jacques Robin Ontologies Reasoning Components Agents Simulations Contents 1. Context

More information

Model Driven Interoperability through Semantic Annotations using SoaML and ODM

Model Driven Interoperability through Semantic Annotations using SoaML and ODM Model Driven Interoperability through Semantic Annotations using SoaML and ODM JiuCheng Xu*, ZhaoYang Bai*, Arne J.Berre*, Odd Christer Brovig** *SINTEF, Pb. 124 Blindern, NO-0314 Oslo, Norway (e-mail:

More information

Controlling Model-Driven Software Development through Composition Systems

Controlling Model-Driven Software Development through Composition Systems Fakultät Informatik, Institut für Software- und Multimediatechnologie, Lehrstuhl Softwaretechnologie Controlling Model-Driven Software Development through Composition Systems Jendrik Johannes, NW-MODE

More information

MDA Overview OMG. Enterprise Architect UML 2 Case Tool by Sparx Systems http://www.sparxsystems.com. by Sparx Systems

MDA Overview OMG. Enterprise Architect UML 2 Case Tool by Sparx Systems http://www.sparxsystems.com. by Sparx Systems OMG MDA Overview by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page:1 Trademarks Object Management Group, OMG, CORBA, Model Driven Architecture, MDA, Unified Modeling Language, UML,

More information

MDD approach for the C programming language

MDD approach for the C programming language MDD approach for the C programming language Saravnan.Natarajan, Project Leader, iwave Systems Abstract Model Driven Development (MDD) addresses the challenges faced by the Embedded system software developers.

More information

Language for reconfiguring runtime infrastructure of component-based systems

Language for reconfiguring runtime infrastructure of component-based systems Language for reconfiguring runtime infrastructure of component-based systems Michal Malohlava, Tomáš Bureš DISTRIBUTED SYSTEMS RESEARCH GROUP http://dsrg.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE FACULTY

More information

A Software Development Platform for SOA

A Software Development Platform for SOA A Software Development Platform for SOA Peter Eeles Executive IT Architect Rational Brand Architect for UK, Ireland and South Africa peter.eeles@uk.ibm.com 2004 IBM Corporation Agenda IBM Software Group

More information

The Service Revolution software engineering without programming languages

The Service Revolution software engineering without programming languages The Service Revolution software engineering without programming languages Gustavo Alonso Institute for Pervasive Computing Department of Computer Science Swiss Federal Institute of Technology (ETH Zurich)

More information

DEVS Unified Process for Web-Centric Development and Testing of System of Systems

DEVS Unified Process for Web-Centric Development and Testing of System of Systems CRITICAL ISSUES IN C4I 20-21 May 2008 George Mason University, Fairfax, VA DEVS Unified Process for Web-Centric Development and Testing of of s Saurabh Mittal, PhD Bernard P. Zeigler, PhD Arizona Center

More information

JOURNAL OF OBJECT TECHNOLOGY

JOURNAL OF OBJECT TECHNOLOGY JOURNAL OF OBJECT TECHNOLOGY Online at http://www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2004 Vol. 3, No. 3, March-April 2004 Software Product Lines John D. McGregor, Clemson

More information

Developing in the MDA Object Management Group Page 1

Developing in the MDA Object Management Group Page 1 Developing in OMG s New -Driven Architecture Jon Siegel Director, Technology Transfer Object Management Group In this paper, we re going to describe the application development process supported by OMG

More information

Open Source egovernment Reference Architecture Osera.modeldriven.org. Copyright 2006 Data Access Technologies, Inc. Slide 1

Open Source egovernment Reference Architecture Osera.modeldriven.org. Copyright 2006 Data Access Technologies, Inc. Slide 1 Open Source egovernment Reference Architecture Osera.modeldriven.org Slide 1 Caveat OsEra and the Semantic Core is work in progress, not a ready to use capability Slide 2 OsEra What we will cover OsEra

More information

Understanding Software Static and Dynamic Aspects

Understanding Software Static and Dynamic Aspects Understanding Software Static and Dynamic Aspects Welf Löwe IPD, Universität Karlsruhe PF 6980, 76128 Karlsruhe Germany loewe@ira.uka.de Andreas Ludwig IPD, Universität Karlsruhe PF 6980, 76128 Karlsruhe

More information

Development of a Feature Modeling Tool using Microsoft DSL Tools.

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

More information

MDA Case Study: State of Wisconsin Unemployment Insurance Division

MDA Case Study: State of Wisconsin Unemployment Insurance Division MDA Case Study: State of Wisconsin Unemployment Insurance Division MDA Implementers Workshop 2003 ATC Enterprises, Inc. 7402 Borman Avenue St. Paul, MN 55076 651.554.1771 www.atcenterprises.com Objectives

More information

Clarifying a vision on certification of MDA tools

Clarifying a vision on certification of MDA tools SCIENTIFIC PAPERS, UNIVERSITY OF LATVIA, 2010. Vol. 757 COMPUTER SCIENCE AND INFORMATION TECHNOLOGIES 23 29 P. Clarifying a vision on certification of MDA tools Antons Cernickins Riga Technical University,

More information

Developing the Architectural Framework for SOA Adoption

Developing the Architectural Framework for SOA Adoption Developing the Architectural Framework for SOA Adoption Oliver Sims Enterprise Architect oliver.sims@open-it.co.uk Copyright Open-IT Limited 2005 Agenda Service Orientation just a good technology? The

More information

22b.1. Software Platforms and Software Ecosystems. 22b Software Ecosystems. Plattform Leadership. Platforms and Ecosystems. Prof. Dr. U.

22b.1. Software Platforms and Software Ecosystems. 22b Software Ecosystems. Plattform Leadership. Platforms and Ecosystems. Prof. Dr. U. Fakultät für Informatik Institut für Software- und Multimediatechnik Fakultät für Informatik Institut für Software- und Multimediatechnik 22b 22b.1. Software s and Prof. Dr. Uwe Aßmann Version 11-0.5-17.12.11

More information

Model-Driven Development of a Biosignal Analysis Framework: Benefits and Impacts on Processes. Nikolas Hofmann 08.11.2012

Model-Driven Development of a Biosignal Analysis Framework: Benefits and Impacts on Processes. Nikolas Hofmann 08.11.2012 Model-Driven Development of a Biosignal Analysis Framework: Benefits and Impacts on Processes Nikolas Hofmann Introduction Biosignal analysis has versatile applications in medicine Mobile devices allow

More information

GECO: Automatic Generator-Composition for (Aspect-oriented) DSLs

GECO: Automatic Generator-Composition for (Aspect-oriented) DSLs GECO: Automatic Generator-Composition for (Aspect-oriented) DSLs Doctoral Symposium - MODELS 2014 Reiner Jung Christian-Albrechts-University Kiel, Germany 30.09.2014 Domain-specific Languages Motivation

More information

Ontology Composition using a Role Modeling Approach

Ontology Composition using a Role Modeling Approach Ontology Composition using a Role Modeling Approach Michael Pradel TU Dresden Lehrstuhl Softwaretechnologie Supervisor: MSc. Jakob Henriksson Professor: Dr. rer. nat. habil. Uwe Aßmann Michael Pradel Ontology

More information

Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme. Middleware. Chapter 8: Middleware

Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme. Middleware. Chapter 8: Middleware Middleware 1 Middleware Lehrstuhl für Informatik 4 Middleware: Realisation of distributed accesses by suitable software infrastructure Hiding the complexity of the distributed system from the programmer

More information

Development of Tool Extensions with MOFLON

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

More information

Applying 4+1 View Architecture with UML 2. White Paper

Applying 4+1 View Architecture with UML 2. White Paper Applying 4+1 View Architecture with UML 2 White Paper Copyright 2007 FCGSS, all rights reserved. www.fcgss.com Introduction Unified Modeling Language (UML) has been available since 1997, and UML 2 was

More information

Web Services - Consultant s View. From IT Stategy to IT Architecture. Agenda. Introduction

Web Services - Consultant s View. From IT Stategy to IT Architecture. Agenda. Introduction Web Services - A Consultant s View From IT Stategy to IT Architecture Hans-Peter Hoidn, Timothy Jones, Jürg Baumann, Oliver Vogel February 12, 2003 Copyright IBM Corporation 2002 Agenda Introduction I.

More information

Component-Oriented Engineering

Component-Oriented Engineering Component-Oriented Engineering... the dawn of a new era in embedded software development productivity Francis Bordeleau and Ross MacLeod Zeligsoft May 2008 Component-Oriented Engineering the dawn of a

More information

SL-110: Fundamentals of Java Revision 15 October Sun Educational Services Instructor-Led Course Description

SL-110: Fundamentals of Java Revision 15 October Sun Educational Services Instructor-Led Course Description Sun Educational Services Instructor-Led Course Description Fundamentals of Java SL-110 The Fundamentals of the Java course provides students, with little or no programming experience, with the basics of

More information

Combining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution

Combining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution Combining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution Sven Apel, Thomas Leich, Marko Rosenmüller, and Gunter Saake Department of Computer Science University of Magdeburg,

More information

Codifying Architectural Frameworks for Web Services and Federated Systems

Codifying Architectural Frameworks for Web Services and Federated Systems Codifying Architectural Frameworks for Web Services and Federated Systems David Zygmont CEO Web Services: From Technology to Reality March 4-7 San Jose, CA USA Agenda Introduction to Model Driven Architecture

More information

2 (18) - SOFTWARE ARCHITECTURE Service Oriented Architecture - Sven Arne Andreasson - Computer Science and Engineering.

2 (18) - SOFTWARE ARCHITECTURE Service Oriented Architecture - Sven Arne Andreasson - Computer Science and Engineering. Service Oriented Architecture Definition (1) Definitions Services Organizational Impact SOA principles Web services A service-oriented architecture is essentially a collection of services. These services

More information

INNOVATOR. The integrated tool suite for business process and software engineering

INNOVATOR. The integrated tool suite for business process and software engineering The integrated tool suite for business process and software engineering Use the synergy: The integrated tool suite for business process and software engineering is the only integrated tool suite for business

More information

Model Driven Architecture A New Paradigm in Software Development

Model Driven Architecture A New Paradigm in Software Development A New Paradigm in Software Development Hermod Opstvedt Chief Architect DnB NOR ITU, Norway Hermod Opstvedt : A New Paradigm in Software Development Page 1 (MDA) is a specification by the Object Management

More information

Lecture 21: Software Architectures

Lecture 21: Software Architectures Lecture 21: Software Architectures Architectural Styles Pipe and filter Object oriented: Client-Server; Object Broker Event based Layered: Designing Layered Architectures Repositories: Blackboard, MVC

More information

Aspects for Testing Aspects?

Aspects for Testing Aspects? Aspects for Testing Aspects? Dehla Sokenou, Stephan Herrmann Technische Universität Berlin Software Engineering Group Sekr. FR 5-6, Franklinstr. 28/29, D-10587 Berlin [dsokenou stephan]@cs.tu-berlin.de

More information

Towards Model-Driven Software Development in Robotics: Motivation, Perspectives, Benefits, Challenges

Towards Model-Driven Software Development in Robotics: Motivation, Perspectives, Benefits, Challenges Towards Model-Driven Software Development in Robotics: Motivation, Perspectives, Benefits, Challenges Prof. Dr. Christian Schlegel Fakultät Informatik Hochschule Ulm Germany Alex Lotz Matthias Lutz Dennis

More information

Modeling of Distributed Systems with SOA & MDA

Modeling of Distributed Systems with SOA & MDA Modeling of Distributed Systems with SOA & MDA Haeng-Kon Kim Abstract Along with the boom of Web services and the thriving Model Driven Architecture (MDA), we must consider the growing significance and

More information

Application Architectures

Application Architectures Software Engineering Application Architectures Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain the organization of two fundamental models of business systems - batch

More information

A Practical Approach to MDA. Paul W. Styles Chief Architect Strategic Planning

A Practical Approach to MDA. Paul W. Styles Chief Architect Strategic Planning A Practical Approach to MDA Paul W. Styles Chief Architect Strategic Planning Multi-tier Application Architecture Clients! HTML! JavaScript! Java Applets! JavaBeans Web Servers!! ASP! XML! WML Application

More information

How to Model Aspect-Oriented Web Services

How to Model Aspect-Oriented Web Services How to Model Aspect-Oriented Web Services Guadalupe Ortiz Juan Hernández gobellot@unex.es juanher@unex.es Quercus Software Engineering Group University of Extremadura Computer Science Department Pedro

More information

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces Software Engineering, Lecture 4 Decomposition into suitable parts Cross cutting concerns Design patterns I will also give an example scenario that you are supposed to analyse and make synthesis from The

More information

Life-Cycle Aware Modelling of Software Components

Life-Cycle Aware Modelling of Software Components Life-Cycle Aware Modelling of Software Components Heiko Koziolek 1, Steffen Becker 3, Jens Happe 2, and Ralf Reussner 2 1 ABB Corporate Research Wallstadter Str. 59, 68526 Ladenburg, Germany 2 Chair for

More information

An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications

An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications Germán Harvey Alférez Salinas Department of Computer Information Systems, Mission College,

More information

To introduce software process models To describe three generic process models and when they may be used

To introduce software process models To describe three generic process models and when they may be used Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software

More information

ProGUM-Web: Tool Support for Model-Based Development of Web Applications

ProGUM-Web: Tool Support for Model-Based Development of Web Applications ProGUM-Web: Tool Support for Model-Based Development of Web Applications Marc Lohmann 1, Stefan Sauer 1, and Tim Schattkowsky 2 1 University of Paderborn, Computer Science, D 33095 Paderborn, Germany {mlohmann,sauer}@upb.de

More information

Integrated Development of Distributed Real-Time Applications with Asynchronous Communication

Integrated Development of Distributed Real-Time Applications with Asynchronous Communication Integrated Development of Distributed Real-Time Applications with Asynchronous Communication Marc Schanne International Workshop on Java Technologies for Real-time and Embedded Systems (JTRES) 26-28 September

More information

AOSD - Enhancing SoC. 07.05.2007 :: INF5120 :: Mansur Ali Abbasi. AOSD :: Aspect Oriented Software Development SoC :: Separation of Concerns

AOSD - Enhancing SoC. 07.05.2007 :: INF5120 :: Mansur Ali Abbasi. AOSD :: Aspect Oriented Software Development SoC :: Separation of Concerns 07.05.2007 :: INF5120 :: Mansur Ali Abbasi AOSD - Enhancing SoC AOSD :: Aspect Oriented Software Development SoC :: Separation of Concerns 1 NB! This lecture leans on conciseness rather than completeness

More information

Object Oriented System Development with VB.NET

Object Oriented System Development with VB.NET Chapter 1 Object Oriented System Development with Objectives In this chapter, you will: Learn about OO development and Understand object-oriented concepts Recognize the benefits of OO development Preview

More information

Applying MDA in Developing Intermediary Service for Data Retrieval

Applying MDA in Developing Intermediary Service for Data Retrieval Applying MDA in Developing Intermediary Service for Data Retrieval Danijela Boberić Krstićev University of Novi Sad Faculty of Sciences Trg Dositeja Obradovića 4, Novi Sad Serbia +381214852873 dboberic@uns.ac.rs

More information

MDA Transformations Applied to Web Application Development 1

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

More information

OMG s Second Workshop on Web Services. Orchestrating Web Services from a UML Development Platform

OMG s Second Workshop on Web Services. Orchestrating Web Services from a UML Development Platform Transform your software architecture into a reusable asset OMG s Second Workshop on Web Services Orchestrating Web Services from a UML Development Platform Michel Brassard Founder & CTO mbrassard@codagen.com

More information

MODEL-DRIVEN DEVELOPMENT OF SOFTWARE CONFIGURATION MANAGEMENT SYSTEMS A Case Study in Model-driven Engineering

MODEL-DRIVEN DEVELOPMENT OF SOFTWARE CONFIGURATION MANAGEMENT SYSTEMS A Case Study in Model-driven Engineering MODEL-DRIVEN DEVELOPMENT OF SOFTWARE CONFIGURATION MANAGEMENT SYSTEMS A Case Study in Model-driven Engineering Thomas Buchmann, Alexander Dotor and Bernhard Westfechtel Angewandte Informatik 1, Universität

More information

Model Driven System Development and UML

Model Driven System Development and UML Model Driven System Development and UML MDSD meeting at Aarhus University, December 13 th, 2002 by Finn Overgaard Hansen Engineering College of Aarhus foh@e.iha.dk Version: 12-12-2002 Agenda OMG s Model

More information

Tool Support for Software Variability Management and Product Derivation in Software Product Lines

Tool Support for Software Variability Management and Product Derivation in Software Product Lines Tool Support for Software Variability Management and Product Derivation in Software s Hassan Gomaa 1, Michael E. Shin 2 1 Dept. of Information and Software Engineering, George Mason University, Fairfax,

More information

Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools

Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools Jack Greenfield Keith Short WILEY Wiley Publishing, Inc. Preface Acknowledgments Foreword Parti Introduction to

More information

Combining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution

Combining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution Combining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution Sven Apel, Thomas Leich, Marko Rosenmüller, and Gunter Saake Department of Computer Science Otto-von-Guericke-University

More information

Encapsulating Crosscutting Concerns in System Software

Encapsulating Crosscutting Concerns in System Software Encapsulating Crosscutting Concerns in System Software Christa Schwanninger, Egon Wuchner, Michael Kircher Siemens AG Otto-Hahn-Ring 6 81739 Munich Germany {christa.schwanninger,egon.wuchner,michael.kircher}@siemens.com

More information

XPoints: Extension Interfaces for Multilayered Applications

XPoints: Extension Interfaces for Multilayered Applications XPoints: Extension Interfaces for Multilayered Applications Mohamed Aly, Anis Charfi, Sebastian Erdweg, and Mira Mezini Applied Research, SAP AG firstname.lastname@sap.com Software Technology Group, TU

More information

Integration of Application Business Logic and Business Rules with DSL and AOP

Integration of Application Business Logic and Business Rules with DSL and AOP Integration of Application Business Logic and Business Rules with DSL and AOP Bogumiła Hnatkowska and Krzysztof Kasprzyk Wroclaw University of Technology, Wyb. Wyspianskiego 27 50-370 Wroclaw, Poland Bogumila.Hnatkowska@pwr.wroc.pl

More information

Object-Oriented Systems Analysis and Design

Object-Oriented Systems Analysis and Design Object-Oriented Systems Analysis and Design Noushin Ashrafi Professor of Information System University of Massachusetts-Boston Hessam Ashrafi Software Architect Pearson Education International CONTENTS

More information

Using Aspect Oriented Techniques to Support Separation of Concerns in Model Driven Development

Using Aspect Oriented Techniques to Support Separation of Concerns in Model Driven Development Using Aspect Oriented Techniques to Support Separation of Concerns in Model Driven Development Arnor Solberg SINTEF P.O. Box 124 Blindern N-0314 Oslo, Norway arnor.solberg@sintef.no Devon Simmonds, Raghu

More information

The SPES Methodology Modeling- and Analysis Techniques

The SPES Methodology Modeling- and Analysis Techniques The SPES Methodology Modeling- and Analysis Techniques Dr. Wolfgang Böhm Technische Universität München boehmw@in.tum.de Agenda SPES_XT Project Overview Some Basic Notions The SPES Methodology SPES_XT

More information

SOFT 437. Software Performance Analysis. Ch 5:Web Applications and Other Distributed Systems

SOFT 437. Software Performance Analysis. Ch 5:Web Applications and Other Distributed Systems SOFT 437 Software Performance Analysis Ch 5:Web Applications and Other Distributed Systems Outline Overview of Web applications, distributed object technologies, and the important considerations for SPE

More information

Model Transformations and Code Generation

Model Transformations and Code Generation Model Transformations and Code Generation Ecole IN2P3 Temps Réel Ansgar.Radermacher@cea.fr 2 École d été, 26.11 08h30 10h00: Cours S1 Component models CCM and FCM (connectors) CCM CORBA component model

More information

Software Product Lines

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:

More information

F-16 Modular Mission Computer Application Software

F-16 Modular Mission Computer Application Software F-16 Modular Mission Computer Application Software Achieving Cross-Platform Compatibility with Increased Productivity and Quality using the OMG s Model Driven Architecture Lauren E. Clark Chief Engineer

More information

Construction Principles and Design Patterns. Flyweight, Bridge, Builder

Construction Principles and Design Patterns. Flyweight, Bridge, Builder Construction Principles and Design Patterns Flyweight, Bridge, Builder 1 The Flyweight Design Pattern: Structure Use: To avoid employing a large number of objects with similar state When objects with intrinsic

More information

Component Based Software Engineering: A Broad Based Model is Needed

Component Based Software Engineering: A Broad Based Model is Needed Component Based Software Engineering: A Broad Based Model is Needed Allen Parrish (parrish@cs.ua.edu) Brandon Dixon (dixon@cs.ua.edu) David Hale (dhale@alston.cba.ua.edu) Department of Computer Science

More information

Model Driven Software Development in Service Robotics It really works!

Model Driven Software Development in Service Robotics It really works! servicerobotics Autonomous Mobile Service Robots in Service Robotics It really works! Prof. Dr. Christian Schlegel Computer Science Department University of Applied Sciences Ulm http://www.zafh-servicerobotik.de/ulm/index.php

More information

Fundamental Computer Science Concepts Sequence TCSU CSCI SEQ A

Fundamental Computer Science Concepts Sequence TCSU CSCI SEQ A Fundamental Computer Science Concepts Sequence TCSU CSCI SEQ A A. Description Introduction to the discipline of computer science; covers the material traditionally found in courses that introduce problem

More information

Ringvorlesung Forschungslinie. Beyond Objects

Ringvorlesung Forschungslinie. Beyond Objects Fakultät für Informatik Institut für Software- und Multimediatechnik Ringvorlesung Forschungslinie Beyond Objects From Object Modeling Via Role Modeling To Satellite Modeling Prof. Dr. Uwe Aßmann Institut

More information

Model-Driven Software Development for Robotics: an overview

Model-Driven Software Development for Robotics: an overview Model-Driven Software Development for Robotics: an overview IEEE-ICRA2011 Workshop on Software Development and Integration in Robotics Jan F. Broenink, Maarten M. Bezemer Control Engineering, University

More information

Implementation of MDA Method into SOA Environment for Enterprise Integration

Implementation of MDA Method into SOA Environment for Enterprise Integration www.ijcsi.org 10 Implementation of MDA Method into SOA Environment for Enterprise Integration Wiranto Herry Utomo Faculty of Information Technology, Satya Wacana Christian University Salatiga, Central

More information

Business-Driven Software Engineering Lecture 3 Foundations of Processes

Business-Driven Software Engineering Lecture 3 Foundations of Processes Business-Driven Software Engineering Lecture 3 Foundations of Processes Jochen Küster jku@zurich.ibm.com Agenda Introduction and Background Process Modeling Foundations Activities and Process Models Summary

More information

TDDC88 Lab 2 Unified Modeling Language (UML)

TDDC88 Lab 2 Unified Modeling Language (UML) TDDC88 Lab 2 Unified Modeling Language (UML) Introduction What is UML? Unified Modeling Language (UML) is a collection of graphical notations, which are defined using a single meta-model. UML can be used

More information

New Web Application Development Tool and Its MDA-Based Support Methodology

New Web Application Development Tool and Its MDA-Based Support Methodology New Web Application Development Tool and Its MDA-Based Support Methodology V Yasuyuki Fujikawa V Takahide Matsutsuka (Manuscript received February 11, 2004) Web applications are ubiquitous on the Internet,

More information

CREATING AND APPLYING KNOWLEDGE IN ELECTRONIC HEALTH RECORD SYSTEMS. Prof Brendan Delaney, King s College London

CREATING AND APPLYING KNOWLEDGE IN ELECTRONIC HEALTH RECORD SYSTEMS. Prof Brendan Delaney, King s College London CREATING AND APPLYING KNOWLEDGE IN ELECTRONIC HEALTH RECORD SYSTEMS Prof Brendan Delaney, King s College London www.transformproject.eu 7.5M European Commission March 2010-May 2015 Funded under the Patient

More information

Applying Model Driven Techniques to Mobile Testing

Applying Model Driven Techniques to Mobile Testing Applying Model Driven Techniques to Mobile Testing Sang-Yong Byun Division of Computer Engineering, JeJu National University, Korea byunsy@jejunu.ac.kr Abstract Mobile Embedded Testing is the most important

More information

Accelerating Embedded Software Development with a Model Driven Architecture

Accelerating Embedded Software Development with a Model Driven Architecture Accelerating Embedded Software Development with a Model Driven Architecture Carolyn K. Duby Pathfinder Solutions September, 2003 2003 Pathfinder Solutions LLC www.pathfindersol.com Introduction Embedded

More information

XFlash A Web Application Design Framework with Model-Driven Methodology

XFlash A Web Application Design Framework with Model-Driven Methodology International Journal of u- and e- Service, Science and Technology 47 XFlash A Web Application Design Framework with Model-Driven Methodology Ronnie Cheung Hong Kong Polytechnic University, Hong Kong SAR,

More information