1 / 38

Web 2.0: Extending the Reach of the SOA Model

Web 2.0: Extending the Reach of the SOA Model. John Turek Director, China Emerging Tech. Institute IBM China Development Lab Nov. 1 , 2007. Credit where it is due. In a Nutshell. Web 2.0 is a social phenomena, an emerging business model and a set of technologies in support of that model.

vanig
Download Presentation

Web 2.0: Extending the Reach of the SOA Model

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Web 2.0: Extending the Reach of the SOA Model John Turek Director, China Emerging Tech. Institute IBM China Development Lab Nov.1, 2007

  2. Credit where it is due

  3. In a Nutshell • Web 2.0 is a social phenomena, an emerging business model and a set of technologies in support of that model. • Web 2.0 is enabled by the ability to create, share and use data in innovative ways not previously envisioned by the creators of the service. • Web 2.0 and Web services both support a Service Oriented Approach to programming but Web 2.0 has developed through a more chaotic, community driven process with remarkable success leveraging a variety of protocols. Disclaimer • In the spirit of Web 2.0 it is the community that will decide on the final manifestation of these principles.

  4. Agenda • What is Web 2.0? • The Web as the next development platform • Feed Centric Integration • Extending the programming model: Challenges and Directions • Parting Thoughts

  5. The evolving Web platform Web 1.0 was about connecting computers and making technology more efficient for computers. Web 2.0 is about connecting people, and making technology efficient for people. Web 2.0 changes the way in which businesses interact with its customers Web 2.0: • Is about communities and social networks • Builds contextual relationships and facilitates knowledge sharing • Is about people and the way they collaborate

  6. Long-tail of Applications Formal Development Ad Hoc Development Usage, Importance Open Source App Server Scripting (e.g. LAMP) JEE, .NET SCM CRM .com ERP sales analysis dashboards contact mgmt Mission Critical Situational Applications ERP Number of Applications The Long Tail of Web Applications Core Competencies of Web 2.0 Companies • Services, not packaged software, with cost-effective scalability • Control over unique, hard-to-recreate data sources that get richer as more people use them • Trusting users as co-developers • Harnessing collective intelligence • Leveraging the long tail through customer self-service • Software above the level of a single device • Lightweight user interfaces, development models, AND business models • The Long Tail • Targeting niche markets - expanding from dozens of markets of millions of people to millions of markets of dozens of people • Examples: Google, Netflix, Amazon • Network Effects • Product or service is more valuable the more people that use it (e.g telephone, email, instant messaging…) • Examples: eBay, MySpace, Craigslist… • Data as the new “Intel Inside” • Proprietary data – hard for a competitor to duplicate • User Generated Data • Data indirectly created by users • Examples: NAVTEQ, Amazon, Google Pagerank

  7. Web Service which uses content from more than one source to create a completely new service Typically sourced from a third party via a public interface or API Simple methods of sourcing content for mashups include Web feeds (e.g. RSS or Atom) and JavaScript What is Web 2.0 All About? EXAMPLE: MASHUPS – Integration of disparate data source through simple scripting tools enables users to innovate by combining existing web services into entirely new applications.

  8. What is Web 2.0 All About?Example: AccuWeather™ Overview • SMB company that aggregates weather content, crushes forecasts that are consume by diverse businesses • ProfesionalPlus staff that assembles custom forecast models for businesses • ModelPlus - suite of advanced forecast modeling solutions such as StormTimer • Example: CSX - sends train route information to AccuWeather - compares with severe weather to “message” CSX systems of severe, situational conditions AccuWeather Opportunity • Backlog of custom dashboards growing fast • Customers asking for “flexible” mash-ups to meet ongoing changing business needs • Customize costs high given current technology foundation • Extend current weather content subscription to enabling user-customizable dashboards • Seeing growing number of weather widgets, branded with AccuWeather - with poor quality - potential reflection on company AccuWeather™ “(Web 2.0) Widget-delivered weather information allows our clients to be more productive in utilizing AccuWeather data to identify and exploit business opportunities while at the same time helping clients manage risks imposed by adverse weather conditions.”

  9. google maps del.icio.us virtual earth 411sync yahoo! search yahoo! geocoding technorati netvibes yahoo! images trynt amazon ECS yahoo! local live.com google search flickr ebay youtube amazon S3 REST SOAP XML-RPC REST, XML-RPC REST, XML-RPC, SOAP REST, SOAP JS Other

  10. Enterprise mashups and composite applications Global SOA Enterprises are exposing more services and feeds to the Web …and consuming more services and feeds from the Web • Exposing Enterprise Services to the Web extends your enterprise globally and simplifies: • Development • Composition of Services • Deployment and accessibility • QoS: Performance, Scale, Security

  11. Some Similarities & Comparisons between Web 2.0 and SOA Source: http://web2.wsj2.com

  12. Agenda • What is Web 2.0? • The Web as the next development platform • Feed Centric Integration • Extending the programming model: Challenges and Directions • Parting Thoughts

  13. Assemble Users who may not be programmers can create web applications to address just-in-time ad-hoc situational needs Integrate data and markup using widgets to create new utilities Wire Bind rich content from disparate sources to create new ways to view information Add behavior and relationships to disparate widgets to create a rich interactive application experience Share Quickly promote your mashup for use by others Enable multi-user collaboration on the development of a mashup Harnessing Web 2.0 How can we harness Web 2.0 power today? • Empower users to assemble their own situational web applications • Enable non-programmers to wire software components together with behavior and data relationships • Embrace the community spirit of Web 2.0 - share personal web applications for quick and simple collaborative decision making activities Share Assemble Wire

  14. Leveraging Web 2.0 Project Zero – What is it? • Time to Value (TTV) • Easy to aquire, learn and use • Server side scripting is preferred • Readily available pre-built libraries Project Zero is an IBM-sponsored public incubator project which speeds the development of next-generation dynamic web applications by providing a simplified development model built around web 2.0 building-blocks and making existing services easier to consume. ProjectZero.org – What is it? The community driven web site where visitors can learn about the project, download the code packages, and participate in the community through forums and blogs. Zero complexity. Zero overhead. Zero obstacles.

  15. Project Zero Core Technology • Create: Project Zero introduces a set of application programming interfaces that are centered on service creations using REST, scripting, integration mash-ups and rich web interfaces. • Zero uses conventions to facilitate the development of REST services • Zero supports scripts written in several of the popular scripting languages, including PHP, JavaScript and Groovy (Java). • Zero’s scripts are fundamentally stateless; however, to support state, Zero employs a shared memory space to help facilitate the management of transient data. • Zero programs use a LINQ-based data access service to access relational data. • Assemble: Project Zero supports the composition of new services and applications using integration (a.k.a., “mash-up”) technology to “wire” together REST services. • A solution may be rapidly assembled by combining existing feeds and services that enrich, sort, and filter data in a pipeline. • Zero also exposes points of configuration that allow the pipeline behavior to be augmented by configuring templates to alter pipeline routes, log events along the pipeline, as well as transform data flowing though the pipeline to alternative data formats. • Execute: Project Zero deploys on a radically simplified web server that is optimized to securely run a massive number of short lived, stateless scripts. • The Zero runtime supports multiple scripting languages atop an optimized Java Virtual Machine. • Each script runs as its own process, and as such, is isolated from other scripts and can be secured at a finer grain. • The Zero runtime supports lazy activation of scripts; hence a single box can support hundreds of service and application instances. Given the fact that Zero scripts are fundamentally stateless, they are able to be periodically recycled, which eliminates failures due to “heisenbugs”.

  16. Three Steps to Creating a Mashup Web 2.0 Composite Applications Web 2.0 Composite Services Public Web 1 3 2 Binding SOA Foundation Web.0 Platform Web.0 Platform Browser PHP Java OS JVM Steps: Compose services (data or function) into a composite service Compose widgets / HTML segments into a composite UI or an app template Binding service (data or function) to the composite UI Service Widgets

  17. Mashup Makers: QED Wiki Example MashupSeveral composition models • Wiki + controls • QEDWiki • Spreadsheet • Merged formed/feeds • … … Microformats REST Exemplars Feeds

  18. Mashup Tools are reviewed at http://blogs.zdnet.com/Hinchcliffe/?p=63 Workflow Tools are reviewed by Gannon and Fox http://grids.ucs.indiana.edu/ptliupages/publications/Workflow-overview.pdf Both include scripting in PHP, Python, sh etc. as both implement distributed programming at level of services Mashups use all types of service interfaces and do not have the potential robustness (security) of Grid service approach Typically “pure” HTTP (REST) Do we want to bridge across Mashups and Workflow? Mashups v Workflow? 18

  19. Agenda • What is Web 2.0? • The Web as the next development platform • Feed Centric Integration • Parting Thoughts

  20. Integrating Data Feeds • Data Centric Service Composition • Fusion Data Model being developed at CDL • Other examples: • SnapLogic, • Microsoft, • Yahoo Pipes, • etc. Disclaimer During the course of this discussion, I will present specific technologies being prototyped in the lab with the goal of describing a general principles. In the spirit of Web 2.0 it is the community that will decide on the final manifestation of these principles.

  21. Let’s Start With One Simple Scenario Get BBC and Yahoo headline news feed Aggregate the feeds, Sort the items by title Publish it at “http://localhost:8090/pipelinebinding/news” Fetch BBC News Fetch Yahoo Feed http://rss.news.yahoo.com/rss/topstories http://newsrss.bbc.co.uk/rss/newsonline_uk_edition/world/rss.xml Syndicate Aggregate the feeds Sort Sort

  22. Pipeline as a REST Centric Composition Pattern A construct is a steps that contains additional steps. It control and organize the flow of documents through a pipeline. E.g. For-Each, Choose-When-Otherwise, The data flows between steps follow the XPath 2.0 data model definition. Step1 For-each Step3 Step a Step b Step2 XML Pipeline A step is an atomic component that performs a unit of processing. Step can have zero or more inputs and one output. Step parameters can be used for configuration Basic processing steps will be provided out-of-box. E.g. fetch feed, invoke rest service A pipeline contains a set of steps connected together, with outputs flowing into inputs Input parameters of pipeline can be declared. A pipeline can invoke the other pipelines as a step.

  23. Integration Toolkit for Aggregating Data Feeds

  24. Situational Apps Employ a Different Constituency Spectrum of users Skills • Application Assemblers • Those using computers at work who can automate business tasks that are not already addressed (e.g. working with databases and dynamic spreadsheets). • Shielded from integration issues. UI and Content Manipulation Skills Spreadsheets, Databases, Wikis, Blogs, Web Content Management 55 M • Enablers • Those using computers at work who say that they “program” • Focused on empowering the Assemblers. • Web Developers with skills for content integration and app logic. Skills for content integration and application logic. PHP, ASP, Ruby on Rails, JavaScript, HTML, XML, REST • Traditional Programmers • IT Professionals who are professional application programmers. • 1M are sophisticated professional application programmers, 2M are less sophisticated 13 M Skills for backend Integration and Infrastructure. J2EE, .NET 3 M

  25. 3 Document Application Compose Services Flow 2 Composite service (Feed, REST) Human Workflow Others Results Goals From Goals to Results A Trip Plan A Report Identify (Navigate) Personalized Service Palette A Dashboard Campus Hire 1 Stock App Contribute Services (UGC) Integrate Sales Mgmt & SugarCRM Flow Flow Tool Codify A Composite Feed Contribute Back Collective Intelligence UGC • Service Ecosystem Contribute Back New Services Web SOA

  26. Feeds Sales Person Assistant Category: News Company name: Headquarters Halliburton Subcategory: Business rss rss rss Summary:Halliburton Company provides a variety of services, products, maintenance, engineering and construction to energy, industrial, and governmental customers. CEO: David J. Lesar Headquarters: 5 Houston Center 1401 McKinney Suite 2400 Houston, TX 77010, USA Phone: +1-713-759-2600 CNNMoney Google News Yahoo! News atom atom atom Reuters … … More Feeds Feed Operators Financial Information (NYSE:HAL) S F M Sort Filter Merge More Operators Sales History Services Product: IBM Lotus Notes Category: Directories From To Today 1/1/1998 Subcategory: Companies ws ws rest Google Directory Yahoo! Directory Reuters News ws ws ws … … … More Services Blog Posts Recommendations ws Company Picture CEO Geneology Send SMS More Recommendations Layout View Design View Display View

  27. Feeds Sales Person Assistant Category: News Company name: Headquarters map companyName Subcategory: Business rss rss rss Summary:shortDescription CEO:namepicture Headquarters: address Phone: phoneNumber CNNMoney Google News Yahoo! News atom atom atom Reuters … … More Feeds Feed Operators Financial Information (NYSE:F10) financialInfo S F M Sort Filter Merge More Operators Sales History salesChart Services Product: productName Category: Directories From To endDate startDate Subcategory: Companies ws ws rest Google Directory Yahoo! Directory Reuters News news ws ws ws … … … More Services Blog Posts comments Recommendations ws Company Picture CEO Geneology Send SMS More Recommendations Layout View Design View Display View

  28. Feeds Reuters Category: rest Summary CEO Phone News Headquarters Subcategory: Business Company Name rss rss rss CNNMoney Google News Yahoo! News atom atom atom Reuters … … More Feeds Developer drags the Reuters company directory service Feed Operators S F M Sort Filter Merge More Operators Services Category: Directories Subcategory: Companies ws ws rest Google Directory Yahoo! Directory Reuters ws ws ws … … … More Services Recommendations No recommendations available. Layout View Design View Display View

  29. Feeds Reuters Category: rest Summary CEO Phone News Headquarters Subcategory: Business Company Name rss rss rss CNNMoney Google News Yahoo! News atom atom atom Reuters … … More Feeds Feed Operators S F M Sort Filter Merge More Operators Services Category: Directories Tool makes recommendations for the potential outputs and/or services to be added next Subcategory: Companies ws ws rest Google Directory Yahoo! Directory Reuters ws ws ws … … … More Services Recommendations ws CEO Picture Headquarters Map Send SMS More Recommendations Layout View Design View Display View

  30. Feeds Reuters Category: rest Summary CEO Phone News Headquarters Subcategory: Business Company Name rss rss rss CNNMoney Google News Yahoo! News Google Images CEO picture atom atom atom ws Reuters … … More Feeds Feed Operators S F M Sort Filter Merge Developer picks the “CEO picture” recommendation More Operators Services Category: Finance Subcategory: Charts ws ws ws Google Finance Yahoo! Finance AOL Finance ws ws ws … … … More Services Recommendations ws CEO Picture Headquarters Map Send SMS More Recommendations Layout View Design View Display View

  31. Feeds Reuters Category: rest Summary CEO Phone News Headquarters Subcategory: Business Company Name rss rss rss CNNMoney Google News Yahoo! News Google Images CEO picture atom atom atom ws Reuters … … More Feeds Feed Operators S F M Sort Filter Merge Developer picks the “CEO picture” recommendation More Operators Services Category: Finance Subcategory: Charts ws ws ws Google Finance Yahoo! Finance AOL Finance Tool offers a new set of recommendations ws ws ws … … … More Services Recommendations ws Headquarters Map French Summary Send SMS More Recommendations Layout View Design View Display View

  32. Agenda • What is Web 2.0? • The Web as the next development platform • Feed Centric Integration • Parting Thoughts

  33. Extending the value of existing SOA investments 10 of the world's 10 biggest auto manufacturers Half of the world’s 30 biggest electronics companies More than 2,500 SOA Business Partners 8 of the world's 10 biggest banks 4 of the world's 10 biggest retailers 9 of the world’s 10 biggest telcos 80% of the biggest US health plans 80 SMB references 8 of the world's 10 biggest insurers Leverage Web 2.0 technologies and techniques to deliver richer, more interactive experiences for people, process, and information

  34. IBM Strategic Direction for Web 2.0 • Bridge between Web and Enterprise SOA • Building on SOA by using the Web as a business platform • Extensions to IBM SOA platform allowing a simple on-ramp to Enterprise SOA • Address the need to build service interfaces for existing apps to enable access to data / content • Expand SOA with Emerging Web 2.0 Technologies • Enable customers and partners to respond faster to situational business opportunities and threats • Embrace technologies preferred by web developers • Empower knowledge workers to wire software components together, forming new situational applications and mashups • Continue Industry Web 2.0 Technology Collaborations • Lead and promote standards that enable more services & feeds to be easily mashed up • Accelerate adoption of light-weight programming models, Feeds, Wikis, Richer User Experience • Empower knowledge workers to wire software components together, forming new situational applications and mashups • Community Participation • Lead an open community to define conventions for programming model, deployment model, and administration for Web 2.0 applications • Help Web 2.0 deliver on its promise of "open-access" by driving a community around the growing number of data services • Use public Forums, Blogs and Wikis to discuss product development, Source code, Examples, Problems, etc.

  35. www.ProjectZero.org Community Evolve Project Zero core platform based on community feedback • Early access to the new programming model and core platform code • Influence the direction of the core and create extensions a la eclipse plugins • Share experiences around latest innovations with the platform • ProjectZero.org • Latest Builds • Technical Documentation • Bug reports • Developer Forums • Demos / Videos

  36. The evolving Web platform Web 2.0 is about connecting people, and making technology efficient for people. Web 3.0 is about XYZ, and making technology efficient for people. Web 2.0 changes the way in which businesses interact with its customers Web 2.0: • Is about communities and social networks • Builds contextual relationships and facilitates knowledge sharing • Is about people and the way they collaborate

  37. “Perfection is achieved, not when there is nothing more to add, • but when there is nothing left to take away.“ • Antoine de Saint-Exupery

More Related