SlideShare a Scribd company logo
MDA Start Up
MDA presentation




Lai Duy Ha
Østfold University College
July 15, 2011
Outline
 My motivation
 Traditional Software Development
  problems
 Overview of MDA
 Inside MDA framework
 Apply MDA in practice
 Next steps
Motivation
 Boring code cause by:
   Follow templates or coding style guide.
   The consistent of the system.
   The benefit of maintaining.
 Disadvantage
   Reduce inspiration of developers.
   Silly copy/paste code.
Motivation




   Example of one normal module:
     Insert, update, delete record in one table.
     Each field has its own validation.
     Field’s presentation (type of control, row, column,….)
     etc…
   One system may contains more than 20+ modules like this
Motivation
 My approach:
   Using configuration data.
     Validation.
     Layout data.
   Using template file & complier to generate
    code.
Motivation
 Challenge
   The change of configuration data’s structure over
    time
   Need to re-construct the structure of configuration
    data
Motivation
 Should have the system approach to define
  the structure of configuration data as flexible
  as possible.
 Should analyze the problems at higher level.




                     MDA
Outline
 My motivation
 Traditional Software Development
  problems
 Overview of MDA
 Inside MDA framework
 Apply MDA in practice
 Next steps
Traditional Software
Development problems
            Most of the
             artifacts during the
             first three phases is
             just paper and
             nothing more.
            Productivity
            Maintenance
            Document
            Portability
Outline
 My motivation
 Traditional Software Development
  problems
 Overview of MDA
 Inside MDA framework
 Apply MDA in practice
 Next steps
Overview of MDA
 Model driven architecture: was
  launched by the OMG in 2001.
MDA development process
            The artifacts are
             formal models
             (which can be
             understood by
             computers)
            Models are the core
             at MDA
MDA Models
 Platform Independent Model (PIM)
   a high level abstraction.
   independent of any implementation
    technology.
 Platform Specific Model (PSM)
   tailored to specify system in terms of the
    implementation.
MDA transformation steps
Outline
 My motivation
 Traditional Software Development
  problems
 Overview of MDA
 Inside MDA framework
 Apply MDA in practice
 Next steps
MDA framework
 What is a model ???
   A model is always an abstraction of
    something that exists in reality.
   A model is different from the thing it
    models, e.g., details are left out or its
    size is different.
   A model can be used as an example to
    produce something that exists in reality.
 A model is a description of (part of) a system
  written in a well-defined language.
MDA framework
MDA framework
 Building blocks:
   A model is a description of a system.
      PIM
      PSM
   Well-defined language is used to write models.
   A transformation definition describes how a model
    in a source language can be transformed into a
    model in a target language. This also should be
    written by well-defined language.
   A transformation tool performs a transformation
    for a specific source model according to a
    transformation definition.
MDA framework
 Participants, tools, and artifacts in the MDA process
Outline
 My motivation
 Traditional Software Development
  problems
 Overview of MDA
 Inside MDA framework
 Apply MDA in practice
 Next steps
Apply MDA in practice
 Pros and cons to apply MDA in practice
Apply MDA in practice
 The impact of MDE activities on productivity and
  maintainability
Apply MDA in practice
 “...when you build an enterprise system, do you program
  all the low-level database stuff...the B+ trees... or do
  you define a data model and feed it into a database
  management system...are you constantly writing raw
  HTML or Java code or are you using tools that allow you
  to paint a dialog box and generate some code... for the
  front and back ends of our systems, we long ago
  abandoned low-level coding as a dominant abstraction
  of development...”
 “So the idea of applying a sort of methodology approach
  to modeling and code generation was really attractive –
  it seemed like it was an obvious next step to take in
  insuring quality and consistency and again not solving
  the same kinds of problems over and over again.”
Apply MDA in practice
 “So the question is, is somebody naturally inclined to
  think in terms of design or do they think more in terms
  of detail? ...I don’t think that the education that people
  get necessarily gets them thinking towards design”
 “There are people who you can’t teach this to because
  they think always in examples.”
Apply MDA in practice
 Conclusion
   productivity gains associated with MDE.
   the issue of abstraction
   the importance of training and education.
Outline
 My motivation
 Traditional Software Development
  problems
 Overview of MDA
 Inside MDA framework
 Apply MDA in practice
 Next steps
Next steps
 Name the project.
 Divide group:
     Define the requirements of our MDA framework.
     Choose a pilot project & model it.
     Analyze existing MDA frameworks.
     Research more about MDA, make the presentation.
 Next presentation
     More on Transformations.
     Metamodeling.
     Defining Your Own Transformations.
     The MDA Promise.
