SlideShare a Scribd company logo
1 of 57
Cool Apps: Building Cryospheric
Data Applications With Standards-
Based Service Oriented Architecture
Julia A Collins, Ian Truslove, Brendan W Billingsley, Joseph
Oldenburg, Mary Jo Brodzik, Scott Lewis, Miao Liu
Outline


  1.   Introduction
  2.   The Web, circa 2012
  3.   3-tier and Service Oriented Architectures (SOA)
  4.   Service standards
  5.   NSIDC apps
  6.   Proposal




             Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
INTRODUCTION


   Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Introduction


  The National Snow and Ice Data Center (NSIDC)
  supports research into our world's frozen realms: the
  snow, ice, glaciers, frozen ground, and climate
  interactions that make up Earth's cryosphere.
  NSIDC manages and distributes scientific data, creates
  tools for data access, supports data users, performs
  scientific research, and educates the public about the
  cryosphere.



            Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Introduction


  The National Snow and Ice Data Center (NSIDC)
  supports research into our world's frozen realms: the
  snow, ice, glaciers, frozen ground, and climate
  interactions that make up Earth's cryosphere.
  NSIDC manages and distributes scientific data, creates
  tools for data access, supports data users, performs
  scientific research, and educates the public about the
  cryosphere.



            Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Introduction


  distributes scientific data



  creates tools for data access



  supports data users



             Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Introduction


  distributes scientific data



  creates tools for data access



  supports data users



             Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Introduction


              Distribution
              of scientific
                  data




                The
                Web
 Supports                                   Tools for
 data users                                data access




              Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Introduction


              Distribution
              of scientific
                  data
                                                      3rd
                                                     party
                                                     tools

                The
                Web
 Supports                                   Tools for
 data users                                data access




              Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
THE WEB


   Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Web Applications




http://blog.fogcreek.com/the-trello-tech-stack/

                          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
3-Tier Web Architecture


          Presentation                                            JavaScript Web client

        Business Logic                                            Application Server

                           Data                                   Data Abstraction / ORM

                                                                  Database




          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
3-Tier Web Architecture




         The Problem:




          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
3-Tier Web Architecture




         The Problem:                                             Tight Coupling




          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
3-Tier Web Architecture




         The Problem:



1 user interface requires 1 app stack




          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
3-Tier Web Architecture




         The Problem:
                …and perhaps

                                  portal
                               proliferation
                                 problem

          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
3-Tier Web Architecture


                                  Extending…




          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
3-Tier Web Architecture




                                                 Bridge




                       New app                                       Other data



          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
3-Tier Web Architecture




         The Problem:



 1 user interface requires ≥1 app stack
        (hopefully in the same language)



          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
SOA Web Architecture

                                             Client App 1




                                       XML                      JSON




                                               System A




         Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Service Interfaces


       Clients consume service interfaces

                       Loose                                       coupling

        Systems expose service interfaces




           Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Service Interfaces


                                   Extending…




           Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
SOA Web Architecture

                                             Client App 1




                                               System A




         Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Service Interfaces


          The Problem:


                                  service interface
                                    proliferation
                                      problem




           Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Service Interfaces and Standards


      Clients consume service interfaces


       …service interfaces conforming to
                   standards




          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Service Standards

        data:                  OGC WMS, WFS, WPS, …
                               OPeNDAP
                               REST
   publishing:                 ATOM
    discovery:                 ESIP OpenSearch
    metadata:                  OAI-PMH


           Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Service Interfaces


                                       Reusing…




           Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
SOA Web Architecture

                                             Client App 1
                 Client App 2                                             Client App 3




                                               System A                                       System B




Many clients…
         Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
SOA Web Architecture

                                             Client App 1




                               System A                         System B




