! MDA$based*Teaching*and* ! MDA based Reaserch ! Sample 1: Empirical - - PowerPoint PPT Presentation

mda based teaching and
SMART_READER_LITE
LIVE PREVIEW

! MDA$based*Teaching*and* ! MDA based Reaserch ! Sample 1: Empirical - - PowerPoint PPT Presentation

Plan ! Myself ! Model Driven Architecture ! MDA$based*Teaching*and* ! MDA based Reaserch ! Sample 1: Empirical Research Research*in*Software*Engineering* ! ! MDA based Teaching ! Sample 2: Software Development Course Ludwik!Kuniar z!


slide-1
SLIDE 1

!MDA$based*Teaching*and* Research*in*Software*Engineering* !

Ludwik!Kuźniarz! Blekinge*Institute*of*Technology* School*of*Computing* Sweden* Ludwik.Kuzniarz@bth.se*

2

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Plan

! Myself ! Model Driven Architecture ! MDA based Reaserch ! Sample 1: Empirical Research ! MDA based Teaching ! Sample 2: Software Development Course

3 3

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Researh Overview

  • Formal Methods

– Formal verification of programs – Investigation of a specification language – Formalizations in MultiMedia

  • Consistency in UML

– Series of workshops on MoDELS – Classification framework – Consistency*Issues*in*Modelling*

  • Didactics

– Educators Symposium on MoDELS – Best*Practices*for*Teaching*UML*Based*Software:*MoDELS*2004*

  • Software Development and Empirical Methods

– Validation of stereotypes with experiments

  • Empirical*assessment*of*using*stereotypes*to*improve*comprehension*of*UML*models:**

A*set*of*experiments*

– Validation using survey

  • Empirical*extension*of*a*classiJication*framework*for*addressing*consistency**

in*model*based*development

4 4

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Researh Overview

  • Formal Methods

– Formal verification of programs – Hiding deadlocks in Lotos – Formalizations in MultiMedia

  • Consistency in UML

– Series of workshops on MoDELS – Classification framework – Consistency*Issues*in*Modelling*

  • Didactics

– Educators Symposium on MoDELS – Best*Practices*for*Teaching*UML*Based*Software:*MoDELS*2004*

  • Software Development and Empirical Methods

– Validation of stereotypes with experiments

  • Empirical*assessment*of*using*stereotypes*to*improve*comprehension*of*UML*

models:*A*set*of*experiments* – Validation with survey

  • Empirical*extension*of*a*classiJication*framework*for*addressing*consistency*

in*model*based*development

slide-2
SLIDE 2

5 5

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Teaching Overview

  • WUT

– OO Software Development, – Formal methods in SE

  • BIT

– OO Software Development – 1st y BSc level – Product Line Architecture – 2nd y MSc level – Master Thesis course – 2nd y MSc level

  • Double Diploma

BIT - WUT – Research Methodology

  • NUR – National University of Rwanda

– OO Software Development – Product Line Architecture – Master Thesis

  • NU – Newcastle University

– Introduction to UML

6 6

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Teaching Overview

  • WUT

– OO Software Development, – Formal methods in SE

  • BIT

– OO Software Development – 1st y BSc level – Product Line Architecture – 2nd y MSc level – Master Thesis course – 2nd y MSc level

  • Double Diploma

BIT - WUT – Research Methodology

  • NUR – National University of Rwanda

– OO Software Development – Product Line Architecture – Master Thesis

  • NU – Newcastle University

– Introduction to UML

7 7

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

M D A

8 8

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

OMG´s MDA Object'Management'Group'(OMG)''

an'open'membership,'not8for8profit'consor;um'' that'produces'and'maintains'computer'industry'specifica;ons'' for'interoperable'enterprise'applica;ons.'

  • Bad'news'

''''There%will%never%be%a%single%OS,%PL,%Netwwork%Architecture%that% replaces%all%that%have%passed%

  • Good'news'

''%You%can%s>ll%manage%to%build%systems%economically%in%this% environment%

  • Remedy'

A%specific%approach%to%soBware%development%–%% Model%Driven%Architecture%(MDA)%

slide-3
SLIDE 3

9 9

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

OMGs MDA

  • 'CIM'8'Computa;on'Independent'

''''business'func;onality'and'behaviour''

  • 'PIM'8'PlaHorm'Independent'

