Formal Techniques in Software Engineering 3de BAC Informatica - PowerPoint PPT Presentation

1 / 14
About This Presentation
Title:

Formal Techniques in Software Engineering 3de BAC Informatica

Description:

Based on 'MDA Explained The Model Driven Architecture: Practice and Promise' ... Requires control over which rules to apply. Transformation Rule ... – PowerPoint PPT presentation

Number of Views:47
Avg rating:3.0/5.0
Slides: 15
Provided by: serged3
Category:

less

Transcript and Presenter's Notes

Title: Formal Techniques in Software Engineering 3de BAC Informatica


1
Formal Techniques in Software Engineering3de BAC
Informatica
  • Chapter 1
  • Introduction

2
Contents
  • Manual Coding vs. Code Generation
  • MDA vs. MDE
  • Terminology
  • Transformations
  • Tool architecture
  • Properties
  • Meta Modeling
  • 4-layer metamodeling architecture

Based on "MDA Explained The Model Driven
Architecture Practice and Promise" (Anneke
Kleppe, Jos Warmer and Wim Bast)
3
Manual Coding
  • Manual steps
  • shortcuts
  • Traceability ?
  • Platform
  • Multiple targets
  • Rapidly evolving
  • Portability ?
  • Interoperability ?

4
Code Generation
requirements
analysis
design
  • Automatic
  • parameters
  • currentlysemi-automatic

coding
  • In theory
  • Traceability
  • Portability
  • Interoperability

testing
deployment
5
Target Software Systems
  • Enterprise Information System
  • reusable components
  • customer database, order-processing, bookkeeping,
  • parametrisation !
  • large scale
  • interoperability
  • Web-based systems
  • rapidly evolving targets
  • portability

6
MDA vs. MDE
  • MDA
  • Model Driven Architecture
  • Industrial Standard
  • Object Management Group
  • OMG tool vendor organization !
  • UML at the core
  • standardization
  • PIM
  • Platform independent model
  • PSM
  • Platform specific model
  • MDE
  • Model Driven Engineering
  • Community of model-centric development
  • Model can be any formalism
  • classes, entity-relationship
  • petri-nets, state machines
  • ...
  • Also verification
  • Transformation can be anything
  • Rewrite rules
  • Graph rewriting

7
Model
  • "Model" is overloaded
  • example for artist
  • person posing for artist
  • person showing clothes (catwalk)
  • replica of item on smaller scale (miniature)
  • drawing of an item(design of a house, ...)
  • mathematical formulas for prediction/estimation
  • All models share properties
  • an abstraction of a subject that exists in
    reality
  • model ? the subject it models
  • leave out details, scale, ...
  • model can be used to produce something in reality
  • especially in engineering disciplines

8
Software Model
  • In software engineering
  • model abstraction of (software) system
  • description of system in language with
    well-defined syntax and well-defined semantics
  • Well-defined ? Suitable for automated
    interpretation

lang- uage
is written in
describes
model
system
9
Transformation
  • Transformation
  • automatic generation of target model from a
    source model, accoding to a transformation
    definition
  • Transformation Definition
  • a set of transformation rules that describe how
    to translate a model in a source language into a
    model in the target language
  • Requires control over which rules to apply
  • Transformation Rule
  • a description of how to map one or more
    constructs in the source language into one or
    more constructs in the target language

10
Tool Architecture
model editor
model validator
repository
models
model transformer
transformation definitions
code parser
code files
transformation definition editor
code editor
code generator
11
Transformations Properties
  • Control
  • conditions, looping
  • parameters
  • prompting the user
  • Traceability
  • generate links
  • source to target
  • target to source
  • ripple changes over traceability links
  • Incremental Consistency
  • small changegt small regeneration
  • Bidirectionality
  • forward and reverse generation
  • code reverse engineering

12
Meta Modeling
  • model written in language with well-defined
    syntax and semantics
  • suitable for automated interpretation ?gt model
    transformation !

meta lang- uage
is written in
meta model
is defined by
is written in
system
describes
13
The 4-layer metamodel architecture
14
The MDA Framework
meta language
extends
transformation definition language
is written in
is written in
is written in
transformation definition
is written in
is written in
is defined by
model transformer
Write a Comment
User Comments (0)
About PowerShow.com