SlideShare a Scribd company logo
1 of 34
Marcos Almeida
SOFTEAM
PMDE – ECMFA 2013
The REMICS model-driven
process for migrating legacy
applications to the cloud
Softeam
 Specialist in OO technologies, new architectures, new
methodologies
 Banking, Defense, Telecom
 20 years of experience
 700 experts
 UML Editor: Modelio
 CloudML, SysML, MARTE, Code Generation, Documentation,
Teamwork
REMICS: Reuse and Migration of
legacy applications to interoperable
Cloud Services
 A FP7 EU Project
 9/2010  8/2013
 Partners
Stiftelsen Sintef (NO) Research
Fraunhofer-FOCUS (DE) Research
Tecnalia Research & Innovation (ES) Research
Institute of Information and Communication
Technologies – Bulgarian Academy of Sciences
(BG)
Research
University of Tartu (EE) Research
Warsaw University of Technology (PL) Research
DI Systemer AS (NO) End-user, SME
DOME Consulting & Solutions, S.L. (ES) End-user, SME
Netfective Technology SA (FR) Tool and consultancy provider, SME
Softeam (FR) Tool and consultancy provider, SME
In short: How to migrate legacy
applications to the cloud?
 Cloud
 Cloud computing
 Virtual Machines, Platforms, Services
 “Cheap” scalability
 Legacy applications
 Client-server based or Desktop based
 Better performance?  Better hardware!
 “Expensive” scalability
 Migration
 Retrieve
 Refactoring: frameworks x Architectures
 Deploy
 How
 Ad-hoc x Process
Cloud computing: cheap
infrastructure, platforms and
services, but…
 Infrastructure as a Service (IaaS):
 Virtualizing hardware platform
 Operating System as a Service
 Cheap “out and up” scalability
 Platform as a Service (PaaS):
 Virtualizing software platform
 Software framework as a Service
 Software as a Service (SaaS):
 Virtualizing software services
 Software as a Service
5
Infrastructure as a Service
Platform as a Service
Software as
a Service
… but one needs to deal with legacy
applications.
 Client-server based or Desktop based
 Different frameworks & Platforms
 PaaS specific APIs
 Desktop UI x Web UI
 Different habits
 Dependency on specific operating systems
 Dependency on specific hardware configurations
 Dependency on specific support software (e.g. databases, registry…)
 Dependency on writing/reading to/from the file system
 Multi-tenancy x Multi-instances
 Better performance? Better hardware!
 Buy, configure, maintain new hardware…
 “Expensive” scalability
6
Deal with legacy = Migration =
Refactoring
 In order to refactor, we need to….
 Understand the old architecture
 Define the requirements of the new version
 Find a cloud provider
 Take a look at the supported API’s, platforms, architectures…
 Define the new architecture
 Refactor the old code.
Can we automate any of these?
7
Starting points: Models and Services
 Model Driven Engineering
 Language independent approach
 Automated transformations
 OMG ADM = Architecture Driven Modernization
 Start with knowledge discovery!
 Then follow the MDA approach
 CIM  PIM  PSM
 OMG SoaML = Services Oriented Architecture Modelling
Language
 Break applications into services!
8
State of the Art: Cloud mostly
unsupported
 No cloud-ready standards
 There are no standards for platform independent modelling combining SOA and cloud
computing for SaaS design.
 Extend the SOA models with peculiarities of cloud computing paradigm.
 Nothing more than reversing code
 The knowledge discovery is often limited to reverse engineering of legacy code. The
business process and rules recovery is poorly addressed.
 There is a lack of methods for service interoperability on model level.
 Efficiently adapt existing services and increase their interoperability to cope with the migration
requirements.
 Only Ad-hoc processes
 The Service Clouds architecture migration methods are mostly ad-hoc and lack a
comprehensive methodology addressing dedicated design patterns and transformations.
 Automate the architecture migration with model transformation.
 Don’t even think about validating what you’ve done…
 There are no dedicated testing technologies for Service Clouds migration validation.
 Reuse the legacy application in automated testing of the new migrated SaaS application
9
In REMICS: Cloud based migration
 A cloud-ready standard : PIM4Cloud
 There are no standards for platform independent modelling combining SOA and cloud
computing for SaaS design.
 Extend the SOA models with peculiarities of cloud computing paradigm.
 Reversing business processes too
 The knowledge discovery is often limited to reverse engineering of legacy code. The
business process and rules recovery is poorly addressed.
 There is a lack of methods for service interoperability on model level.
 Efficiently adapt existing services and increase their interoperability to cope with the migration
requirements.
 A migration process
 The Service Clouds architecture migration methods are mostly ad-hoc and lack a
