MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

17
MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara
  • date post

    19-Dec-2015
  • Category

    Documents

  • view

    221
  • download

    3

Transcript of MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

Page 1: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

MDA> Model Driven Architecture

> Orçun Dayıbaş> December, 2006> METU, Ankara

Page 2: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

2

Agenda

> Introduction

>What is MDA?

>Some Key Terms

>Development Life Cycle

>Meta-modeling Architecture

>Language for PIM

>Conclusion

Page 3: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

3

Hetereogenity in Software Development> Programming Languages

  Java, C/C++, C#, COBOL, ADA, V. Basic, Eiffel, Smalltalk, ...

> Operating Systems

  Windows (3.1 -> Vista), MacOS, Unix, Mobile (WinCE, PalmOS), Embedded, ...

> Networks

  Ethernet, IP, FireWire, USB, Bluetooth, HomeRF, ...

> There will be no consensus on below subjects• Hardware• Operating System• Network Protocols• Programming Languages

Page 4: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

4

Middleware solution> Middleware is a software layer that masks

hetereogentiy

  Placed between operating systems and application components.

> Middleware itself has various approaches

• CORBA

• COM / DCOM

• Java / EJB• XML / SOAPNetworks

> No consensus again

  None of them will come out on top of others. Hence, the problem remains.

> Can we agree at a higher level?

  OMG says; Yes!

Page 5: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

5

What is MDA? (1/2)> Next level of abstraction; model-based development

Page 6: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

6

What is MDA? (2/2)> The Idea

Page 7: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

7

MDA in Practice> Reduced cost and complexity of application

development.

• Model-oriented implementation.> Improved application quality and validation at model

level.

• Constraint based, generated test cases.> Reuse of business models> Platform independence> Rapid inclusion of emerging technologies

• Take a business model (off the shelf).

• Take a implementation model (off the shelf).

• Describe links between them.

• Generate the system.> Available modelling products

• ArcStyler, iUML, OptimalJ, ...

Page 8: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

8

Basic Concepts of MDA> Model

  A model is a formal specification of the function, structure and behavior of a system.

> Models of different systems are structured explicitly into:

• Platform Independent Models (PIM)

• Platform Specific Models (PSM)

> PIM

  A “formal” specification of the structure and function of a system that abstracts away technical detail.

> PSM

  Specifies how the functionality specified in a PIM is realized on a particular platform.

Page 9: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

9

Developing in MDA(1/2)> Create the PIM

• All MDA development projects start with the creation of a PIM.

• PIM at this level represents business functionality and behavior.

> Create and map the PSM

• After the first iteration, PIM is input to mapping which will produce PSM.

• PIM can be mapped either to a single platform or to multiple platforms

PIM

CORBA Model

Java/EJB Model

Other Model……

maps tomaps to

maps to

Page 10: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

Implementations

PSMs

10

Developing in MDA(2/2)> Generating Application

  An MDA tool generates all or most of the implementation code for the deployment technology selected by the developer

PIM

CORBA Model

Java/EJB Model

Other Model……

maps tomaps to

maps to

CORBA Imp.

Java/EJB Imp.

Other Imp.……

Page 11: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

11

The Four-Layer Architecture of OMG(1/2)

Page 12: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

12

The Four-Layer Architecture of OMG(2/2)> Beyond M3, M4?

  Yes, we could build a meta-model of M3, but the modeling language we use would itself be at M3. Hence, we do not need new M4.

M2

M1

M0

M3MOF

(class, attribute, association)

UML, CWM(class, att., assoc., state, ...)

Application(classes, DB tables, ...)

Data of the Application(instances, table rows, ...)

Page 13: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

Specification

InterchangingRepresentation

13

OMG Meta-modeling Architecture

Meta-Model CWM

MOF XMI

XMLUML

Standardized by

Defined by

By using

Mapped by

By using

Page 14: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

14

UML as a PIM Language> UML

• Based on Object Orientation.

• Strong in modeling stractural aspects of the system.

• Weak in modeling behavioral parts.

> xUML (eXecutable UML)

• Plain UML + AS (Action Semantics)

• Relays on state machine approach.

• State machine approach is suitable for specific domains (esp. embedded).

• The AS language is not a very high-level language.

Page 15: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

15

COSEML as a PIM Language> Decomposition

• Based on Component Orientation.

• In each iteration converges to existent components.

• Weak in modeling behavioral parts.

> Over Specification

• Over-specification of the Component Orientation provides easier transformation for mapping PIM to PSM.

> Dynamic or behavioral parts of system

• COSEML needs some action semantics.

Page 16: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

16

Thank you, for your participation...

Orçun Dayıbaş

Page 17: MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.

17

References> OMG’s MDA An Architecture for Modeling

  Desmond D’Souza

> MDA Distilled: Principles of Model-Driven Architecture  Stephen J. Mellor, Kendall Scott, Axel Uhl, Dirk

Weise

> OMG’s Model Driven Architecture  Davide Buscaldi

> MDA Explained: Practice and Promise  Anneke Kleppe, Jos Warmer, Wim Bast

> Model-Driven Architecture: Vision, Standards And Emerging Technologies  John D. Poole