Many service providers…
         Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Implementing Services


                                   Adopt
                                     >
                                  Extend
                                     >
                               Roll your own



         Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Service Standards




    REST is aN
  Architectural
      style!




          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Services: Roll Your Own


  Desirable properties include:

                    Discoverability
                  Comprehensibility
                       Universality
                      Extensibility


          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Services, RESTfully

 Discoverability:
      hypermedia constraint, published media types
 Comprehensibility:
      familiar URIs; media types
 Universality:
      HTTP transport; XML or JSON payloads
 Extensibility:
      XML, e.g. ATOM

            Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Implementing Services


                   Adopt
                     >
                   Extend
                     >
       Roll your own RESTful services



         Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
SOA @ NSIDC


    Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
NSIDC’s Service Oriented Architecture
Web Apps



                                                                                                                        ACADIS Arctic
                             IceBridge Portal
                                                                                                                        Data Explorer



                   WMS,                      ESIP                                 ESIP                                    ESIP
                   WFS                       OpenSearch                           OpenSearch                        OpenSearch


                                  Libre                                Searchlight
                                Aggregator                              Services                         jOAI                    GI-Cat
                                                                                                                     OAI-PMH
Services




                                            ESIP                       Searchlight
                                            Collection                   Core                           DIF
                                                                                                       DIF
                                            Cast
                                                                                                        XML
                                                                                                       XML
            MapServer              Libre
                                DataCaster
                                                                                                get_metadata


             GeoTIFF
            GeoTIFF
Data




           GeoTIFF
             map data
            map data                                                               Metadata DB
           map data


                          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
NSIDC’s Service Oriented Architecture
Web Apps



                                                                                                                        ACADIS Arctic
                             IceBridge Portal
                                                                                                                        Data Explorer



                   WMS,                      ESIP                                 ESIP                                    ESIP
                   WFS                       OpenSearch                           OpenSearch                        OpenSearch


                                  Libre                                Searchlight
                                Aggregator                              Services                         jOAI                    GI-Cat
                                                                                                                     OAI-PMH
Services




                                            ESIP                       Searchlight
                                            Collection                   Core                           DIF
                                                                                                       DIF
                                            Cast
                                                                                                        XML
                                                                                                       XML
            MapServer              Libre
                                DataCaster
                                                                                                get_metadata


             GeoTIFF
            GeoTIFF
Data




           GeoTIFF
             map data
            map data                                                               Metadata DB
           map data


                          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Operation IceBridge Portal




          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Operation IceBridge Portal

        ESIP                                                                              WMS
   OpenSearch


                                                                                          WFS                            NSIDC
                                                           ESIP                                                         MapServer

                                                           OpenSearch
     NSIDC
   Searchlight




                                          Libre
                                        Aggregator


                 Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
ACADIS Arctic Data Explorer




         Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
ACADIS Arctic Data Explorer

                                 ESIP OpenSearch

ACADIS Arctic Data
    Explorer
                                                                                                              OAI-PMH
               OPeNDAP




            EOL field                        NSIDC                                 Met.no
             catalog                        metadata                              metadata                        ACADIS
            (NCAR)                           catalog                               catalog                    Gateway (NCAR)


              Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
+/-/Δ: OBSERVATIONS


    Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Disadvantages


                         Complexity
                         Compromise
                       Development time




         Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Advantages


             Reuse (and reusability)
             Off-The-Shelf Software
               Development time




         Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Challenges


                            Documentation
                              Adoption
                             Continuity




         Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
THE WEB OF SERVICES


    Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
The Web of Services


      Clients consume service interfaces




          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
The Web of Services




                                Web clients…




          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
The Web of Services




  Web browsers have security restrictions…
          (“same origin policy”)




          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
The Web of Services




                           My web client
             may not consume
     your service interface

          Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
A MODEST PROPOSAL


    Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Goal



  Increase the pool
  of potential users
 (web applications)
        of our data



        Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
HTML5 Standard: CORS


    CORS: Cross Origin Resource Sharing

       http://www.w3.org/TR/cors/
           http://enable-cors.org/




        Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Proposal


           Write service-enabled clients

           Build standards-based services

                                   Enable CORS

       Share and reuse data and services


           Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Poster


         Joe Oldenburg: “Cool Apps”

                                 IN43B-1517




         Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
