SlideShare a Scribd company logo
1 of 8
Download to read offline
Call
888.453.0014
                     ADA SOFTWARE
     SOFTWARE MODERNIZATION - POWERED BY MODELING
     The automated software modernization company



Call
888.453.0014

                                                                     Informational Primer




                          Cloud
                        Computing
                           —
                Using Model Driven
                  Architecture



     MEMBER

                                   www.adasoftusa.com
   Software Modernization. It’s all we do!!!      PAGE 1 OF 7
                                               379 THORNALL STREET, WEST TOWER - 7TH FL, METROPARK, NJ 08837
SOFTWARE MODERNIZATION - POWERED BY MODELING
                                                                            EXECUTIVE SUMMARY




   C
                loud Computing is fast becoming the               as required — and instantly.
                largest IT wave in the 21st century, These             are,    obviously,    unique        and   solid
                and for good reasons, because the proposition to users. As a result there is
                Cloud       represents     a     u n i q u e intensifying     corporate   interest    in    deploying
   convergence of technologies and value that was applications to the Cloud.
   not possible until now. As a result, industry                      New platforms, such as the Google
   interest is huge.                                          AppEngine and Microsoft Azure, have sprung up
                                                              for developing applications in the Cloud. The

   23% OF COMPANIES                                           Amazon Web Services (AWS) platform has
                                                              emerged as one of the leaders in Cloud
             The     INFORMATION       MANAGEMENT
                                                              Computing.
   website reports that more than 23 percent of U.S.
   companies are beginning to plan and test the use
   of cloud computing.                                        DEPLOYMENT IN THE CLOUD
                                                                      How easy is it to deploy existing,

   MICROSOFT, GOOGLE, AMAZON                                  traditional software assets to the Cloud?
                                                                      The short answer is: It is not so easy as
             Many of the major software houses, from
                                                              you might think.
   Microsoft, to Google to Amazon, have jumped on
                                                                      This article is a brief practical inquiry into
   to the Cloud bandwagon.
                                                              Cloud Computing and the difficulties of deploying
                                                              traditional software applications into the Cloud.
   WHAT IS CLOUD COMPUTING?                                 It ends with a brief description of our 6-
            According to generally accepted industry step process of deploying software into the
   principles, a Cloud is not just any virtualized Cloud.
   resource.    It   must    exhibit   certain   specific
   characteristics, as below.
      The Cloud must be universally available from
       any ubiquitous PC, Mac, Linux or other
       workstation that is connected to the Internet.
      There need be zero capital investment (or
       zero new investment).
      Users should be able to pay only for what
       they use; in other words, metered payment.
      The     infrastructure   should    be     infinitely
       scalable through virtual servers and desktops
       that can be provisioned and de-provisioned




Software Modernization. It’s all we do!!!                                                                  PAGE 2 OF 7
SOFTWARE MODERNIZATION - POWERED BY MODELING
                              DEPLOYING APPLICATIONS IN THE CLOUD

Cloud Computing - Using MDA
   SAME AS VIRTUALIZATION?                                  Microsoft Online Services … document man-
                                                             agement
              To the uninitiated, cloud computing
                                                            LotusLive … document management
   sounds almost indistinguishable from virtualiza-
   tion. But a cloud is not just any virtualized ser-       NetSuite … financial accounting and more

   vice. It must also demonstrate the virtues of ubiq-
   uitous access, metered payment, zero capital PLATFORM AS A SERVICE (PaaS)
   investment and virtually infinite scalability at will. PaaS provides an entire software devel-

          So while a cloud is indeed a virtualized opment, production and systems administration
   resource, every virtualized resource is not neces- platform as a service. Examples of PaaS today
   sarily a cloud.                                       include:
                                                            Google AppEngine: based on Python and
                                                             Django
   MANY FLAVORS OF CLOUD
                                                            Microsoft Azure: end-to-end tools
              While buzzwords abound, the schematic
                                                            Force.com: based on the SalesForce SaaS
   in Figure-1 represents today’s Cloud Computing
                                                             infrastructure and Apex language
   stack.
                                                            Bungee Connect: visual development studio
                                                             based on Java
   SOFTWARE AS A SERVICE (SaaS)
                                                            LongJump: based on Java/Eclipse
              SaaS is the simplest form of a Cloud and
                                                            WaveMaker:      visual   development     studio
   virtualizes a packaged software (like, ERP, CRM,
                                                             based on Java and hosted on Amazon EC2
   ECM, etc.) in the Cloud, Prime examples of SaaS
                                                                    In order to embrace Cloud Computing
   include:
                                                         we may either:
      Salesforce.com … CRM
                                                            Develop our application directly on a PaaS
      Gmail … Email




                                                   Fig - 1

