1 / 18

Service Oriented Architecture

Service Oriented Architecture. CPSC 410. Some content based on IBM’s SOA material, especially SW708 : For Business Partners: Service-Oriented Architecture Design Patterns. Service-Oriented Architectures. Big problem in business is integration of IT . BEWARE! TLAs ahead.

zaria
Télécharger la présentation

Service Oriented Architecture

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. Service Oriented Architecture CPSC 410 Somecontent based on IBM’sSOA material, especially SW708: For Business Partners: Service-Oriented Architecture Design Patterns

  2. Service-Oriented Architectures • Big problem in business is integration of IT.

  3. BEWARE! TLAs ahead. • A lot of good ideas cluttered with industry/vendor jargon, incl. SOA: • WSDL, ESB, WS-*, CORBA, J2EE, SOAP • Challenge is to identify the useful benefits and adopt the tech you need • Thinking in terms of NFRs can be helpful.

  4. SOA: Why? (IBM) • Increasing the speed at which businesses can implement new products and processes or change existing ones • Reducing implementation and ownership costs • Enabling flexible pricing models by outsourcing • Simplifying integration • Achieving better IT utilization and ROI • Simplifyingthe enterprise architecture and computing model

  5. SOA: Challenges (IBM) • Changes to one system tend to imply ripples of change at many levels to many other systems. • No single, fully functional integration solution will "talk to," or work with, them all. • No single data, business, or process model spans, much less extends beyond, the enterprise. • All these issues apply even more to integration with the systems of existing or future partners.

  6. What is SOA? • Service-oriented architecture • Model business IT functions as modular, decoupled, independent services • Enterprise-wide in scale and scope (think all of Coca-Cola) • Use open standards to exchange data

  7. Diversion: CMMI • SEI’s Capability Maturity Model Integration • Levels of organizational capability: • Incomplete • Performed • Managed • Defined • Quantitatively managed • Optimizing

  8. SOA layered architecture http://www.ibm.com/developerworks/webservices/library/ws-soa-design1/

  9. SOA Architectural Style

  10. SOA design principles • Services are loosely coupled • Must figure out correct level of abstraction • Services are location-transparent • Use a registry to find them • Services are interoperable • Use standards like XML, SOAP, WSDL, HTTP • Services are composable • Business processes made of multiple services

  11. Levels of service maturity • Silo (data integration) • Integrated (application integration) • Componentized (functional integration) • Simple services (process integration) • Composite services (supply-chain integration) • Virtualized services ( virtual infrastructure) • Dynamically reconfigurable services (eco-system integration) http://www.ibm.com/developerworks/webservices/library/ws-soa-simm/

  12. Questions • What services might be relevant if we modeled the Microsoft HR department? • Scheduling interviews • Scheduling interviewers • Reimbursing expenses • Managing hiring decisions • Making an offer/financial modeling

  13. SOAP • The “Simple” Object Access Protocol • Exchange structured messages for web services • Basic WS messaging framework • Send message (primarily) with HTTP • XML de facto message format

  14. SOAP in web services http://en.wikipedia.org/wiki/Web_service

  15. Soap Sample POST /Supplier HTTP/1.1 Host: www.somesupplier.com Content-Type: text/xml; charset="utf-8" Content-Length: nnnn SOAPAction: "Some-URI" <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body> <m:OrderItemxmlns:m="Some-URI"> <RetailerID>557010</RetailerID> <ItemNumber>1050420459</ItemNumber> <ItemName>AMF Night Hawk Pearl M2</ItemName> <ItemDesc>Bowling Ball</ItemDesc> <OrderQuantity>100</OrderQuantity> <WholesalePrice>130.95</WholeSalePrice> <OrderDateTime>2000-06-19 10:09:56</OrderDateTime> </m:OrderItem> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

  16. HTTP/1.1 200 OK Content-Type: text/xml; charset="utf-8" Content-Length: nnnn <SOAP-ENV:Envelopexmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> <SOAP-ENV:Body> <m:OrderItemResponsexmlns:m="Some-URI"> <OrderNumber>561381</OrderNumber> </m:OrderItemResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

  17. Web services stack • “Big” web services use protocols like SOAP, WS-Integration, WS-Messaging etc (WS-*) • Popular in the enterprise • Often seen as too complex or YAGNI for smaller applications • REST style preferred for support of scale and modularity

More Related