'''''soIware'func;onality'and'behaviour''

  • 'PSM'8'PlaHorm'Specific'

'''''realisa;on'of'the'PIM'' '''''on'a'given'plaHorm/technology' ! Provides open, vendor neutral approach to the challenge

  • f technology change.

! Is a broad conceptual framework that describes an overall approach to software development. ! Is the OMG implementation of MDD approach to software development by standards and a set of tools that can be used within MDD. ! Based on OMG standards separates application logic from underlying platform technology ! Does not define a particular software architecture or an architectural style ! Raises the level of abstraction in software development.

10 10

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

MDA Aspects / Perspectives

11 11

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Represents a collection

  • f best engineering practices

that have proven successful in modeling of large and complex systems.

MDA Core Standards - Technology Space

  • MOF - Meta-Object Facility

– an abstract language and a framework for specifying, constructing, and managing technology neutral metamodels => languages –

  • UML - Unified Modeling Language

– a graphical language for specifying, constructing, visualizing & documenting the artifacts of distributed object oriented systems .

  • XMI - XML Metadata Interchange

– technology mappings from MOF metamodels conforming to XML DTDs and XML documents.

  • Others still coming ….

Model Driven Architecture

UML

12 12

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

MDA: Development Process Perspective

  • MDA (Model-Driven Architecture)

is a type of MDD (Model-Driven Development)

  • Not a Software Architecture design

– ”Architecture” refers to a framework of concepts, tools etc.

  • But a Development Paradigm

Approach to developing software

slide-4
SLIDE 4

13 13

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

MDA: Development Process Perspective

  • MDA'='approach'+'tools'

'for:' – Specifying'' ' '8'plaHorm8independent'system'–'applica;on'plaHorms' – Choosing'' ' '8'a'plaHorm'for'the'system' – Transforming'' ' '8'the'plaHorm8independent'specifica;on'' ''''into'a'plaHorm8specific'one'

  • Concepts'

– Applica;on':'the'func;onality'being'developed' – PlaHorm''''':'technology'that'provides'func;onality'' ' '''''''''through'interfaces'and'usage'paQerns'' ' ''''''''''(generic,'standard,'manufacturer')' – System' ''''':'applica;on(s)'supported'by'plaHorm(s)'

14 14

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Model

Modeling Directions

Models Hierarchy: Four Layers Architecture

Meta Model

Modelling Language

  • UML

Model

Models in UML

Real World Thing

Usage

  • f the models

Language for defining languages

  • MOF

M

  • d

e l W

  • r

l d

Model

Model

MetaModel

conformsTo

Meta- MetaModel

conformsTo conformsTo 15 15

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Categories of Models in MDA

  • Computa;on'Independent'Model'8'CIM'