Software Modernization. It’s all we do!!!                                                        PAGE 3 OF 7
SOFTWARE MODERNIZATION - POWERED BY MODELING

         platform;                                      Google’s renowned and highly scalable infra-
   Or:                                                  structure. But in order to leverage this facility, we
        First develop our web applications using must write applications using -- or migrate appli-
         desktop development tools; and                 cations to – Python, and use Google’s develop-
        Then make the necessary changes to deploy ment frameworks (i.e., Google-specific APIs) that
         those applications to a cloud hosting provider provide tools for using the Google file system and
         such as Amazon EC2.                            data repositories. More recently, Java APIs have
                                                        also been made available.
   INFRASTRUCTURE AS A SERVICE (IaaS)
             Infrastructure as a Service provides an THE AMAZON CLOUD
   entire Data Center – with all its servers, racks,            A leading PaaS today is Amazon Elastic
   network devices, firewalls, storage devices, oper- Cloud Compute (EC2) that supports transactional
   ating systems, system utilities, applications soft- computing, which is what most business software
   ware, software development tools and systems does. But we cannot just port one’s existing ap-
   administration tools – as a virtual resource acces- plication to EC2 without making changes.
   sible through the Internet on demand. Prime ex-              EC2 provides the Web Services API for
   amples of IaaS are:                                  provisioning, managing and de-provisioning vir-
        Amazon Web Services (AWS)                      tual servers inside the Amazon cloud. It provides

        Servepath GoGrid                               for 2 kinds of storage: Ephemeral Storage: tran-

        Rackspace Mosso                                sient storage that expires with the node (virtual

            AWS is currently the leader in functional- server); and Block Storage: persistent storage
   ity spectrum coverage and adoption.                 that survives over time like a NAS. Applications

           Microsoft has announced as of Novem- running inside EC2 can also utilize persistent
   ber 2009 that they will migrate their current PaaS storage from Amazon S3 (Simple Storage Ser-
   offering — Azure — towards a full-fledged IaaS vice).
   Cloud.                                                       But S3 is very different from a file sys-



   CHALLENGES OF DEPLOYING
             As we have stated in short ear-
   lier, it is not easy to deploy an existing
   application to the cloud.


   PROPRIETARY NATURE OF CLOUDS
   GOOGLE APP ENGINE
             A simple example of this is with
   relation to the Google App Engine PaaS,
   which lets us build applications on
                                                                               Fig - 2


Software Modernization. It’s all we do!!!                                                       PAGE 4 OF 7
SOFTWARE MODERNIZATION - POWERED BY MODELING

   tem. It provides a 2-level namespace and comes              Whatever be the method, the fact re-
   in the form of ―buckets‖ that must be accessed mains that applications being ported to the Ama-
   via Web Services that allow for data handling, zon Cloud must undergo changes at least in their
   such as: find buckets; find objects; discover their Database Layer to handle Amazon S3.
   metadata; create new buckets; upload new ob-
   ject; delete existing buckets and objects. S3 pro- TRANSACTION PROCESSING IN THE CLOUD
   vides the REST API and the SOAP API to make                 Transactional Computing is what most
   it easier. We can also use an API wrapper for our business software does. A transaction consists of
   language of choice that can be extracted out of one or more (usually more) pieces of data that
   the S3 REST API , e.g., Jet3t may be used for must be processed as one unit (one transaction)
   Java development. Below are examples using and establish relationships with related data. The
   the command line for S3:                            heart of a transaction processing system is a da-
           Creates        a   bucket       c a l l e d tabase. In a typical transactional system, an Ap-
   ―adasoftsalesorder‖:                                plication Server models the data stored in the
   S3cmd mb s3://adasoft.sales.order                   database and presents it to the user through a
           Loads a file into the bucket:S3cmd put web based interface.
   sales_order_201002.xls s3:// adasoft.sales.order/           But our transaction processing business
   sales_order_201002.xls                              application may not be that easily ported to a




                                            Fig - 3



Software Modernization. It’s all we do!!!                                                   PAGE 5 OF 7
SOFTWARE MODERNIZATION - POWERED BY MODELING

   Cloud. For example, if our architecture uses                 How to programmatically ensure good
   Memory based locking to resolve possible con- primary key management? There are several
   flicts, then our architecture will fail in the Cloud solutions.
   because the Cloud dynamically scales applica-                UUID: We could use the standard UUIDs
   tion processing by a process akin to clustering to serve as our primary key mechanism. A UUID
   servers in the non-Cloud world. Possible solu- (Universal Unique Identifier) is a 128-bit number
   tions:                                               used to uniquely identify some object or entity on
       Convert to clustering technology or cross- the Internet. Depending on the specific mecha-
        server shared memory systems.                   nisms used, a UUID is either guaranteed to be
       Use the database as the authority on the different or is, at least, extremely likely to be dif-
        state of the system. Provide transactional ferent from any other UUID generated until 3400
                        integrity through stored proce- AD. But there are potential downsides as well.