Reference
 Kleppe, A. G., J. Warmer, et al. 2003 MDA Explained:
  TheModel Driven Architecture: Practice and Promise,
  Addison-Wesley Longman Publishing Co., Inc.
 John Hutchinson, Jon Whittle, Mark Rouncefield and
  Steinar Kristoffersen 2011 Empirical Assessment of MDE
  in Industry, ACM.

More Related Content

What's hot

The Art of Visualising Software - Simon Brown
The Art of Visualising Software - Simon BrownThe Art of Visualising Software - Simon Brown
The Art of Visualising Software - Simon Brown
Valtech UK
 
A Lightweight MDD Process Applied in Small Projects
A Lightweight MDD Process Applied in Small ProjectsA Lightweight MDD Process Applied in Small Projects
A Lightweight MDD Process Applied in Small Projects
Gabor Guta
 
Slides chapter 12
Slides chapter 12Slides chapter 12
Slides chapter 12
Priyanka Shetty
 
Slides chapter 16
Slides chapter 16Slides chapter 16
Slides chapter 16
Priyanka Shetty
 
Why Design Patterns Are Important In Software Engineering
Why Design Patterns Are Important In Software EngineeringWhy Design Patterns Are Important In Software Engineering
Why Design Patterns Are Important In Software Engineering
Protelo, Inc.
 
Design engineering
Design engineeringDesign engineering
Design engineering
Preeti Mishra
 
Sda 1
Sda   1Sda   1
BIS09 Application Development - III
BIS09 Application Development - IIIBIS09 Application Development - III
BIS09 Application Development - III
Prithwis Mukerjee
 
Hci in software process
Hci in software processHci in software process
Hci in software process
rida mariam
 
15 implementing architectures
15 implementing architectures15 implementing architectures
15 implementing architecturesMajong DevJfu
 
Interaction Patterns In User Interfaces
Interaction Patterns In User InterfacesInteraction Patterns In User Interfaces
Interaction Patterns In User Interfaces
interactionpatterns.org
 
The Role of the Software Architect
The Role of the Software ArchitectThe Role of the Software Architect
The Role of the Software Architect
Hayim Makabee
 
A summary of software architecture guide
A summary of software architecture guideA summary of software architecture guide
A summary of software architecture guideTriet Ho
 
Patterns as Tools for User Interface Design
Patterns as Tools for User Interface DesignPatterns as Tools for User Interface Design
Patterns as Tools for User Interface Design
interactionpatterns.org
 
Iteration and prototyping
Iteration and prototypingIteration and prototyping
Iteration and prototyping
HafizMImran1
 
Model Driven Architectures
Model Driven ArchitecturesModel Driven Architectures
Model Driven Architectures
Lalit Kale
 

What's hot (19)

The Art of Visualising Software - Simon Brown
The Art of Visualising Software - Simon BrownThe Art of Visualising Software - Simon Brown
The Art of Visualising Software - Simon Brown
 
A Lightweight MDD Process Applied in Small Projects
A Lightweight MDD Process Applied in Small ProjectsA Lightweight MDD Process Applied in Small Projects
A Lightweight MDD Process Applied in Small Projects
 
Slides chapter 12
Slides chapter 12Slides chapter 12
Slides chapter 12
 
Slides chapter 16
Slides chapter 16Slides chapter 16
Slides chapter 16
 
Why Design Patterns Are Important In Software Engineering
Why Design Patterns Are Important In Software EngineeringWhy Design Patterns Are Important In Software Engineering
Why Design Patterns Are Important In Software Engineering
 
Design engineering
Design engineeringDesign engineering
Design engineering
 
Sda 1
Sda   1Sda   1
Sda 1
 
26 standards
26 standards26 standards
26 standards
 
Ch04
Ch04Ch04
Ch04
 
Ch05
Ch05Ch05
Ch05
 
BIS09 Application Development - III
BIS09 Application Development - IIIBIS09 Application Development - III
BIS09 Application Development - III
 
Hci in software process
Hci in software processHci in software process
Hci in software process
 
15 implementing architectures
15 implementing architectures15 implementing architectures
15 implementing architectures
 
Interaction Patterns In User Interfaces
Interaction Patterns In User InterfacesInteraction Patterns In User Interfaces
Interaction Patterns In User Interfaces
 
The Role of the Software Architect
The Role of the Software ArchitectThe Role of the Software Architect
The Role of the Software Architect
 
A summary of software architecture guide
A summary of software architecture guideA summary of software architecture guide
A summary of software architecture guide
 
Patterns as Tools for User Interface Design
Patterns as Tools for User Interface DesignPatterns as Tools for User Interface Design
Patterns as Tools for User Interface Design
 
