Download presentation
Presentation is loading. Please wait.
Published byRudolf Wheeler Modified over 8 years ago
1
Service Pattern & IEC Recommendation
2
Goals To define interoperable and sustainable Web services in a consistent way based on standards To bring business semantics into service definition using IEC recommended verbs To support flexible integration with or without ESB
3
Key Architecture Considerations Decoupling of end point connections and business semantics Guaranteed delivery Managed integration Process orchestration where necessary End point compliance to common business semantics and syntax for information exchange to the public (enterprise) End point compliance to service patterns (interaction patterns, naming and structure patterns, and message exchange patterns) Minimal business logic and transformation within the integration layer Map to IEC TC57 WG14 verbs
4
Pattern at Two Levels Service Pattern –Logical (common patterns in terms of business process, interaction, and service role in SOA environment) Operation Pattern –Physical (semantics of operations in terms of action and information object)
5
Service Patterns Send - to provide (send) information (business object) for public (enterprise) consumption. To be invoked by the system of record for the business object and only when the state of the business object has changed. Receive – to consume (receive) information (business object) from an external source. Request – to request another party to perform a specific service Execute – to run a service provided to the public, which may include a state change request or a query request. Reply – to reply with the result of the execution of a service (by the Execute service) Show - to provide (show) information (business object) for public (enterprise) consumption, when the state of the business object is not changed, by the system of record or other system that has a copy of the same business object. Retrieve– to request specific data of a business object to be provided. Publish - to provide (send) information (business object) for public (enterprise) consumption. To be invoked by the system of record for the business object and only when the state of the business object has changed. Subscribe – to consume (receive) information (business object) from an external source. Used Not Used
6
Service Patterns – Integration View 1) Integration without ESB or transparent ESB WS
7
Service Patterns – Integration View 2) Integration with ESB WS
8
Service Patterns – Client Application View Client Application
9
Operation Patterns List of IEC 61989 verbs and their usage in patterns naming standards: Create ------ operation: used in Request, Execute services Change ------ operation: used in Request, Execute services Cancel ------ operation: used in Request, Execute services Close ------ operation: used in Request, Execute services Delete ------ operation: used in Request, Execute services Created ------ operation: used in Send, Receive, Reply services Changed ------ operation: used in Send, Receive, Reply services Closed ------ operation: used in Send, Receive, Reply services Canceled ------ operation: used in Send, Receive, Reply services Deleted ------ operation: used in Send, Receive, Reply services Get ------ not used, equivalent to Retrieve service Show ------ used as the service level pattern. Reply ------ used as the service level pattern. Subscribe ------ used as the service level pattern. Unsubscribe ------ not used.
10
Service & Operation Patterns in Inventory Sheet Note that a service may be deployed in different names but share the same operation names. Service Inventory Sheet can be found at: http://www.smartgridipedia.org/images/5/52/AMI_ENT_Service_Inventory.xls
11
Service & Operation Naming Convention Service naming convention: – if ESB not involved such as MeterReading – + if ESB involved such as “SendMeterReading”/”ReceiveMeterReading” Operation naming convention: – + such as CreatedMeterReading).
12
Common Service Patterns Send-Receive Services Interaction Pattern (With ESB) Send-Receive Services Interaction Pattern (Without ESB) Request-Reply Services Interaction Pattern (With ESB) Request-Reply Services Interaction Pattern (Without ESB)
13
Application AESB A Native API or Service T S/C Application B B Native API or Service T S/P S/C SendMeterReading CreatedMeterReading ChangedMeterReading CanceledMeterReadin g Orchestration Service Operations Other interested parties…… Guaranteed delivery within ESB, plus internal routing…… Send-Receive Services Interaction Pattern (With ESB) ReceiveMeterReading CreatedMeterReading ChangedMeterReadin g CanceledMeterReadin g
14
MeterReading CreatedMeterReading ChangedMeterReadin g CanceledMeterReadin g Application A A Native API or Service T S/C Application B B Native API or Service T S/P Send-Receive Services Interaction Pattern (Without ESB)
15
Application AESB A Native API or Service T S/P Application B B Native API or Service T S/C S/P RequestMeterRe ading CreateMeterRead ing ChangeMeterRea ding CancelMeterRea ding ExecuteMeterRea ding CreateMeterReadi ng ChangeMeterRea ding CancelMeterRead ing Orchestration S/PS/C ReplyMeterRea ding CreatedMeterR eading ChangedMeter Reading CanceledMeter Reading Request-Reply Services Interaction Pattern (With ESB) S/PS/C ReceiveMeterR eading CreatedMeterR eading ChangedMeter Reading CanceledMeter Reading
16
Application A A Native API or Service T S/P Application B B Native API or Service T S/C Request-Reply Services Interaction Pattern (Without ESB) MeterReadingR equest ChangeMeterR eading CreateMeterRe ading CancelMeterRe ading S/P S/C MeterReading CreatedMeterR eading ChangedMeter Reading CanceledMeter Reading
17
Message Exchange Patterns (MEPs) Supported Two MEPs supported: 1)Two way 2)Call back Note One-way pattern is not supported by AMI ENT service definition meaning there should be always SOAP level message return (not just HTTP level).
18
Service & Operation Patterns used for Web Service Definition _Service_Name_ Replaced with Service Name in AMI Ent Service Inventory Sheet such as MeterReading _Operation1_Name_ Replaced with one Operation Name in AMI Ent Service Inventory Sheet such as CreatedMeterReading _Information_Object_Name_ Replaced with Information Object Name in AMI Ent Service Inventory Sheet such as MeterReading A standard WSDL template is provided with the following strings to be replaced according to AMI Ent Service Inventory Sheet at: http://www.smartgridipedia.org/images/5/52/AMI_ENT_Service_Inventory.xls
19
Service Patterns during Deployment WSDL can be deployed based on integration scenario (with or without ESB): – Or –
20
Service Patterns in Repository Service Name
21
Service Patterns for Client Invocation MeterReading
22
SendMeterReading Note that service is deployed in different names but operation names are the same as MeterReading’s. Service Patterns for Client Invocation
23
Summary Patterns applied to both service and operation levels for naming convention to achieve better semantics IEC recommended verbs used Services defined can be found at: http://www.smartgridipedia.org/index.php/Category:Service
24
Questions and Comments
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.