SOA Overview and Layered Model Byungwook Cho K. 2006-05-25
Agenda <ul><li>What is SOA? </li></ul><ul><li>What is Service? </li></ul><ul><li>Service Type </li></ul><ul><li>SOA Layere...
1. What is SOA? <ul><li>Software architecture history </li></ul><ul><ul><li>Structured programming / SSADM (C/Pascal) </li...
1. What is SOA? <ul><li>SOA is “Legoware”. </li></ul><ul><li>SOA is an architecture that a software system is divide into ...
1. What is SOA? <ul><li>Conceptual view of SOA </li></ul>G H I J K L Software Component System (Platform) .NET CRM JAVA KM...
1. What is SOA? <ul><li>SOA Definition </li></ul><ul><ul><li>BD : A SOA provides the flexibility to treat elements of busi...
1. What is SOA? <ul><li>Contemporary SOA </li></ul><ul><ul><li>WebService </li></ul></ul><ul><ul><li>BPM </li></ul></ul>G ...
2. What is Service? <ul><li>Service is  </li></ul><ul><ul><li>component of distinctive functional meaning that typically e...
2. What is Service? <ul><li>Conceptual structure of service </li></ul>NOTE: Every service is an entity of distinctive func...
2. What is Service? <ul><li>Service is </li></ul><ul><ul><li>Lego block. Building Block </li></ul></ul><ul><ul><li>Has sta...
3. Service Type <ul><li>5 main type of service </li></ul><ul><ul><li>Application Service </li></ul></ul><ul><ul><li>Busine...
3. Service Type <ul><li>Application Service </li></ul><ul><ul><li>Provide technology-specific functionality.  </li></ul></...
3. Service Type <ul><li>Business Service </li></ul><ul><ul><li>Business meaning + compose application service </li></ul></...
3. Service Type <ul><li>Business Service </li></ul><ul><ul><li>Task centric service </li></ul></ul><ul><ul><ul><li>Has bus...
3.  Service Type <ul><li>Intermediary Service </li></ul><ul><ul><li>Stateless service that bridge design gap or conceptual...
3. Service Type <ul><li>Intermediary Service </li></ul><ul><ul><li>Transformation Service </li></ul></ul>Service A New Ser...
3. Service Type <ul><li>Intermediary Service </li></ul><ul><ul><li>Routing Service </li></ul></ul>Service B Customer Servi...
3. Service Type <ul><li>Process  centric service </li></ul><ul><ul><li>Orchestrate business services </li></ul></ul><ul><u...
3. Service Type <ul><li>SOA service stack </li></ul>Application Service Data centric Business Service Task centric Busines...
3. Service Type <ul><li>Service Type Summary </li></ul>It needs when new service or new service connection is made  Most I...
3.  Service Type  (optional *) <ul><li>How can I define services? </li></ul><ul><ul><li>Task centric business services   ...
4. SOA Layed Model <ul><li>SOA Layered Model </li></ul><ul><ul><li>Fundamental SOA </li></ul></ul><ul><ul><li>Networked SO...
4. SOA Layered Model <ul><li>Fundamental SOA </li></ul>T T T D D D D D A A A Application Service Data centric Business Ser...
4. SOA Layered Model <ul><li>Fundamental SOA </li></ul><ul><ul><li>Easy to implement. Good starting point for SOA </li></u...
4. SOA Layered Model <ul><li>Networked SOA </li></ul>T T T D D D D D A A A I I I Application Service Data centric Business...
4. SOA Layered Model <ul><li>Networked SOA </li></ul><ul><ul><li>Fundamental SOA +  Intermediary Service  = enable  Flexib...
4. SOA Layered Model <ul><li>Process enabled SOA </li></ul>T T T D D D D D A A A I I I P Application Service Data centric ...
4. SOA Layered Model <ul><li>Process Enabled SOA </li></ul><ul><ul><li>Networked SOA +  Business Process  (BPM) = enable  ...
4. SOA Layered Model <ul><li>SOA Maturity Level </li></ul>
4. SOA Layered Model <ul><li>SOA introduction plan </li></ul><ul><ul><li>Define integration scope </li></ul></ul><ul><ul><...
4. SOA Layered Model <ul><li>Other Layered Model </li></ul><ul><ul><li>Task centric service </li></ul></ul><ul><ul><li>Tas...
5. SOA Elements <ul><li>SOA is based on 3 major elements </li></ul><ul><ul><li>Service </li></ul></ul><ul><ul><li>Service ...
5. SOA Elements <ul><li>Application frontend </li></ul><ul><ul><li>Active player of an SOA </li></ul></ul><ul><ul><li>Serv...
5. SOA Elements <ul><li>Service </li></ul><ul><ul><li>Message format  </li></ul></ul><ul><ul><ul><li>Input message, output...
5. SOA Elements <ul><li>Service repository </li></ul><ul><ul><li>Service repository is “provides facilities to discover se...
6. SOA Platform <ul><li>Revise SOA stack </li></ul>T T T D D D D D A A A I I I P Application Service Data centric Business...
6. SOA Platform <ul><li>BEA SOA Platform </li></ul>I way adapter WS-WLW WS-WLS  ant task AquaLogic Data Service Platform  ...
6. SOA Platform Request Loan Approve Loan AquaLogic  BPM Suite WebLogic Integration Backend Systems <ul><li>Human-centric ...
6. SOA Platform – AL BPM Life Cycle Process Modeling, Simulation  and Documentation Process Management and Real-Time BAM H...
6. SOA Platform <ul><li>WebService Technical Stack </li></ul>JAXP  JAX-RPC SAAJ XML Parser SOAP Protocol Handling SOAP Wit...
7. Technical things we need to support SOA <ul><li>Services </li></ul><ul><ul><li>XML Skills   name space ,XSD ,XML </li>...
8. Reference <ul><li>Enterprise SOA Best Practice – Dirk Krafzig,Karl Banke,Dirk Slama </li></ul><ul><ul><li>Good book to ...
Questions?
Upcoming SlideShare
Loading in...5
×

