Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Flying high with osgi lm


Published on

Published in: Education, Technology
  • Be the first to comment

  • Be the first to like this

Flying high with osgi lm

  1. 1. Flying High with OSGI and Open Source Kiran Chittargi Lockheed Martin
  2. 2. ‘ NextGen’
  3. 3. What is ‘NextGen’? <ul><li>Next Generation Air Transport System. </li></ul><ul><li>Broader term for various ongoing system wide transformation of United States National Airspace System (NAS). </li></ul><ul><li>NextGen is key to meet the demands of air traffic management as it grows. </li></ul><ul><li>Seamless data exchange between NAS users, industry and airline partners. </li></ul>
  4. 4. Challenges
  5. 5. Some Statistics…. <ul><li>35000 Controllers, engineers and support staff </li></ul><ul><li>7000+ takeoff and landings per hour </li></ul><ul><li>Around 700 million passengers per year </li></ul><ul><li>40 billion worth of cargo per year </li></ul><ul><li>50,000+ carrier thru’ National Airspace per day </li></ul>source: (2010) “ Busy Infrastructure - lots of data”
  6. 6. Information Sharing Challenges En Route Data Weather Data Radar Data Terminal Data Traffic Management Inter Agency Airline Partners Cargo Too many ‘Point to Point’
  7. 7. Current Systems Reality – most places Source: Gartner Screen Scrape Screen Scrape Screen Scrape Screen Scrape Message Queue Message Queue Message Queue Download File Download File Download File Transaction File Transaction File Transaction File ORB ORB CICS Gateway CICS Gateway APPC APPC RPC RPC Transaction File Sockets Sockets Message Message Application Application Application Application Application Application Application Application Application Application
  8. 8. Potential Solution En Route Data Weather Data Radar Data Terminal Data Traffic Management Inter Agency Airline Partners Cargo “ SOA” CORE SERVICES Scalable SOA Infrastructure
  9. 9. SWIM
  10. 10. What is ‘SWIM’? <ul><li>System Wide Information Management. </li></ul><ul><li>SWIM is an information technology program that will operate in the background to provide seamless information to users who have a valid need for the data </li></ul><ul><ul><li>Standardized Interfaces </li></ul></ul><ul><ul><li>Share Information across partners and providers </li></ul></ul><ul><ul><li>Increase Common Situational Awareness </li></ul></ul><ul><ul><li>Improve efficiency immensely. </li></ul></ul>source:
  11. 11. Life of a Flight Pre-Flight Flight Services TakeOff/ Departure Tower ARTCC (1…n) Air Route Traffic Control Center En-Route Descent/ Approach Tower Landing Flight Services
  12. 12. Service Oriented Architecture
  13. 13. <ul><li>“ A set of components which can be invoked, and whose interface descriptions can be published and discovered” (W3C) </li></ul>Service Oriented Architecture Service Provider Service Consumer Service Request Service Response UDDI Registry
  14. 14. Web Services and SOA The Problem Web Services Create Flight Update Flight Delete Flight Database C++ ADA Legacy Subscribe ‘ It connects anything to everything’
  15. 15. SOA is an architectural style whose goal is to achieve loosely coupled interaction between systems. Service C Service A1 Service A2 Service B UDDI Java ADA Integration Platforms SOA is about the un-inhibited flow of information regardless of platform Legacy Building SOA
  16. 16. <ul><li>Advantages: </li></ul><ul><li>Capitalizes on existing investment in legacy </li></ul><ul><li>Does not require “rip and replace” of legacy </li></ul><ul><li>Opportunity: </li></ul><ul><li>Web Service Layer can be more than a middleware layer </li></ul><ul><li>Web Services can do more than just data-aggregation </li></ul><ul><li>Paradigm Shift: </li></ul><ul><li>Need to stop thinking of whole applications </li></ul><ul><li>Need to start thinking of small, reusable business functionality, that can be consumed as is or combined to meet various business needs </li></ul>Service C Service A1 Service A2 Service B UDDI Web Services and SOA
  17. 17. Open Source Scalable Model FUSE ESB is an open source integration platform based on Apache ServiceMix that supports JBI and OSGi for use in enterprise IT organizations. Apache ActiveMQ is an open source message broker which fully implements the JMS Apache Camel is a rule-based routing and mediation engine which provides a Java object based implementation of the Enterprise Integration Patterns using an API to configure routing and mediation The OSGi framework is a module system and service platform for the Java programming language that implements a complete and dynamic component model, something that does not exist in Standalone Java/VM environments Open-source, fully featured, easy to use Web Services framework.
  18. 18. Service describes End Point Exposes Messages Sends/Receives Contracts Binds to Service Consumer implements Policy governed by Sends/Receives Adheres to Component Relation Key Understands Serves Contract Based Approach - WSDL
  19. 19. Flight Details Contract SWIM Service Provider Top Down Server Implementation Service Interface e.g. WSDL contract as the interface & message description WSDL Top Down Approach Flight Data Ack Response Flight Data Request Flight Data Response Consumers
  20. 20. <ul><li>The contract isolates the developer from needing to understand the inner workings of the corporate asset </li></ul>Contract is key to SOA approach Black Box BackEnd System Available Methods Java, C++, Legacy System exposed via CXF, Camel components etc. Web Service WSDL SOAP XML Messages
  21. 21. Right way to SOA Services become reusable components for business processes Typical Legacy Application Collection of capabilities developed to meet a specific “stove-pipe” need Assemble Web Services to support new and different needs Reconfiguring, adding, or taking away Web Services to meet changing needs is much easier than modifying legacy applications Use existing logic OR write new logic into small re-usable components that can be used for multiple purposes – Web Service Typical Legacy Application Comprised of many functionality components that could have use elsewhere if capability was accessible
  22. 22. Right way to SOA Determine which methods need to be exposed as services based upon business needs <ul><li>Development options may include </li></ul><ul><li>using existing logic </li></ul><ul><li>writing new logic </li></ul><ul><li>wrapping existing logic </li></ul><ul><li>using integration tools </li></ul><ul><li>a combination of approaches </li></ul>Functional Components Subscribe Update Flight Create Flight Delete Flight GetAll Flights Exposed Web Services Can be called by any consumer resource, caller does not need to know technical aspects of underlying implementation of the service (Language, Platform, Host Environment etc.)
  23. 23. Right way to SOA Implement Interface 1 2 3 4 5 6 Define Contract Identify Function Available Service Publish Deploy Development options may include using existing logic writing new logic wrapping existing logic using integration tools a combination of approaches Identify, Define and Implement Functionality The Result is a Loosely Coupled Service Oriented Interface Key Difference WSDL – describes how to invoke the loosely coupled interface Schema – describes the SOAP message XML format Still Main Effort Language, Protocol Platform Specific Code Code or Legacy Application Service to Production WSDL to UDDI Interchangeable Functionality Components Subscribe Approve Time Create Flight Determine Manager Validate Charge Number
  24. 24. Exposing Systems as Web Services Web services are easily consumed regardless of the complexity of the underlying implementation Similar to an OO interface the web service defines a contract that is its interface to the outside world. Everything behind the interface is a black box of implementation details and the consumer only cares about the interface. Core Logic <ul><li>Sources: </li></ul><ul><li>Legacy code </li></ul><ul><li>Legacy logic re-coded </li></ul><ul><li>New logic and code </li></ul>New Solution Exposed Black Box Legacy System Available Methods .NET System Available Methods J2EE System Available Methods Web Service WSDL SOAP XML Messages Web Service WSDL SOAP XML Messages Web Service WSDL SOAP XML Messages Composite Service UDDI Publisher Consumer
  25. 25. Consuming a Web Service Many Others… BlackBerry Find Service in UDDI Generate Interface and Proxy from WSDL Invoke Service Send Request and Process Response Retrieve WSDL 1 2 3 4 Today’s tools allow developers to easily integrate services into new or existing applications Portlet Service
  26. 26. Thank You