It is not easy to de-   dures (which destroys port-             Better solution: Let the database manage
ploy into the Cloud
                        ability across databases).      key generation through the creation of a SE-
Re-programming is          Keep our protection at the QUENCER table. If necessary multiple tables
required, no matter
 which Cloud you        application server level but can share the same primary key space so that
    deploy to.          still achieve multiserver trans- we don’t have to create multiple sequencer ta-
                        actional integrity by creating bles. This will generate predictably sequential
        protection against dirty writes or by creating a keys. If we need to remove the element of pre-
        lock in the database.                            dictability from key generation then we need to

       Create a field in the database table for man- introduce some level of randomness into the
        aging the lock.                               equation.

             We cannot just deploy a Transactional              Whatever     be    the    solution,      re-

   System on the Cloud without some programming programming may be required.
   changes.
                                                        SENSITIVE DATA HANDLING

   PRIMARY KEY MANAGEMENT                                       Sensitive Data – such as credit cards,

           With a web application operating behind health records and other confidential information
   a load balancer in which individual nodes within – needs special handling in the Cloud. We may
   the web application do not share state informa- have to segment our data store in the Cloud in
   tion with each other, the problem of cross- geographically dispersed locations so that no
   database primary key generation becomes a single piece (segment) constitutes meaningful
   challenge.      The database engine’s auto- data that can be misused. Alternately, we can
   increment functionality is specific to the database store all private information outside the cloud but
   you are using and is not very flexible: often it is execute as much application logic as possible
   guaranteed to be unique only within a single inside the cloud.
   server.                                                      These strategies cannot be automatically
                                                        implemented without code changes.


Software Modernization. It’s all we do!!!                                                     PAGE 6 OF 7
SOFTWARE MODERNIZATION - POWERED BY MODELING


   DEPLOYING USING MDA                                  DISASTER RECOVERY IN THE CLOUD
           Our automated application transforma-             A new platform creates new scope for
   tion techniques based on MDA enable us to ex- innovation. Disaster recovery woes can be ad-
   tract the Data Access Layer and the Database dressed by segmenting data across multiple geo-
   Layer from any application that needs to be graphical locations — say in 12 segments, where
   ported to the Cloud; making those Cloud- any 8 segments can enable us to fully reconstruct
   compliant, and deploying, in a 6-step process as the data.
   depicted in Figure-4.
           The DESIGN RECOVERY process is the
   typical reverse engineering step we employ
   based on OMG’s Architecture Driven Moderniza-
   tion (ADM) standard.
           Since much of the difficulty in deploying
   to the Cloud involved persistent data store and
   retrieval methods, the original Data Access Layer
   and the Database Layer are extracted from the
   overall software and separately modernized, as
   shown in Figure-4. They are then re-integrated
   with the rest of the original software and then we
   have deployment-ready code.




                                                   Fig – 4


Software Modernization. It’s all we do!!!                                              PAGE 7 OF 7
SOFTWARE MODERNIZATION - POWERED BY MODELING
                             When one needs a heart bypass, one goes to a cardiac surgeon.
Call
                           When one needs the best storage solutions, one goes to EMC, the storage specialists.
888.453.0014
                         Why would you go to Accenture, Cap Gemini, Infosys or Wipro for software modernization?
                       WE ARE THE SOFTWARE MODERNIZATION SPECIALISTS. IT IS ALL WE DO.




     Software modernization.
     It’s all we do!!!

                                     www.adasoftusa.com
                                                 379 THORNALL STREET, WEST TOWER - 7TH FL, METROPARK, NJ 08837

   Software Modernization. It’s all we do!!!                                         PAGE 8 OF 7

More Related Content

What's hot

Build and run a vertical Cloud Service
Build and run a vertical Cloud ServiceBuild and run a vertical Cloud Service
Build and run a vertical Cloud ServiceSITEFORUM
 
The cloud transforms
The cloud transformsThe cloud transforms
The cloud transformsEric Rubin
 
Cloud 9: Nine Reasons to Take the Cloud Seriously_White Paper
Cloud 9: Nine Reasons to Take the Cloud Seriously_White PaperCloud 9: Nine Reasons to Take the Cloud Seriously_White Paper
Cloud 9: Nine Reasons to Take the Cloud Seriously_White PaperNewton Day Uploads
 