comprehensive methodology addressing dedicated design patterns and transformations.
 Automate the architecture migration with model transformation.
 Validation and test tools
 There are no dedicated testing technologies for Service Clouds migration validation.
 Reuse the legacy application in automated testing of the new migrated SaaS application
10
Approach: a process covering
everything from the legacy code to
the deployed migrated code
11
Not only a process, but a set of tools!
 Recover
 BlueAge (Netfective)
 ReDSeeDS (WUT)
 Migrate
 Modelio (SOFTEAM)
 Deploy
 Cloudscript (SINTEF)
 Manage
 Desktop2Cloud (Uni. Tartu)
12
The focus of this presentation is the
Migration process.
13
Migration Process
The DOME Case Study: Managing
Travel Providers
 DOME Consulting
 Solutions for effective management of multiple kinds of travel
related providers
 DOME Software
 Delphi + PL/SQL
14
In the end we want to go to the
Cloud…
 AmazonEC2 IaaS
 On the UI: JEE+JSF
 On the Server: JBoss + Derby database
15
Modelio Orchestrated Migration
Process
Recovery Recovered
Model
Component
Recovery
Model
Migration Architecture
Model
Implementation
Model
Test Model
Deployment Deployment
Model
Deployed
Implementation
Model
Deployed Test
Model
16
Modelio Orchestrated Migration
Process
Recovery Recovered
Model
Component
Recovery
Model
Migration Architecture
Model
Implementation
Model
Test Model
Deployment Deployment
Model
Deployed
Implementation
Model
Deployed Test
Model
17
The Recovered Model: Entities,
Services and Business Processes
18
Entities
Services
Behavior
Modelio Orchestrated Migration
Process
Recovery Recovered
Model
Component
Recovery
Model
Migration Architecture
Model
Implementation
Model
Test Model
Deployment Deployment
Model
Deployed
Implementation
Model
Deployed Test
Model
19
From Services to Components
20
Objective:
1. Identifying components by
grouping Entities and Services
2. Classifying components into:
• Behavior
• Presentation
• Data
Output: The Component Model
21
Behavioral components Data components
Presentation
component
Modelio Orchestrated Migration
Process
Recovery Recovered
Model
Migration Implementation
Model
Test Model
Deployment Deployment
Model
Deployed
Implementation
Model
Deployed Test
Model
22
Thinking about the Architecture with
SoaML, …
23
Participants
Services
Interfaces
then the User Interface using MVC, …
24
User Interface Modelling
Behavior Modelling
… finally a detailed description of the
Entities and Relationships
25
Entities
Relationships
Modelio Orchestrated Migration
Process
Recovery Recovered
Model
Component
Recovery
Model
Migration
Deployment Deployment
Model
Deployed
Implementation
Model
Deployed Test
Model
26
Now we start thinking about the
implementation details
27
Implementation level
details
Modelio Orchestrated Migration
Process
Recovery Recovered
Model
Component
Recovery
Model
Migration
Deployment
Deployed
Implementation
Model
Deployed Test
Model
28
Implementation
Model
Test Model
How to package the new system into
meaningful packages?
29
Implementation
Packages
Deployment
Packages
Modelio Orchestrated Migration
Process
Recovery Recovered
Model
Component
Recovery
Model
Migration Implementation
Model
Test Model
Deployment Deployed Test
Model
30
Deploying the application with
PIM4Cloud
31
Cloud Resources
Installed Packages
Current State
 Experimenting with Migration
 Actually supports JEE based IaaS
 Working on CloudML standardization (based on
PIM4Cloud)
32
Lessons Learned
 Model based web design may not be a good idea…
 But model based refactoring is!
 Process may need to be improved
 Maybe consider deployment as early as possible
 Cloud providers constraints need to be considered when defining the
architecture of the application.
33
Thank you for your attention!
Marcos Almeida
SOFTEAM | ModelioSoft
marcos.almeida@softeam.fr
SOFTEAM R&D Web Site:
http://rd.softeam.com
ModelioSoft Web Site:
http://www.modeliosoft.com
www.modelio34

More Related Content

What's hot

INTO-CPS: An integrated “tool chain” for comprehensive Model-Based Design of ...
INTO-CPS: An integrated “tool chain” for comprehensive Model-Based Design of ...INTO-CPS: An integrated “tool chain” for comprehensive Model-Based Design of ...
INTO-CPS: An integrated “tool chain” for comprehensive Model-Based Design of ...Alessandra Bagnato
 
