SlideShare ist ein Scribd-Unternehmen logo
1 von 16
Introducing
Eclipse MoDisco
(Model Driven) Reverse Engineering
Hugo Bruneliere
AtlanMod Team (Inria, Mines Nantes & LINA)

© AtlanMod - atlanmod-contact@mines-nantes.fr

1
Different Possible
Reverse Engineering Scenarios
Support for multiple
scenarios/results

Support for multiple
legacy technologies

Transformations

‱Documentation
‱Impact analysis

Configuration
files
Other sources

Models of the
system(s)

Generators

Databases

Discoverers

Source code

MoDisco

‱Models
‱Viewpoints

‱Upgrade
‱Migration

‱Metrics
‱Quality Assurance

Eclipse Modeling

© AtlanMod - atlanmod-contact@mines-nantes.fr

2
Model Driven Reverse Engineering
(MDRE) Approach
 Use models to represent and manipulate
artifacts from existing systems
Existing
Legacy System

Software artifacts :
- source code
- configuration files
- tests
- database
-


Discover

Models

Understand

Viewpoints

© AtlanMod - atlanmod-contact@mines-nantes.fr

Transform

New
Software Artifacts

3
Model Driven Reverse Engineering
(MDRE) Approach

 Discover

Java metamodel
MoDisco
Java
Discoverer

Java source code

conforms to

Java model
JUnit3

JUnit3 code

 Navigate
© AtlanMod - atlanmod-contact@mines-nantes.fr

MoDisco
Model Browser

4
Model Driven Reverse Engineering
(MDRE) Approach

 Understand
Java model
JUnit3

Java

JUnit3

Customization

MoDisco
ModelBrowser

Facets
Models uses

 Extract
© AtlanMod - atlanmod-contact@mines-nantes.fr

JUnit3
Queries

5
Model Driven Reverse Engineering
(MDRE) Approach

 Transform
JUnit3 to JUnit4
M2M Transformation

Java model
JUnit3

Java model
JUnit4

JUnit3
Facets

 Regenerate
© AtlanMod - atlanmod-contact@mines-nantes.fr

Java source code
JUnit4 code

6
Eclipse MoDisco
An Eclipse framework to support
the elaboration of
Model Driven Reverse Engineering
solutions
 Official Eclipse Modeling project
 Open-source (EPL)
 Based on other Eclipse Modeling projects
 Released with Helios, Indigo, Juno, Kepler, 


 Supported by the OMG
 Reference implementations for several ADM
(Architecture Driven Modernization) standards:
 KDM (Knowledge Discovery Metamodel)
 SMM (Structured Metrics Metamodel)
 ASTM (Abstract Syntax Tree Metamodel)
© AtlanMod - atlanmod-contact@mines-nantes.fr

7
MoDisco: Global Architecture
Java

JSP

XML

Metamodel
Discoverer
Generator
Transfo. to KDM/UML

Metamodel
Discoverer
Generator




Metamodel
Discoverer
Generator

MoDisco – “Technologies” layer
Discovery
Manager, Workflow

Plug and orchestrate
transformations

Model
Browser

Navigation through
complex models

Querying
& Customization

Definition of
specific viewpoints

OMG/ADM
Standards

Pivot metamodels
(KDM, ASTM, SMM)

MoDisco – “Infrastructure” layer
Eclipse Modeling projects
© AtlanMod - atlanmod-contact@mines-nantes.fr

8
MoDisco Model Browser
 A feature-rich Ecore model browser
 Generic
(metamodelindependent)
 Customizable
(display, fonts,
colors, icons, et
c.)
 Advanced
navigation &
search
capabilities
© AtlanMod - atlanmod-contact@mines-nantes.fr

9
MoDisco Discoverer Manager
 Define and register model discoverers
– Support for different legacy technologies

© AtlanMod - atlanmod-contact@mines-nantes.fr

10
MoDisco Workflow
 Specify reverse engineering processes
– Chain discoverers, transformations & generations

© AtlanMod - atlanmod-contact@mines-nantes.fr

11
MoDisco Support for Java
 Technology-specific components for Java
 Complete
metamodel
 Corresponding
discoverer &
generator

 Transformation
to KDM
 Advanced
composite
discoverer
(Java + KDM)
© AtlanMod - atlanmod-contact@mines-nantes.fr

12
MoDisco Support for JEE
 Technology-specific components for JEE
 Complete JSP
metamodel &
corresponding
discoverer
 Discoverers for
web.xml & ejbjar.xml files
(based on XML)
+ generic
framework
 JEE queries &
facets (based
on Java)
© AtlanMod - atlanmod-contact@mines-nantes.fr

13
MoDisco Support for XML
 Technology-specific components for XML
 Generic support
(XSD- or DTDindependent)
 Complete
metamodel
(based W3C
specification)
 Corresponding
discoverer

© AtlanMod - atlanmod-contact@mines-nantes.fr

14
MoDisco in Action


Click here
to run the
demo


© AtlanMod - atlanmod-contact@mines-nantes.fr

15
Thanks for your attention!
 Useful links
– Eclipse Modeling Project
 http://eclipse.org/modeling/

– Eclipse MoDisco project
 http://www.eclipse.org/MoDisco

– Eclipse EMF Facet project
 http://www.eclipse.org/facet/

 AtlanMod Contact
– Hugo Bruneliere
 R&D engineer and MoDisco project co-leader
 hugo.bruneliere@inria.fr

© AtlanMod - atlanmod-contact@mines-nantes.fr

16

Weitere Àhnliche Inhalte

Was ist angesagt?