Managing Security and Delivering Performance in the Cloud
Managing Security and Delivering Performance in the Cloud Managing Security and Delivering Performance in the Cloud
Managing Security and Delivering Performance in the Cloud Software Park Thailand
 
What can the cloud do for me? - Interview with Eli Almog
What can the cloud do for me? - Interview with Eli AlmogWhat can the cloud do for me? - Interview with Eli Almog
What can the cloud do for me? - Interview with Eli AlmogAppFirst
 
Cloud Computing - Everything you wanted to know!
Cloud Computing - Everything you wanted to know!Cloud Computing - Everything you wanted to know!
Cloud Computing - Everything you wanted to know!Debasish Patra
 
Cloud adoption patterns April 11 2016
Cloud adoption patterns April 11 2016Cloud adoption patterns April 11 2016
Cloud adoption patterns April 11 2016Kyle Brown
 
Whitepaper: Choose the cloud platform that beats the competition - Citrix Clo...
Whitepaper: Choose the cloud platform that beats the competition - Citrix Clo...Whitepaper: Choose the cloud platform that beats the competition - Citrix Clo...
Whitepaper: Choose the cloud platform that beats the competition - Citrix Clo...Citrix
 
The Best of Microsoft Tech Days 2013, following the Cape Town sessions
The Best of Microsoft Tech Days 2013, following the Cape Town sessionsThe Best of Microsoft Tech Days 2013, following the Cape Town sessions
The Best of Microsoft Tech Days 2013, following the Cape Town sessionsBluegrass Digital
 
IBM Cloud Provocative Statements Whitepaper
IBM Cloud Provocative Statements WhitepaperIBM Cloud Provocative Statements Whitepaper
IBM Cloud Provocative Statements WhitepaperHarley Capewell
 
HP Software Master Class Keynote by Mario Derba
HP Software Master Class Keynote by Mario DerbaHP Software Master Class Keynote by Mario Derba
HP Software Master Class Keynote by Mario DerbaMario Derba
 
Virtualization to Cloud Evolution “IT as a Service”
 Virtualization to Cloud Evolution “IT as a Service” Virtualization to Cloud Evolution “IT as a Service”
Virtualization to Cloud Evolution “IT as a Service”Mohamed Shorbagy
 
Cloud computing Introductory Session
Cloud computing Introductory SessionCloud computing Introductory Session
Cloud computing Introductory SessionAbhinav Parmar
 
"SEEDING CLOUDS ON POWER SYSTEMS WITH IBM SMARTCLOUD™ ENTRY"
"SEEDING CLOUDS ON POWER SYSTEMS WITH IBM SMARTCLOUD™ ENTRY""SEEDING CLOUDS ON POWER SYSTEMS WITH IBM SMARTCLOUD™ ENTRY"
"SEEDING CLOUDS ON POWER SYSTEMS WITH IBM SMARTCLOUD™ ENTRY"IBM India Smarter Computing
 
Saugatuck Glue Con.051209.Mwest
Saugatuck    Glue Con.051209.MwestSaugatuck    Glue Con.051209.Mwest
Saugatuck Glue Con.051209.Mwestmik3w3st
 

What's hot (17)

Build and run a vertical Cloud Service
Build and run a vertical Cloud ServiceBuild and run a vertical Cloud Service
Build and run a vertical Cloud Service
 
The cloud transforms
The cloud transformsThe cloud transforms
The cloud transforms
 
Cloud 9: Nine Reasons to Take the Cloud Seriously_White Paper
Cloud 9: Nine Reasons to Take the Cloud Seriously_White PaperCloud 9: Nine Reasons to Take the Cloud Seriously_White Paper
Cloud 9: Nine Reasons to Take the Cloud Seriously_White Paper
 
Managing Security and Delivering Performance in the Cloud
Managing Security and Delivering Performance in the Cloud Managing Security and Delivering Performance in the Cloud
Managing Security and Delivering Performance in the Cloud
 
What can the cloud do for me? - Interview with Eli Almog
What can the cloud do for me? - Interview with Eli AlmogWhat can the cloud do for me? - Interview with Eli Almog
What can the cloud do for me? - Interview with Eli Almog
 
Cloud Computing - Everything you wanted to know!
Cloud Computing - Everything you wanted to know!Cloud Computing - Everything you wanted to know!
Cloud Computing - Everything you wanted to know!
 
Cloud adoption patterns April 11 2016
Cloud adoption patterns April 11 2016Cloud adoption patterns April 11 2016
Cloud adoption patterns April 11 2016
 
