1 utility integration bus standard middleware + utility specific integration (not secret) sauce...
TRANSCRIPT
1
Utility Integration Bus
Standard Middleware+
Utility Specific Integration (not secret)
Sauce Copyright 1998,1999 Systems Integration Specialists Company, Inc. All Rights Reserved
2
Objectives of UIB• Provide utility specific integration
features missing from DCOM and CORBA.
• Facilitate integration without requiring reprogramming.
• Create an environment where skrink-wrapped products can be integrated.
3
The UIB Specification is
• A set of middleware requirements
• A set of middleware use specifications
• A set of utility specific services
4
UIB Architecture
CORBA or DCOM
Utility Applications
Utility Specific Services and Specifications
APPLICATION
UTILITY COMMON SERVICES
OFF THE SHELF MIDDLEWARE
5
UIB features
• Can be run over different middleware implementations
• Allows for direct access to middleware
• Provides an environment for integration of utility applications
6
UIB Requirements of Middleware
• Persistent Message Queuing• Remote Procedure Calls• Life cycle Services• Transaction Services• Security Services• Other standard distributed objects
services
7
Why not just use Middleware?
Answer: Utilities need more!
8
Utility Business Objects
• Many different types• Are long lived (ie monitored
continually instead of short live transactions)
• Attributes are distributed in existing legacy applications
9
Owner Billing Address
Rate Structure
UsageMeterID
LastCalibration
An Object Instance (e.g. SISCOMeter)
10
Typical Middleware Solution
FromIndependent
Sources
Aggregate orProxy Object
Instance
CORBA or DCOM
11
Utilities really need: Decomposed Objects
CORBA or DCOM
Attributes directlyavailable frommultiple sources.
This requirement has several design impacts!
12
Example: Information in Legacy Applications
AMR
DBCIS
MaintenanceSISCOMeter
13
UIB is designed for:• Coarse Objects and Distributed
Attributes– IDLs to UIB services– Business Objects (e.g. breaker, capbank
controller, meter, cis) are not expressed at the application interface.
• Sending and receiving messages– UIB defines a set of standard messages– Allows for future message expansion
14
Utility Specific Services
• ID Management– Create/Delete– Alias– Information Exchange Model support
• Error Recovery
15
Specific Examples
• How to subscribe for object class events as opposed to object instance events.
• How to detect loss of information and information sources.
• How to dynamically create a “directory” of information consumers and publishers.
• How to recover and resync components that have been off the bus.
16
Solution: OID/XID Hierarchy
Type
Standard Private Authority
ORGID
SUBORG
ClassValue
InstValue
TypeOfClass
ClassID InstanceID
17
Why Alias?
Tastes Great
Less Filling
Its Object AIts Object B
UIB 1UIB 2
Need One View, Not Two !
18
UIB Concept of Context
Deployment
Runtime
Online
Test
Need Standard Context: - Online - Test - Simulation - Others...
Need Non-StandardContexts
19
Models on the BUS
• Deployment Models• Run time Models• Information Exchange Model• Reference Model
20
What is an IEM?
• Defines information flow– Message Dictionary– Message Routing Model– Information Filtering
IEM allows components to be written without knowing before hand who will supply or consume pieces (allows third party subscription)
21
MetaSchema Overview
Class
Instance
Messaging
22
Terminology
Type Comp Bus Mesg. Cont. Attr.
Class CCID OCID MCID
Inst. CIID OIID MIID CTXIID AID
23
Class
Attribute Class
Object Class
Attribute
1
N
11Name
ID
NameID
Units
NameID
Component Class
NameID
24
Examples of Business Objects
• Class– Switch
• Fuse• Breaker• Manual• Disconnector
• Instance– Breaker
• B1 in sub1• B2 on T1• etc....
Business Objects have Attributes!
25
Attribute Instance =
Attribute Class
Object Class
Attribute
1
N
11Name
ID
NameID
Units
NameID
Object Instance
NameID
ObjectInst.ID + Attribute.ID
26
Breaker Attribute Example:
• Status (OPEN/CLOSED)• Vendor• Cost• Number of Operations• etc....
27
RunTime and Deployment
• Deployment = Expected• Runtime = Actual
– Used to determine which attributes are actually being supported
• Is tracked on Context/Attribute Instance Basis
28
Messages
• UIB Standard Messages
• Other Standard Messages
• User Defined Messages - Most Interesting!
29
Messages (cont.)
Message Definitions/Templates (Class)
Header
Filterable
Binary
Topics
ID/Value
Sets OF
Attribute Inst.Message Based
30
MIID is....
• MCID
• Source CIID of component issuing message
• Sequence number generated from issuing component.
All found in header of messages.....
31
CIM Reference Model ERP Reference Model
EMS Work Management ERP Connector
UIB is Reference Model Independent
(used by components but not managed by the bus)
32
Conclusion
Documents and Presentations available from: ftp://ftp.sisconet.com/outgoing/uib