Soa Overview

6,475

Published on

Quick overview of SOA

Published in: Technology
1 Comment
8 Likes
Statistics
Notes
No Downloads
Views
Total Views
6,475
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
611
Comments
1
Likes
8
Embeds 0
No embeds

No notes for slide
  • Transcript of "Soa Overview"

    1. 1. SOA Overview and Layered Model Byungwook Cho K. 2006-05-25
    2. 2. Agenda <ul><li>What is SOA? </li></ul><ul><li>What is Service? </li></ul><ul><li>Service Type </li></ul><ul><li>SOA Layered Model </li></ul><ul><li>SOA Elements </li></ul><ul><li>SOA platform </li></ul><ul><li>Technical things we need to support SOA </li></ul><ul><li>Reference </li></ul>
    3. 3. 1. What is SOA? <ul><li>Software architecture history </li></ul><ul><ul><li>Structured programming / SSADM (C/Pascal) </li></ul></ul><ul><ul><li>Object Oriented Programming / OOADM & CBD (C++/Java) </li></ul></ul><ul><ul><li>+ coarse grained , loosely coupled, platform independency, standard interface </li></ul></ul><ul><ul><li>= Service Oriented Architecture </li></ul></ul>
    4. 4. 1. What is SOA? <ul><li>SOA is “Legoware”. </li></ul><ul><li>SOA is an architecture that a software system is divide into high flexible and re-usable component unit called service and compose with interconnection of these services. </li></ul><ul><li>The general concept of service in SOA is that service is a major unit of software component with business sense. These services have low dependency and each can be implemented without platform dependency while the interfaces that the service provides must be standardized . </li></ul>
    5. 5. 1. What is SOA? <ul><li>Conceptual view of SOA </li></ul>G H I J K L Software Component System (Platform) .NET CRM JAVA KMS Services Business Process A B C D E F Application Frontend Web Client, Rich Client, Enterprise Portal etc
    6. 6. 1. What is SOA? <ul><li>SOA Definition </li></ul><ul><ul><li>BD : A SOA provides the flexibility to treat elements of business processes and the underlying IT infrastructure as secure,standardized components(services) that can be reused and combined to address changing business priorities. – IBM </li></ul></ul><ul><ul><li>Resource is application or resources built on IT systems. SOA is a software architecture that integrate the resources to maximized reusability and flexibility of composition. </li></ul></ul><ul><li>SOA is </li></ul><ul><ul><li>Not a technical standard </li></ul></ul><ul><ul><li>Not a technology </li></ul></ul><ul><ul><li>Just architecture blue print </li></ul></ul>
    7. 7. 1. What is SOA? <ul><li>Contemporary SOA </li></ul><ul><ul><li>WebService </li></ul></ul><ul><ul><li>BPM </li></ul></ul>G H I J K L Services Business Process A B C D E F WebService BPM
    8. 8. 2. What is Service? <ul><li>Service is </li></ul><ul><ul><li>component of distinctive functional meaning that typically encapsulate a high-level business concept </li></ul></ul><ul><ul><li>Lego block </li></ul></ul><ul><li>Service contains </li></ul><ul><ul><li>Contract – message type def, constraint, description (comment) </li></ul></ul><ul><ul><li>Interface – set of operations </li></ul></ul><ul><ul><li>Implementation – Logic and data </li></ul></ul>
    9. 9. 2. What is Service? <ul><li>Conceptual structure of service </li></ul>NOTE: Every service is an entity of distinctive functional meaning that typically encapsulates a high-level business entity. Services impose a strong vertical slicing of application that defines the coarse-grained structure of the whole system.
    10. 10. 2. What is Service? <ul><li>Service is </li></ul><ul><ul><li>Lego block. Building Block </li></ul></ul><ul><ul><li>Has standard based interface </li></ul></ul><ul><ul><li>Loosely coupled </li></ul></ul><ul><ul><li>Platform independent </li></ul></ul><ul><ul><li>Composable </li></ul></ul><ul><ul><li>Discoverable </li></ul></ul><ul><ul><li>Vertical slicing </li></ul></ul>
    11. 11. 3. Service Type <ul><li>5 main type of service </li></ul><ul><ul><li>Application Service </li></ul></ul><ul><ul><li>Business Service </li></ul></ul><ul><ul><li>Intermediary Service </li></ul></ul><ul><ul><li>Process Centric Service </li></ul></ul><ul><ul><li>Public Enterprise Service </li></ul></ul>
    12. 12. 3. Service Type <ul><li>Application Service </li></ul><ul><ul><li>Provide technology-specific functionality. </li></ul></ul><ul><ul><li>It does not have business meaning </li></ul></ul><ul><ul><li>Wrapper service </li></ul></ul><ul><ul><ul><li>Expose legacy functionality to service requestor. </li></ul></ul></ul><ul><ul><ul><li>Service adapter from legacy vendor </li></ul></ul></ul><ul><ul><ul><li>Example) Tuxedo Services, SAP RPC </li></ul></ul></ul><ul><ul><li>Utility Service </li></ul></ul><ul><ul><li>Can be used by P2P integration. </li></ul></ul><ul><ul><li>Can be custom developed or 3 rd party services </li></ul></ul><ul><ul><li>Can be avoided in perfect SOA world </li></ul></ul><ul><ul><li>Example) System Notification Service,Load Balancing Service, Transaction management Service etc. </li></ul></ul>
    13. 13. 3. Service Type <ul><li>Business Service </li></ul><ul><ul><li>Business meaning + compose application service </li></ul></ul><ul><ul><li>Composable unit  SOA is accomplished by orchestartion of Business Service </li></ul></ul><ul><ul><li>Hybrid service  service contains business process (orchestration) and application logic </li></ul></ul>
    14. 14. 3. Service Type <ul><li>Business Service </li></ul><ul><ul><li>Task centric service </li></ul></ul><ul><ul><ul><li>Has business algorithm or logic </li></ul></ul></ul><ul><ul><ul><li>Similar to logic layer in traditional application. Eg. Session Bean </li></ul></ul></ul><ul><ul><ul><li>Example) Booking Service etc </li></ul></ul></ul><ul><ul><li>Data centric service (Entity centric service) </li></ul></ul><ul><ul><ul><li>Only update and query data </li></ul></ul></ul><ul><ul><ul><li>Easy to reuse </li></ul></ul></ul><ul><ul><ul><li>Similar to data access layer in traditional application. Eg. Entity Beans in EJB </li></ul></ul></ul><ul><ul><ul><li>Example) Employee Service, Vendor Profile Service, Purchase Order Service </li></ul></ul></ul>
    15. 15. 3. Service Type <ul><li>Intermediary Service </li></ul><ul><ul><li>Stateless service that bridge design gap or conceptual gap in an architecture </li></ul></ul><ul><ul><li>Transformer service (Adapter Service) </li></ul></ul><ul><ul><li>Routing service </li></ul></ul><ul><ul><li>Function adding service </li></ul></ul><ul><ul><li>Façade service </li></ul></ul>
    16. 16. 3. Service Type <ul><li>Intermediary Service </li></ul><ul><ul><li>Transformation Service </li></ul></ul>Service A New Service Message type mismatch New Service Intermediary Service Transformation Personal = SEX + “:”+ AGE AGE SEX ADDR NAME PERSONAL INFO ADDR NAME AGE SEX ADDR NAME PERSONAL INFO ADDR NAME
    17. 17. 3. Service Type <ul><li>Intermediary Service </li></ul><ul><ul><li>Routing Service </li></ul></ul>Service B Customer Service Service B Customer Service * Before change VIP Service * After new service “VIP Service” added, We have to add control logic to service consumer “Service B” If there are a lot of service consumer of “Customer Service” We have to change a lot of things..!! Intermediary Service Customer Service VIP Service Service B If balance > 10m$ then goto VIP Service * If we just add “Intermediary Service”, we don’t have to fix consumer Service B. Intermediary service will route service request to appropriate client by routing rule.
    18. 18. 3. Service Type <ul><li>Process centric service </li></ul><ul><ul><li>Orchestrate business services </li></ul></ul><ul><ul><li>Implement business process (flow) </li></ul></ul><ul><ul><li>Process centric service are stateful </li></ul></ul><ul><li>Public enterprise service </li></ul><ul><ul><li>Service interface for B2B </li></ul></ul><ul><ul><li>Will be Business service in service consumer side. </li></ul></ul>
    19. 19. 3. Service Type <ul><li>SOA service stack </li></ul>Application Service Data centric Business Service Task centric Business Service Intermediary Service Process centric Service Public enterprise service Software components (Used for Business Service & Intermediary Service) Application Frontend T T T D D D D D A A A I I I P B B D Web Client, Rich Client, Enterprise Portal etc
    20. 20. 3. Service Type <ul><li>Service Type Summary </li></ul>It needs when new service or new service connection is made Most Important Service * Hybrid svc Note Export business logic to other enterprise or organization Encapsulate business process and orchestrate other services Bride the gap from concept or design Contains business logic and data. Express technology-specific functionality Description No No No Yes No Mandatory in SOA Reusability State mgmt Sub category High Very Low Low High ?? No Yes No No No Process centric Façade ,Function Adding,Routing,Transforming Task centric ,Entity centric Wrapper svc Utility svc Public Enterprise Service Process centric Service Intermediary Service Business Service Application Service
    21. 21. 3. Service Type (optional *) <ul><li>How can I define services? </li></ul><ul><ul><li>Task centric business services  from business process </li></ul></ul><ul><ul><li>Data centric business services  from Entity relationship diagram </li></ul></ul><ul><ul><li>Process centric service  each business process is process centric service </li></ul></ul><ul><ul><li>Intermediary service  Adding new service or re-implement </li></ul></ul><ul><ul><li>Application services  In design or implementation phase </li></ul></ul>The most important factor in SOA is finding business service and define scope of it… !!
    22. 22. 4. SOA Layed Model <ul><li>SOA Layered Model </li></ul><ul><ul><li>Fundamental SOA </li></ul></ul><ul><ul><li>Networked SOA </li></ul></ul><ul><ul><li>Process enabled SOA </li></ul></ul><ul><ul><li>Other layered model </li></ul></ul>
    23. 23. 4. SOA Layered Model <ul><li>Fundamental SOA </li></ul>T T T D D D D D A A A Application Service Data centric Business Service Task centric Business Service B T Software components (Used for Business Service & Intermediary Service) Web Client, Rich Client, Enterprise Portal etc Application Frontend
    24. 24. 4. SOA Layered Model <ul><li>Fundamental SOA </li></ul><ul><ul><li>Easy to implement. Good starting point for SOA </li></ul></ul><ul><ul><li>Integration only </li></ul></ul><ul><ul><li>Consists of only Application Service & Business Service </li></ul></ul><ul><ul><li>Complex Application Frontends </li></ul></ul><ul><ul><ul><li>Business process control is in Frontends </li></ul></ul></ul>
    25. 25. 4. SOA Layered Model <ul><li>Networked SOA </li></ul>T T T D D D D D A A A I I I Application Service Data centric Business Service Task centric Business Service Intermediary Service B T Software components (Used for Business Service & Intermediary Service) Web Client, Rich Client, Enterprise Portal etc Application Frontend
    26. 26. 4. SOA Layered Model <ul><li>Networked SOA </li></ul><ul><ul><li>Fundamental SOA + Intermediary Service = enable Flexibility </li></ul></ul><ul><ul><li>Reduce complexity of frontends </li></ul></ul><ul><ul><li>Business control still reside in application frontend </li></ul></ul>
    27. 27. 4. SOA Layered Model <ul><li>Process enabled SOA </li></ul>T T T D D D D D A A A I I I P Application Service Data centric Business Service Task centric Business Service Intermediary Service B T Process centric Service Software components (Used for Business Service & Intermediary Service) Web Client, Rich Client, Enterprise Portal etc Application Frontend
    28. 28. 4. SOA Layered Model <ul><li>Process Enabled SOA </li></ul><ul><ul><li>Networked SOA + Business Process (BPM) = enable Agility </li></ul></ul><ul><ul><li>When it has complex business flow </li></ul></ul><ul><ul><li>Implements business control </li></ul></ul>
    29. 29. 4. SOA Layered Model <ul><li>SOA Maturity Level </li></ul>
    30. 30. 4. SOA Layered Model <ul><li>SOA introduction plan </li></ul><ul><ul><li>Define integration scope </li></ul></ul><ul><ul><li>Select SOA level depends on budget,skill,required agility. </li></ul></ul><ul><ul><li>CF. 6 Domain architecture from BEA </li></ul></ul><ul><li>Service maturity level </li></ul><ul><ul><li>Based on the required scope of business integration </li></ul></ul><ul><ul><ul><li>Intra-department~Cross department : Fundamental SOA </li></ul></ul></ul><ul><ul><ul><li>Cross-department~Cross Business unit : Networked SOA </li></ul></ul></ul><ul><ul><ul><li>Simple B2B~Complex Business integration : Process enabled SOA </li></ul></ul></ul>
    31. 31. 4. SOA Layered Model <ul><li>Other Layered Model </li></ul><ul><ul><li>Task centric service </li></ul></ul><ul><ul><li>Task centric service + Data centric service </li></ul></ul><ul><ul><li>Process centric service + Hybrid service </li></ul></ul><ul><ul><li>Process centric service + Task centric service </li></ul></ul><ul><ul><li>Process centric service + Data centric service </li></ul></ul><ul><ul><li>Process centric service + Task centric service + Data centric service </li></ul></ul>
    32. 32. 5. SOA Elements <ul><li>SOA is based on 3 major elements </li></ul><ul><ul><li>Service </li></ul></ul><ul><ul><li>Service Repository </li></ul></ul><ul><ul><li>Application Frontend </li></ul></ul><ul><ul><li>optionally ESB </li></ul></ul>
    33. 33. 5. SOA Elements <ul><li>Application frontend </li></ul><ul><ul><li>Active player of an SOA </li></ul></ul><ul><ul><li>Service consumer </li></ul></ul><ul><ul><li>Initiate and control all activity of enterprise system </li></ul></ul>
    34. 34. 5. SOA Elements <ul><li>Service </li></ul><ul><ul><li>Message format </li></ul></ul><ul><ul><ul><li>Input message, output message </li></ul></ul></ul><ul><ul><ul><li>Data type </li></ul></ul></ul><ul><ul><ul><li>Message exchange pattern </li></ul></ul></ul>
    35. 35. 5. SOA Elements <ul><li>Service repository </li></ul><ul><ul><li>Service repository is “provides facilities to discover services and acquire all information to user the service “ </li></ul></ul><ul><ul><li>Service repository is indispensable in long term </li></ul></ul><ul><ul><li>It contains </li></ul></ul><ul><ul><ul><li>In addition to service contract : location,provider,contact ,usage fee,technical constraints,security issues and availble service level </li></ul></ul></ul><ul><ul><ul><li>SVC Info,ACL,SLA,Transactional properties of SVC & operation (CRUD) </li></ul></ul></ul><ul><ul><ul><li>In cross enterprise : security,user registration, service subscription,billing and versioning </li></ul></ul></ul>
    36. 36. 6. SOA Platform <ul><li>Revise SOA stack </li></ul>T T T D D D D D A A A I I I P Application Service Data centric Business Service Task centric Business Service Intermediary Service B T Process centric Service Software components Web Client, Rich Client, Enterprise Portal etc Application Frontend
    37. 37. 6. SOA Platform <ul><li>BEA SOA Platform </li></ul>I way adapter WS-WLW WS-WLS ant task AquaLogic Data Service Platform WebLogic Integration AquaLogic Service Bus (ESB) Aqua Logic BPM Suite (BPA+BPM+BAM) Weblogic Portal AquaLogic User Interaction AquaLogic Service Registry Subprocess (BPM) Application Service Data centric Business Service Task centric Business Service Intermediary Service Process centric Service Application Frontend Make service it self Data store Legacy System AquaLogic Enterprise Security
    38. 38. 6. SOA Platform Request Loan Approve Loan AquaLogic BPM Suite WebLogic Integration Backend Systems <ul><li>Human-centric process integration </li></ul><ul><li>Leverage reusable services </li></ul><ul><li>System-centric process integration </li></ul><ul><li>Build reusable services that solve complex integration problems </li></ul>LOB CENTRIC IT CENTRIC AquaLogic Service Bus <ul><li>Service Infrastructure </li></ul>Approver System System Customer
    39. 39. 6. SOA Platform – AL BPM Life Cycle Process Modeling, Simulation and Documentation Process Management and Real-Time BAM Historical & Trend Analysis Tools Business Owners HiPer Workspace Process Participants Process Server and Monitoring Repository AquaLogic BPM Enterprise Server Business Systems CRM DB ERP Business Analysts Use Cases 1.0 Get the stuff 2.0 Build the picture 3.0 BAM Consoles Requirements 1.1 Process Diagram 2.1 Launch screen 3.1 Monitoring screen Process Analyst Process Development and Systems Integration BPA BAM BPM Start
    40. 40. 6. SOA Platform <ul><li>WebService Technical Stack </li></ul>JAXP JAX-RPC SAAJ XML Parser SOAP Protocol Handling SOAP With Attachment WebService JAXR UDDI UDDI Interface
    41. 41. 7. Technical things we need to support SOA <ul><li>Services </li></ul><ul><ul><li>XML Skills  name space ,XSD ,XML </li></ul></ul><ul><ul><li>XML Apis  JAXP,JAX-RPC,JAAS,JAXR </li></ul></ul><ul><ul><li>WS Standard  SOAP, WSDL </li></ul></ul><ul><ul><li>WS*  WS-Reliable Messaging,WS-Security </li></ul></ul><ul><ul><li>CF. WS I Basic Profile </li></ul></ul><ul><li>ESB (ALSB) </li></ul><ul><ul><li>Additionally  Xquery, Xpath </li></ul></ul>
    42. 42. 8. Reference <ul><li>Enterprise SOA Best Practice – Dirk Krafzig,Karl Banke,Dirk Slama </li></ul><ul><ul><li>Good book to run contemporary SOA whole concept </li></ul></ul><ul><li>Service Oriented Architecture – Concepts,Technology, and Design by Thomas Erl </li></ul><ul><ul><li>Good for SOA Analysis and design </li></ul></ul>
    43. 43. Questions?
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×