Questions

                                   Write service-enabled clients

                                 Build standards-based services

                                                   Enable CORS

                             Share and reuse data and services


                    me: ian.truslove@nsidc.org
                         @iantruslove
      this presentation: http://goo.gl/xkxgd
            Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture

More Related Content

Viewers also liked

Service Oriented Architecture (SOA) for the Broadcast Industry
Service Oriented Architecture (SOA) for the Broadcast IndustryService Oriented Architecture (SOA) for the Broadcast Industry
Service Oriented Architecture (SOA) for the Broadcast IndustryMarie Josée (MJ) Drouin
 
支付宝 大规模Soa系统治理中的架构支持
支付宝 大规模Soa系统治理中的架构支持支付宝 大规模Soa系统治理中的架构支持
支付宝 大规模Soa系统治理中的架构支持George Ang
 
Web Services and the Service-Oriented Architecture
Web Services and the Service-Oriented ArchitectureWeb Services and the Service-Oriented Architecture
Web Services and the Service-Oriented Architecturerbalderas
 
02 Service Oriented Architecture Series - SOA Concepts
02 Service Oriented Architecture Series - SOA Concepts02 Service Oriented Architecture Series - SOA Concepts
02 Service Oriented Architecture Series - SOA ConceptsPouria Ghatrenabi
 
Service-oriented Architecture with Respect to Reusability
Service-oriented Architecture with Respect to ReusabilityService-oriented Architecture with Respect to Reusability
Service-oriented Architecture with Respect to ReusabilityYazd University
 
Web Service Oriented Architecture
Web Service Oriented ArchitectureWeb Service Oriented Architecture
Web Service Oriented ArchitectureJorgen Thelin
 
Web Service Workshop - 3 days
Web Service Workshop - 3 daysWeb Service Workshop - 3 days
Web Service Workshop - 3 daysDavid Ionut
 
Tips and Tricks for your Service Oriented Architecture @ CakeFest 2013 in San...
Tips and Tricks for your Service Oriented Architecture @ CakeFest 2013 in San...Tips and Tricks for your Service Oriented Architecture @ CakeFest 2013 in San...
Tips and Tricks for your Service Oriented Architecture @ CakeFest 2013 in San...Alessandro Nadalin
 
SD Forum Java SIG - Service Oriented UI Architecture
SD Forum Java SIG - Service Oriented UI ArchitectureSD Forum Java SIG - Service Oriented UI Architecture
SD Forum Java SIG - Service Oriented UI ArchitectureJeff Haynie
 

Viewers also liked (10)

Service Oriented Architecture (SOA) for the Broadcast Industry
Service Oriented Architecture (SOA) for the Broadcast IndustryService Oriented Architecture (SOA) for the Broadcast Industry
Service Oriented Architecture (SOA) for the Broadcast Industry
 
支付宝 大规模Soa系统治理中的架构支持
支付宝 大规模Soa系统治理中的架构支持支付宝 大规模Soa系统治理中的架构支持
支付宝 大规模Soa系统治理中的架构支持
 
Web Services and the Service-Oriented Architecture
Web Services and the Service-Oriented ArchitectureWeb Services and the Service-Oriented Architecture
Web Services and the Service-Oriented Architecture
 
02 Service Oriented Architecture Series - SOA Concepts
02 Service Oriented Architecture Series - SOA Concepts02 Service Oriented Architecture Series - SOA Concepts
02 Service Oriented Architecture Series - SOA Concepts
 
Service-oriented Architecture with Respect to Reusability
Service-oriented Architecture with Respect to ReusabilityService-oriented Architecture with Respect to Reusability
Service-oriented Architecture with Respect to Reusability
 
Web Service Oriented Architecture
Web Service Oriented ArchitectureWeb Service Oriented Architecture
Web Service Oriented Architecture
 