JACK intelligent Agents - an framework overview
JACK intelligent Agents - an framework overviewJACK intelligent Agents - an framework overview
JACK intelligent Agents - an framework overviewPedro Valente
 
Sikuli script
Sikuli scriptSikuli script
Sikuli scriptSnehal Patel
 
Object oriented-systems-development-life-cycle ppt
Object oriented-systems-development-life-cycle pptObject oriented-systems-development-life-cycle ppt
Object oriented-systems-development-life-cycle pptKunal Kishor Nirala
 
Postgresql Federation
Postgresql FederationPostgresql Federation
Postgresql FederationJim Mlodgenski
 
Object oriented analysis and design
Object oriented analysis and designObject oriented analysis and design
Object oriented analysis and designnaveed428
 
Generic Software Process Models
Generic Software Process ModelsGeneric Software Process Models
Generic Software Process ModelsEducation Front
 
COCOMO model
COCOMO modelCOCOMO model
COCOMO modelhajra azam
 
Waterfall Methodology
Waterfall MethodologyWaterfall Methodology
Waterfall MethodologyNehaHaroon1
 
V model presentation
V model presentationV model presentation
V model presentationNiat Murad
 
3-CMMI Continuous And Staged
3-CMMI Continuous And Staged3-CMMI Continuous And Staged
3-CMMI Continuous And StagedChris Lazaris
 

Was ist angesagt? (13)

Design for Testability
Design for TestabilityDesign for Testability
Design for Testability
 
JACK intelligent Agents - an framework overview
JACK intelligent Agents - an framework overviewJACK intelligent Agents - an framework overview
JACK intelligent Agents - an framework overview
 
Sikuli script
Sikuli scriptSikuli script
Sikuli script
 
Object oriented-systems-development-life-cycle ppt
Object oriented-systems-development-life-cycle pptObject oriented-systems-development-life-cycle ppt
Object oriented-systems-development-life-cycle ppt
 
Postgresql Federation
Postgresql FederationPostgresql Federation
Postgresql Federation
 
Object oriented analysis and design
Object oriented analysis and designObject oriented analysis and design
Object oriented analysis and design
 
Generic Software Process Models
Generic Software Process ModelsGeneric Software Process Models
Generic Software Process Models
 
COCOMO model
COCOMO modelCOCOMO model
COCOMO model
 
Waterfallmodel
WaterfallmodelWaterfallmodel
Waterfallmodel
 
Waterfall Methodology
Waterfall MethodologyWaterfall Methodology
Waterfall Methodology
 
V model presentation
V model presentationV model presentation
V model presentation
 
3-CMMI Continuous And Staged
3-CMMI Continuous And Staged3-CMMI Continuous And Staged
3-CMMI Continuous And Staged
 
Testing tools
Testing toolsTesting tools
Testing tools
 

Andere mochten auch

Eclipse Modeling & MoDisco - An Introduction to Modeling and (Model Driven) R...
Eclipse Modeling & MoDisco - An Introduction to Modeling and (Model Driven) R...Eclipse Modeling & MoDisco - An Introduction to Modeling and (Model Driven) R...
Eclipse Modeling & MoDisco - An Introduction to Modeling and (Model Driven) R...Hugo Bruneliere
 
MoDisco & ATL - Eclipse DemoCamp Indigo 2011 in Nantes
MoDisco & ATL - Eclipse DemoCamp Indigo 2011 in NantesMoDisco & ATL - Eclipse DemoCamp Indigo 2011 in Nantes
MoDisco & ATL - Eclipse DemoCamp Indigo 2011 in NantesHugo Bruneliere
 
MoDisco at Eclipse Day Paris 2010
MoDisco at Eclipse Day Paris 2010MoDisco at Eclipse Day Paris 2010
MoDisco at Eclipse Day Paris 2010fmadiot
 
Discover models out of existing applications with Eclipse/MoDisco
Discover models out of existing applications with Eclipse/MoDiscoDiscover models out of existing applications with Eclipse/MoDisco
Discover models out of existing applications with Eclipse/MoDiscofmadiot
 
Model-based Analysis of Java EE Web Security Configurations - Mise 2016
Model-based Analysis of Java EE Web Security Configurations - Mise 2016Model-based Analysis of Java EE Web Security Configurations - Mise 2016
Model-based Analysis of Java EE Web Security Configurations - Mise 2016Jordi Cabot
 
Mia-Software at Eclipse Modeling Symposium 2010
Mia-Software at Eclipse Modeling Symposium 2010Mia-Software at Eclipse Modeling Symposium 2010
Mia-Software at Eclipse Modeling Symposium 2010fmadiot
 
ARTIST Project general presentation
ARTIST Project general presentationARTIST Project general presentation
ARTIST Project general presentationIlias Spais
 
fREX: fUML-based Reverse Engineering of Executable Behavior for Software Dyna...
fREX: fUML-based Reverse Engineering of Executable Behavior for Software Dyna...fREX: fUML-based Reverse Engineering of Executable Behavior for Software Dyna...
fREX: fUML-based Reverse Engineering of Executable Behavior for Software Dyna...Hugo Bruneliere
 
Apex Code Analysis Using the Tooling API and Canvas
Apex Code Analysis Using the Tooling API and CanvasApex Code Analysis Using the Tooling API and Canvas
Apex Code Analysis Using the Tooling API and CanvasSalesforce Developers
 
Bancassurance Survey 2015 Kenya, Lloyds Africa Markets:
Bancassurance Survey 2015 Kenya, Lloyds Africa Markets:Bancassurance Survey 2015 Kenya, Lloyds Africa Markets:
Bancassurance Survey 2015 Kenya, Lloyds Africa Markets:LloydsResearch
 