Whitepaper: Choose the cloud platform that beats the competition - Citrix Clo...
Whitepaper: Choose the cloud platform that beats the competition - Citrix Clo...Whitepaper: Choose the cloud platform that beats the competition - Citrix Clo...
Whitepaper: Choose the cloud platform that beats the competition - Citrix Clo...
 
The Best of Microsoft Tech Days 2013, following the Cape Town sessions
The Best of Microsoft Tech Days 2013, following the Cape Town sessionsThe Best of Microsoft Tech Days 2013, following the Cape Town sessions
The Best of Microsoft Tech Days 2013, following the Cape Town sessions
 
IBM Cloud Provocative Statements Whitepaper
IBM Cloud Provocative Statements WhitepaperIBM Cloud Provocative Statements Whitepaper
IBM Cloud Provocative Statements Whitepaper
 
HP Software Master Class Keynote by Mario Derba
HP Software Master Class Keynote by Mario DerbaHP Software Master Class Keynote by Mario Derba
HP Software Master Class Keynote by Mario Derba
 
CLOUD COMPUTING
CLOUD COMPUTINGCLOUD COMPUTING
CLOUD COMPUTING
 
Virtualization to Cloud Evolution “IT as a Service”
 Virtualization to Cloud Evolution “IT as a Service” Virtualization to Cloud Evolution “IT as a Service”
Virtualization to Cloud Evolution “IT as a Service”
 
Cloud computing Introductory Session
Cloud computing Introductory SessionCloud computing Introductory Session
Cloud computing Introductory Session
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
"SEEDING CLOUDS ON POWER SYSTEMS WITH IBM SMARTCLOUD™ ENTRY"
"SEEDING CLOUDS ON POWER SYSTEMS WITH IBM SMARTCLOUD™ ENTRY""SEEDING CLOUDS ON POWER SYSTEMS WITH IBM SMARTCLOUD™ ENTRY"
"SEEDING CLOUDS ON POWER SYSTEMS WITH IBM SMARTCLOUD™ ENTRY"
 
Saugatuck Glue Con.051209.Mwest
Saugatuck    Glue Con.051209.MwestSaugatuck    Glue Con.051209.Mwest
Saugatuck Glue Con.051209.Mwest
 

Viewers also liked

Disaster Recovery as a Service - by the Quantum Group
Disaster Recovery as a Service - by the Quantum GroupDisaster Recovery as a Service - by the Quantum Group
Disaster Recovery as a Service - by the Quantum GroupProbal DasGupta
 
Disaster Recovery as a Service
Disaster Recovery as a ServiceDisaster Recovery as a Service
Disaster Recovery as a ServiceProbal DasGupta
 
Software Modernization and Legacy Migration Primer
Software Modernization and Legacy Migration PrimerSoftware Modernization and Legacy Migration Primer
Software Modernization and Legacy Migration PrimerProbal DasGupta
 
Actionable Intelligence From Unstructured Data using MDA
Actionable Intelligence From Unstructured Data using MDAActionable Intelligence From Unstructured Data using MDA
Actionable Intelligence From Unstructured Data using MDAProbal DasGupta
 
Demystifying Cloud Computing
Demystifying Cloud ComputingDemystifying Cloud Computing
Demystifying Cloud ComputingProbal DasGupta
 
Understanding HUMAN RESOURCE DEVELOPMENT (HRD)
Understanding HUMAN RESOURCE DEVELOPMENT (HRD)Understanding HUMAN RESOURCE DEVELOPMENT (HRD)
Understanding HUMAN RESOURCE DEVELOPMENT (HRD)Probal DasGupta
 

Viewers also liked (6)

Disaster Recovery as a Service - by the Quantum Group
Disaster Recovery as a Service - by the Quantum GroupDisaster Recovery as a Service - by the Quantum Group
Disaster Recovery as a Service - by the Quantum Group
 
Disaster Recovery as a Service
Disaster Recovery as a ServiceDisaster Recovery as a Service
Disaster Recovery as a Service
 
Software Modernization and Legacy Migration Primer
Software Modernization and Legacy Migration PrimerSoftware Modernization and Legacy Migration Primer
Software Modernization and Legacy Migration Primer
 
Actionable Intelligence From Unstructured Data using MDA
Actionable Intelligence From Unstructured Data using MDAActionable Intelligence From Unstructured Data using MDA
Actionable Intelligence From Unstructured Data using MDA
 
Demystifying Cloud Computing
Demystifying Cloud ComputingDemystifying Cloud Computing
Demystifying Cloud Computing
 