Modelio - Overcoming the Limitations of model repositories. by Philippe Desfray
Modelio - Overcoming the Limitations  of model repositories. by Philippe DesfrayModelio - Overcoming the Limitations  of model repositories. by Philippe Desfray
Modelio - Overcoming the Limitations of model repositories. by Philippe DesfrayAndrey Sadovykh
 
Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked...
Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked...Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked...
Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked...David Freitas
 
System Architect and Rhapsody
System Architect and RhapsodySystem Architect and Rhapsody
System Architect and RhapsodyMartin Owen
 
MOND Semantics Integration
MOND Semantics IntegrationMOND Semantics Integration
MOND Semantics IntegrationSales Emea
 
Cap2194 migration from weblogic to v fabric - cloud application platform
Cap2194  migration from weblogic to v fabric - cloud application platformCap2194  migration from weblogic to v fabric - cloud application platform
Cap2194 migration from weblogic to v fabric - cloud application platformRamarao Kanneganti
 
Rhapsody Systems Software
Rhapsody Systems SoftwareRhapsody Systems Software
Rhapsody Systems SoftwareBill Duncan
 
Software architecture patterns
Software architecture patternsSoftware architecture patterns
Software architecture patternsRiccardo Cardin
 
Acceleo Day - Orange
Acceleo Day - OrangeAcceleo Day - Orange
Acceleo Day - Orangesliard
 
Mainframe Modernization with AWS: Patterns and Best Practices
Mainframe Modernization with AWS: Patterns and Best PracticesMainframe Modernization with AWS: Patterns and Best Practices
Mainframe Modernization with AWS: Patterns and Best PracticesAmazon Web Services
 
Slideshared 4. iucee-inpods cloud engineering
Slideshared 4. iucee-inpods cloud engineering Slideshared 4. iucee-inpods cloud engineering
Slideshared 4. iucee-inpods cloud engineering Ravindra Dastikop
 
Eclipse RMF - Requirements Modeling Framework - ReqIF in der Open Source
Eclipse RMF - Requirements Modeling Framework - ReqIF in der Open Source Eclipse RMF - Requirements Modeling Framework - ReqIF in der Open Source
Eclipse RMF - Requirements Modeling Framework - ReqIF in der Open Source Mark Brörkens
 
New Approaches to ALM PLM Cross Discipline Product Development
New Approaches to ALM PLM Cross Discipline Product DevelopmentNew Approaches to ALM PLM Cross Discipline Product Development
New Approaches to ALM PLM Cross Discipline Product DevelopmentAras
 
V6 Introduction Link
V6 Introduction LinkV6 Introduction Link
V6 Introduction Linkyerencao
 
System of systems modeling with Capella
System of systems modeling with CapellaSystem of systems modeling with Capella
System of systems modeling with CapellaObeo
 
Fostering MBSE in Engineering Culture
Fostering MBSE in Engineering CultureFostering MBSE in Engineering Culture
Fostering MBSE in Engineering CultureObeo
 
Rhapsody reverseengineering
Rhapsody reverseengineeringRhapsody reverseengineering
Rhapsody reverseengineeringScott Althouse
 
10 Things You Should Know About MDD
10 Things You Should Know About MDD10 Things You Should Know About MDD
10 Things You Should Know About MDDJohan den Haan
 
Engineering & operational services plug in for cloud providers
Engineering & operational services plug in for cloud providersEngineering & operational services plug in for cloud providers
Engineering & operational services plug in for cloud providerskanimozhin
 

What's hot (20)

INTO-CPS: An integrated “tool chain” for comprehensive Model-Based Design of ...
INTO-CPS: An integrated “tool chain” for comprehensive Model-Based Design of ...INTO-CPS: An integrated “tool chain” for comprehensive Model-Based Design of ...
INTO-CPS: An integrated “tool chain” for comprehensive Model-Based Design of ...
 
Modelio - Overcoming the Limitations of model repositories. by Philippe Desfray
Modelio - Overcoming the Limitations  of model repositories. by Philippe DesfrayModelio - Overcoming the Limitations  of model repositories. by Philippe Desfray
Modelio - Overcoming the Limitations of model repositories. by Philippe Desfray
 
Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked...
Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked...Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked...
Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked...
 
System Architect and Rhapsody
System Architect and RhapsodySystem Architect and Rhapsody
System Architect and Rhapsody
 
Softeam profile 2014
Softeam profile 2014Softeam profile 2014
Softeam profile 2014
 
MOND Semantics Integration
MOND Semantics IntegrationMOND Semantics Integration
MOND Semantics Integration
 
Cap2194 migration from weblogic to v fabric - cloud application platform
Cap2194  migration from weblogic to v fabric - cloud application platformCap2194  migration from weblogic to v fabric - cloud application platform
Cap2194 migration from weblogic to v fabric - cloud application platform
 