– Does'not'show'details'of'system'structure' – Independent'of'how'the'system'will'be'implemented' – ”domain'model”'or'”business'model”' – Bridges'the'gap'between' 'domain' ' '''''''experts'' ' ' ''and' 'design/development'''experts'

  • PlaHorm'Independent'Model'8'PIM'

– Structure,'func;onality'and'behavior'of'the'soIware'system'' built'using'OMG'standards'

  • PlaHorm'Specific'Model'8'PSM'

– Realiza;on'of'the'PIM'on'a'given'plaHorm/technology'

16 16

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

MDA Model Transformation : Initial Idea

MDA Tool ! Modelling components

! To build and maintain PIMs

! Code generation component

! To perform a series of transformations that map PIM elements to lements in PSMs

Transformation Engine

Platform Independent Model Transformation Rules Platform Description Model

PSM

Platform Specific Model

MDA Benefits

! Instead of writing PS-code, focus on developing models that are specific to application domain but independent of the platform ! A tool that implements MDA concept allows to

  • 1. produce models of

the application and business logic, and

  • 2. generate code for a target platform

by means of transformations

slide-5
SLIDE 5

17 17

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

MDA Model Transformation in General

M4 M2

18 18

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Non- SD Artefacts Software Development Models C o d e

Model Generation T1 Model transformation T2 Code Generation T3

MDA-based SD : Research Areas

T1 : Model generation – construting UMLmodels based on non-UML artefacts T2 : Model transformation – construting UML models based on UML artefacts T3 : Code generation – construction of the software based on UML artefacts Model Consistency Model Quality Quality in modeling

19 19

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Reasearch

20 20

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Empirical Methods in Engineering

  • Confirmation of (more or less accepted) hypotheses.

For example: object-orientation is good for reuse.

  • Evaluation of methods, models, languages and tools.

For example: whether Java produces higher quality code than C+

  • Identification of relationships.

For example: find relationship between fault-prone components and design concepts.

  • Validation
  • f models or measures.

For example: to validate a specific cost estimation model.

  • Understanding of methods, techniques and models.

For example: to understand relationship between inspections and test

  • Guidance

to help in management. For example: for migration from one technology to another.

slide-6
SLIDE 6

21 21

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Experiment

Experiment** Defini-on* Experiment'' Design' Experiment'' Data' Conclusions' Design Operation Analysis

Experiment Process

.

Basic characteristic

  • carefully planned and fully controlled,
  • should be replicable.

Experiment Model

Experiment

Independent Variables Dependent Variables

22 22

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Sample Experiment Design

  • Idead Behind Empirical Research

Investigate how stereotypes influence understanding of UML encoded artefacts

  • Method

– Experiment

  • Design

– Pair comparison on design artefacts – Subjects: SE students of different background – Input / Objects: (4 sets of) design artefacts (with 6 stereotypes) – Instruments (initial): questionares (on 4 types) of diagrams

  • Component Model & Collaboration Diagram
  • non stereotypes and stereotyped

– Output:

  • time
  • level of understanding

23 23

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Experiment Design - Instrumentation

  • Four set of artefacts

– Set A-S: stereotyped model A and description of stereotypes used – Set B-N: non-stereotyped model B, – Set A-N: non-stereotyped model A, – Set B-S: stereotyped model B and description of stereotypes.

  • Artifact set A-x describes a domain of radio transmissions.

– a class diagram describing different types of existing objects (radio station, retransmission station, different types of antennas, etc) – a corresponding object diagram describing one of possible situations (like sending a news program across a country).

  • Artifact set B-x describes a domain of GSM telephony.

– a class diagram describing different types of existing objects (mobile phone, BTS station, connection to conventional telephone network, etc) and – a corresponding object diagram describing one of possible situations of using the network (like making phone calls in a given time). Round'1' Round'2' Group'1' Set'A'–'S' Set'B'–'N' Group'2' Set'A'–'N' Set'B'8''S'

Experiment schema

The experiment – Short Lecture Introduction to stereotypes Not to telecommunication profile – Questionare Pilot study – 2 subject – Results Questionaires not at the same level

24 24

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Sample artefacts

Name Icon Description

<<sender>>

  • makes the class capable of sending messages

to classes stereotyped <<receiver>> or <<transmitter>>,

  • allows the class to send messages

without receiving them first,

  • prevents the class from receiving any message,

<<receiver>>

  • makes the class capable of receiving messages from

classes stereotyped <<sender>> or <<transmitter>>,

  • enables the class to receive a message

without sending it further,

  • prevents the class from sending any messages

to other classes,

<<transmitter>>

  • makes the class capable of receiving messages from

classes stereotyped <<sender>> or <<transmitter>> and sending the received messages to classes stereotyped <<receiver>> or <<transmitter>>,

  • any message that is sent from such a class

must be preceded by receiving of the message by this class

slide-7
SLIDE 7

25 25

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

  • NRESP'–'number'of'correct'respinses'

2 4 6 8 10 12 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 NRE SP0S NRE SP0N

  • Time spent

500 1000 1500 2000 2500 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 TSEC-S TSEC-N

26 26

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

  • Overall improvement

62% 0% 15% 15% 8% 0%

both improve NRESP improves TSEC the same TSEC improves; NRESP the same NRESP improves; TSEC deteriorates TSEC improves; NRESP deteriorates both deteriorate

  • Follow Up
  • Replication
  • Categorization
  • Teaching

27 27

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Education

28 28

L u d w i k K u z n i a r z

Federal University of Rio de Janeiro, October 2014

Best Practices

  • 'Tailoring'of'Development'Process'

– 'Defined'Artefacts'and'Crea;on'Procedures' – 'Effec;ve'Usage'of'Models'and'Modelling'–'MDA'conforment'

  • Consistency'Awareness'and'Management'
  • Research'elements'

– Par;cipa;on'8'Conduc;ng'Experiments'During'the'Course'

  • Passive'nd'Ac;ve'

– Transfer'of'Research'Results'

  • proper and effective usage of advanced UML elements – for instance where and how

introduce stereotypes, how they can help, what benefits can be obtained

  • usage of capabilities included in modelling tools
  • Industrial'and'Professional'Relevance'
  • Constant%Feedback%from%Par>cipants%