Web Service Workshop - 3 days
Web Service Workshop - 3 daysWeb Service Workshop - 3 days
Web Service Workshop - 3 days
 
Fault prediction
Fault predictionFault prediction
Fault prediction
 
Tips and Tricks for your Service Oriented Architecture @ CakeFest 2013 in San...
Tips and Tricks for your Service Oriented Architecture @ CakeFest 2013 in San...Tips and Tricks for your Service Oriented Architecture @ CakeFest 2013 in San...
Tips and Tricks for your Service Oriented Architecture @ CakeFest 2013 in San...
 
SD Forum Java SIG - Service Oriented UI Architecture
SD Forum Java SIG - Service Oriented UI ArchitectureSD Forum Java SIG - Service Oriented UI Architecture
SD Forum Java SIG - Service Oriented UI Architecture
 

Similar to Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture

DevLink - Architecting Modern Distributed Applications
DevLink - Architecting Modern Distributed ApplicationsDevLink - Architecting Modern Distributed Applications
DevLink - Architecting Modern Distributed ApplicationsClint Edmonson
 
DODN2009 - Architecting Modern Distributed Applications
DODN2009 - Architecting Modern Distributed ApplicationsDODN2009 - Architecting Modern Distributed Applications
DODN2009 - Architecting Modern Distributed ApplicationsClint Edmonson
 
Innovation with Open Sources and App Modernization for Developers | Ian Y. Choi
Innovation with Open Sources and App Modernization for Developers | Ian Y. ChoiInnovation with Open Sources and App Modernization for Developers | Ian Y. Choi
Innovation with Open Sources and App Modernization for Developers | Ian Y. ChoiVietnam Open Infrastructure User Group
 
Build an App on AWS for Your First 10 Million Users
Build an App on AWS for Your First 10 Million UsersBuild an App on AWS for Your First 10 Million Users
Build an App on AWS for Your First 10 Million UsersAmazon Web Services
 
RightScale Webinar: Hybrid-IT: Connecting Your On-Premises Infrastructure Wit...
RightScale Webinar: Hybrid-IT: Connecting Your On-Premises Infrastructure Wit...RightScale Webinar: Hybrid-IT: Connecting Your On-Premises Infrastructure Wit...
RightScale Webinar: Hybrid-IT: Connecting Your On-Premises Infrastructure Wit...RightScale
 
Build an app on aws for your first 10 million users (2)
Build an app on aws for your first 10 million users (2)Build an app on aws for your first 10 million users (2)
Build an app on aws for your first 10 million users (2)AWS Vietnam Community
 
App Modernization: From 0 to Hero
App Modernization: From 0 to HeroApp Modernization: From 0 to Hero
App Modernization: From 0 to HeroLorenzo Barbieri
 
Build a Website on AWS for Your First 10 Million Users
Build a Website on AWS for Your First 10 Million UsersBuild a Website on AWS for Your First 10 Million Users
Build a Website on AWS for Your First 10 Million UsersAmazon Web Services
 
Introduction to Cloud Application Platform
Introduction to Cloud Application PlatformIntroduction to Cloud Application Platform
Introduction to Cloud Application PlatformVMware vFabric
 
AWS Modernising Your IT with AWS IP Expo 2013
AWS Modernising Your IT with AWS IP Expo 2013AWS Modernising Your IT with AWS IP Expo 2013
AWS Modernising Your IT with AWS IP Expo 2013Amazon Web Services
 
Build a Website on AWS for Your First 10 Million Users
Build a Website on AWS for Your First 10 Million UsersBuild a Website on AWS for Your First 10 Million Users
Build a Website on AWS for Your First 10 Million UsersAmazon Web Services
 
Confluent kafka meetupseattle jan2017
Confluent kafka meetupseattle jan2017Confluent kafka meetupseattle jan2017
Confluent kafka meetupseattle jan2017Nitin Kumar
 
