Your SlideShare is downloading. ×

Mashups For Soa


Published on

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

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. Mashups for SOA Keith Chapman Technical lead & Product Manager WSO2 Mashup Server
  • 2. Introduction This session will introduce Mashups as an enterprise integration tool and will demonstrate the various technologies in use for service compositions in SOAs We will also take a very brief look at how the WSO2 Mashup Server helps you in this regard.
  • 3. Agenda ● What is a Mashup? ● Types of Mashups ● Role of Mashups in a SOA ● Mashup Platform Approaches ● WSO2 Mashup Server – Quick Introduction
  • 4. What is a Mashup?
  • 5. What is a Mashup? A mashup is a web page or application that combines data or functionality from two or more external sources to create a new service. The term mashup implies easy, fast integration, frequently using open APIs and data sources to produce results that were not the orig- inal reason for producing the raw source data. An ex- ample of a mashup is the use of cartographic data from Google Maps to add location information to real estate data, thereby creating a new and distinct Web service that was not originally provided by either source.
  • 6. What is a Mashup? The term mash-up refers to a new breed of Web- based applications created by hackers and program- mers (typically on a volunteer basis) to mix at least two different services from disparate, and even competing, Web sites. A mash-up, for example, could overlay traf- fic data from one source on the Internet over maps from Yahoo, Microsoft, Google or any content provider.
  • 7. What is a Mashup? A mashup is a Web site that combines content data from more than one source to create a new user expe- rience.
  • 8. What is a Mashup? Another simple but effective definition 1+1=3
  • 9. Types of Mashups
  • 10. Types of Mashups ● Client-Side Mashup ● Integration/interaction in the client side ● Mostly JavaScript in the browser ● Google Maps Mashups ● Interactive user experience
  • 11. Types of Mashups ● Server-Side Mashup ● Composing several already exposed services or data sources into a single service. ● Transforming an exposed service ● Moving the client side mashup logic to the server
  • 12. Advantages of Server Side Mashups ● Far more power, control and flexibility ● Promotes MVC (Model, View Control) ● Rich environment, more options, and resources ● Less security worries ● Less security restrictions
  • 13. Advantages of Server Side Mashups ● No cross domain restrictions ● Browsers that do not understand or have disabled JavaScript ● Mobile phones ● Less Java script code in the client side
  • 14. Web 2.0 Evolution ● Power shift from publisher to consumer ● Demand for APIs, not just Pages ● Universal data format (XML) ● Web Services ● Metadata/Description ● Security ● Enterprisey stuff (reliability, auditing)
  • 15. Mashup Characteristics ● Situational application, consuming Web APIs ● Characteristics ● Lightweight ● Customized ● Aggregates data / Composes services ● Often combines personal and public data ● Recursive?
  • 16. Beyond Google Maps ● UI for existing services ● Simple service creation and deployment ● Simple service composition ● Simple workflows ● Service translation ● Personal productivity ● Rapid prototyping
  • 17. Role of Mashups in a SOA
  • 18. Metcalfe's law Metcalfe's law states that the value of a telecommunications network is proportional to the square of the number of connected users of the sys- tem (n2).
  • 19. Metcalfe's law
  • 20. Metcalfe's law Adjusted...
  • 21. Importance of Mashups in a SOA ● Helps bridge users to your SOA ● Emails ● IM ● Feeds ● Create mock services ● Helps create a prototypes quickly ● Improves Agility
  • 22. Mashup Platform Approaches
  • 23. Mashup Platform Approaches ● Server side or Client side ● Mashup Logic requires unified format & protocol model ● HTTP/HTML? ● RSS? ● RDF? ● Proprietary?
  • 24. Mashup Platform Approaches ● Consumption ● GUI tools? ● Converters? ● Delivery ● HTML? ● RSS? ● Proprietary? ● Various? ● Online service vs. installable software?
  • 25. WSO2 approach ● Unified model: XML & Web Services ● Open standards ● Widely adopted (at least in the Enterprise) ● Secure ● Logic: Javascript Web Services ● Javascript (E4X) ● Notepad / virtual directories ● Host objects (scraping, rss …)
  • 26. WSO2 approach ● Recursive (network effects) ● Delivery ● Web Services (generate WSDL, schema etc.) ● Help build HTML (JS stubs, try-it, …) ● UI palette includes services for Email, IM, RSS, Files. ● Scale from desktop installable server to online community
  • 27. WSO2 Mashup Server – Quick Introduction
  • 28. WSO2 Mashup Server Architecture Data Sources Web Pages Mashup Feeds Logic Web Services
  • 29. WSO2 Mashup Server Architecture ● Javascript (E4X) ● Simple service deployment Mashup Logic ● Service composition ● Workflows ● Service translation ● Service UI building ● Rapid prototyping
  • 30. WSO2 Mashup Server Architecture Web Mashup Services Logic Rich HTML Applications Email/IM Files Feeds
  • 31. Features ● Web Service-centric model ● Separates content and presentation ● Recursive (network effects) ● Broad UI palette: HTML, Email, IM, RSS, Files... ● Open standards & interoperability ● Rich metadata ● WSDL, REST interfaces, Javascript Stubs ● Try-it rich browser client
  • 32. Features ● Rich set of Adapters (Javascript Object Model) ● Scraping: fetch, tidy, filter, transform, iterate, cache… ● Feeds: Atom, RSS ● Files (private, shared, web-accessible) ● Email ● IM ● Long-running mashups
  • 33. Summary ● We've looked at ● What is a Mashup? ● Types of Mashups ● Role of Mashups in a SOA ● Mashup Platform Approaches ● WSO2 Mashup Server – Quick Introduction
  • 34. Resources ● Try the Mashup Server online ● Sample mashup (National Geographic) ● Sample mashup (TomatoTube) ● Sample mashup (Twitter Map) ● E4X Quick start guide