service modeling based on soa: concepts, technology, design by thomas erl mis 181.9: service...

27
Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Upload: polly-mckinney

Post on 04-Jan-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Service Modeling Based on

SOA: Concepts, Technology, Designby Thomas Erl

MIS 181.9: Service Oriented Architecture

2nd Semester, 2011-2012

Page 2: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Service-Oriented Development

►Development of a service-oriented solution

►General Steps► Analysis►Design► Implementation (Development, Testing,

Deployment)►Maintenance

Page 3: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Service-Oriented Analysis

►Define Business Requirements►Data Gathering

►Can be focused on Tasks or Entities

► Identify Automation Systems► Scope Definition

►Model Candidate Services► Service Modeling

Page 4: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Defining Business ServicesTask-Centric vs Entity-Centric

Page 5: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Service-Oriented Analysis

►Goal: Figure out what has to be considered in the Design Process

► Identify Services► Start by identifying CANDIDATE SERVICES

►Service Candidates are the outputs of Service Modeling

Page 6: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Service Modeling

1. Decompose business processes2. Identify operation candidates3. Define orchestration logic4. Create service candidates5. Refine and apply service orientation6. Identify service compositions

Page 7: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Service Modeling

7. Revise operation grouping8. Analyze processing requirements9. Identify application service operations10. Create application service candidates11. Revise service compositions12. Revise operation grouping

Page 8: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Decompose Business Processes

►Breakdown process into smaller steps►Create Process models

►DFDs►BPM models

Page 9: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Example: Invoice Submission Process

1. Create electronic invoice.

2. Issue electronic invoice.

3. Export electronic invoice to network folder.

4. Poll network folder.

5. Retrieve electronic invoice.

6. Transform electronic invoice to XML document.

7. Check validity of invoice document. If invalid, end process.

8. Check if it is time to verify TLS metadata.

9. If required, perform metadata check. If fails, end process.

Page 10: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Identify Operation Candidates

►Remove those that can not be part of the automated solution

► Filter list of business processes

Page 11: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Filter Original List of Processes

1. Create electronic invoice. (Manual step done by accounting clerk)

2. Issue electronic invoice. (Manual step done by accounting clerk)

3. Export electronic invoice to network folder. (Currently a custom developed extension of the legacy system. Could be made part of a generic service candidate.)

4. Poll network folder. (Currently a custom developed component. Could be made part of a service candidate.)

5. Retrieve electronic invoice. (Same as previous.)

Page 12: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Filter Original List of Processes

6. Transform electronic invoice to XML document. (Same as previous.)

7. Check validity of invoice document. If invalid, end process. (Is currently being performed as part of the Invoice Submission Service's parsing routine. No foreseeable need to change this.)

8. Check if it is time to verify TLS metadata. (Is currently being performed as part of the Invoice Submission Service's parsing routine. Looks like a potentially reusable operation candidate. Could be moved to a separate service candidate.)

9. If required, perform metadata check. If fails, end process. (Same as previous.)

Page 13: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Abstract Orchestration Logic

►Business Rules►Conditional Logic►Exception Logic►Sequence Logic

Page 14: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Abstract Orchestration Logic

1. If the invoice document is valid, proceed with the metadata check step.

2. If the invoice document is invalid, end process.

3. If the interval period for performing a metadata check has completed, proceed to the perform metadata check step.

4. If the interval period has not completed, skip the perform metadata check step.

5. If the PO document is valid, proceed with the transform PO document step.

6. If the PO document is invalid, end process.

Page 15: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Create Business Service Candidates

►Review remaining processes►Determine logical grouping► Each grouping = service candidate

Page 16: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Create Business Service Candidates

► Legacy System Service1. Export electronic invoice to network folder.

2. Import electronic PO into accounting system.

3. Send PO to accounting clerk's work queue.

► Invoice Processing Service1. Poll network folder for invoice.

2. Retrieve electronic invoice.

3. Transform electronic invoice to XML document.

4. Check validity of invoice document. If invalid, end process.

Page 17: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Create Business Service Candidates

►Metadata Checking Service1. Check if it is time to verify TLS metadata.

2. If required, perform metadata check; if metadata check fails, end process.

►PO Processing Service1. Receive PO document

2. Validate PO document

3. If PO document is invalid, send rejection notification and end process.

4. Transform PO XML document into native electronic PO format.

Page 18: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Create Business Service Candidates

Legacy

System

Service

Invoice Process

-ing Service

Metadata

Check-ing

Service

PO Process

-ing Service

Page 19: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Refine and ApplyService-Orientation Principles

► Important properties in the modeling stage►Reusability► Autonomy

► Identify potentially reusable and autonomous services

Page 20: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Refine and ApplyService-Orientation Principles

Legacy

System

Service

Invoice Process

-ing Service

Metadata

Check-ing

Service

PO Process

-ing Service

Polling Notifica

-tion Service

Transform

Accounting

Documents Service

Page 21: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Refine and ApplyService-Orientation Principles

►Polling Notification Service1. Poll folder for new documents.

2. If documents arrive for which there are subscribers, issue notifications.

► Transform Accounting Documents Service► Transform XML documents into native format► Transform native documents to XML

Page 22: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Refine and ApplyService-Orientation Principles

►Metadata Checking Service1. Check if it is time to verify TLS metadata. If it is time, perform

metadata check.

2. If required, perform metadata check; if metadata check fails, end process. Issue notification.

►PO Processing Service1. Receive PO document

2. Validate PO document

3. If PO document is invalid, send rejection notification and end process.

4. Transform PO XML doc. into native electronic PO format.

Page 23: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Refine and ApplyService-Orientation Principles

► Legacy System Service1. Export electronic invoice to network folder.

2. Import electronic PO into accounting system.

3. Send PO to accounting clerk's work queue.

► Invoice Processing Service1. Poll network folder for invoice.

2. Retrieve electronic invoice.

3. Transform electronic invoice to XML document.

4. Check validity of invoice document. If invalid, end process.

Page 24: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Identify Service Compositions

Apply Service Layer Principle

Page 25: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Service Layers

► Application Service Layer► Express technology-specific functionality► Provide reusable functions related to processing data

► Business Service Layer► Implementation of the business service model► Represents business logic

►Orchestration Service Layer► Defines business rules and service execution

sequence logic ► Adds complexity to SOA implementation

Page 26: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Service Composition Defined

Page 27: Service Modeling Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012

Service Composition Defined