Spider & F5 Round Table - The Flexible Data Center
Spider & F5 Round Table - The Flexible Data CenterSpider & F5 Round Table - The Flexible Data Center
Spider & F5 Round Table - The Flexible Data CenterTzoori Tamam
 
VMworld 2013: Designing the Next Generation Application for the Public Cloud
VMworld 2013: Designing the Next Generation Application for the Public Cloud VMworld 2013: Designing the Next Generation Application for the Public Cloud
VMworld 2013: Designing the Next Generation Application for the Public Cloud VMworld
 
Combining Private and Public Clouds into Meaningful Hybrids
Combining Private and Public Clouds into Meaningful HybridsCombining Private and Public Clouds into Meaningful Hybrids
Combining Private and Public Clouds into Meaningful HybridsDavid Chou
 
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...Ian Choi
 
Cloud what is the best model for vietnam
Cloud   what is the best model for vietnamCloud   what is the best model for vietnam
Cloud what is the best model for vietnamPhuc (Peter) Huynh
 
E-Score Data Management system on mobiles to survey the electrical usage
E-Score Data Management system on mobiles to survey the electrical usageE-Score Data Management system on mobiles to survey the electrical usage
E-Score Data Management system on mobiles to survey the electrical usageMike Taylor
 

Similar to Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture (20)

DevLink - Architecting Modern Distributed Applications
DevLink - Architecting Modern Distributed ApplicationsDevLink - Architecting Modern Distributed Applications
DevLink - Architecting Modern Distributed Applications
 
DODN2009 - Architecting Modern Distributed Applications
DODN2009 - Architecting Modern Distributed ApplicationsDODN2009 - Architecting Modern Distributed Applications
DODN2009 - Architecting Modern Distributed Applications
 
Innovation with Open Sources and App Modernization for Developers | Ian Y. Choi
Innovation with Open Sources and App Modernization for Developers | Ian Y. ChoiInnovation with Open Sources and App Modernization for Developers | Ian Y. Choi
Innovation with Open Sources and App Modernization for Developers | Ian Y. Choi
 
Build an App on AWS for Your First 10 Million Users
Build an App on AWS for Your First 10 Million UsersBuild an App on AWS for Your First 10 Million Users
Build an App on AWS for Your First 10 Million Users
 
RightScale Webinar: Hybrid-IT: Connecting Your On-Premises Infrastructure Wit...
RightScale Webinar: Hybrid-IT: Connecting Your On-Premises Infrastructure Wit...RightScale Webinar: Hybrid-IT: Connecting Your On-Premises Infrastructure Wit...
RightScale Webinar: Hybrid-IT: Connecting Your On-Premises Infrastructure Wit...
 
Build an app on aws for your first 10 million users (2)
Build an app on aws for your first 10 million users (2)Build an app on aws for your first 10 million users (2)
Build an app on aws for your first 10 million users (2)
 
App Modernization: From 0 to Hero
App Modernization: From 0 to HeroApp Modernization: From 0 to Hero
App Modernization: From 0 to Hero
 
Build a Website on AWS for Your First 10 Million Users
Build a Website on AWS for Your First 10 Million UsersBuild a Website on AWS for Your First 10 Million Users
Build a Website on AWS for Your First 10 Million Users
 
Introduction to Cloud Application Platform
Introduction to Cloud Application PlatformIntroduction to Cloud Application Platform
Introduction to Cloud Application Platform
 
AWS Modernising Your IT with AWS IP Expo 2013
AWS Modernising Your IT with AWS IP Expo 2013AWS Modernising Your IT with AWS IP Expo 2013
AWS Modernising Your IT with AWS IP Expo 2013
 
F5 Cloud Story
F5 Cloud StoryF5 Cloud Story
F5 Cloud Story
 
Build a Website on AWS for Your First 10 Million Users
Build a Website on AWS for Your First 10 Million UsersBuild a Website on AWS for Your First 10 Million Users
Build a Website on AWS for Your First 10 Million Users
 