Iteration and prototyping
Iteration and prototypingIteration and prototyping
Iteration and prototyping
 
Model Driven Architectures
Model Driven ArchitecturesModel Driven Architectures
Model Driven Architectures
 

Viewers also liked

Wiki spaces.powerpoint6.2012
Wiki spaces.powerpoint6.2012Wiki spaces.powerpoint6.2012
Wiki spaces.powerpoint6.2012
Janelle McIntosh
 
Wound care-diabetic-ulcers
Wound care-diabetic-ulcersWound care-diabetic-ulcers
Wound care-diabetic-ulcersNaviin Kumar
 
Lab 3 final - halloween cake--_alan's_birthday_(compressed_jpegs)_and_sound[1]
Lab 3   final - halloween cake--_alan's_birthday_(compressed_jpegs)_and_sound[1]Lab 3   final - halloween cake--_alan's_birthday_(compressed_jpegs)_and_sound[1]
Lab 3 final - halloween cake--_alan's_birthday_(compressed_jpegs)_and_sound[1]sakglass
 
Lab 3 final - halloween cake--_alan's_birthday_(compressed_jpegs)_and_sound[1]
Lab 3   final - halloween cake--_alan's_birthday_(compressed_jpegs)_and_sound[1]Lab 3   final - halloween cake--_alan's_birthday_(compressed_jpegs)_and_sound[1]
Lab 3 final - halloween cake--_alan's_birthday_(compressed_jpegs)_and_sound[1]sakglass
 
Baja tulangan beton
Baja tulangan betonBaja tulangan beton
Baja tulangan betonAchmad Azis
 
C4 f training 1
C4 f training 1C4 f training 1
C4 f training 1
Jan Smith
 

Viewers also liked (7)

Wiki spaces.powerpoint6.2012
Wiki spaces.powerpoint6.2012Wiki spaces.powerpoint6.2012
Wiki spaces.powerpoint6.2012
 
Wound care-diabetic-ulcers
Wound care-diabetic-ulcersWound care-diabetic-ulcers
Wound care-diabetic-ulcers
 
Lab 3 final - halloween cake--_alan's_birthday_(compressed_jpegs)_and_sound[1]
Lab 3   final - halloween cake--_alan's_birthday_(compressed_jpegs)_and_sound[1]Lab 3   final - halloween cake--_alan's_birthday_(compressed_jpegs)_and_sound[1]
Lab 3 final - halloween cake--_alan's_birthday_(compressed_jpegs)_and_sound[1]
 
Formateo
FormateoFormateo
Formateo
 
Lab 3 final - halloween cake--_alan's_birthday_(compressed_jpegs)_and_sound[1]
Lab 3   final - halloween cake--_alan's_birthday_(compressed_jpegs)_and_sound[1]Lab 3   final - halloween cake--_alan's_birthday_(compressed_jpegs)_and_sound[1]
Lab 3 final - halloween cake--_alan's_birthday_(compressed_jpegs)_and_sound[1]
 
Baja tulangan beton
Baja tulangan betonBaja tulangan beton
Baja tulangan beton
 
C4 f training 1
C4 f training 1C4 f training 1
C4 f training 1
 

Similar to Mda start up

An introduction to the MDA
An introduction to the MDAAn introduction to the MDA
An introduction to the MDALai Ha
 
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)
Agile and Modeling / MDE : friends or foes? (Agile Tour  Nantes 2010)Agile and Modeling / MDE : friends or foes? (Agile Tour  Nantes 2010)
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)
Jordi Cabot
 
04 designing architectures
04 designing architectures04 designing architectures
04 designing architecturesMajong DevJfu
 
SOFTWARE DEVELOPMENT AND PROCESS MODELS.pptx
SOFTWARE DEVELOPMENT AND PROCESS MODELS.pptxSOFTWARE DEVELOPMENT AND PROCESS MODELS.pptx
SOFTWARE DEVELOPMENT AND PROCESS MODELS.pptx
SanthanalakshmiSelva2
 
DDD
DDDDDD
MODEL DRIVEN DEVELOPMENT (1).pptx
MODEL DRIVEN DEVELOPMENT (1).pptxMODEL DRIVEN DEVELOPMENT (1).pptx
MODEL DRIVEN DEVELOPMENT (1).pptx
pawan745387
 
Software Architecture for Agile Development
Software Architecture for Agile DevelopmentSoftware Architecture for Agile Development
Software Architecture for Agile Development
Hayim Makabee
 
Design final
Design finalDesign final
Design final
Indu Sharma Bhardwaj
 
