1 Utility Integration Bus Standard Middleware + Utility Specific Integration (not secret) Sauce...

Preview:

Citation preview

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

Recommended