The role of MDE in Software Architecture Descriptions

Post on 23-Jan-2017

207 views 5 download

Transcript of The role of MDE in Software Architecture Descriptions

Henry Muccini - henry.muccini@univaq.it

DISIM

Dept. of Information Engineering, Computer Science and Mathematics

University of L’Aquila, Italy

The role of MDE in Software

Architecture Descriptions

slides available at

http://www.slideshare.net/henry.muccini

On the On the On the On the managingmanagingmanagingmanaging of of of of

Software Architecture Software Architecture Software Architecture Software Architecture

descriptionsdescriptionsdescriptionsdescriptions needsneedsneedsneeds and and and and

challengeschallengeschallengeschallenges by by by by customizingcustomizingcustomizingcustomizing

and and and and extendingextendingextendingextending MDE MDE MDE MDE

technologiestechnologiestechnologiestechnologies

SEA Group

Which architectural styles?

RQ1: How Software Architecture are being

described?

RQ2: which is the role plaid by MDE in SA

Descriptions?

Keywords:

• Architecture Description

Languages

• Industrial practices

• UML vs formal ADLs

• Needs

• Our solutions:

Interoperability,

megamodeling, DLSs

for domain-specific SA

SEA Group

5

Darwin

FSP

Rapide

AADL

ACME

box-and-line

UML

SEA Group

6

Darwin

FSP

Rapide

AADL

ACME

box-and-line

UML

Type of spec.

Language

today1990 2000

Formal

Box and Line

UML

MDE

SEA Group

7

Darwin

FSP

Rapide

AADL

ACME

box-and-line

UML

100+ ALs

(better to say, languages that consider themselves to be ALs)

http://www.di.univaq.it/malavolta/al/

ButButButBut, , , , whatwhatwhatwhat industryindustryindustryindustry needsneedsneedsneeds

from from from from ArchitecturalArchitecturalArchitecturalArchitectural

LanguagesLanguagesLanguagesLanguages????

RQ1: What are the

architectural

description needs of

practitioners?

RQ2: What features

typically supported by

existing ALs are useful

(or not useful) for the

software industry?

9TSE 2013

SEA Group

and, and, and, and, howhowhowhow to to to to buildbuildbuildbuild nextnextnextnext

generationgenerationgenerationgeneration ArchitecturalArchitecturalArchitecturalArchitectural

LanguagesLanguagesLanguagesLanguages????

SEA Group

RQ1: What are the main

requirements needed to

build an industrially-

relevant AL?

RQ2: How MDE can

support those

requirements

IEEE Software 2014

SEA Group

Framework of AL requirements

D. Harel and B. Rumpe, “Meaningful. Modeling: What’s the Semantics of ‘Semantics’?,” Computer, vol. 37, no. 10, 2004, pp. 64–72.

SEA Group

SEA Group

interoperability

Use of different ALs to model or analyze

different architectural aspects of a system

Bridging the different descriptions to

paramount relevance

Bridging the different descriptions to

be kept consistent and coherent is of

paramount relevance

DUALLY supports interoperability among ADLs.

One model conforming to an ADL, can be automatically transformed into another model conforming to a different ADL. [TSE2010,SOSYM2012]

FACT

PROBLEM

OUR SOLUTION

SEA Group

ByADL (byadl.di.univaq.it)

→An MDE framework for customizing existing ADLs[ICSE2010, ECSA2010]

current ADLs mostly fail to capture multiple

(and varying) stakeholders concernsPROBLEM

SOLUTION extending and customizing existing ADLs w.r.t.

to domain- & organization- specific concerns

SEA Group

Darwin/FSP

ACME

AADL

xADL

SA UML profiles

other ADLs

pivot

metamodel

(A0)

Extended/customized ADLgenerated in byADL

BPMN

FTVP

1

VP

1

VP

2

VP

2St1

MK1

Composed AFgenerated in MEGAF

MEGAF: a model-driven infrastructure for building reusable

and extensible architecture frameworks

MEGAF: a model-driven infrastructure for building reusable

and extensible architecture frameworks

DUALLy: an automated approach for ADLs interoperabilityDUALLy: an automated approach for ADLs interoperability

byADL: an approach to adapt and customize existing ADLsbyADL: an approach to adapt and customize existing ADLs

SEA Group

megaf.di.univaq.it

• Preliminary prototype in Eclipse, usingmegamodeling techniques

dually.di.univaq.it

• Prototype in Eclipse, using model-drivenengineering techniques

byadl.di.univaq.it

• Prototype in Eclipse, using model-driven engineering techniques

MDE Limitations

http://www.cse.chalmers.se/~burden/ppts/AreToolsTheProblem.pdf

MODELS 2013

“MDE can be very“MDE can be very“MDE can be very“MDE can be veryeffective but it takes effort to effective but it takes effort to effective but it takes effort to effective but it takes effort to make it workmake it workmake it workmake it work””””

� immaturity of tooltooltooltool support,

� its complexity and lack of usabilitylack of usabilitylack of usabilitylack of usability.

� lack of consideration for how people

think and work.

� MDE requires investment devoted to

training, process change, and cultural

shift.

MDE limitations: Organizational factors

SCP journal 2013

Extensive results from a

survey of MDE practices in

industry

• barriers that hamper the industrial

adoption of MDE are not only

technical and tool-related but also

socialsocialsocialsocial or organizationalorganizationalorganizationalorganizational.

• successful adoption of MDE needs a

– progressive and iterative

approach,

– integration with existing

organizational commitments,

– a clear business focus

AMUSE museum project

A4WSN

22