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.

Web Services presentation

222 views

Published on

  • Be the first to comment

  • Be the first to like this

Web Services presentation

  1. 1. The Freedom to Achieve Independent, Open Solutions for Business and Government www.platinumsolutions.com
  2. 2. Web Services and Service Oriented Architectures De-mystified Management Briefing September 8, 2005 3:00pm Presented by Adam Rossi President, PlatinumSolutions adam.rossi@platinumsolutions.com
  3. 3. 3 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government Why Me?  I have been involved in a number of “real world” SOA and Web Services implementations  I am vendor neutral, and advocate standards based solutions  I am an open source Java developer, and a contributor to two open source frameworks which help developers build and implement Service Oriented Architectures
  4. 4. 4 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government The Bottom LineThe Bottom Line  Service Oriented Architecture (SOA) has been aroundService Oriented Architecture (SOA) has been around for years, and is considered a software developmentfor years, and is considered a software development “best practice”, or “design pattern”,“best practice”, or “design pattern”, when usedwhen used correctly….correctly….  Web Services is an extremely simple (and powerful)Web Services is an extremely simple (and powerful) collection of standard technologies used to implementcollection of standard technologies used to implement SOASOA  Web Services is vendor, language, and tool agnosticWeb Services is vendor, language, and tool agnostic  Web ServicesWeb Services isis the future of enterprise softwarethe future of enterprise software development, however…development, however…  Today there is a lot of confusion and hype which isToday there is a lot of confusion and hype which is clouding the market, and making it more difficult than itclouding the market, and making it more difficult than it really isreally is
  5. 5. 5 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government Confusion in the MarketplaceConfusion in the Marketplace  Confusion between Web Services andConfusion between Web Services and SOA – not synonymousSOA – not synonymous  Vendor HypeVendor Hype  Tendency to overcomplicate WS/SOA –Tendency to overcomplicate WS/SOA – these arethese are simplesimple concepts based onconcepts based on simplesimple technologies!technologies!  Confusion over what it takes to implementConfusion over what it takes to implement WS/SOAWS/SOA
  6. 6. 6 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government What is SOA?What is SOA?  SOA is a collection of services which communicate with eachSOA is a collection of services which communicate with each otherother  SOA helps bring about the vision of an “agile enterprise” withSOA helps bring about the vision of an “agile enterprise” with a flexible infrastructure that can respond to change througha flexible infrastructure that can respond to change through loose couplingloose coupling andand separation of concernsseparation of concerns  Only possible to respond to change at reasonable cost byOnly possible to respond to change at reasonable cost by building reusable services, not a “ball of mud”building reusable services, not a “ball of mud”  A “service” is a function that is well defined, and self-A “service” is a function that is well defined, and self- contained, and does not rely on the state of another service. Acontained, and does not rely on the state of another service. A Service is a “black box” to other services.Service is a “black box” to other services.  Services communicate with each other using some form ofServices communicate with each other using some form of messaging (communication) mediummessaging (communication) medium  SOA is not new, SOA has been implemented in manySOA is not new, SOA has been implemented in many programming languages (COBOL to Java) and has usedprogramming languages (COBOL to Java) and has used many different messaging mediums (CORBA, SOAP) over themany different messaging mediums (CORBA, SOAP) over the yearsyears
  7. 7. 7 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government Enterprise Architecture: Before SOAEnterprise Architecture: Before SOA Inventory Application Inventory Database Financial Application Financial Database Shipping Application Shipping Database Shipping App directly reduces inventory database via SQL call Finance App checks inventory for invoice via direct call to Inventory App API Finance App deletes shipping order when invoice is canceled via a direct call to the Shipping Database • Tightly Coupled • Brittle • Expensive to Maintain •Difficult to Make Changes
  8. 8. 8 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government The Simplest SOA DiagramThe Simplest SOA Diagram
  9. 9. 9 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government SOA is…SOA is…  a design pattern, like Inversion of Control (IOC)a design pattern, like Inversion of Control (IOC) and Component Oriented Programming (COP)and Component Oriented Programming (COP)  implemented using any languageimplemented using any language  not dependent on Web Services for thenot dependent on Web Services for the communications medium (but WS is the bestcommunications medium (but WS is the best option)option)  a software development style which takesa software development style which takes discipline and organizational maturity, whichdiscipline and organizational maturity, which sometimes needs to be mandated bysometimes needs to be mandated by managementmanagement  slightly harder to do in the short run, but muchslightly harder to do in the short run, but much easier in the long runeasier in the long run
  10. 10. 10 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government Examples of ServicesExamples of Services  Comment Service:Comment Service: Adds comments to DARRTSAdds comments to DARRTS objects such as an application, submission,objects such as an application, submission, signature, etc.signature, etc.  Sign Communication Service:Sign Communication Service: CommunicationCommunication review process logicreview process logic  Authentication Service:Authentication Service: User AuthenticationUser Authentication (implemented to use Active Directory)(implemented to use Active Directory)  Linking Rules Service:Linking Rules Service: Executes rules thatExecutes rules that update DARRTS objects such as submissions,update DARRTS objects such as submissions, goals, supporting documentsgoals, supporting documents  Email Service:Email Service: Encapsulates emailEncapsulates email communicationscommunications
  11. 11. 11 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government Example of Service InteractionsExample of Service Interactions Sign Communication Service Linking Rules Service Email Service
  12. 12. 12 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government Web Services isWeb Services is  Well, the definition is still being debated, butWell, the definition is still being debated, but most generally accepted as:most generally accepted as:  Web Services is an SOA which MUST:Web Services is an SOA which MUST:  Have interfaces based on internet protocols such asHave interfaces based on internet protocols such as HTTP, andHTTP, and  Use messages to communicate between servicesUse messages to communicate between services which must be based on SOAP, a particular type ofwhich must be based on SOAP, a particular type of standard XML message format, andstandard XML message format, and  Description of services must be done with WebDescription of services must be done with Web Services Definition Language (WSDL)Services Definition Language (WSDL)
  13. 13. 13 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government Simplest Web Services DiagramSimplest Web Services Diagram
  14. 14. 14 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government SOAPSOAP  Once stood for “Simple Object AccessOnce stood for “Simple Object Access Protocol”, now just stands for “SOAP”Protocol”, now just stands for “SOAP”  Based on a W3C standard XML messageBased on a W3C standard XML message formatformat  Much more flexible than older alternatives,Much more flexible than older alternatives, like EDIlike EDI  Human readable, simple, and supportedHuman readable, simple, and supported by all modern tools and languagesby all modern tools and languages  Stateless, one-way message exchangeStateless, one-way message exchange
  15. 15. 15 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government WSDLWSDL  Provides a way for service providers toProvides a way for service providers to describe the basic format of web servicedescribe the basic format of web service requests over different protocolsrequests over different protocols  WSDL is an XML document whichWSDL is an XML document which describes:describes:  whatwhat a web service can do,a web service can do,  wherewhere it resides,it resides,  andand howhow to invoke it.to invoke it.
  16. 16. 16 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government UDDIUDDI  When you have a lot of services (andWhen you have a lot of services (and corresponding WSDL description files), youcorresponding WSDL description files), you need a directory to organize the services: enterneed a directory to organize the services: enter UDDIUDDI  Universal Description, Discovery, and IntegrationUniversal Description, Discovery, and Integration (UDDI)(UDDI)  UDDI registry is intended to serve as a means ofUDDI registry is intended to serve as a means of "discovering" Web Services, keeps an up-to-"discovering" Web Services, keeps an up-to- date list of services in your organizationdate list of services in your organization  An OASIS standardAn OASIS standard
  17. 17. 17 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government The Full Web Services PictureThe Full Web Services Picture
  18. 18. 18 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government Web Services MaturityWeb Services Maturity  Web Services is here today and ready toWeb Services is here today and ready to useuse  Tools support is now adequate, supportTools support is now adequate, support for authoring of WSDL now in almostfor authoring of WSDL now in almost every IDEevery IDE  SOAP support in most middlewareSOAP support in most middleware  Web Services concerns, such as security,Web Services concerns, such as security, addressed through more recent standardsaddressed through more recent standards technologiestechnologies
  19. 19. 19 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government Difficulty in Implementing WebDifficulty in Implementing Web ServicesServices  More of a management challenge than aMore of a management challenge than a technology challengetechnology challenge  Resistance to Change – “that’s how we haveResistance to Change – “that’s how we have always done it”always done it”  It is easier for each individual project to selfishlyIt is easier for each individual project to selfishly NOT use web services – does not help the firstNOT use web services – does not help the first mover at allmover at all  But across the enterprise, has enormous benefit,But across the enterprise, has enormous benefit, will, without a doubt, save time and money in thewill, without a doubt, save time and money in the mid to long termmid to long term  Requires dedication by management, probablyRequires dedication by management, probably will not happen organicallywill not happen organically
  20. 20. 20 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government The Benefits of Web ServicesThe Benefits of Web Services  You will first see the benefits when youYou will first see the benefits when you reach thereach the moment of truthmoment of truth::  Developers radically change a “popular”Developers radically change a “popular” service (code changes, API changes,service (code changes, API changes, database changes, etc.), and….database changes, etc.), and….  Nothing happens! The service consumersNothing happens! The service consumers go right on working without knowledge ofgo right on working without knowledge of the changethe change
  21. 21. 21 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government Enterprise Architecture: After WS/SOAEnterprise Architecture: After WS/SOA Inventory Application Inventory Database Financial Application Financial Database Shipping Application Shipping Database SOAP XML Requests and Responses between Services • Loosely Coupled • Flexible • Easy to Maintain • Facilitates Change Finance Web Service Inventory Web Service Shipping Web Service UDDI Registry No More Direct Calls! All Requests go through a WSDL.
  22. 22. 22 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government ConclusionConclusion  Web Services is the futureWeb Services is the future  The concepts and technologies are notThe concepts and technologies are not difficult – their power comes from theirdifficult – their power comes from their simplicity, flexibility, and basis on vendor-simplicity, flexibility, and basis on vendor- neutral standardsneutral standards  A large enterprise can realize incredibleA large enterprise can realize incredible benefits from Web Servicesbenefits from Web Services  Implementing Web Services requiresImplementing Web Services requires strong management directionstrong management direction
  23. 23. 23 ©© 2004 PlatinumSolutions, Inc.2004 PlatinumSolutions, Inc. The Freedom to Achieve –The Freedom to Achieve – Independent, Open Solutions for Business and GovernmentIndependent, Open Solutions for Business and Government For a copy of these slides: http://www.platinumsolutions.com/resources/ email: adam.rossi@platinumsolutions.com

×