1 / 21

Service Layers

Service Layers. 605.702 Service Oriented Architecture Johns-Hopkins University Montgomery County Center, Spring 2009 Session 6, Lecture 6: March 4, 2009 Instructor: T. Pole. Agenda. Required Reading for This Week Chapter 9: Service Layers Today’s Presentation Update on Chapter 8

Download Presentation

Service Layers

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 Layers 605.702 Service Oriented ArchitectureJohns-Hopkins University Montgomery County Center, Spring 2009 Session 6, Lecture 6: March 4, 2009 Instructor: T. Pole

  2. Agenda • Required Reading for This Week • Chapter 9: Service Layers • Today’s Presentation • Update on Chapter 8 • Today’s Lecture • Text CH 9 • Class Assignments • Exercise #4, Implementing a Service Composition • Review for Mid Term Exam • Mid Term is next week Wednesday March 11, 2009

  3. Ch 8 Principles of Service Orientation • Additional notes on Chapter 8 have been added to the lecture notes for last week, Lecture 5 2/25/09 • Check these notes in reviewing for the mid term exam next week

  4. Chapter 9: Service Layers • 9.1 SO and Contemporary SOA • Review table 9.1: how SOA characteristics are influenced by Web Service specs and SO principles • 9.2 Service Layer Abstraction • The service layer is between the application layer and the business process layer (see Ch 8) • The implementation of the service interface layer is sub-divided into layers following one of several different models • 9.3 Application Service Layer • 9.4 Business Service Layer • 9.5 Orchestration Service Layer • 9.6 Agnostic Services • 9.7 Service Layer Scenarios

  5. 9.2 Service Layer Abstraction • Figure 9.2 shows the SOA layers WITHIN the single Service Interface Layer of the Enterprise Architecture • Business Process Layer Processes of the Enterprise, not just the IT systems • Service Interface Layer • Orchestration Layer • Business Service Layer • NOT the Business Process Layer • Application Service Layer • NOT the Application Layer • Application Layer Legacy and Service Implementations

  6. 9.3 Application Service Layer • Sits within the Service Interface Layer, and integrates with the Application Layer below • Solution (Meaning business process) agnostic, are more generic and usually reusable across multiple biz processes • Can also be used to integrate other application services • Mixture of custom and COTS products • Hybrids may cross the line between business and application logic

  7. 9.4 Business Service Layer • Business services can be mapped to small grained or low level specific business processes and entities • Business oriented services can be • Entity Centric • Task Centric • Not both, but a business service layer can be a mix of both. Usually will be primarily one or the other

  8. 9.5 Control or Orchestration Service Layer • Introduces another type or service, the process service (aka but not synonymous with the controller service) • Directly relates to a business process • Controls other business, hybrid and application/utility services to automate a process • Can be implemented in “non-technical” languages, e.g. BPEL

  9. 9.6 Agnostic Services • Agnostic in this context can mean not bound to any one process • e.g. an entity based service can be used by multiple biz processes that involve that entity • e.g. a utility service is by definition a generic reusable service not bound to any business entity: task or entity based • Exist with the application service layer or the business layer

  10. 9.7 Service Layer Scenarios • There is no one layered model for the Service Interface Layer, some options are: • Single hybrid layer • Common, doesn’t evolve well, brittle • Hybrid over utility • Also common among mature software developers, reuse driven • Biz task centric over utility • Often the goal for mature business centric developers • Task centric over entity centric over utility • Common among mature systems, flexible, adaptable • Orchestration over hybrid over utility • Better then single hybrid, but extending to new orch. difficult • Orchestration over task centric over utility • Flexible, evolves well, flexibly adjusts to change

  11. Exercise #4: Implementing a Service Composition TestConsumerUI SEAM Index ------------------ Register Asset FindAssetClassifyAsset TextIndexer ------------------ IndexDocQueryIndex DocManager ------------------ StoreDoc GetDoc ClassifyAsset

  12. Exercise #4 Interface: Services and Operations • SEAMIndex Service (New Service and Functions) • AssetID RegisterAsset( string AssetAsText ) • AssetID FindAsset( string Title, string Author ) • bool ClassifyAsset( string AssetID, string Class) • TextIndexer Service (Wraps Legacy Component) • Bool StatusFlag IndexDoc( string DocAsText ) • AssetID[] QueryIndex( string Title, string Author ) • DocManager Service (Wraps Legacy Component) • AssetID StoreDoc( string DocContent ) • string GetDoc( string DocID ) • bool ClassifyDoc( string DocID, string Classification )

  13. Legacy Components API • Supplied as C# Functions • TextIndexerAppLibrary • bool IndexTerms( string Content ) • String FindDocs( string Title, string Author ) • DocManagerAppLibrary • string Store( string DocContent ) • string Retrieve( string DocID ) • bool Categorize( string DocID, string Category )

  14. Integrating Legacy Apps • Download complete applications assemblies from class web site • Integration Stubs available now • Fully functional projects will be published next week • Add as projects to your solution

  15. Review for Mid Term Exam • Review of the previous lectures • Q&A for Chapters 1 – 9 • Review of Implementing Web Services and SOA Designs in Visual Studio/ASP.Net • Additional Notes

  16. SOA Implementation via Web Services in ASP.Net • Exercise #1: Web Service Consumers • Web Reference • What is it doing? • What is its purpose? • Exercise #2: Building a Web Service • What does a Visual Studio Web Service project generate? • Exercise #3: Publishing a Web Service • What is published to the remote site?

  17. Additional Notes: Service Oriented’ness • When designing a service oriented architecture, ask yourself: • Is communication among services and consumers like a phone conversation or the exchange of standard forms • If it is like a phone call interview, it is chatty and not service oriented. • A service is being performed, but each interaction in the system is only a piece of the complete service • If it is like an exchange of standard forms, and all the information required to perform the service is on that single initial form, and the information required is returned in a equally complete single form, it is service oriented • Example: You need to determine if several checks you’ve written have cleared the bank.

  18. Not Service Oriented • Call the bank, the operator ask what your need is. • You respond you wish to verify if these checks have cleared • They ask you to identify your account and your person. • They validate your identity and ask which checks: which numbers and what dates. • You give them the check information, one check at a time. • They verify each one at a time.

  19. Service Oriented • You fill out a form which includes your account information, personal identifiers, the service you want performed (verify checks have cleared), and the numbers of the checks. • The response is another form listing the state of all the checks you have asked to have verified.

  20. The Difference? • They both perform the same business process • They both have the same accuracy and completeness • One is a complete service performed in one single step, and is service oriented • The other is performed by many related interdependent steps, and is not

  21. Summary • Session 7: 3/11/09 • Mid Term Exam • Introduction of Class Week • Spring Break the following week • Exercise #4 is due 3/25/09 • Specifications for Class Project will be presented

More Related