Lecture2 2
Lecture2 2Lecture2 2
Lecture2 2
soloeng
 
OOSAD Chapter 6 Object Oriented Design.pptx
OOSAD Chapter 6 Object Oriented Design.pptxOOSAD Chapter 6 Object Oriented Design.pptx
OOSAD Chapter 6 Object Oriented Design.pptx
BereketMuniye
 
Productivity mdd mdb_code_centric
Productivity mdd mdb_code_centricProductivity mdd mdb_code_centric
Productivity mdd mdb_code_centric
Santiago Meliá
 
reaserch ppt.pptx
reaserch ppt.pptxreaserch ppt.pptx
reaserch ppt.pptx
BinyamBekele3
 
Transition to XML
Transition to XMLTransition to XML
Transition to XML
Scriptorium Publishing
 
System Development Overview Assignment 3
System Development Overview Assignment 3System Development Overview Assignment 3
System Development Overview Assignment 3
Ashley Fisher
 
NEXiDA at OMG June 2009
NEXiDA at OMG June 2009NEXiDA at OMG June 2009
NEXiDA at OMG June 2009
Claudio Rubbiani
 
Introduction to MDE
Introduction to MDEIntroduction to MDE
Introduction to MDE
Fáber D. Giraldo
 
No more Three Tier - A path to a better code for Cloud and Azure
No more Three Tier - A path to a better code for Cloud and AzureNo more Three Tier - A path to a better code for Cloud and Azure
No more Three Tier - A path to a better code for Cloud and Azure
Marco Parenzan
 
Innovation in model driven software
Innovation in model driven softwareInnovation in model driven software
Innovation in model driven software
Sagi Schliesser
 

Similar to Mda start up (20)

An introduction to the MDA
An introduction to the MDAAn introduction to the MDA
An introduction to the MDA
 
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)
Agile and Modeling / MDE : friends or foes? (Agile Tour  Nantes 2010)Agile and Modeling / MDE : friends or foes? (Agile Tour  Nantes 2010)
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)
 
04 designing architectures
04 designing architectures04 designing architectures
04 designing architectures
 
SOFTWARE DEVELOPMENT AND PROCESS MODELS.pptx
SOFTWARE DEVELOPMENT AND PROCESS MODELS.pptxSOFTWARE DEVELOPMENT AND PROCESS MODELS.pptx
SOFTWARE DEVELOPMENT AND PROCESS MODELS.pptx
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
 
DDD
DDDDDD
DDD
 
MODEL DRIVEN DEVELOPMENT (1).pptx
MODEL DRIVEN DEVELOPMENT (1).pptxMODEL DRIVEN DEVELOPMENT (1).pptx
MODEL DRIVEN DEVELOPMENT (1).pptx
 
Software Architecture for Agile Development
Software Architecture for Agile DevelopmentSoftware Architecture for Agile Development
Software Architecture for Agile Development
 
Design final
Design finalDesign final
Design final
 
Lecture2 2
Lecture2 2Lecture2 2
Lecture2 2
 
OOSAD Chapter 6 Object Oriented Design.pptx
OOSAD Chapter 6 Object Oriented Design.pptxOOSAD Chapter 6 Object Oriented Design.pptx
OOSAD Chapter 6 Object Oriented Design.pptx
 
Productivity mdd mdb_code_centric
Productivity mdd mdb_code_centricProductivity mdd mdb_code_centric
Productivity mdd mdb_code_centric
 
reaserch ppt.pptx
reaserch ppt.pptxreaserch ppt.pptx
reaserch ppt.pptx
 
Transition to XML
Transition to XMLTransition to XML
Transition to XML
 
System Development Overview Assignment 3
System Development Overview Assignment 3System Development Overview Assignment 3
System Development Overview Assignment 3
 
NEXiDA at OMG June 2009
NEXiDA at OMG June 2009NEXiDA at OMG June 2009
NEXiDA at OMG June 2009
 
Cnpm bkdn
Cnpm bkdnCnpm bkdn
Cnpm bkdn
 
Introduction to MDE
Introduction to MDEIntroduction to MDE
Introduction to MDE
 
No more Three Tier - A path to a better code for Cloud and Azure
No more Three Tier - A path to a better code for Cloud and AzureNo more Three Tier - A path to a better code for Cloud and Azure
No more Three Tier - A path to a better code for Cloud and Azure
 
Innovation in model driven software
Innovation in model driven softwareInnovation in model driven software
Innovation in model driven software
 

Recently uploaded

From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 

Recently uploaded (20)

From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 