Understanding HUMAN RESOURCE DEVELOPMENT (HRD)
Understanding HUMAN RESOURCE DEVELOPMENT (HRD)Understanding HUMAN RESOURCE DEVELOPMENT (HRD)
Understanding HUMAN RESOURCE DEVELOPMENT (HRD)
 

Similar to Cloud Computing using MDA (20)

Cloud1
Cloud1Cloud1
Cloud1
 
Cloud Computing for SMBs
Cloud Computing for SMBsCloud Computing for SMBs
Cloud Computing for SMBs
 
Discovering the value of the cloud for the business session 2
Discovering the value of the cloud for the business   session 2Discovering the value of the cloud for the business   session 2
Discovering the value of the cloud for the business session 2
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
Cloud Computing: Latest Buzzword or Glimpse of the Future?
Cloud Computing: Latest Buzzword or Glimpse of the Future?Cloud Computing: Latest Buzzword or Glimpse of the Future?
Cloud Computing: Latest Buzzword or Glimpse of the Future?
 
Discovering the value of the cloud for the business
Discovering the value of the cloud for the business Discovering the value of the cloud for the business
Discovering the value of the cloud for the business
 
Ppt on cloud computing
Ppt on cloud computingPpt on cloud computing
Ppt on cloud computing
 
Basics of cloud computing & salesforce.com
Basics of cloud computing & salesforce.comBasics of cloud computing & salesforce.com
Basics of cloud computing & salesforce.com
 
Application Architecture for Cloud Computing
Application Architecture for Cloud Computing Application Architecture for Cloud Computing
Application Architecture for Cloud Computing
 
Cloud Computing Essays
Cloud Computing EssaysCloud Computing Essays
Cloud Computing Essays
 
Cloud computing writeup
Cloud computing writeupCloud computing writeup
Cloud computing writeup
 
Sami-Cloud
Sami-CloudSami-Cloud
Sami-Cloud
 
cloud computing by satwik
cloud computing by satwikcloud computing by satwik
cloud computing by satwik
 
Ec24817824
Ec24817824Ec24817824
Ec24817824
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 

Recently uploaded

Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 

Recently uploaded (20)

Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 