Rhapsody Systems Software
Rhapsody Systems SoftwareRhapsody Systems Software
Rhapsody Systems Software
 
Software architecture patterns
Software architecture patternsSoftware architecture patterns
Software architecture patterns
 
Acceleo Day - Orange
Acceleo Day - OrangeAcceleo Day - Orange
Acceleo Day - Orange
 
Mainframe Modernization with AWS: Patterns and Best Practices
Mainframe Modernization with AWS: Patterns and Best PracticesMainframe Modernization with AWS: Patterns and Best Practices
Mainframe Modernization with AWS: Patterns and Best Practices
 
Slideshared 4. iucee-inpods cloud engineering
Slideshared 4. iucee-inpods cloud engineering Slideshared 4. iucee-inpods cloud engineering
Slideshared 4. iucee-inpods cloud engineering
 
Eclipse RMF - Requirements Modeling Framework - ReqIF in der Open Source
Eclipse RMF - Requirements Modeling Framework - ReqIF in der Open Source Eclipse RMF - Requirements Modeling Framework - ReqIF in der Open Source
Eclipse RMF - Requirements Modeling Framework - ReqIF in der Open Source
 
New Approaches to ALM PLM Cross Discipline Product Development
New Approaches to ALM PLM Cross Discipline Product DevelopmentNew Approaches to ALM PLM Cross Discipline Product Development
New Approaches to ALM PLM Cross Discipline Product Development
 
V6 Introduction Link
V6 Introduction LinkV6 Introduction Link
V6 Introduction Link
 
System of systems modeling with Capella
System of systems modeling with CapellaSystem of systems modeling with Capella
System of systems modeling with Capella
 
Fostering MBSE in Engineering Culture
Fostering MBSE in Engineering CultureFostering MBSE in Engineering Culture
Fostering MBSE in Engineering Culture
 
Rhapsody reverseengineering
Rhapsody reverseengineeringRhapsody reverseengineering
Rhapsody reverseengineering
 
10 Things You Should Know About MDD
10 Things You Should Know About MDD10 Things You Should Know About MDD
10 Things You Should Know About MDD
 
Engineering & operational services plug in for cloud providers
Engineering & operational services plug in for cloud providersEngineering & operational services plug in for cloud providers
Engineering & operational services plug in for cloud providers
 

Similar to The REMICS model-driven process for migrating legacy applications to the cloud

Matias Creimerman - Cloud migration and modernization effort
Matias Creimerman - Cloud migration and modernization effortMatias Creimerman - Cloud migration and modernization effort
Matias Creimerman - Cloud migration and modernization effortMatias Creimerman
 
ARTIST Project general presentation
ARTIST Project general presentationARTIST Project general presentation
ARTIST Project general presentationIlias Spais
 
Aberdeen Oil & Gas Event - Cloud Adoption Framework
Aberdeen Oil & Gas Event - Cloud Adoption FrameworkAberdeen Oil & Gas Event - Cloud Adoption Framework
Aberdeen Oil & Gas Event - Cloud Adoption FrameworkAmazon Web Services
 
Cloud adoption patterns
Cloud adoption patternsCloud adoption patterns
Cloud adoption patternsKyle Brown
 
How to Transform Corporate IT into the Driver for Digital Transformation
How to Transform Corporate IT into the Driver for Digital TransformationHow to Transform Corporate IT into the Driver for Digital Transformation
How to Transform Corporate IT into the Driver for Digital TransformationEnterprise Management Associates
 
Implementing dev ops to face a two speed it architecture
Implementing dev ops to face a two speed it architectureImplementing dev ops to face a two speed it architecture
Implementing dev ops to face a two speed it architectureDavide Veronese
 
Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...
Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...
Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...Cloud Native Day Tel Aviv
 
Cloud adoption patterns April 11 2016
Cloud adoption patterns April 11 2016Cloud adoption patterns April 11 2016
Cloud adoption patterns April 11 2016Kyle Brown
 
Continuous Delivery for cloud - scenarios and scope
Continuous Delivery for cloud  - scenarios and scopeContinuous Delivery for cloud  - scenarios and scope
Continuous Delivery for cloud - scenarios and scopeSanjeev Sharma
 
IT Modernization For Process Modernization
IT Modernization For Process ModernizationIT Modernization For Process Modernization
IT Modernization For Process ModernizationDheeraj Remella
 
Deliver Business Value Through Cloud Computing
Deliver Business Value Through Cloud ComputingDeliver Business Value Through Cloud Computing
Deliver Business Value Through Cloud Computingduncanhawkins
 
How to Get Cloud Architecture and Design Right the First Time
How to Get Cloud Architecture and Design Right the First TimeHow to Get Cloud Architecture and Design Right the First Time
How to Get Cloud Architecture and Design Right the First TimeDavid Linthicum
 