Mda start up

  • 1. MDA Start Up MDA presentation Lai Duy Ha Østfold University College July 15, 2011
  • 2. Outline  My motivation  Traditional Software Development problems  Overview of MDA  Inside MDA framework  Apply MDA in practice  Next steps
  • 3. Motivation  Boring code cause by:  Follow templates or coding style guide.  The consistent of the system.  The benefit of maintaining.  Disadvantage  Reduce inspiration of developers.  Silly copy/paste code.
  • 4. Motivation  Example of one normal module:  Insert, update, delete record in one table.  Each field has its own validation.  Field’s presentation (type of control, row, column,….)  etc…  One system may contains more than 20+ modules like this
  • 5. Motivation  My approach:  Using configuration data.  Validation.  Layout data.  Using template file & complier to generate code.
  • 6. Motivation  Challenge  The change of configuration data’s structure over time  Need to re-construct the structure of configuration data
  • 7. Motivation  Should have the system approach to define the structure of configuration data as flexible as possible.  Should analyze the problems at higher level. MDA
  • 8. Outline  My motivation  Traditional Software Development problems  Overview of MDA  Inside MDA framework  Apply MDA in practice  Next steps
  • 9. Traditional Software Development problems  Most of the artifacts during the first three phases is just paper and nothing more.  Productivity  Maintenance  Document  Portability
  • 10. Outline  My motivation  Traditional Software Development problems  Overview of MDA  Inside MDA framework  Apply MDA in practice  Next steps
  • 11. Overview of MDA  Model driven architecture: was launched by the OMG in 2001.
  • 12. MDA development process  The artifacts are formal models (which can be understood by computers)  Models are the core at MDA
  • 13. MDA Models  Platform Independent Model (PIM)  a high level abstraction.  independent of any implementation technology.  Platform Specific Model (PSM)  tailored to specify system in terms of the implementation.
  • 15. Outline  My motivation  Traditional Software Development problems  Overview of MDA  Inside MDA framework  Apply MDA in practice  Next steps
  • 16. MDA framework  What is a model ???  A model is always an abstraction of something that exists in reality.  A model is different from the thing it models, e.g., details are left out or its size is different.  A model can be used as an example to produce something that exists in reality.  A model is a description of (part of) a system written in a well-defined language.
  • 18. MDA framework  Building blocks:  A model is a description of a system.  PIM  PSM  Well-defined language is used to write models.  A transformation definition describes how a model in a source language can be transformed into a model in a target language. This also should be written by well-defined language.  A transformation tool performs a transformation for a specific source model according to a transformation definition.
  • 19. MDA framework  Participants, tools, and artifacts in the MDA process
  • 20. Outline  My motivation  Traditional Software Development problems  Overview of MDA  Inside MDA framework  Apply MDA in practice  Next steps
  • 21. Apply MDA in practice  Pros and cons to apply MDA in practice
  • 22. Apply MDA in practice  The impact of MDE activities on productivity and maintainability
  • 23. Apply MDA in practice  “...when you build an enterprise system, do you program all the low-level database stuff...the B+ trees... or do you define a data model and feed it into a database management system...are you constantly writing raw HTML or Java code or are you using tools that allow you to paint a dialog box and generate some code... for the front and back ends of our systems, we long ago abandoned low-level coding as a dominant abstraction of development...”  “So the idea of applying a sort of methodology approach to modeling and code generation was really attractive – it seemed like it was an obvious next step to take in insuring quality and consistency and again not solving the same kinds of problems over and over again.”
  • 24. Apply MDA in practice  “So the question is, is somebody naturally inclined to think in terms of design or do they think more in terms of detail? ...I don’t think that the education that people get necessarily gets them thinking towards design”  “There are people who you can’t teach this to because they think always in examples.”
  • 25. Apply MDA in practice  Conclusion  productivity gains associated with MDE.  the issue of abstraction  the importance of training and education.
  • 26. Outline  My motivation  Traditional Software Development problems  Overview of MDA  Inside MDA framework  Apply MDA in practice  Next steps
  • 27. Next steps  Name the project.  Divide group:  Define the requirements of our MDA framework.  Choose a pilot project & model it.  Analyze existing MDA frameworks.  Research more about MDA, make the presentation.  Next presentation  More on Transformations.  Metamodeling.  Defining Your Own Transformations.  The MDA Promise.
  • 28. Reference  Kleppe, A. G., J. Warmer, et al. 2003 MDA Explained: TheModel Driven Architecture: Practice and Promise, Addison-Wesley Longman Publishing Co., Inc.  John Hutchinson, Jon Whittle, Mark Rouncefield and Steinar Kristoffersen 2011 Empirical Assessment of MDE in Industry, ACM.