Cloud Computing using MDA

  • 1. Call 888.453.0014 ADA SOFTWARE SOFTWARE MODERNIZATION - POWERED BY MODELING The automated software modernization company Call 888.453.0014 Informational Primer Cloud Computing — Using Model Driven Architecture MEMBER www.adasoftusa.com Software Modernization. It’s all we do!!! PAGE 1 OF 7 379 THORNALL STREET, WEST TOWER - 7TH FL, METROPARK, NJ 08837
  • 2. SOFTWARE MODERNIZATION - POWERED BY MODELING EXECUTIVE SUMMARY C loud Computing is fast becoming the as required — and instantly. largest IT wave in the 21st century, These are, obviously, unique and solid and for good reasons, because the proposition to users. As a result there is Cloud represents a u n i q u e intensifying corporate interest in deploying convergence of technologies and value that was applications to the Cloud. not possible until now. As a result, industry New platforms, such as the Google interest is huge. AppEngine and Microsoft Azure, have sprung up for developing applications in the Cloud. The 23% OF COMPANIES Amazon Web Services (AWS) platform has emerged as one of the leaders in Cloud The INFORMATION MANAGEMENT Computing. website reports that more than 23 percent of U.S. companies are beginning to plan and test the use of cloud computing. DEPLOYMENT IN THE CLOUD How easy is it to deploy existing, MICROSOFT, GOOGLE, AMAZON traditional software assets to the Cloud? The short answer is: It is not so easy as Many of the major software houses, from you might think. Microsoft, to Google to Amazon, have jumped on This article is a brief practical inquiry into to the Cloud bandwagon. Cloud Computing and the difficulties of deploying traditional software applications into the Cloud. WHAT IS CLOUD COMPUTING? It ends with a brief description of our 6- According to generally accepted industry step process of deploying software into the principles, a Cloud is not just any virtualized Cloud. resource. It must exhibit certain specific characteristics, as below.  The Cloud must be universally available from any ubiquitous PC, Mac, Linux or other workstation that is connected to the Internet.  There need be zero capital investment (or zero new investment).  Users should be able to pay only for what they use; in other words, metered payment.  The infrastructure should be infinitely scalable through virtual servers and desktops that can be provisioned and de-provisioned Software Modernization. It’s all we do!!! PAGE 2 OF 7
  • 3. SOFTWARE MODERNIZATION - POWERED BY MODELING DEPLOYING APPLICATIONS IN THE CLOUD Cloud Computing - Using MDA SAME AS VIRTUALIZATION?  Microsoft Online Services … document man- agement To the uninitiated, cloud computing  LotusLive … document management sounds almost indistinguishable from virtualiza- tion. But a cloud is not just any virtualized ser-  NetSuite … financial accounting and more vice. It must also demonstrate the virtues of ubiq- uitous access, metered payment, zero capital PLATFORM AS A SERVICE (PaaS) investment and virtually infinite scalability at will. PaaS provides an entire software devel- So while a cloud is indeed a virtualized opment, production and systems administration resource, every virtualized resource is not neces- platform as a service. Examples of PaaS today sarily a cloud. include:  Google AppEngine: based on Python and Django MANY FLAVORS OF CLOUD  Microsoft Azure: end-to-end tools While buzzwords abound, the schematic  Force.com: based on the SalesForce SaaS in Figure-1 represents today’s Cloud Computing infrastructure and Apex language stack.  Bungee Connect: visual development studio based on Java SOFTWARE AS A SERVICE (SaaS)  LongJump: based on Java/Eclipse SaaS is the simplest form of a Cloud and  WaveMaker: visual development studio virtualizes a packaged software (like, ERP, CRM, based on Java and hosted on Amazon EC2 ECM, etc.) in the Cloud, Prime examples of SaaS In order to embrace Cloud Computing include: we may either:  Salesforce.com … CRM  Develop our application directly on a PaaS  Gmail … Email Fig - 1 Software Modernization. It’s all we do!!! PAGE 3 OF 7
  • 4. SOFTWARE MODERNIZATION - POWERED BY MODELING platform; Google’s renowned and highly scalable infra- Or: structure. But in order to leverage this facility, we  First develop our web applications using must write applications using -- or migrate appli- desktop development tools; and cations to – Python, and use Google’s develop-  Then make the necessary changes to deploy ment frameworks (i.e., Google-specific APIs) that those applications to a cloud hosting provider provide tools for using the Google file system and such as Amazon EC2. data repositories. More recently, Java APIs have also been made available. INFRASTRUCTURE AS A SERVICE (IaaS) Infrastructure as a Service provides an THE AMAZON CLOUD entire Data Center – with all its servers, racks, A leading PaaS today is Amazon Elastic network devices, firewalls, storage devices, oper- Cloud Compute (EC2) that supports transactional ating systems, system utilities, applications soft- computing, which is what most business software ware, software development tools and systems does. But we cannot just port one’s existing ap- administration tools – as a virtual resource acces- plication to EC2 without making changes. sible through the Internet on demand. Prime ex- EC2 provides the Web Services API for amples of IaaS are: provisioning, managing and de-provisioning vir-  Amazon Web Services (AWS) tual servers inside the Amazon cloud. It provides  Servepath GoGrid for 2 kinds of storage: Ephemeral Storage: tran-  Rackspace Mosso sient storage that expires with the node (virtual AWS is currently the leader in functional- server); and Block Storage: persistent storage ity spectrum coverage and adoption. that survives over time like a NAS. Applications Microsoft has announced as of Novem- running inside EC2 can also utilize persistent ber 2009 that they will migrate their current PaaS storage from Amazon S3 (Simple Storage Ser- offering — Azure — towards a full-fledged IaaS vice). Cloud. But S3 is very different from a file sys- CHALLENGES OF DEPLOYING As we have stated in short ear- lier, it is not easy to deploy an existing application to the cloud. PROPRIETARY NATURE OF CLOUDS GOOGLE APP ENGINE A simple example of this is with relation to the Google App Engine PaaS, which lets us build applications on Fig - 2 Software Modernization. It’s all we do!!! PAGE 4 OF 7
  • 5. SOFTWARE MODERNIZATION - POWERED BY MODELING tem. It provides a 2-level namespace and comes Whatever be the method, the fact re- in the form of ―buckets‖ that must be accessed mains that applications being ported to the Ama- via Web Services that allow for data handling, zon Cloud must undergo changes at least in their such as: find buckets; find objects; discover their Database Layer to handle Amazon S3. metadata; create new buckets; upload new ob- ject; delete existing buckets and objects. S3 pro- TRANSACTION PROCESSING IN THE CLOUD vides the REST API and the SOAP API to make Transactional Computing is what most it easier. We can also use an API wrapper for our business software does. A transaction consists of language of choice that can be extracted out of one or more (usually more) pieces of data that the S3 REST API , e.g., Jet3t may be used for must be processed as one unit (one transaction) Java development. Below are examples using and establish relationships with related data. The the command line for S3: heart of a transaction processing system is a da- Creates a bucket c a l l e d tabase. In a typical transactional system, an Ap- ―adasoftsalesorder‖: plication Server models the data stored in the S3cmd mb s3://adasoft.sales.order database and presents it to the user through a Loads a file into the bucket:S3cmd put web based interface. sales_order_201002.xls s3:// adasoft.sales.order/ But our transaction processing business sales_order_201002.xls application may not be that easily ported to a Fig - 3 Software Modernization. It’s all we do!!! PAGE 5 OF 7
  • 6. SOFTWARE MODERNIZATION - POWERED BY MODELING Cloud. For example, if our architecture uses How to programmatically ensure good Memory based locking to resolve possible con- primary key management? There are several flicts, then our architecture will fail in the Cloud solutions. because the Cloud dynamically scales applica- UUID: We could use the standard UUIDs tion processing by a process akin to clustering to serve as our primary key mechanism. A UUID servers in the non-Cloud world. Possible solu- (Universal Unique Identifier) is a 128-bit number tions: used to uniquely identify some object or entity on  Convert to clustering technology or cross- the Internet. Depending on the specific mecha- server shared memory systems. nisms used, a UUID is either guaranteed to be  Use the database as the authority on the different or is, at least, extremely likely to be dif- state of the system. Provide transactional ferent from any other UUID generated until 3400 integrity through stored proce- AD. But there are potential downsides as well. It is not easy to de- dures (which destroys port- Better solution: Let the database manage ploy into the Cloud ability across databases). key generation through the creation of a SE- Re-programming is  Keep our protection at the QUENCER table. If necessary multiple tables required, no matter which Cloud you application server level but can share the same primary key space so that deploy to. still achieve multiserver trans- we don’t have to create multiple sequencer ta- actional integrity by creating bles. This will generate predictably sequential protection against dirty writes or by creating a keys. If we need to remove the element of pre- lock in the database. dictability from key generation then we need to  Create a field in the database table for man- introduce some level of randomness into the aging the lock. equation. We cannot just deploy a Transactional Whatever be the solution, re- System on the Cloud without some programming programming may be required. changes. SENSITIVE DATA HANDLING PRIMARY KEY MANAGEMENT Sensitive Data – such as credit cards, With a web application operating behind health records and other confidential information a load balancer in which individual nodes within – needs special handling in the Cloud. We may the web application do not share state informa- have to segment our data store in the Cloud in tion with each other, the problem of cross- geographically dispersed locations so that no database primary key generation becomes a single piece (segment) constitutes meaningful challenge. The database engine’s auto- data that can be misused. Alternately, we can increment functionality is specific to the database store all private information outside the cloud but you are using and is not very flexible: often it is execute as much application logic as possible guaranteed to be unique only within a single inside the cloud. server. These strategies cannot be automatically implemented without code changes. Software Modernization. It’s all we do!!! PAGE 6 OF 7
  • 7. SOFTWARE MODERNIZATION - POWERED BY MODELING DEPLOYING USING MDA DISASTER RECOVERY IN THE CLOUD Our automated application transforma- A new platform creates new scope for tion techniques based on MDA enable us to ex- innovation. Disaster recovery woes can be ad- tract the Data Access Layer and the Database dressed by segmenting data across multiple geo- Layer from any application that needs to be graphical locations — say in 12 segments, where ported to the Cloud; making those Cloud- any 8 segments can enable us to fully reconstruct compliant, and deploying, in a 6-step process as the data. depicted in Figure-4. The DESIGN RECOVERY process is the typical reverse engineering step we employ based on OMG’s Architecture Driven Moderniza- tion (ADM) standard. Since much of the difficulty in deploying to the Cloud involved persistent data store and retrieval methods, the original Data Access Layer and the Database Layer are extracted from the overall software and separately modernized, as shown in Figure-4. They are then re-integrated with the rest of the original software and then we have deployment-ready code. Fig – 4 Software Modernization. It’s all we do!!! PAGE 7 OF 7
  • 8. SOFTWARE MODERNIZATION - POWERED BY MODELING When one needs a heart bypass, one goes to a cardiac surgeon. Call When one needs the best storage solutions, one goes to EMC, the storage specialists. 888.453.0014 Why would you go to Accenture, Cap Gemini, Infosys or Wipro for software modernization? WE ARE THE SOFTWARE MODERNIZATION SPECIALISTS. IT IS ALL WE DO. Software modernization. It’s all we do!!! www.adasoftusa.com 379 THORNALL STREET, WEST TOWER - 7TH FL, METROPARK, NJ 08837 Software Modernization. It’s all we do!!! PAGE 8 OF 7