Which Application Modernization Pattern Is Right For You?
Which Application Modernization Pattern Is Right For You?Which Application Modernization Pattern Is Right For You?
Which Application Modernization Pattern Is Right For You?Apigee | Google Cloud
 
WebSphere Message Broker Application Development Training
WebSphere Message Broker Application Development TrainingWebSphere Message Broker Application Development Training
WebSphere Message Broker Application Development TrainingVijaya Raghava Vuligundam
 
Magdalena Stenius: MLOPS Will Change Machine Learning
Magdalena Stenius: MLOPS Will Change Machine LearningMagdalena Stenius: MLOPS Will Change Machine Learning
Magdalena Stenius: MLOPS Will Change Machine LearningLviv Startup Club
 
Contino Webinar - Migrating your Trading Workloads to the Cloud
Contino Webinar -  Migrating your Trading Workloads to the CloudContino Webinar -  Migrating your Trading Workloads to the Cloud
Contino Webinar - Migrating your Trading Workloads to the CloudBen Saunders
 
Emerging Technology in the Cloud! Real Life Examples. Pol Mac Aonghusa
Emerging Technology in the Cloud! Real Life Examples.  Pol Mac AonghusaEmerging Technology in the Cloud! Real Life Examples.  Pol Mac Aonghusa
Emerging Technology in the Cloud! Real Life Examples. Pol Mac Aonghusacatherinewall
 
Zeller Edm Summit Agile Deployment Of Predictive Analytics
Zeller Edm Summit   Agile Deployment Of Predictive AnalyticsZeller Edm Summit   Agile Deployment Of Predictive Analytics
Zeller Edm Summit Agile Deployment Of Predictive AnalyticsRonald.Ramos
 

Similar to The REMICS model-driven process for migrating legacy applications to the cloud (20)

Legacy Migration Overview
Legacy Migration OverviewLegacy Migration Overview
Legacy Migration Overview
 
Matias Creimerman - Cloud migration and modernization effort
Matias Creimerman - Cloud migration and modernization effortMatias Creimerman - Cloud migration and modernization effort
Matias Creimerman - Cloud migration and modernization effort
 
ARTIST Project general presentation
ARTIST Project general presentationARTIST Project general presentation
ARTIST Project general presentation
 
Aberdeen Oil & Gas Event - Cloud Adoption Framework
Aberdeen Oil & Gas Event - Cloud Adoption FrameworkAberdeen Oil & Gas Event - Cloud Adoption Framework
Aberdeen Oil & Gas Event - Cloud Adoption Framework
 
Artist essoc 2013_12092013
Artist essoc 2013_12092013Artist essoc 2013_12092013
Artist essoc 2013_12092013
 
Cloud adoption patterns
Cloud adoption patternsCloud adoption patterns
Cloud adoption patterns
 
How to Transform Corporate IT into the Driver for Digital Transformation
How to Transform Corporate IT into the Driver for Digital TransformationHow to Transform Corporate IT into the Driver for Digital Transformation
How to Transform Corporate IT into the Driver for Digital Transformation
 
Implementing dev ops to face a two speed it architecture
Implementing dev ops to face a two speed it architectureImplementing dev ops to face a two speed it architecture
Implementing dev ops to face a two speed it architecture
 
Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...
Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...
Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...
 
Cloud adoption patterns April 11 2016
Cloud adoption patterns April 11 2016Cloud adoption patterns April 11 2016
Cloud adoption patterns April 11 2016
 
Continuous Delivery for cloud - scenarios and scope
Continuous Delivery for cloud  - scenarios and scopeContinuous Delivery for cloud  - scenarios and scope
Continuous Delivery for cloud - scenarios and scope
 
IT Modernization For Process Modernization
IT Modernization For Process ModernizationIT Modernization For Process Modernization
IT Modernization For Process Modernization
 
Deliver Business Value Through Cloud Computing
Deliver Business Value Through Cloud ComputingDeliver Business Value Through Cloud Computing
Deliver Business Value Through Cloud Computing
 
How to Get Cloud Architecture and Design Right the First Time
How to Get Cloud Architecture and Design Right the First TimeHow to Get Cloud Architecture and Design Right the First Time
How to Get Cloud Architecture and Design Right the First Time
 
Which Application Modernization Pattern Is Right For You?
Which Application Modernization Pattern Is Right For You?Which Application Modernization Pattern Is Right For You?
Which Application Modernization Pattern Is Right For You?
 
WebSphere Message Broker Application Development Training
WebSphere Message Broker Application Development TrainingWebSphere Message Broker Application Development Training
WebSphere Message Broker Application Development Training
 
