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.

S-CUBE LP: Service Identification


Published on

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

S-CUBE LP: Service Identification

  1. 1. S-Cube Learning Package Service IdentificationVU University Amsterdam (VUA), Patricia Lago
  2. 2. Learning Package Categorization S-Cube Service Engineering and Design Service discovery and identification Service Identification
  3. 3. Learning Package Overview Problem Description Service Identification Method Summary
  4. 4. Problem DescriptionQ) How to identify services out of requirements – How to guide the reasoning to identify candidate services out of requirements – What modeling methods can help such analysis
  5. 5. Italian restaurant analogy:Understanding Basic Concepts – Restaurant provides food: a service – After the order is taken, food is produced, served, …: service may consist of other services (service composition) – The menu indicates the service provided: a service description (contract) – The order is written down, or yelled at the cook: services communicate through messages
  6. 6. Main ingredients – Services ⇒ functionality – Service contracts ⇒ qualities (e.g. reliability, security, performance), other non-functional properties (e.g. platform characteristics, legal constraints), tacit design decisions (e.g. insurance companies might assume 1st January = starting date of policy contracts) – Messages ⇒ properties of data exchanges (e.g. data structures, protocols)
  7. 7. Other example: on services – Municipality supporting the citizen in looking for an apartment: - Check personal data ⇒ service (of provider) X - Check tax history ⇒ service (of provider) Y - Check credit history ⇒ service (of provider) Z - Search rental agencies ⇒ services (of providers) A, B -…
  8. 8. Other example: on messages Place order sync basket info credit card data Order sync E-payment processing status update basket info status update Delivery
  9. 9. Learning Package Overview Problem Description Service Identification Method Summary
  10. 10. Terminology /1 Conceptual service – service that is not yet implemented (implementation agnostic), can be either a software service or not Service candidate – conceptual service identified during analysis and candidate for design Service operation candidate – a service operation identified from functional requirements; it might become a service candidate itself, or be composed (i.e. aggregated) in a (more complex) service candidate Business service – is an (ideally) self-contained, stateless business function that accepts one or more requests and returns one or more responses through a well-defined, standard interface. – During service identification, the elicited business services become the service candidates of the design phase. They might be service operation candidates.
  11. 11. Terminology /2 Service types Track – task service delivery T Manage – entity service E Basket – utility (or infrastructure) service E-payment U – (hybrid service - mix of task and entity) Place order H Atomic service vs. Composed service
  12. 12. Terminology /2 exemplified task service Assign nurse ? entity service Arrange transport ? utility (or infrastructure) service Inform family doctor ? (hybrid service - mix of task and entity) Inform local ? social services What are the service types here? Inform patient ?
  13. 13. Service Oriented (SO) analysis  The process of determining how Service oriented business requirements can be analysis represented through services  The process of modeling a service inventory and/or reusing Service oriented it to compose a service oriented design application
  14. 14. Steps of SO analysis1. Identify business services and service operation candidates – from the target business domain: this can be the list of functional requirements (top-down development) or directly the list of provided business functions – from functional models of pre-existing systems (SO migration)2. Model service candidates – aggregate service operation candidates into service candidates - to do so, recognize overlaps (see next slides) UML activity diagrams (behavior), UML use case diagrams (decomposition); UML class diagrams (data)
  15. 15. Steps of SO analysisA) gluing service operations to define self-contained business logic Service operation Service candidates candidates (self-contained)
  16. 16. Service modeling guidelinesB) reusability of common business logic across different processes  Task service candidates – reusability of common business logic across different processes
  17. 17. Service modeling guidelines Task service candidates – reusability of common business logic within a process
  18. 18. Order Fulfillment Process - runningexample
  19. 19. Step 1: Identify service candidatesPOprocessing (XML -> native format)service (currently custom(task component)service) service candidate (into accounting system)same (currently custom legacy)as previous service candidate (to accounting clerks work queue)same service candidateas previous
  20. 20. Step 2: Model service candidates -excerpt Receive PO <<include>> document Validate PO <<include>> document PO processing service ... (If PO document is <<include>> invalid)send rejection notification (and end process) <<include>> Transform PO document into native electronic PO format
  21. 21. Model service candidates: businessprocess logic Not service operation candidates (from the Order Fulfillment Process example): – if PO document is valid, proceed with the step “transform PO document” – if the PO document is invalid, “end process” This belongs to the respective task services
  22. 22. Model service candidates: data model
  23. 23. Summary of SO analysis diagrams identify business services and service operation candidates – UML activity diagrams model service candidates – UML use case diagrams (task services) – UML class diagrams (entity services)
  24. 24. Learning Package Overview Problem Description Service Identification Method Summary
  25. 25. Summary of Service IdentificationMethod Step 1: Business service identification. – The business services are elicited by means of business process models and conceptual data models. – These two models can be determined either from functional models of pre-existing systems (i.e. bottom-up SOA migration), or from the target business domain, as the list of functional requirements (i.e. top-down service development). – Conceptual data models, instead, facilitate identification of the business services addressing the functionality of business entities Step 2: Business service decomposition. – Given the identified business services, this step elicits the candidate services and their constituent service operations.