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.

İndir

1,378 views

Published on

  • Be the first to comment

  • Be the first to like this

İndir

  1. 1. INT-3: Realistic Service Oriented Architecture Approaches Michael Boyd & Bernard Bresser Progress Software
  2. 2. <ul><li>How to begin implementing a Service Oriented Architecture (SOA), one step at a time </li></ul>Realistic SOA Approaches What you will learn today
  3. 3. Agenda <ul><li>The SOA starting point </li></ul><ul><li>What you will need </li></ul><ul><ul><li>A tale of two architectures </li></ul></ul><ul><ul><li>Process, process, process </li></ul></ul><ul><ul><li>Think strategically, act locally </li></ul></ul><ul><li>Common pitfalls </li></ul><ul><li>First steps when you get back home </li></ul>Realistic Service Oriented Architecture Approaches
  4. 4. Introducing SOA & SOBA <ul><li>An approach for building agile and flexible business applications </li></ul><ul><ul><li>Loosely coupled services = flexible business processes </li></ul></ul><ul><li>SOA is not </li></ul><ul><ul><li>A product or application </li></ul></ul><ul><ul><li>A specific technology </li></ul></ul><ul><ul><li>A specific standard </li></ul></ul><ul><ul><li>A specific set of rules </li></ul></ul>S ervice- O riented A rchitecture > S ervice- O riented B usiness A pplications
  5. 5. The SOA Maturity Model Optimization Transformation Responsiveness Functionality Cost Effectiveness Initial Services Architected Services Measured Business Services Optimized Business Services Business Services Collaborative Services The Impact of SOA
  6. 6. SOA In Summary <ul><li>SOA </li></ul><ul><ul><li>The architecture for the agile business </li></ul></ul><ul><li>SOA is a design approach </li></ul><ul><ul><li>Not a technology </li></ul></ul><ul><li>Take small steps </li></ul><ul><ul><li>Evolution, not revolution </li></ul></ul>
  7. 7. The SOA Maturity Model Optimization Transformation Responsiveness Functionality Cost Effectiveness Initial Services Architected Services Measured Business Services Optimized Business Services Business Services Collaborative Services The Impact of SOA
  8. 8. Agenda <ul><li>The SOA starting point </li></ul><ul><li>Starting your own evolution </li></ul><ul><ul><li>A tale of two architectures </li></ul></ul><ul><ul><li>Process, process, process </li></ul></ul><ul><ul><li>Think globally, act locally </li></ul></ul><ul><li>Common pitfalls </li></ul><ul><li>First steps when you get back home </li></ul>Realistic Service Oriented Architecture Approaches
  9. 9. A Tale of Two Architectures You cannot reach the top of the SOA mountain overnight Initial Services Architected Services Measured Business Services Optimized Business Services Business Services Collaborative Services
  10. 10. A Tale of Two Architectures <ul><li>You will need two architectures during the transition period </li></ul><ul><li>This allows for small, incremental steps </li></ul>New Service Oriented Architecture Existing Architecture
  11. 11. A Tale of Two Architectures <ul><li>Communications is conducted point to point, synchronous and unreliable </li></ul><ul><li>Process logic is fragmented across applications and platforms and implemented differently in each place </li></ul><ul><li>Data comes in multiple incompatible formats </li></ul><ul><li>Communications are direct to a centralized service bus </li></ul><ul><li>Process logic is coherently defined in a single model which can be edited and redeployed quickly </li></ul><ul><li>Data comes expressed as XML </li></ul>Existing Architecture New SOA (ESB)
  12. 12. Example: Using Two Architectures P3 P1 P2 Order Mgmt Order Process Business Applications Finance Supplier Mgmt CRM Tracking Service Partner Back Office MFG SCM Adapter Adapter Integration Broker New SOA (ESB) Existing Architecture Adapter Order Fulfillment CRM Enterprise Service Bus (ESB)
  13. 13. Process, Process, Process “ Trying to extract business functions from larger applications is like trying to extract bricks from a large wall. It's possible, but not simple. ” Gartner – September 2005
  14. 14. Process, Process, Process <ul><li>To move faster to meet the market, you cannot just code your way out of it – </li></ul><ul><li>you must change your processes </li></ul><ul><li>Success is using “just enough process” (CMMi Level 3-ish…) It never means “use no process” </li></ul><ul><li>Expect that development styles will change as SOA implementations begin </li></ul>
  15. 15. Process, Process, Process <ul><li>Combination of steps that allow you to meet your business’ needs every time </li></ul>What is the Best Process?
  16. 16. Process, Process, Process <ul><li>Moving to SOA requires developers to: </li></ul><ul><ul><li>Specify contracts and interfaces </li></ul></ul><ul><ul><li>Harvest existing systems for logic </li></ul></ul><ul><ul><li>Wrap legacy systems </li></ul></ul><ul><ul><li>Define system monitoring and management </li></ul></ul><ul><ul><li>Specify service policies & granularity </li></ul></ul><ul><ul><ul><li>How small / big is a service ? </li></ul></ul></ul><ul><ul><ul><li>You don’t want 74 similar ones ! </li></ul></ul></ul>SODA - Service Oriented Development of Applications
  17. 17. Process: Contracts and Interfaces <ul><li>Input from calling service </li></ul><ul><li>Data format and type (or what’s the XML Schema) </li></ul><ul><li>Service functionality options (or actions or events) </li></ul><ul><li>Details on business process flow (i.e. UML graphic) </li></ul><ul><li>Output from Service: </li></ul><ul><li>Data result from service events </li></ul><ul><li>Error status or results from service </li></ul><ul><li>Other Details: </li></ul><ul><li>Service Owner </li></ul><ul><li>Service Design </li></ul><ul><li>Service History </li></ul><ul><li>Service Cross-Ref </li></ul>
  18. 18. Process: Harvesting Existing Logic <ul><ul><li>Guideline how to approach assessment, analyses, redesign, harvest, build and test… </li></ul></ul><ul><ul><li>… NOT the enforced way how to get there! </li></ul></ul><ul><ul><li>Break the larger project into manageable smaller iterations to mitigate risk </li></ul></ul><ul><ul><li>Search on “Transform” in PSDN </li></ul></ul>Application Transformation Approach Awareness Transformation Assessment Analysis & Modeling Redesign & Harvest Build & Test Transformation Continues… Engagement Capability Gap Fulfillment Project Planning & Management Commitment
  19. 19. <ul><li>Strategic SOA </li></ul><ul><ul><li>Define your long-term SOA vision </li></ul></ul>Think Globally, Act Locally Succeed by thinking strategically but acting tactically <ul><li>Tactical SOA </li></ul><ul><ul><li>Implement first elements of your SOA vision on next business-based project </li></ul></ul><ul><ul><li>Add SOA elements into each successive business-based project until SOA is realized </li></ul></ul>
  20. 20. Think Globally – Strategic SOA <ul><li>Get executive commitment to an overall SOA strategy </li></ul><ul><li>The Key reason for SOA is Business Agility </li></ul><ul><ul><li>Code reuse is just a means to get there </li></ul></ul><ul><li>If possible, get funding for some overall SOA infrastructure needs </li></ul><ul><ul><li>Resource Management – roles & duties </li></ul></ul><ul><ul><li>Developer training </li></ul></ul><ul><ul><li>Cross-application tools </li></ul></ul><ul><li>Set expectations of evolving process </li></ul>In order to be agile, businesses need disposable business rules – ones that are cheap and easy enough to throwaway and replace as business changes. - Ronald Ross, Business Rule Concepts “Father of Business Rules”
  21. 21. Think Globally – Strategic SOA <ul><li>Get executive commitment to an overall SOA strategy </li></ul><ul><li>The Key reason for SOA is Business Agility </li></ul><ul><ul><li>Code reuse is just a means to get there </li></ul></ul><ul><li>If possible, get funding for some overall SOA infrastructure needs </li></ul><ul><ul><li>Resource Management – roles & duties </li></ul></ul><ul><ul><li>Developer training </li></ul></ul><ul><ul><li>Cross-application tools </li></ul></ul><ul><li>Set expectations of evolving process </li></ul>
  22. 22. Act Locally – Tactical SOA <ul><li>Find high-value business project </li></ul><ul><ul><li>Loosely coupled business processes </li></ul></ul><ul><ul><li>Can benefit from Business Process Changes </li></ul></ul><ul><ul><li>Has high-value to the business </li></ul></ul><ul><li>Build new SOA and funding into project plan </li></ul><ul><ul><li>Architect in minimum SOA </li></ul></ul><ul><ul><li>Include new processes </li></ul></ul><ul><ul><ul><li>Service Granularity </li></ul></ul></ul><ul><ul><ul><li>Service Contracts </li></ul></ul></ul>
  23. 23. Act Locally – Tactical SOA: the First Project P3 P1 P2 Order Mgmt Order Process Business Applications Finance Supplier Mgmt CRM Tracking Service Partner Back Office MFG SCM Adapter Adapter Integration Broker New SOA (ESB) Existing Architecture Adapter Order Fulfillment CRM Enterprise Service Bus (ESB)
  24. 24. Act Locally – Tactical SOA <ul><li>SOA implemented </li></ul><ul><ul><li>Refine architectural gaps </li></ul></ul><ul><ul><ul><li>Context and Security are most common </li></ul></ul></ul><ul><ul><ul><li>Service Granularity </li></ul></ul></ul><ul><ul><ul><li>External Service Interfaces </li></ul></ul></ul><ul><ul><li>Project Retrospective </li></ul></ul><ul><ul><ul><li>Look for process improvements </li></ul></ul></ul><ul><li>Repeat on next high-value business project </li></ul><ul><ul><li>Consider as an “SOA Tax” on development </li></ul></ul>
  25. 25. Act Locally – Tactical SOA: Additional Projects P3 P1 P2 Order Mgmt Order Process Business Applications Finance Supplier Mgmt CRM Tracking Service Partner Back Office MFG SCM Adapter Adapter Integration Broker New SOA (ESB) Existing Architecture Adapter Adapter Adapter Order Fulfillment CRM Enterprise Service Bus (ESB) Enterprise Service Bus (ESB)
  26. 26. Agenda <ul><li>The SOA starting point </li></ul><ul><li>What you will need </li></ul><ul><ul><li>A tale of two architectures </li></ul></ul><ul><ul><li>Process, process, process </li></ul></ul><ul><ul><li>Think strategically, act locally </li></ul></ul><ul><li>Common pitfalls </li></ul><ul><li>First steps when you get back home </li></ul>Realistic Service Oriented Architecture Approaches
  27. 27. Common Pitfalls: Communication <ul><li>Clear Roles & Responsibilities </li></ul><ul><li>Communicate the Vision </li></ul><ul><ul><li>Include full team – business, development (IT), and users </li></ul></ul><ul><ul><li>Keep the SOA Vision simple </li></ul></ul><ul><ul><li>Actively sell to the business the agility values of an SOA approach </li></ul></ul><ul><li>Communicate the Technical Reality </li></ul><ul><ul><li>Initial prototypes include experimenting </li></ul></ul><ul><li>Over-communicate to the entire team </li></ul><ul><ul><li>Reiterate the benefits of the change </li></ul></ul>It’s more about people than technology
  28. 28. Common Pitfalls: Process <ul><li>We only have three people, we don’t need process – we just talk about it… </li></ul><ul><ul><li>But how do you open to external services? </li></ul></ul>Is this what you are thinking…?
  29. 29. Common Pitfalls: Process <ul><li>But I don’t need SOA now… </li></ul><ul><ul><li>But when will the business change? </li></ul></ul><ul><ul><ul><li>Mergers & Acquisitions </li></ul></ul></ul><ul><ul><ul><li>Competitive Challenges </li></ul></ul></ul>Is this what you are thinking…?
  30. 30. Common Pitfalls: Process <ul><li>Need “Just Enough Process” </li></ul><ul><ul><li>Rigid enforcement of process </li></ul></ul><ul><ul><ul><li>If you are lax, problems will overwhelm you </li></ul></ul></ul><ul><ul><ul><li>Better to identify problems and fix process </li></ul></ul></ul><ul><li>Clear Roles & Responsibilities </li></ul><ul><ul><li>Especially Architect and Business Analyst </li></ul></ul><ul><li>Training on new approaches </li></ul><ul><ul><li>Modeling business processes </li></ul></ul><ul><ul><li>Documenting service contracts </li></ul></ul>Coordinating your development work
  31. 31. Common Pitfalls: Process <ul><li>Practice new approaches </li></ul><ul><ul><li>Utilize the OERA </li></ul></ul><ul><ul><li>Separation of Business Logic </li></ul></ul><ul><ul><li>Gain experience with new tools </li></ul></ul><ul><ul><li>Understand the standards: </li></ul></ul><ul><ul><ul><li>Technical: Web Standards, JMS </li></ul></ul></ul><ul><ul><ul><li>Industry: How does your domain share data? </li></ul></ul></ul>Coordinating your development work
  32. 32. <ul><ul><li>Guideline how to (re-)architect a modern application.. </li></ul></ul><ul><ul><li>..NOT the enforced or only way to do it! </li></ul></ul><ul><ul><li>Prioritize! Maybe you need n-tier or integration first before separating ALL the layers, all the clients, all data access, etc! </li></ul></ul>Provides a structured and planned to a new architecture Common Pitfalls: Process OpenEdge ® Reference Architecture Presentation Business Services Data Access Data Sources Common Infrastructure Enterprise Services
  33. 33. Common Pitfalls: First SOA Projects <ul><li>Business Project Qualification </li></ul><ul><ul><li>Ensure there is an immediate business ROI </li></ul></ul><ul><ul><ul><li>Can this help us grow revenue? </li></ul></ul></ul><ul><ul><ul><li>Reduce expenses? </li></ul></ul></ul><ul><ul><ul><li>Improve efficiency? </li></ul></ul></ul><ul><li>Technical Qualification </li></ul><ul><ul><li>Define Integration solution for problem </li></ul></ul><ul><li>Service and Event Reuse Potential </li></ul><ul><ul><li>Simplify follow-on projects with common services and infrastructure </li></ul></ul>Focus on the quick success
  34. 34. Agenda <ul><li>The SOA starting point </li></ul><ul><li>What you will need </li></ul><ul><ul><li>A tale of two architectures </li></ul></ul><ul><ul><li>Process, process, process </li></ul></ul><ul><ul><li>Think strategically, act locally </li></ul></ul><ul><li>Common pitfalls </li></ul><ul><li>First steps when you get back home </li></ul>Realistic Service Oriented Architecture Approaches
  35. 35. Realistic SOA Approaches <ul><li>A SOA strategy is incremental and progressive </li></ul><ul><ul><li>Follow the maturity model and have clear, realistic objectives </li></ul></ul><ul><li>Be Strategic AND Tactical </li></ul><ul><ul><li>Set your Vision and Implement in Steps </li></ul></ul>Success Factors <ul><li>Steps to Success </li></ul><ul><li>Define a SOA Vision to achieve business agility </li></ul><ul><li>Determine where you are in the SOA Maturity Model and key goals and key practices to achieve the next level </li></ul><ul><li>Use high-value business projects for your first steps </li></ul><ul><li>Build and refine “just enough process” for your needs </li></ul>
  36. 36. For More Information, go to… <ul><li>PSDN </li></ul><ul><ul><li>A New Service-Oriented Architecture (SOA) Maturity Model </li></ul></ul><ul><ul><li>Principles of a Service-Oriented Architecture </li></ul></ul><ul><ul><li>Fundamentals of Service–Oriented Architecture </li></ul></ul><ul><ul><li>Service-Oriented Architecture: Overview and Business Drivers </li></ul></ul><ul><ul><li>Design Best Practices: Methodology using Patterns </li></ul></ul><ul><ul><li>SOA Worst Practices, Volume 1 </li></ul></ul><ul><ul><li>Expertise Centers: SOBA & SOA Infrastructure </li></ul></ul><ul><ul><li>OpenEdge ® Evaluation Kit and Product Tour </li></ul></ul><ul><li>Progress eLearning Community: </li></ul><ul><ul><li>SOA Essentials for OpenEdge Developers </li></ul></ul><ul><ul><li>SOAP for OpenEdge Developers </li></ul></ul><ul><ul><li>What's New in OpenEdge 10.1: SOA Support </li></ul></ul><ul><ul><li>Service Oriented Integration with Sonic ESB ® 7.0 </li></ul></ul>
  37. 37. Relevant PTW / Exchange Sessions <ul><li>PTW: </li></ul><ul><li>Achieving SOA: The Product Solution </li></ul><ul><li>Transactions in a SOA World </li></ul><ul><li>Implementing ESB Processes with OpenEdge and Sonic </li></ul><ul><li>Exchange 2007: </li></ul><ul><li>SONIC-2: Enterprise SOA Implementation: What Your Mother Failed to Tell You </li></ul><ul><li>INT-4: Introducing Sonic ESB </li></ul><ul><li>SONIC-5: Global Approach to SOA Enabled by Sonic ESB </li></ul><ul><li>ARCH-7: A Class-based Implementation of the OERA </li></ul><ul><li>SONIC-8: Extend your ESB with SOA Management </li></ul><ul><li>INT-11: It’s Monday Morning, Do You Know Where Your Service Has Been? </li></ul>
  38. 38. Questions?
  39. 39. Thank you for your time

×