Magdalena Stenius: MLOPS Will Change Machine Learning
Magdalena Stenius: MLOPS Will Change Machine LearningMagdalena Stenius: MLOPS Will Change Machine Learning
Magdalena Stenius: MLOPS Will Change Machine Learning
 
Contino Webinar - Migrating your Trading Workloads to the Cloud
Contino Webinar -  Migrating your Trading Workloads to the CloudContino Webinar -  Migrating your Trading Workloads to the Cloud
Contino Webinar - Migrating your Trading Workloads to the Cloud
 
Emerging Technology in the Cloud! Real Life Examples. Pol Mac Aonghusa
Emerging Technology in the Cloud! Real Life Examples.  Pol Mac AonghusaEmerging Technology in the Cloud! Real Life Examples.  Pol Mac Aonghusa
Emerging Technology in the Cloud! Real Life Examples. Pol Mac Aonghusa
 
Zeller Edm Summit Agile Deployment Of Predictive Analytics
Zeller Edm Summit   Agile Deployment Of Predictive AnalyticsZeller Edm Summit   Agile Deployment Of Predictive Analytics
Zeller Edm Summit Agile Deployment Of Predictive Analytics
 

More from Marcos Almeida

Integrating research grade model indexing technologies to commercial modellin...
Integrating research grade model indexing technologies to commercial modellin...Integrating research grade model indexing technologies to commercial modellin...
Integrating research grade model indexing technologies to commercial modellin...Marcos Almeida
 
Constellation: a Multi-Cloud Application Designed with the MODAClouds Integra...
Constellation: a Multi-Cloud Application Designed with the MODAClouds Integra...Constellation: a Multi-Cloud Application Designed with the MODAClouds Integra...
Constellation: a Multi-Cloud Application Designed with the MODAClouds Integra...Marcos Almeida
 
Model driven engineering for big data management systems
Model driven engineering for big data management systemsModel driven engineering for big data management systems
Model driven engineering for big data management systemsMarcos Almeida
 
MOdel-Driven Approach for design and execution of applications on multiple Cl...
MOdel-Driven Approach for design and execution of applications on multiple Cl...MOdel-Driven Approach for design and execution of applications on multiple Cl...
MOdel-Driven Approach for design and execution of applications on multiple Cl...Marcos Almeida
 
Multi datastores - CLOSER'14
Multi datastores - CLOSER'14Multi datastores - CLOSER'14
Multi datastores - CLOSER'14Marcos Almeida
 
From the Desktop to the Multi-clouds: The case of ModelioSaaS
From the Desktop to the Multi-clouds: The case of ModelioSaaSFrom the Desktop to the Multi-clouds: The case of ModelioSaaS
From the Desktop to the Multi-clouds: The case of ModelioSaaSMarcos Almeida
 
EU projects MODAClouds and JUNIPER – Writing and testing transformations from...
EU projects MODAClouds and JUNIPER – Writing and testing transformations from...EU projects MODAClouds and JUNIPER – Writing and testing transformations from...
EU projects MODAClouds and JUNIPER – Writing and testing transformations from...Marcos Almeida
 

More from Marcos Almeida (8)

Integrating research grade model indexing technologies to commercial modellin...
Integrating research grade model indexing technologies to commercial modellin...Integrating research grade model indexing technologies to commercial modellin...
Integrating research grade model indexing technologies to commercial modellin...
 
Constellation: a Multi-Cloud Application Designed with the MODAClouds Integra...
Constellation: a Multi-Cloud Application Designed with the MODAClouds Integra...Constellation: a Multi-Cloud Application Designed with the MODAClouds Integra...
Constellation: a Multi-Cloud Application Designed with the MODAClouds Integra...
 
Model driven engineering for big data management systems
Model driven engineering for big data management systemsModel driven engineering for big data management systems
Model driven engineering for big data management systems
 
MOdel-Driven Approach for design and execution of applications on multiple Cl...
MOdel-Driven Approach for design and execution of applications on multiple Cl...MOdel-Driven Approach for design and execution of applications on multiple Cl...
MOdel-Driven Approach for design and execution of applications on multiple Cl...
 
Multi datastores - CLOSER'14
Multi datastores - CLOSER'14Multi datastores - CLOSER'14
Multi datastores - CLOSER'14
 
From the Desktop to the Multi-clouds: The case of ModelioSaaS
From the Desktop to the Multi-clouds: The case of ModelioSaaSFrom the Desktop to the Multi-clouds: The case of ModelioSaaS
From the Desktop to the Multi-clouds: The case of ModelioSaaS
 
