Your SlideShare is downloading. ×
  • Like
Microsoft PowerPoint - 9 - Debadatta Tripathi (Ajay Barvey ...
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Microsoft PowerPoint - 9 - Debadatta Tripathi (Ajay Barvey ...

  • 448 views
Published

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
448
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
4
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Step Auto Conference,Bangalore SOA Implementation,Evaluation,SOA Testing 20th February 2008 SOA Design Patterns Debadatta Tripathi Accenture Delivery Center for Technology in India Copyright © 2008 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are trademarks of Accenture. Agenda • SOA Domain – Service Bus/ESB Patterns – Business Interaction Patterns • 7 SOA Execution Patterns • Architectures and case references/implementations of patterns – Basic Services (point-to-point) – Wrapping Services – Custom Built – Composite Patterns • Service Consuming • Service Producing • System De-coupling • Approaches to choosing patterns & Vendor implementations Copyright © 2008 Accenture All Rights Reserved. 2 SOA Design Patterns Mr. Debadatta Tripathi-Accenture 1
  • 2. Step Auto Conference,Bangalore SOA Implementation,Evaluation,SOA Testing 20th February 2008 Service Oriented Architecture Domain Copyright © 2008 Accenture All Rights Reserved. 3 Service Bus/ESB Patterns Copyright © 2008 Accenture All Rights Reserved. 4 SOA Design Patterns Mr. Debadatta Tripathi-Accenture 2
  • 3. Step Auto Conference,Bangalore SOA Implementation,Evaluation,SOA Testing 20th February 2008 Business Interaction Patterns Copyright © 2008 Accenture All Rights Reserved. 5 SOA Execution Patterns • Process Nesting Pattern - design pattern for nested processes that are called within a process model • Data Synchronization Pattern - manages the updating of data that lives in multiple systems • Long Running Process Pattern - design pattern that can manage the versioning of long running processes • Message Receiver Pattern - component which listens to multiple transports for messages and routes them to appropriate service. Component can also manage requests to non-bound or changing endpoints Copyright © 2008 Accenture All Rights Reserved. 6 SOA Design Patterns Mr. Debadatta Tripathi-Accenture 3
  • 4. Step Auto Conference,Bangalore SOA Implementation,Evaluation,SOA Testing 20th February 2008 SOA Execution Patterns • Service Accessor Pattern - component which is accessed on the client side that builds the service request by receiving the xml data and builds the soap message • Message Validation Pattern - a service that will validate an input message against the schema it is referencing • Service Registry Pattern - a registry that will store and broadcast availability of services and manage versioning. Copyright © 2008 Accenture All Rights Reserved. 7 Process Nesting Pattern Goals: • Application development concept of initiating a process within a process • Effective way to organize and guide a very large and complex process • Synchronous, Asynchronous, and Asynchronous with reply Factors to consider: • Type of pattern – Synchronous, Asynchronous or Asynchronous w/reply • Security • Error Handling/Logging • Tracking recursive calls • Standards (SOAP) • Event monitoring • Process governance and dependency Copyright © 2008 Accenture All Rights Reserved. 8 SOA Design Patterns Mr. Debadatta Tripathi-Accenture 4
  • 5. Step Auto Conference,Bangalore SOA Implementation,Evaluation,SOA Testing 20th February 2008 Data Synchronization Pattern Goals: • Provide reusable design that keeps data across the enterprise “in synch” Factors to consider: • Frequency • Data Flow • Transformation • Volume • Recovery • Security • Metadata • Versioning Copyright © 2008 Accenture All Rights Reserved. 9 Long Running Processes Pattern Goals: • Addresses maintenance issues inherent in long running processes • Create a successful deployment strategy for long running processes, for each instance is processed and retired properly Factors for consideration: • Business processes and frequently changed business logic must be separated and a façade process created • Version management for long running processes must be scrutinized • Changes to data model must be reviewed • Impact of BPM tools for long processes must be assessed • Provision for tracking business objects and active data Copyright © 2008 Accenture All Rights Reserved. 10 SOA Design Patterns Mr. Debadatta Tripathi-Accenture 5
  • 6. Step Auto Conference,Bangalore SOA Implementation,Evaluation,SOA Testing 20th February 2008 Message Receiver Pattern Goal: • Provide a layer of transport independence, security, auditing and a set of services upon receiving a message Factors for consideration: • Transport Independence • Guaranteed Delivery • Security • Auditing • Ability to expose non service objects – POJO’s, EJB’s as SOAP services Copyright © 2008 Accenture All Rights Reserved. 11 Service Accessor Pattern Goal: • Provide discover and invocation of services in a SOA framework • Standards based transport protocol for message exchange • Post process the message and call web service/ESB Factors for consideration: • Routing • Encryption • Auditing • WS-Security Copyright © 2008 Accenture All Rights Reserved. 12 SOA Design Patterns Mr. Debadatta Tripathi-Accenture 6
  • 7. Step Auto Conference,Bangalore SOA Implementation,Evaluation,SOA Testing 20th February 2008 Message Validation Pattern Goal: • Ensure message format is valid • Message contains correct amount of data • Message contains mandatory data • Message data confirms to the required business logic of target system Factors for consideration: • Selecting the right schema – XML • Archiving • Error handling and restart • Validation of schema and message • Using a parser Copyright © 2008 Accenture All Rights Reserved. 13 Service Registry Pattern Goal: • Provide discovering a business component and describing information of service providers and consumers Factors for consideration: • Integrating disparate applications using web services • Business functionality needs to be shared between web services • Inventory of active and inactive services • SOA is in place Copyright © 2008 Accenture All Rights Reserved. 14 SOA Design Patterns Mr. Debadatta Tripathi-Accenture 7
  • 8. Step Auto Conference,Bangalore SOA Implementation,Evaluation,SOA Testing 20th February 2008 Basic Service Architectures (Point-to-Point) Basic service architectures are typically used as a “closed” solution within the intranet or the extranet, to connect single applications. Supplier Application Supplier Application Front End (WS Front End (WS Basic Service Architectures are commonly Consumer) Consumer) used as an alternative to custom point-to-point Application 1 solutions using EAI tools. XML Web Services This pattern can be used to reduce the Supplier Back End Supplier Back End complexity of integration and enhance (WS Provider) (WS Provider) interoperability. Application 2 This pattern is often used as a component of a Intranet more complex Service Oriented Architecture A Simple Application-to-Application Example Copyright © 2008 Accenture All Rights Reserved. 15 Legacy Wrapping Architectures Legacy wrapping architectures are used to expose existing functionality in legacy systems. This can then be made interoperable, thus minimizing the intervention required on the legacy system, which is considered a “black box”. • Legacy wrapping architectures use Web Services to “wrap” legacy Web Web systems, typically mainframes. Server Server WWW Service Service • Screen scraping is often used to minimize “invasiveness” in critical or . . . Consume Consume rr not well-documented systems. • This pattern can be used as: Service Provider Service Provider - A first step in a “wrap and replace” plan. Legacy Wrapper Legacy Wrapper - An application integration pattern. (Screen Scraping) (Screen Scraping) - A mergers and acquisitions (M&A) business integration enabler. Legacy System Legacy System • This pattern is often used as a component of a more complex SOA. Legacy Wrapping Example Copyright © 2008 Accenture All Rights Reserved. 16 SOA Design Patterns Mr. Debadatta Tripathi-Accenture 8
  • 9. Step Auto Conference,Bangalore SOA Implementation,Evaluation,SOA Testing 20th February 2008 Service-Consuming Architectures Service-consuming architectures are used to integrate a set of services from third parties into a single application or portal. • Web Services are used to access functionality provided by 3rd parties Portal Co. Intranet and integrate it into a single solution . . . Portal Portal Application Application CRM CRM (in the sample diagram). WWW Service Service Billing Billing Consumer Consumer • This pattern can be used to reduce cost and time-to-market, because: Web Services • Integrating additional party 3rd services is simple. Service Service Service Service Service Service Provider Provider Provider Provider Provider Provider • Providers can choose their own Content Content Content Content Content Content implementation technology. System System Content System System Content ... System System Content Provider Provider Provider • Other typical implementations are used for supply chain integration. Value-Added Portal Example Copyright © 2008 Accenture All Rights Reserved. 17 A Large French Railway Company (LFRC) LFRC created an online portal allowing users to purchase products from LFRC and associated partners. Company A French state-owned railway company that serves more Overview than 800 million passengers and 135 million tons of freight annually. Customer Portal Business The goals included lowering distribution costs, improving Challenge yield management and leveraging the Internet for B2C services. Client upgraded its legacy information systems to expand its role in European transportation markets. Web Server Team The online travel portal uses Web Services technology to SNCF Solution/ share their customer account information and cross-selling Approach opportunities with travel partners. Web Services provided a standard interface to link their legacy information Web Services systems with their partner systems. Benefits Using Web Services: • Simplified the integration with business partners Expedia Other • Provided a cost efficient development solution Systems Partners • Allowed them to offer high-value travel services through partnerships in the non-rail industry as well as extend its product offerings through a wider distribution channel. Copyright © 2008 Accenture All Rights Reserved. 18 SOA Design Patterns Mr. Debadatta Tripathi-Accenture 9
  • 10. Step Auto Conference,Bangalore SOA Implementation,Evaluation,SOA Testing 20th February 2008 Service-Providing Architectures Service-providing architectures are used to expose business functionality to trading partners, as in an airline reservation system. Travel Agency Travel Agency Travel Agency Travel Travel Travel Travel Application Application Travel Application Application .. Travel Application Application • In service-providing architectures, Web Services are used to provide a Service Service Service Service Service Service Consumer Consumer Consumer Consumer Consumer Consumer functionality to several external consumers. • This pattern is typically used to Web Services reduce cost and complexity of WWW integration for clients: • Consumers can use completely . . . Web Web Service Provider Service Provider different systems. Server Server • A WWW front-end can be provided Booking Booking Billing on top of the service provider for Billing System System System System end users or small businesses that cannot or do not want to implement Airline Intranet a service consumer. Airline Reservation Example Copyright © 2008 Accenture All Rights Reserved. 19 Large European Stock Exchange (LESE) The LESE Web Services to provide large broker benefits to the private and smaller broker communities. Company LESE is one of the leading equity Overview exchanges in the world and a leading provider of services that facilitate the raising of capital and the trading of shares with more than 470 companies traded daily from over 60 countries. Exchange Trading System Business LESE wanted to bring benefits to the Challenge private client and smaller broker community by creating a central standardized interface between brokers and Retail Service Providers (RSPs) in RSP Gateway order to lower costs. Team To provide a standardized interface Retail Retail Investors Web Services Investors Solution/ accessible to all RSPs using Web Approach Services. Benefits • Speed to market Small Large Banking Brokerage Brokerage Institutions • Cost efficient house Houses • Interoperability/Extensibility Copyright © 2008 Accenture All Rights Reserved. 20 SOA Design Patterns Mr. Debadatta Tripathi-Accenture 10
  • 11. Step Auto Conference,Bangalore SOA Implementation,Evaluation,SOA Testing 20th February 2008 Australian Government Agency AGA created a business portal enabled with Web Services to encourage more efficient interaction between Government and business. Company As the primary revenue collection agency in Overview Australia, the AGA was responsible for implementing a major initiative known as the Australian Business Register to better share company information between the business community and government. Government Agencies Business • Encourage more efficient interaction between Challenge Government and business and to reduce Government operating costs. • Develop a “single point of contact” strategy across Web Services the multitude of Australian bodies/agencies. Team A business self-service portal was built to provide Web WS Solution/ businesses with a unique identifier (ABN) that could Server be searched via a public look-up service for the Approach citizens. The portal also provided the capability to Mainframe update business information online. System Benefits Web Services allow ABR to • Automatically provide a unique business identifier. • Reduce support needed by portal users. • Share registered information across Citizen Portal Government agencies. Copyright © 2008 Accenture All Rights Reserved. 21 System De-Coupling Architectures Used to separate back-end and front-end systems in complex environments, typically resulting from the integration of different systems and/or companies. Back-end Systems of a Merged Bank • Web Services are used to reduce the Front-end Loans Loans System System inter-application dependencies of Systems Reimbursements Reimbursements multiple legacy systems and their (WS System System related functionality, and make their Consumers) Accounts Accounts Product System System functionalities more accessible to Statement Statement Printing Printing Securities Securities System System front-end consuming applications. Web Services Loan Loan Contract Back-end Systems Applications Back-end Merged Bank of a Systems Applications • This pattern generally requires re- Branch Branch . . . of a MergedLoans Back-end Systems of a MergedLoans Bank Loans System System Bank Loans System System factoring or re-implementing part of Application Application Reimbursements Loans Reimbursements Loans System System System System Reimbursements the existing systems. Reimbursements System System Reimbursements ReimbursementsAccounts Accounts It can be used both as: CRM CRM Pricing System System System System Accounts Accounts System System AccountsSecurities AccountsSecurities – An application integration pattern System System System System System System Securities Securities Internet Internet De-coupler System System – An M&A business integration Banking Banking De-coupler Securities Securities (Service Provider) (Service Provider) System System enabler Banking System Integration Example • eMarketplaces are a special type of Copyright © 2008 Accenture All Rights Reserved. 22 system de-coupling architectures. SOA Design Patterns Mr. Debadatta Tripathi-Accenture 11
  • 12. Step Auto Conference,Bangalore SOA Implementation,Evaluation,SOA Testing 20th February 2008 Spanish Government Authority SGA created an integrated government services portal serving 6.3 million people via a single access point. Company SGA, based in Barcelona, that provides a wide Overview range of public services for 6.3 million people. Government Agencies Team SGA solution was built to allow government Solution/ systems to share information between departments. Accenture developed Web Services Approach for AOC that provided the required functionality independent of the underlying platform. Web Services Benefits • Increased accuracy of information gathered • Cost savings through use of central portal Portal WS • “Intentions-based” portal has provided an intuitive structure making the traditional departmental silos transparent • Web Services provided organized integration of CRM government services and information • Provides citizens with a services card, e-mail account, and personal identification Citizens Businesses Copyright © 2008 Accenture All Rights Reserved. 23 P2P Service Exchange Architectures Peer-to-peer service exchanging architectures are used to integrate systems that require complex two-way interchanges and workflow interaction, typically for Supply Chain Management applications. Buyer • In peer-to-peer architectures, Procurement System Procurement System Web Services are used to integrate Information systems that WS Consumer WS Provider WS Provider WS Consumer (Legacy Wrapper) are complementary and are (Legacy Wrapper) receiveShipmentNotification receiveShipmentNotification required to collaborate. • This pattern is typically used in WS Provider WS Provider supply chain management (SCM) (Legacy Wrapper) WS Consumer WS Consumer (Legacy Wrapper) receiveOrder receiveOrder scenario together with a orchestration contract. Order Management System Order Management System Supplier • Often a specific Orchestration component (typically an EAI Supply Chain Integration Example application) is included in the Copyright © 2008 Accenture All Rights Reserved. 24 architecture. SOA Design Patterns Mr. Debadatta Tripathi-Accenture 12
  • 13. Step Auto Conference,Bangalore SOA Implementation,Evaluation,SOA Testing 20th February 2008 Leading UK Retailer Standard Web Technologies LUR to connect to suppliers and eMarketplace, enabling collaborative supply chain planning. Company LUR, based in the United Kingdom, is a leading Overview retailer and supermarket chain. LUR Business Accenture was engaged by LUR in a large business Supply Chain Merchandising Challenge transformation outsourcing effort that included the ERPs System rationalization of communication with LUR’s third EAI parties as well as the enhancement of collaborative planning processes. One of the main objectives was B2B infrastructure to improve shelf availability. Team Developed services through a B2B Gateway to offer WS Server Solution/ seamless integration with third parties through a Approach common reusable web/http services infrastructure. Web Services https over Benefits Using Web Services provided the capability to the internet • Standardize data inter-exchange with suppliers and optimize supports. • Avoid lengthy design discussion (example: Retail eMarket Place: Product trading standard acknowledgement for messages to consolidator Catalog Management guarantee delivery and receipt). • Delivery at speed. 50 + LUR’s Suppliers Copyright © 2008 Accenture All Rights Reserved. 25 Approaches to choosing patterns • Business Drivers • Functional Requirements • Non Functional Requirements • Application • Use cases • Testing and Versioning • Process Governance • Security • Vendor Implementations Copyright © 2008 Accenture All Rights Reserved. 26 SOA Design Patterns Mr. Debadatta Tripathi-Accenture 13
  • 14. Step Auto Conference,Bangalore SOA Implementation,Evaluation,SOA Testing 20th February 2008 Vendor Implementations ERP Implementations Oracle - SOA implementation designed and built using the Oracle Fusion integration suite SAP - SOA implementation designed and built in SAP NetWeaver Pure Play Implementations BEA - SOA implementation designed and built in BEA WebLogic/Aqualogic Microsoft - SOA implementation designed and built in the .NET development environment IBM - SOA implementation designed and built in IBM WebSphere Java Open Source - SOA implementation designed and built using Java open source technology SUN Microsystems - SOA implementation designed and built in Sun Java CAPS Copyright © 2008 Accenture All Rights Reserved. 27 Thank You! debadatta.tripathi@accenture.com Copyright © 2008 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are trademarks of Accenture. SOA Design Patterns Mr. Debadatta Tripathi-Accenture 14