A Taxonomy for Program Metamodels in Program Reverse Engineering
A Taxonomy for Program Metamodels in Program Reverse EngineeringA Taxonomy for Program Metamodels in Program Reverse Engineering
A Taxonomy for Program Metamodels in Program Reverse EngineeringHironori Washizaki
 
Bancassurance
BancassuranceBancassurance
Bancassurancedrbkrishna
 
CREATING AN AGILE BANCASSURANCE PLATFORM
CREATING AN AGILE BANCASSURANCE PLATFORMCREATING AN AGILE BANCASSURANCE PLATFORM
CREATING AN AGILE BANCASSURANCE PLATFORMAjay Kukreja
 
The role of insurance intermediaries
The role of insurance intermediariesThe role of insurance intermediaries
The role of insurance intermediariesRADHIKA GUPTA
 
Transform your Insurance Processes with BPM and Decision Management
Transform your Insurance Processes with BPM and Decision ManagementTransform your Insurance Processes with BPM and Decision Management
Transform your Insurance Processes with BPM and Decision ManagementIBM WebSphereIndia
 
Enterprise Architecture Governance for an Enterprise Transformation Journey: ...
Enterprise Architecture Governance for an Enterprise Transformation Journey: ...Enterprise Architecture Governance for an Enterprise Transformation Journey: ...
Enterprise Architecture Governance for an Enterprise Transformation Journey: ...Marcelo SĂĄvio
 
Programming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and AlfProgramming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and AlfEd Seidewitz
 
LA BANCASSURANCE
LA  BANCASSURANCELA  BANCASSURANCE
LA BANCASSURANCEbouchra89
 

Andere mochten auch (20)

Eclipse Modeling & MoDisco - An Introduction to Modeling and (Model Driven) R...
Eclipse Modeling & MoDisco - An Introduction to Modeling and (Model Driven) R...Eclipse Modeling & MoDisco - An Introduction to Modeling and (Model Driven) R...
Eclipse Modeling & MoDisco - An Introduction to Modeling and (Model Driven) R...
 
MoDisco & ATL - Eclipse DemoCamp Indigo 2011 in Nantes
MoDisco & ATL - Eclipse DemoCamp Indigo 2011 in NantesMoDisco & ATL - Eclipse DemoCamp Indigo 2011 in Nantes
MoDisco & ATL - Eclipse DemoCamp Indigo 2011 in Nantes
 
MoDisco at Eclipse Day Paris 2010
MoDisco at Eclipse Day Paris 2010MoDisco at Eclipse Day Paris 2010
MoDisco at Eclipse Day Paris 2010
 
Discover models out of existing applications with Eclipse/MoDisco
Discover models out of existing applications with Eclipse/MoDiscoDiscover models out of existing applications with Eclipse/MoDisco
Discover models out of existing applications with Eclipse/MoDisco
 
Model-based Analysis of Java EE Web Security Configurations - Mise 2016
Model-based Analysis of Java EE Web Security Configurations - Mise 2016Model-based Analysis of Java EE Web Security Configurations - Mise 2016
Model-based Analysis of Java EE Web Security Configurations - Mise 2016
 
Mia-Software at Eclipse Modeling Symposium 2010
Mia-Software at Eclipse Modeling Symposium 2010Mia-Software at Eclipse Modeling Symposium 2010
Mia-Software at Eclipse Modeling Symposium 2010
 
ARTIST Project general presentation
ARTIST Project general presentationARTIST Project general presentation
ARTIST Project general presentation
 
Insurance
InsuranceInsurance
Insurance
 
fREX: fUML-based Reverse Engineering of Executable Behavior for Software Dyna...
fREX: fUML-based Reverse Engineering of Executable Behavior for Software Dyna...fREX: fUML-based Reverse Engineering of Executable Behavior for Software Dyna...
fREX: fUML-based Reverse Engineering of Executable Behavior for Software Dyna...
 
Apex Code Analysis Using the Tooling API and Canvas
Apex Code Analysis Using the Tooling API and CanvasApex Code Analysis Using the Tooling API and Canvas
Apex Code Analysis Using the Tooling API and Canvas
 
Bancassurance Survey 2015 Kenya, Lloyds Africa Markets:
Bancassurance Survey 2015 Kenya, Lloyds Africa Markets:Bancassurance Survey 2015 Kenya, Lloyds Africa Markets:
Bancassurance Survey 2015 Kenya, Lloyds Africa Markets:
 
A Taxonomy for Program Metamodels in Program Reverse Engineering
A Taxonomy for Program Metamodels in Program Reverse EngineeringA Taxonomy for Program Metamodels in Program Reverse Engineering
A Taxonomy for Program Metamodels in Program Reverse Engineering
 
Bancassurance
BancassuranceBancassurance
Bancassurance
 
CREATING AN AGILE BANCASSURANCE PLATFORM
CREATING AN AGILE BANCASSURANCE PLATFORMCREATING AN AGILE BANCASSURANCE PLATFORM
CREATING AN AGILE BANCASSURANCE PLATFORM
 
The role of insurance intermediaries
The role of insurance intermediariesThe role of insurance intermediaries
The role of insurance intermediaries
 
Transform your Insurance Processes with BPM and Decision Management
Transform your Insurance Processes with BPM and Decision ManagementTransform your Insurance Processes with BPM and Decision Management
Transform your Insurance Processes with BPM and Decision Management
 
Enterprise Architecture Governance for an Enterprise Transformation Journey: ...
Enterprise Architecture Governance for an Enterprise Transformation Journey: ...Enterprise Architecture Governance for an Enterprise Transformation Journey: ...
Enterprise Architecture Governance for an Enterprise Transformation Journey: ...
 