EU projects MODAClouds and JUNIPER – Writing and testing transformations from...
EU projects MODAClouds and JUNIPER – Writing and testing transformations from...EU projects MODAClouds and JUNIPER – Writing and testing transformations from...
EU projects MODAClouds and JUNIPER – Writing and testing transformations from...
 
PIM4Cloud
PIM4CloudPIM4Cloud
PIM4Cloud
 

Recently uploaded

Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
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
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
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
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
🐬 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
 
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
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
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
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
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
 

Recently uploaded (20)

Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
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
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
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...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
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
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
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
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
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...
 

The REMICS model-driven process for migrating legacy applications to the cloud

  • 1. Marcos Almeida SOFTEAM PMDE – ECMFA 2013 The REMICS model-driven process for migrating legacy applications to the cloud
  • 2. Softeam  Specialist in OO technologies, new architectures, new methodologies  Banking, Defense, Telecom  20 years of experience  700 experts  UML Editor: Modelio  CloudML, SysML, MARTE, Code Generation, Documentation, Teamwork
  • 3. REMICS: Reuse and Migration of legacy applications to interoperable Cloud Services  A FP7 EU Project  9/2010  8/2013  Partners Stiftelsen Sintef (NO) Research Fraunhofer-FOCUS (DE) Research Tecnalia Research & Innovation (ES) Research Institute of Information and Communication Technologies – Bulgarian Academy of Sciences (BG) Research University of Tartu (EE) Research Warsaw University of Technology (PL) Research DI Systemer AS (NO) End-user, SME DOME Consulting & Solutions, S.L. (ES) End-user, SME Netfective Technology SA (FR) Tool and consultancy provider, SME Softeam (FR) Tool and consultancy provider, SME
  • 4. In short: How to migrate legacy applications to the cloud?  Cloud  Cloud computing  Virtual Machines, Platforms, Services  “Cheap” scalability  Legacy applications  Client-server based or Desktop based  Better performance?  Better hardware!  “Expensive” scalability  Migration  Retrieve  Refactoring: frameworks x Architectures  Deploy  How  Ad-hoc x Process
  • 5. Cloud computing: cheap infrastructure, platforms and services, but…  Infrastructure as a Service (IaaS):  Virtualizing hardware platform  Operating System as a Service  Cheap “out and up” scalability  Platform as a Service (PaaS):  Virtualizing software platform  Software framework as a Service  Software as a Service (SaaS):  Virtualizing software services  Software as a Service 5 Infrastructure as a Service Platform as a Service Software as a Service
  • 6. … but one needs to deal with legacy applications.  Client-server based or Desktop based  Different frameworks & Platforms  PaaS specific APIs  Desktop UI x Web UI  Different habits  Dependency on specific operating systems  Dependency on specific hardware configurations  Dependency on specific support software (e.g. databases, registry…)  Dependency on writing/reading to/from the file system  Multi-tenancy x Multi-instances  Better performance? Better hardware!  Buy, configure, maintain new hardware…  “Expensive” scalability 6
  • 7. Deal with legacy = Migration = Refactoring  In order to refactor, we need to….  Understand the old architecture  Define the requirements of the new version  Find a cloud provider  Take a look at the supported API’s, platforms, architectures…  Define the new architecture  Refactor the old code. Can we automate any of these? 7
  • 8. Starting points: Models and Services  Model Driven Engineering  Language independent approach  Automated transformations  OMG ADM = Architecture Driven Modernization  Start with knowledge discovery!  Then follow the MDA approach  CIM  PIM  PSM  OMG SoaML = Services Oriented Architecture Modelling Language  Break applications into services! 8
  • 9. State of the Art: Cloud mostly unsupported  No cloud-ready standards  There are no standards for platform independent modelling combining SOA and cloud computing for SaaS design.  Extend the SOA models with peculiarities of cloud computing paradigm.  Nothing more than reversing code  The knowledge discovery is often limited to reverse engineering of legacy code. The business process and rules recovery is poorly addressed.  There is a lack of methods for service interoperability on model level.  Efficiently adapt existing services and increase their interoperability to cope with the migration requirements.  Only Ad-hoc processes  The Service Clouds architecture migration methods are mostly ad-hoc and lack a comprehensive methodology addressing dedicated design patterns and transformations.  Automate the architecture migration with model transformation.  Don’t even think about validating what you’ve done…  There are no dedicated testing technologies for Service Clouds migration validation.  Reuse the legacy application in automated testing of the new migrated SaaS application 9
  • 10. In REMICS: Cloud based migration  A cloud-ready standard : PIM4Cloud  There are no standards for platform independent modelling combining SOA and cloud computing for SaaS design.  Extend the SOA models with peculiarities of cloud computing paradigm.  Reversing business processes too  The knowledge discovery is often limited to reverse engineering of legacy code. The business process and rules recovery is poorly addressed.  There is a lack of methods for service interoperability on model level.  Efficiently adapt existing services and increase their interoperability to cope with the migration requirements.  A migration process  The Service Clouds architecture migration methods are mostly ad-hoc and lack a comprehensive methodology addressing dedicated design patterns and transformations.  Automate the architecture migration with model transformation.  Validation and test tools  There are no dedicated testing technologies for Service Clouds migration validation.  Reuse the legacy application in automated testing of the new migrated SaaS application 10
  • 11. Approach: a process covering everything from the legacy code to the deployed migrated code 11
  • 12. Not only a process, but a set of tools!  Recover  BlueAge (Netfective)  ReDSeeDS (WUT)  Migrate  Modelio (SOFTEAM)  Deploy  Cloudscript (SINTEF)  Manage  Desktop2Cloud (Uni. Tartu) 12
  • 13. The focus of this presentation is the Migration process. 13 Migration Process
  • 14. The DOME Case Study: Managing Travel Providers  DOME Consulting  Solutions for effective management of multiple kinds of travel related providers  DOME Software  Delphi + PL/SQL 14
  • 15. In the end we want to go to the Cloud…  AmazonEC2 IaaS  On the UI: JEE+JSF  On the Server: JBoss + Derby database 15
  • 16. Modelio Orchestrated Migration Process Recovery Recovered Model Component Recovery Model Migration Architecture Model Implementation Model Test Model Deployment Deployment Model Deployed Implementation Model Deployed Test Model 16
  • 17. Modelio Orchestrated Migration Process Recovery Recovered Model Component Recovery Model Migration Architecture Model Implementation Model Test Model Deployment Deployment Model Deployed Implementation Model Deployed Test Model 17
  • 18. The Recovered Model: Entities, Services and Business Processes 18 Entities Services Behavior
  • 19. Modelio Orchestrated Migration Process Recovery Recovered Model Component Recovery Model Migration Architecture Model Implementation Model Test Model Deployment Deployment Model Deployed Implementation Model Deployed Test Model 19
  • 20. From Services to Components 20 Objective: 1. Identifying components by grouping Entities and Services 2. Classifying components into: • Behavior • Presentation • Data
  • 21. Output: The Component Model 21 Behavioral components Data components Presentation component
  • 22. Modelio Orchestrated Migration Process Recovery Recovered Model Migration Implementation Model Test Model Deployment Deployment Model Deployed Implementation Model Deployed Test Model 22
  • 23. Thinking about the Architecture with SoaML, … 23 Participants Services Interfaces
  • 24. then the User Interface using MVC, … 24 User Interface Modelling Behavior Modelling
  • 25. … finally a detailed description of the Entities and Relationships 25 Entities Relationships
  • 26. Modelio Orchestrated Migration Process Recovery Recovered Model Component Recovery Model Migration Deployment Deployment Model Deployed Implementation Model Deployed Test Model 26
  • 27. Now we start thinking about the implementation details 27 Implementation level details
  • 28. Modelio Orchestrated Migration Process Recovery Recovered Model Component Recovery Model Migration Deployment Deployed Implementation Model Deployed Test Model 28 Implementation Model Test Model
  • 29. How to package the new system into meaningful packages? 29 Implementation Packages Deployment Packages
  • 30. Modelio Orchestrated Migration Process Recovery Recovered Model Component Recovery Model Migration Implementation Model Test Model Deployment Deployed Test Model 30
  • 31. Deploying the application with PIM4Cloud 31 Cloud Resources Installed Packages
  • 32. Current State  Experimenting with Migration  Actually supports JEE based IaaS  Working on CloudML standardization (based on PIM4Cloud) 32
  • 33. Lessons Learned  Model based web design may not be a good idea…  But model based refactoring is!  Process may need to be improved  Maybe consider deployment as early as possible  Cloud providers constraints need to be considered when defining the architecture of the application. 33
  • 34. Thank you for your attention! Marcos Almeida SOFTEAM | ModelioSoft marcos.almeida@softeam.fr SOFTEAM R&D Web Site: http://rd.softeam.com ModelioSoft Web Site: http://www.modeliosoft.com www.modelio34

Editor's Notes

  1. Cloud computing = Data centers
  2. Objective:Highly decoupled re-configurable SOA componentsReality:Monolithic and closely coupled architectures 
  3. Objective:Highly decoupled re-configurable SOA componentsReality:Monolithic and closely coupled architectures 
  4. Objective:Highly decoupled re-configurable SOA componentsReality:Monolithic and closely coupled architectures