Download presentation
Presentation is loading. Please wait.
Published byLisa Warren Modified over 8 years ago
1
SOA Blueprints Learning Best Practices and Sample Applications for SOA Miko Matsumura
2
AGENDA n Why are we doing this? n What are the goals? n SOA Concepts n The Reference Example n The Specification n Implementations
3
Why are we doing this? n SOA is the new old thing l The concept has been around for years l The practical realization has only recently materialized n J2EE had the PetStore l Initially a Patterns application without specification l Very successful as a learning tool l In some ways too successful – people learned architectural anti-patterns in addition to the technology that was shown n SOA needs a PetStore not The PetStore l Demonstrating SOA best practice requires many applications l Industry focus on (inter) communication not eCommerce
4
What are the goals? n Part of a long term project, SOA Blueprints aims to: l Define a baseline standardized set of enterprise applications l Focus on SOA principles l Highlight SOA design patterns and best practices l Encourage SOA adoption l Be industry agnostic l Be applicable to as many organizations as possible n The specification will lead to: l An agreement on SOA terminology l A reference open source implementation l An implementation by vendors l Additional modules with particular industry focus
5
SOA Concepts n SOA Much More Than Web Services n Common SOA Terms n Patterns n SOA Platform Requirements n Standards n Glossary
6
SOA Much More than Web Services n Service definition does not include protocol or wire format n How many protocols in your organization? n WSDL could be the key n Service providers should concentrate on the service n Service consumers just want to use the service n It’s the SOA that allows providers and consumers to communicate
7
Common SOA Terms Common SOA Terms (the specification includes those highlighted in blue)
8
SOA Terms (cont) n Synchronous and Asynchronous Services n Component Services n Data Services n Composite (Business) Services n Conversational (Workflow) Services n Publish-Subscribe Services n Service Brokers n Exception Handling And Compensating Services n Service Security n Interception And Extensibility n Interoperability
9
SOA Patterns Initial patterns will include: n Service Registry and Static Binding n Service Registry and Dynamic Binding n Service Broker n Distributed Service Broker n Service Bus n Distributed Service Bus
10
SOA Anti-Patterns n Overly granular business services n Remote access to local services n Overuse of XML n Use of loose coupling where tight coupling is required
11
SOA Granularity
12
SOA Development Requirements Target implementation environments should provide: n Definition of services independent of implementation, location or use n Implementation and hosting of services as a provider n Location and usage of services as a consumer n Assembly of services from other services and business rules n Support for synchronous, asynchronous and conversational services n Orchestration of application presentation built on services and rules n Automated data transformation between disparate data structures n Provisioning of local and remote services n Support for simulating, testing and debugging of services
13
Standards Standards being considered for inclusion include: n WS-I n BPEL4WS n WS-Security n WS-Notification n Jini n WSRP n WS-Manageability
14
Reference Example Common Enterprise Applications (the specification includes those highlighted in blue)
15
The Specified Applications n Based around fictitious enterprise - GeneriCo n A distributed enterprise wide security mechanism n An employee self service portal providing: l Authentication l Organization Browser l Task List Management l Expense Reporting l Employee Reviews n A Product data service n Some payroll & supply chain functions as required by the specification n A basic HR application for management of employees and departmental structure
16
The Security Mechanism n Provide security for: l New Applications l Legacy Applications n Provide indentity management n Automate employee security
17
The Employee Portal
18
Employee Portal n Utilizes Security Adaptor Services n Provide Login / Logout Capabilities n Enable Password Change n Provide roles based access l to pages l to portlets l to actions Authentication
19
Employee Portal n Search for Employees n Browse Departments n Get Department Details n Get Employee Details Organization Browser
20
Employee Portal n View Task List n See Task Details n Add Tasks n Update Tasks n Link to Expenses n Link to Reviews Task List Management
21
Employee Portal n View Report List n See Report Details n Add Report n Update Report n Authorize Report n Pay Report n Utilization of Pay Roll Services Expense Reporting
22
Employee Portal n View Review List n See Review Details n Add Review n Update Review n Validate Review n Add Ratings n Finalize Review n Utilization of Pay Roll Services Employee Reviews
23
Product Data Services n Two Product Databases n Different Schemas n Want single data service to access product information n Enable category listing n Enable product listing n Needs to generate unique keys n Add missing information n Query across sources
24
Message Definition Messages are defined within the specification in a platform agnostic fashion:
25
Process Definition Processes are also defined in an agnostic way:
26
Implementation Guidelines n Specification is platform agnostic n Database schema will be supplied n WSDL will be provided for all services n Service testing will be provided by PushToTest n Transport protocols must be adhered to n Use of Portal server is recommended n Web design should follow guidelines n Standards should be adhered to where stated
27
Vendor Implementations Currently have commitment from the following vendors to provide implementations of the reference example: n BEA Systems n Diamelle Technologies n IONA Technologies n Microsoft n Oracle n Pramati n Sun Microsystems n Rogue Wave Software
28
Open Source Implementation n Looking to build open source team n Currently have a number of committed members n Technologies we’re hoping to use include: l Hibernate for persistence l Spring as a lightweight container l Axis for web service provisioning l eXo as an enterprise portal l Twister as a BPEL4WS engine l Maven for build and management n Will become reference implementation for SOA
29
Possible Interesting Things n An additional 10 or so vendors want to enhance the spec n Service management (Qos) an interesting add-on n Jini message board talking about an implementation n Some vendors considering CORBA implementation n Would like to include Mobility component n WSRP seems natural extension to Portal specification n Including more standards is a must n Launching an SOA Blueprints Wiki very soon n Open Source Implementation home announced soon
30
Next Steps n Q & A n Goto www.oasis-open.org n Download the specification n Send us feedback n Miko@infravio.com n Get involved in open source implementation
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.