Programming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and AlfProgramming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and Alf
 
Bancassurance
BancassuranceBancassurance
Bancassurance
 
LA BANCASSURANCE
LA  BANCASSURANCELA  BANCASSURANCE
LA BANCASSURANCE
 

Ähnlich wie Introducing Eclipse MoDisco

MoDisco Poster EclipseCon 2009
MoDisco Poster EclipseCon 2009MoDisco Poster EclipseCon 2009
MoDisco Poster EclipseCon 2009fmadiot
 
Spy On Your Models, Standard talk at EclipseCon 2011
Spy On Your Models, Standard talk at EclipseCon 2011Spy On Your Models, Standard talk at EclipseCon 2011
Spy On Your Models, Standard talk at EclipseCon 2011Hugo Bruneliere
 
Software Archaeology - Raiders of the Lost Code (short)
Software Archaeology - Raiders of the Lost Code (short)Software Archaeology - Raiders of the Lost Code (short)
Software Archaeology - Raiders of the Lost Code (short)Lars Martin
 
A Model-Driven Approach to Generate External DSLs from Object-Oriented APIs
A Model-Driven Approach to Generate External DSLs from Object-Oriented APIsA Model-Driven Approach to Generate External DSLs from Object-Oriented APIs
A Model-Driven Approach to Generate External DSLs from Object-Oriented APIsValerio Cosentino
 
Our research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software EngineeringOur research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software EngineeringJordi Cabot
 
MoDisco Eclipse-OMG Symp 2010
MoDisco Eclipse-OMG Symp 2010MoDisco Eclipse-OMG Symp 2010
MoDisco Eclipse-OMG Symp 2010fmadiot
 