Confluent kafka meetupseattle jan2017
Confluent kafka meetupseattle jan2017Confluent kafka meetupseattle jan2017
Confluent kafka meetupseattle jan2017
 
Spider & F5 Round Table - The Flexible Data Center
Spider & F5 Round Table - The Flexible Data CenterSpider & F5 Round Table - The Flexible Data Center
Spider & F5 Round Table - The Flexible Data Center
 
VMworld 2013: Designing the Next Generation Application for the Public Cloud
VMworld 2013: Designing the Next Generation Application for the Public Cloud VMworld 2013: Designing the Next Generation Application for the Public Cloud
VMworld 2013: Designing the Next Generation Application for the Public Cloud
 
Combining Private and Public Clouds into Meaningful Hybrids
Combining Private and Public Clouds into Meaningful HybridsCombining Private and Public Clouds into Meaningful Hybrids
Combining Private and Public Clouds into Meaningful Hybrids
 
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
 
Cloud what is the best model for vietnam
Cloud   what is the best model for vietnamCloud   what is the best model for vietnam
Cloud what is the best model for vietnam
 
E-Score Data Management system on mobiles to survey the electrical usage
E-Score Data Management system on mobiles to survey the electrical usageE-Score Data Management system on mobiles to survey the electrical usage
E-Score Data Management system on mobiles to survey the electrical usage
 
AWS Dev Day
AWS Dev DayAWS Dev Day
AWS Dev Day
 

Recently uploaded

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
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
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
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
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
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
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
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
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 