On Modeling and Testing When Unpredictability Becomes the Pattern (April 2nd,...
On Modeling and Testing When Unpredictability Becomes the Pattern (April 2nd,...On Modeling and Testing When Unpredictability Becomes the Pattern (April 2nd,...
On Modeling and Testing When Unpredictability Becomes the Pattern (April 2nd,...Benoit Combemale
 
Pragmatic Model Driven Development using openArchitectureWare
Pragmatic Model Driven Development using openArchitectureWarePragmatic Model Driven Development using openArchitectureWare
Pragmatic Model Driven Development using openArchitectureWareMichael Vorburger
 
Towards Clean Legacy Code
Towards Clean Legacy CodeTowards Clean Legacy Code
Towards Clean Legacy CodeLars Martin
 
The REMICS model-driven process for migrating legacy applications to the cloud
The REMICS model-driven process for migrating legacy applications to the cloudThe REMICS model-driven process for migrating legacy applications to the cloud
The REMICS model-driven process for migrating legacy applications to the cloudMarcos Almeida
 
DDS Advanced Tutorial - OMG June 2013 Berlin Meeting
DDS Advanced Tutorial - OMG June 2013 Berlin MeetingDDS Advanced Tutorial - OMG June 2013 Berlin Meeting
DDS Advanced Tutorial - OMG June 2013 Berlin MeetingJaime Martin Losa
 
MODEL-DRIVEN ENGINEERING (MDE) in Practice
MODEL-DRIVEN ENGINEERING (MDE) in PracticeMODEL-DRIVEN ENGINEERING (MDE) in Practice
MODEL-DRIVEN ENGINEERING (MDE) in PracticeHussein Alshkhir
 
Close encounters in MDD: when Models meet Code
Close encounters in MDD: when Models meet CodeClose encounters in MDD: when Models meet Code
Close encounters in MDD: when Models meet Codelbergmans
 
Close Encounters in MDD: when models meet code
Close Encounters in MDD: when models meet codeClose Encounters in MDD: when models meet code
Close Encounters in MDD: when models meet codelbergmans
 
MvvmCross Introduction
MvvmCross IntroductionMvvmCross Introduction
MvvmCross IntroductionStuart Lodge
 
MvvmCross Seminar
MvvmCross SeminarMvvmCross Seminar
MvvmCross SeminarXamarin
 
Machine Learning Models: From Research to Production 6.13.18
Machine Learning Models: From Research to Production 6.13.18Machine Learning Models: From Research to Production 6.13.18
Machine Learning Models: From Research to Production 6.13.18Cloudera, Inc.
 
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)siouxhotornot
 
OCCIware & Linked Data prototype OW2Con@POSS
OCCIware & Linked Data prototype OW2Con@POSSOCCIware & Linked Data prototype OW2Con@POSS
OCCIware & Linked Data prototype OW2Con@POSSMarc Dutoo
 

Ähnlich wie Introducing Eclipse MoDisco (20)

MoDisco Poster EclipseCon 2009
MoDisco Poster EclipseCon 2009MoDisco Poster EclipseCon 2009
MoDisco Poster EclipseCon 2009
 
Spy On Your Models, Standard talk at EclipseCon 2011
Spy On Your Models, Standard talk at EclipseCon 2011Spy On Your Models, Standard talk at EclipseCon 2011
Spy On Your Models, Standard talk at EclipseCon 2011
 
Software Archaeology - Raiders of the Lost Code (short)
Software Archaeology - Raiders of the Lost Code (short)Software Archaeology - Raiders of the Lost Code (short)
Software Archaeology - Raiders of the Lost Code (short)
 
A Model-Driven Approach to Generate External DSLs from Object-Oriented APIs
A Model-Driven Approach to Generate External DSLs from Object-Oriented APIsA Model-Driven Approach to Generate External DSLs from Object-Oriented APIs
A Model-Driven Approach to Generate External DSLs from Object-Oriented APIs
 
Our research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software EngineeringOur research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software Engineering
 
MoDisco Eclipse-OMG Symp 2010
MoDisco Eclipse-OMG Symp 2010MoDisco Eclipse-OMG Symp 2010
MoDisco Eclipse-OMG Symp 2010
 
On Modeling and Testing When Unpredictability Becomes the Pattern (April 2nd,...
On Modeling and Testing When Unpredictability Becomes the Pattern (April 2nd,...On Modeling and Testing When Unpredictability Becomes the Pattern (April 2nd,...
On Modeling and Testing When Unpredictability Becomes the Pattern (April 2nd,...
 
Pragmatic Model Driven Development using openArchitectureWare
Pragmatic Model Driven Development using openArchitectureWarePragmatic Model Driven Development using openArchitectureWare
Pragmatic Model Driven Development using openArchitectureWare
 
Towards Clean Legacy Code
Towards Clean Legacy CodeTowards Clean Legacy Code
Towards Clean Legacy Code
 
The REMICS model-driven process for migrating legacy applications to the cloud
The REMICS model-driven process for migrating legacy applications to the cloudThe REMICS model-driven process for migrating legacy applications to the cloud
The REMICS model-driven process for migrating legacy applications to the cloud
 
DDS Advanced Tutorial - OMG June 2013 Berlin Meeting
DDS Advanced Tutorial - OMG June 2013 Berlin MeetingDDS Advanced Tutorial - OMG June 2013 Berlin Meeting
DDS Advanced Tutorial - OMG June 2013 Berlin Meeting
 
MODEL-DRIVEN ENGINEERING (MDE) in Practice
MODEL-DRIVEN ENGINEERING (MDE) in PracticeMODEL-DRIVEN ENGINEERING (MDE) in Practice
MODEL-DRIVEN ENGINEERING (MDE) in Practice
 
Close encounters in MDD: when Models meet Code
Close encounters in MDD: when Models meet CodeClose encounters in MDD: when Models meet Code
Close encounters in MDD: when Models meet Code
 
Close Encounters in MDD: when models meet code
Close Encounters in MDD: when models meet codeClose Encounters in MDD: when models meet code
Close Encounters in MDD: when models meet code
 
MvvmCross Introduction
MvvmCross IntroductionMvvmCross Introduction
MvvmCross Introduction
 
MvvmCross Seminar
MvvmCross SeminarMvvmCross Seminar
MvvmCross Seminar
 
toolkit
toolkittoolkit
toolkit
 
Machine Learning Models: From Research to Production 6.13.18
Machine Learning Models: From Research to Production 6.13.18Machine Learning Models: From Research to Production 6.13.18
Machine Learning Models: From Research to Production 6.13.18
 
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)
 
OCCIware & Linked Data prototype OW2Con@POSS
OCCIware & Linked Data prototype OW2Con@POSSOCCIware & Linked Data prototype OW2Con@POSS
OCCIware & Linked Data prototype OW2Con@POSS
 

Mehr von Hugo Bruneliere

Scalable Model Views over Heterogeneous Modeling Technologies and Resources -...
Scalable Model Views over Heterogeneous Modeling Technologies and Resources -...Scalable Model Views over Heterogeneous Modeling Technologies and Resources -...
Scalable Model Views over Heterogeneous Modeling Technologies and Resources -...Hugo Bruneliere
 
Model-driven Design-Runtime Interaction in Safety Critical System Development...
Model-driven Design-Runtime Interaction in Safety Critical System Development...Model-driven Design-Runtime Interaction in Safety Critical System Development...
Model-driven Design-Runtime Interaction in Safety Critical System Development...Hugo Bruneliere
 
A Model-based Framework for Continuous Development and Runtime Validation of...
A Model-based Framework for Continuous Development and Runtime Validation  of...A Model-based Framework for Continuous Development and Runtime Validation  of...
A Model-based Framework for Continuous Development and Runtime Validation of...Hugo Bruneliere
 
Model Driven Engineering for Design-Runtime Interaction in Complex Systems: S...
Model Driven Engineering for Design-Runtime Interaction in Complex Systems: S...Model Driven Engineering for Design-Runtime Interaction in Complex Systems: S...
Model Driven Engineering for Design-Runtime Interaction in Complex Systems: S...Hugo Bruneliere
 
Generic Model-based Approaches for Software Reverse Engineering and Comprehen...
Generic Model-based Approaches for Software Reverse Engineering and Comprehen...Generic Model-based Approaches for Software Reverse Engineering and Comprehen...
Generic Model-based Approaches for Software Reverse Engineering and Comprehen...Hugo Bruneliere
 
Towards Scalable Model Views on Heterogeneous Model Resources - MODELS 2018 @...
Towards Scalable Model Views on Heterogeneous Model Resources - MODELS 2018 @...Towards Scalable Model Views on Heterogeneous Model Resources - MODELS 2018 @...
Towards Scalable Model Views on Heterogeneous Model Resources - MODELS 2018 @...Hugo Bruneliere
 
A Feature-based Survey of Model View Approaches (SOSYM 2018 Best Paper Award)...
A Feature-based Survey of Model View Approaches (SOSYM 2018 Best Paper Award)...A Feature-based Survey of Model View Approaches (SOSYM 2018 Best Paper Award)...
A Feature-based Survey of Model View Approaches (SOSYM 2018 Best Paper Award)...Hugo Bruneliere
 
EMF Views: A View Mechanism for Integrating Heterogeneous Models - ER 2015 @ ...
EMF Views: A View Mechanism for Integrating Heterogeneous Models - ER 2015 @ ...EMF Views: A View Mechanism for Integrating Heterogeneous Models - ER 2015 @ ...
EMF Views: A View Mechanism for Integrating Heterogeneous Models - ER 2015 @ ...Hugo Bruneliere
 
On Lightweight Metamodel Extension to Support Modeling Tools Agility - ECMFA...
On Lightweight  Metamodel Extension to Support Modeling Tools Agility - ECMFA...On Lightweight  Metamodel Extension to Support Modeling Tools Agility - ECMFA...
On Lightweight Metamodel Extension to Support Modeling Tools Agility - ECMFA...Hugo Bruneliere
 
Migrating Applications to the Cloud with Eclipse Technologies: Feedback from ...
Migrating Applications to the Cloud with Eclipse Technologies: Feedback from ...Migrating Applications to the Cloud with Eclipse Technologies: Feedback from ...
Migrating Applications to the Cloud with Eclipse Technologies: Feedback from ...Hugo Bruneliere
 
Developing Open Source MDE Tools / Eclipse Stories and Lessons Learned - OSS4...
Developing Open Source MDE Tools / Eclipse Stories and Lessons Learned - OSS4...Developing Open Source MDE Tools / Eclipse Stories and Lessons Learned - OSS4...
Developing Open Source MDE Tools / Eclipse Stories and Lessons Learned - OSS4...Hugo Bruneliere
 
Neo4EMF : big models made easier! @ EclipseCon France 2014 - Ignite Talks Ses...
Neo4EMF : big models made easier! @ EclipseCon France 2014 - Ignite Talks Ses...Neo4EMF : big models made easier! @ EclipseCon France 2014 - Ignite Talks Ses...
Neo4EMF : big models made easier! @ EclipseCon France 2014 - Ignite Talks Ses...Hugo Bruneliere
 
EMF Views - EclipseCon 2014, Modeling Symposium
EMF Views - EclipseCon 2014, Modeling SymposiumEMF Views - EclipseCon 2014, Modeling Symposium
EMF Views - EclipseCon 2014, Modeling SymposiumHugo Bruneliere
 
EMF-REST - EclipseCon Europe 2013, Modeling Symposium
EMF-REST - EclipseCon Europe 2013, Modeling SymposiumEMF-REST - EclipseCon Europe 2013, Modeling Symposium
EMF-REST - EclipseCon Europe 2013, Modeling SymposiumHugo Bruneliere
 
TEAP MDE Framework for Enterprise Architecture - AMINO 2013 @ MODELS 2013
TEAP MDE Framework for Enterprise Architecture - AMINO 2013 @ MODELS 2013TEAP MDE Framework for Enterprise Architecture - AMINO 2013 @ MODELS 2013
TEAP MDE Framework for Enterprise Architecture - AMINO 2013 @ MODELS 2013Hugo Bruneliere
 
Collaboro - EclipseCon France 2013 - Ignite Talks Session
Collaboro - EclipseCon France 2013 - Ignite Talks SessionCollaboro - EclipseCon France 2013 - Ignite Talks Session
Collaboro - EclipseCon France 2013 - Ignite Talks SessionHugo Bruneliere
 
Collaboro - EclipseCon Europe 2012, Modeling Symposium
Collaboro - EclipseCon Europe 2012, Modeling SymposiumCollaboro - EclipseCon Europe 2012, Modeling Symposium
Collaboro - EclipseCon Europe 2012, Modeling SymposiumHugo Bruneliere
 
Eclipse Labs for Improving DSL Development - Eclipse DemoCamp Juno 2012 in Na...
Eclipse Labs for Improving DSL Development - Eclipse DemoCamp Juno 2012 in Na...Eclipse Labs for Improving DSL Development - Eclipse DemoCamp Juno 2012 in Na...
Eclipse Labs for Improving DSL Development - Eclipse DemoCamp Juno 2012 in Na...Hugo Bruneliere
 
EMF Facet vs. EMF Profiles - EclipseCon North America 2012, Modeling Symposium
EMF Facet vs. EMF Profiles - EclipseCon North America 2012, Modeling SymposiumEMF Facet vs. EMF Profiles - EclipseCon North America 2012, Modeling Symposium
EMF Facet vs. EMF Profiles - EclipseCon North America 2012, Modeling SymposiumHugo Bruneliere
 
An Open Source Approach for Industrializing Research Tools - OW2Con 2011, ses...
An Open Source Approach for Industrializing Research Tools - OW2Con 2011, ses...An Open Source Approach for Industrializing Research Tools - OW2Con 2011, ses...
An Open Source Approach for Industrializing Research Tools - OW2Con 2011, ses...Hugo Bruneliere
 

Mehr von Hugo Bruneliere (20)

Scalable Model Views over Heterogeneous Modeling Technologies and Resources -...
Scalable Model Views over Heterogeneous Modeling Technologies and Resources -...Scalable Model Views over Heterogeneous Modeling Technologies and Resources -...
Scalable Model Views over Heterogeneous Modeling Technologies and Resources -...
 
Model-driven Design-Runtime Interaction in Safety Critical System Development...
Model-driven Design-Runtime Interaction in Safety Critical System Development...Model-driven Design-Runtime Interaction in Safety Critical System Development...
Model-driven Design-Runtime Interaction in Safety Critical System Development...
 
A Model-based Framework for Continuous Development and Runtime Validation of...
A Model-based Framework for Continuous Development and Runtime Validation  of...A Model-based Framework for Continuous Development and Runtime Validation  of...
A Model-based Framework for Continuous Development and Runtime Validation of...
 
Model Driven Engineering for Design-Runtime Interaction in Complex Systems: S...
Model Driven Engineering for Design-Runtime Interaction in Complex Systems: S...Model Driven Engineering for Design-Runtime Interaction in Complex Systems: S...
Model Driven Engineering for Design-Runtime Interaction in Complex Systems: S...
 
Generic Model-based Approaches for Software Reverse Engineering and Comprehen...
Generic Model-based Approaches for Software Reverse Engineering and Comprehen...Generic Model-based Approaches for Software Reverse Engineering and Comprehen...
Generic Model-based Approaches for Software Reverse Engineering and Comprehen...
 
Towards Scalable Model Views on Heterogeneous Model Resources - MODELS 2018 @...
Towards Scalable Model Views on Heterogeneous Model Resources - MODELS 2018 @...Towards Scalable Model Views on Heterogeneous Model Resources - MODELS 2018 @...
Towards Scalable Model Views on Heterogeneous Model Resources - MODELS 2018 @...
 
A Feature-based Survey of Model View Approaches (SOSYM 2018 Best Paper Award)...
A Feature-based Survey of Model View Approaches (SOSYM 2018 Best Paper Award)...A Feature-based Survey of Model View Approaches (SOSYM 2018 Best Paper Award)...
A Feature-based Survey of Model View Approaches (SOSYM 2018 Best Paper Award)...
 
EMF Views: A View Mechanism for Integrating Heterogeneous Models - ER 2015 @ ...
EMF Views: A View Mechanism for Integrating Heterogeneous Models - ER 2015 @ ...EMF Views: A View Mechanism for Integrating Heterogeneous Models - ER 2015 @ ...
EMF Views: A View Mechanism for Integrating Heterogeneous Models - ER 2015 @ ...
 
On Lightweight Metamodel Extension to Support Modeling Tools Agility - ECMFA...
On Lightweight  Metamodel Extension to Support Modeling Tools Agility - ECMFA...On Lightweight  Metamodel Extension to Support Modeling Tools Agility - ECMFA...
On Lightweight Metamodel Extension to Support Modeling Tools Agility - ECMFA...
 
Migrating Applications to the Cloud with Eclipse Technologies: Feedback from ...
Migrating Applications to the Cloud with Eclipse Technologies: Feedback from ...Migrating Applications to the Cloud with Eclipse Technologies: Feedback from ...
Migrating Applications to the Cloud with Eclipse Technologies: Feedback from ...
 
Developing Open Source MDE Tools / Eclipse Stories and Lessons Learned - OSS4...
Developing Open Source MDE Tools / Eclipse Stories and Lessons Learned - OSS4...Developing Open Source MDE Tools / Eclipse Stories and Lessons Learned - OSS4...
Developing Open Source MDE Tools / Eclipse Stories and Lessons Learned - OSS4...
 
Neo4EMF : big models made easier! @ EclipseCon France 2014 - Ignite Talks Ses...
Neo4EMF : big models made easier! @ EclipseCon France 2014 - Ignite Talks Ses...Neo4EMF : big models made easier! @ EclipseCon France 2014 - Ignite Talks Ses...
Neo4EMF : big models made easier! @ EclipseCon France 2014 - Ignite Talks Ses...
 
EMF Views - EclipseCon 2014, Modeling Symposium
EMF Views - EclipseCon 2014, Modeling SymposiumEMF Views - EclipseCon 2014, Modeling Symposium
EMF Views - EclipseCon 2014, Modeling Symposium
 
EMF-REST - EclipseCon Europe 2013, Modeling Symposium
EMF-REST - EclipseCon Europe 2013, Modeling SymposiumEMF-REST - EclipseCon Europe 2013, Modeling Symposium
EMF-REST - EclipseCon Europe 2013, Modeling Symposium
 
TEAP MDE Framework for Enterprise Architecture - AMINO 2013 @ MODELS 2013
TEAP MDE Framework for Enterprise Architecture - AMINO 2013 @ MODELS 2013TEAP MDE Framework for Enterprise Architecture - AMINO 2013 @ MODELS 2013
TEAP MDE Framework for Enterprise Architecture - AMINO 2013 @ MODELS 2013
 
Collaboro - EclipseCon France 2013 - Ignite Talks Session
Collaboro - EclipseCon France 2013 - Ignite Talks SessionCollaboro - EclipseCon France 2013 - Ignite Talks Session
Collaboro - EclipseCon France 2013 - Ignite Talks Session
 
Collaboro - EclipseCon Europe 2012, Modeling Symposium
Collaboro - EclipseCon Europe 2012, Modeling SymposiumCollaboro - EclipseCon Europe 2012, Modeling Symposium
Collaboro - EclipseCon Europe 2012, Modeling Symposium
 
Eclipse Labs for Improving DSL Development - Eclipse DemoCamp Juno 2012 in Na...
Eclipse Labs for Improving DSL Development - Eclipse DemoCamp Juno 2012 in Na...Eclipse Labs for Improving DSL Development - Eclipse DemoCamp Juno 2012 in Na...
Eclipse Labs for Improving DSL Development - Eclipse DemoCamp Juno 2012 in Na...
 
EMF Facet vs. EMF Profiles - EclipseCon North America 2012, Modeling Symposium
EMF Facet vs. EMF Profiles - EclipseCon North America 2012, Modeling SymposiumEMF Facet vs. EMF Profiles - EclipseCon North America 2012, Modeling Symposium
EMF Facet vs. EMF Profiles - EclipseCon North America 2012, Modeling Symposium
 
An Open Source Approach for Industrializing Research Tools - OW2Con 2011, ses...
An Open Source Approach for Industrializing Research Tools - OW2Con 2011, ses...An Open Source Approach for Industrializing Research Tools - OW2Con 2011, ses...
An Open Source Approach for Industrializing Research Tools - OW2Con 2011, ses...
 

KĂŒrzlich hochgeladen

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 

KĂŒrzlich hochgeladen (20)

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 

Introducing Eclipse MoDisco

  • 1. Introducing Eclipse MoDisco (Model Driven) Reverse Engineering Hugo Bruneliere AtlanMod Team (Inria, Mines Nantes & LINA) © AtlanMod - atlanmod-contact@mines-nantes.fr 1
  • 2. Different Possible Reverse Engineering Scenarios Support for multiple scenarios/results Support for multiple legacy technologies Transformations ‱Documentation ‱Impact analysis Configuration files Other sources Models of the system(s) Generators Databases Discoverers Source code MoDisco ‱Models ‱Viewpoints ‱Upgrade ‱Migration ‱Metrics ‱Quality Assurance Eclipse Modeling © AtlanMod - atlanmod-contact@mines-nantes.fr 2
  • 3. Model Driven Reverse Engineering (MDRE) Approach  Use models to represent and manipulate artifacts from existing systems Existing Legacy System Software artifacts : - source code - configuration files - tests - database -
 Discover Models Understand Viewpoints © AtlanMod - atlanmod-contact@mines-nantes.fr Transform New Software Artifacts 3
  • 4. Model Driven Reverse Engineering (MDRE) Approach  Discover Java metamodel MoDisco Java Discoverer Java source code conforms to Java model JUnit3 JUnit3 code  Navigate © AtlanMod - atlanmod-contact@mines-nantes.fr MoDisco Model Browser 4
  • 5. Model Driven Reverse Engineering (MDRE) Approach  Understand Java model JUnit3 Java JUnit3 Customization MoDisco ModelBrowser Facets Models uses  Extract © AtlanMod - atlanmod-contact@mines-nantes.fr JUnit3 Queries 5
  • 6. Model Driven Reverse Engineering (MDRE) Approach  Transform JUnit3 to JUnit4 M2M Transformation Java model JUnit3 Java model JUnit4 JUnit3 Facets  Regenerate © AtlanMod - atlanmod-contact@mines-nantes.fr Java source code JUnit4 code 6
  • 7. Eclipse MoDisco An Eclipse framework to support the elaboration of Model Driven Reverse Engineering solutions  Official Eclipse Modeling project  Open-source (EPL)  Based on other Eclipse Modeling projects  Released with Helios, Indigo, Juno, Kepler, 
  Supported by the OMG  Reference implementations for several ADM (Architecture Driven Modernization) standards:  KDM (Knowledge Discovery Metamodel)  SMM (Structured Metrics Metamodel)  ASTM (Abstract Syntax Tree Metamodel) © AtlanMod - atlanmod-contact@mines-nantes.fr 7
  • 8. MoDisco: Global Architecture Java JSP XML Metamodel Discoverer Generator Transfo. to KDM/UML Metamodel Discoverer Generator 
 Metamodel Discoverer Generator MoDisco – “Technologies” layer Discovery Manager, Workflow Plug and orchestrate transformations Model Browser Navigation through complex models Querying & Customization Definition of specific viewpoints OMG/ADM Standards Pivot metamodels (KDM, ASTM, SMM) MoDisco – “Infrastructure” layer Eclipse Modeling projects © AtlanMod - atlanmod-contact@mines-nantes.fr 8
  • 9. MoDisco Model Browser  A feature-rich Ecore model browser  Generic (metamodelindependent)  Customizable (display, fonts, colors, icons, et c.)  Advanced navigation & search capabilities © AtlanMod - atlanmod-contact@mines-nantes.fr 9
  • 10. MoDisco Discoverer Manager  Define and register model discoverers – Support for different legacy technologies © AtlanMod - atlanmod-contact@mines-nantes.fr 10
  • 11. MoDisco Workflow  Specify reverse engineering processes – Chain discoverers, transformations & generations © AtlanMod - atlanmod-contact@mines-nantes.fr 11
  • 12. MoDisco Support for Java  Technology-specific components for Java  Complete metamodel  Corresponding discoverer & generator  Transformation to KDM  Advanced composite discoverer (Java + KDM) © AtlanMod - atlanmod-contact@mines-nantes.fr 12
  • 13. MoDisco Support for JEE  Technology-specific components for JEE  Complete JSP metamodel & corresponding discoverer  Discoverers for web.xml & ejbjar.xml files (based on XML) + generic framework  JEE queries & facets (based on Java) © AtlanMod - atlanmod-contact@mines-nantes.fr 13
  • 14. MoDisco Support for XML  Technology-specific components for XML  Generic support (XSD- or DTDindependent)  Complete metamodel (based W3C specification)  Corresponding discoverer © AtlanMod - atlanmod-contact@mines-nantes.fr 14
  • 15. MoDisco in Action
 Click here to run the demo
 © AtlanMod - atlanmod-contact@mines-nantes.fr 15
  • 16. Thanks for your attention!  Useful links – Eclipse Modeling Project  http://eclipse.org/modeling/ – Eclipse MoDisco project  http://www.eclipse.org/MoDisco – Eclipse EMF Facet project  http://www.eclipse.org/facet/  AtlanMod Contact – Hugo Bruneliere  R&D engineer and MoDisco project co-leader  hugo.bruneliere@inria.fr © AtlanMod - atlanmod-contact@mines-nantes.fr 16