Recently uploaded (20)

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
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)
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
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
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
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
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
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
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
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
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 

Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture

  • 1. Cool Apps: Building Cryospheric Data Applications With Standards- Based Service Oriented Architecture Julia A Collins, Ian Truslove, Brendan W Billingsley, Joseph Oldenburg, Mary Jo Brodzik, Scott Lewis, Miao Liu
  • 2. Outline 1. Introduction 2. The Web, circa 2012 3. 3-tier and Service Oriented Architectures (SOA) 4. Service standards 5. NSIDC apps 6. Proposal Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 3. INTRODUCTION Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 4. Introduction The National Snow and Ice Data Center (NSIDC) supports research into our world's frozen realms: the snow, ice, glaciers, frozen ground, and climate interactions that make up Earth's cryosphere. NSIDC manages and distributes scientific data, creates tools for data access, supports data users, performs scientific research, and educates the public about the cryosphere. Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 5. Introduction The National Snow and Ice Data Center (NSIDC) supports research into our world's frozen realms: the snow, ice, glaciers, frozen ground, and climate interactions that make up Earth's cryosphere. NSIDC manages and distributes scientific data, creates tools for data access, supports data users, performs scientific research, and educates the public about the cryosphere. Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 6. Introduction distributes scientific data creates tools for data access supports data users Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 7. Introduction distributes scientific data creates tools for data access supports data users Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 8. Introduction Distribution of scientific data The Web Supports Tools for data users data access Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 9. Introduction Distribution of scientific data 3rd party tools The Web Supports Tools for data users data access Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 10. THE WEB Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 11. Web Applications http://blog.fogcreek.com/the-trello-tech-stack/ Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 12. 3-Tier Web Architecture Presentation JavaScript Web client Business Logic Application Server Data Data Abstraction / ORM Database Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 13. 3-Tier Web Architecture The Problem: Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 14. 3-Tier Web Architecture The Problem: Tight Coupling Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 15. 3-Tier Web Architecture The Problem: 1 user interface requires 1 app stack Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 16. 3-Tier Web Architecture The Problem: …and perhaps portal proliferation problem Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 17. 3-Tier Web Architecture Extending… Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 18. 3-Tier Web Architecture Bridge New app Other data Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 19. 3-Tier Web Architecture The Problem: 1 user interface requires ≥1 app stack (hopefully in the same language) Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 20. Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 21. SOA Web Architecture Client App 1 XML JSON System A Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 22. Service Interfaces Clients consume service interfaces Loose coupling Systems expose service interfaces Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 23. Service Interfaces Extending… Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 24. SOA Web Architecture Client App 1 System A Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 25. Service Interfaces The Problem: service interface proliferation problem Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 26. Service Interfaces and Standards Clients consume service interfaces …service interfaces conforming to standards Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 27. Service Standards data: OGC WMS, WFS, WPS, … OPeNDAP REST publishing: ATOM discovery: ESIP OpenSearch metadata: OAI-PMH Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 28. Service Interfaces Reusing… Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 29. SOA Web Architecture Client App 1 Client App 2 Client App 3 System A System B Many clients… Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 30. SOA Web Architecture Client App 1 System A System B Many service providers… Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 31. Implementing Services Adopt > Extend > Roll your own Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 32. Service Standards REST is aN Architectural style! Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 33. Services: Roll Your Own Desirable properties include: Discoverability Comprehensibility Universality Extensibility Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 34. Services, RESTfully Discoverability: hypermedia constraint, published media types Comprehensibility: familiar URIs; media types Universality: HTTP transport; XML or JSON payloads Extensibility: XML, e.g. ATOM Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 35. Implementing Services Adopt > Extend > Roll your own RESTful services Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 36. SOA @ NSIDC Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 37. NSIDC’s Service Oriented Architecture Web Apps ACADIS Arctic IceBridge Portal Data Explorer WMS, ESIP ESIP ESIP WFS OpenSearch OpenSearch OpenSearch Libre Searchlight Aggregator Services jOAI GI-Cat OAI-PMH Services ESIP Searchlight Collection Core DIF DIF Cast XML XML MapServer Libre DataCaster get_metadata GeoTIFF GeoTIFF Data GeoTIFF map data map data Metadata DB map data Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 38. NSIDC’s Service Oriented Architecture Web Apps ACADIS Arctic IceBridge Portal Data Explorer WMS, ESIP ESIP ESIP WFS OpenSearch OpenSearch OpenSearch Libre Searchlight Aggregator Services jOAI GI-Cat OAI-PMH Services ESIP Searchlight Collection Core DIF DIF Cast XML XML MapServer Libre DataCaster get_metadata GeoTIFF GeoTIFF Data GeoTIFF map data map data Metadata DB map data Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 39. Operation IceBridge Portal Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 40. Operation IceBridge Portal ESIP WMS OpenSearch WFS NSIDC ESIP MapServer OpenSearch NSIDC Searchlight Libre Aggregator Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 41. ACADIS Arctic Data Explorer Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 42. ACADIS Arctic Data Explorer ESIP OpenSearch ACADIS Arctic Data Explorer OAI-PMH OPeNDAP EOL field NSIDC Met.no catalog metadata metadata ACADIS (NCAR) catalog catalog Gateway (NCAR) Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 43. +/-/Δ: OBSERVATIONS Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 44. Disadvantages Complexity Compromise Development time Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 45. Advantages Reuse (and reusability) Off-The-Shelf Software Development time Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 46. Challenges Documentation Adoption Continuity Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 47. THE WEB OF SERVICES Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 48. The Web of Services Clients consume service interfaces Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 49. The Web of Services Web clients… Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 50. The Web of Services Web browsers have security restrictions… (“same origin policy”) Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 51. The Web of Services My web client may not consume your service interface Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 52. A MODEST PROPOSAL Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 53. Goal Increase the pool of potential users (web applications) of our data Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 54. HTML5 Standard: CORS CORS: Cross Origin Resource Sharing http://www.w3.org/TR/cors/ http://enable-cors.org/ Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 55. Proposal Write service-enabled clients Build standards-based services Enable CORS Share and reuse data and services Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 56. Poster Joe Oldenburg: “Cool Apps” IN43B-1517 Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture
  • 57. Questions Write service-enabled clients Build standards-based services Enable CORS Share and reuse data and services me: ian.truslove@nsidc.org @iantruslove this presentation: http://goo.gl/xkxgd Cool Apps: Building Cryospheric Data Applications With Standards-Based Service Oriented Architecture