presented by: sif 3.0 concepts sif 3.x concepts & terms joerg huber

16
Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

Upload: giles-blake

Post on 28-Dec-2015

218 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

Presented by:

SIF 3.0 Concepts

SIF 3.x Concepts & Terms

Joerg Huber

Page 2: Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

© Systemic Pty LtdSeptember 2014

Training Course - Sydney: SIF 3.x Concepts

2Overview

Terms and Concepts of SIF 3.0

REST (what about SOAP), XML, JSON Direct and Brokered Zones Immediate and Delayed Responses Event Processing (Single Source of Truth) Bulk Create, Update & Delete Operations Reduced ‘Chatiness’ SIF 3.0.1 Infrastructure Documentation

Page 3: Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

© Systemic Pty LtdSeptember 2014

Training Course - Sydney: SIF 3.x Concepts

3REST, SOAP, XML, JSON

Current SIF 3.0.1 Release uses REST as transport and XML representation of Data Model (infrastructure and

data dictionary) SOAP may come in future if the need arises. JSON is planned but not officially supported, yet.

Mapping between XML and JSON required JSON has ambiguities (i.e. Array or not Array) JSON is less bound by standards which causes some

issues: i.e. Encryption of payload, validation etc.

Page 4: Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

© Systemic Pty LtdSeptember 2014

Training Course - Sydney: SIF 3.x Concepts

4Direct Zone

NEW Concept in SIF 3.x Peer-To-Peer connection not involving

middleware. Can be used from web-applications to

retrieve and persist data directly from/to a given application.

Can be used by mobile applications (most likely using REST) to connect directly to an application.

Sub-Set of SIF 3.0 Interfaces need to be implemented

Page 5: Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

© Systemic Pty LtdSeptember 2014

Training Course - Sydney: SIF 3.x Concepts

5Direct Zone cont.

Service Consumer

Direct Zone (Simple)

EnvironmentProvider

ObjectProviders(Services)

StudentPersonalSchoolInfoetc.

ACLs, URIs(Infrastructure)

Data(SIF AU 1.3)

Page 6: Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

© Systemic Pty LtdSeptember 2014

Training Course - Sydney: SIF 3.x Concepts

6Brokered Zone

What was known as a ZONE involving a ZIS in SIF Classic (SIF 2.x).

The Brokered Zone securely connects N clients to a dynamically changing list of M Data Entity and / or Functional Services through a centrally secure, separate and discrete Message Broker.

Clients of a brokered Zone can implement SOAP and/or REST, depending what the broker supports.

Broker may implement SOAP and/or REST

Page 7: Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

© Systemic Pty LtdSeptember 2014

Training Course - Sydney: SIF 3.x Concepts

7Brokered Zone cont.

ServiceConsumer

Brokered Zone

Environment Provider

StudentPersonalSchoolInfoetc.

ACLs, URIs(Infrastructure)

Data(SIF AU 1.3)

Object Provider Services

ACLs, URIs(Infrastructure)

Zone Registry

Connectors(Request, Event,

Provision, Subscribe etc)

Queue Manager

Data(SIF AU 1.3)

Provider Registry

MiddlewareNote: Not all registries are shown

Page 8: Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

© Systemic Pty LtdSeptember 2014

Training Course - Sydney: SIF 3.x Concepts

8Immediate & Delayed Response

Delayed Response is what is known in SIF 2.x as asynchronous response.

This concept remains in SIF 3.0 Immediate Response (synchronous) is

where the requestor of the data keeps the connection open until a response is available.

Immediate Response is largely a NEW concept in SIF 3.0 Direct Zone: Commonly used Brokered Zone: Less common when it

comes to requesting data through a query

Page 9: Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

© Systemic Pty LtdSeptember 2014

Training Course - Sydney: SIF 3.x Concepts

9Service Types Infrastructure Services

Environment Provider Queues Alerts Namespace Registry etc.

Data Entity/Object Service is a service for a given SIF Object (i.e. StudentPersonal, SchoolInfo) => CRUD Create Read (Query) Update Delete

Page 10: Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

© Systemic Pty LtdSeptember 2014

Training Course - Sydney: SIF 3.x Concepts

10

Service Types cont. Functional Services

Execute Style (Jobs): i.e. End-of-Year Rollover. Student Locator

Report Style: Provide a ‘View’ of multiple Entities in one Object.

Composite Object Services Object made of parts of other object

Relationship Services? …/StudentPersonals/{id}/TeachingGroups Not yet supported with SIF3 Framework!

Page 11: Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

© Systemic Pty LtdSeptember 2014

Training Course - Sydney: SIF 3.x Concepts

11

Event Processing Event Processing changes considerably in SIF 3.0 Publishing Events is only allowed for the ‘Source

of Truth’ which is the Object Provider! Non-Sources of Truth (Consumer) can only request

CRUD operations on the Source of Truth and if accepted the Source of Truth will publish the event to the Zone.

‘RefID’ allocation Responsibility of “Source of Truth” Consumer can request that its RefID is used

(mustUseAdvidory HTTP Header field). Source of Truth can accept this or reject it Non-Source of Truth must maintain a link between the

“Create” Request until Source of Truth response with the new RefID where consumer does not provide RefID.

Page 12: Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

© Systemic Pty LtdSeptember 2014

Training Course - Sydney: SIF 3.x Concepts

12

Event Processing cont.

Time Table App

(Subscriber Service)

Attendance Tracking

App(Subscriber Service)

SIS App(Provider Service)

Broker

“Source of Truth”

Save newStudent

Request Create

Request Create

Accepted AB12FF5FE20945F12FFE2FF02211FF02

Accepted AB12FF5FE20945F12FFE2FF02211FF02

Publish CreateEvent

Receive CreateEvent

LMS(Subscriber Service)

Page 13: Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

© Systemic Pty LtdSeptember 2014

Training Course - Sydney: SIF 3.x Concepts

13

Bulk Operations

SIF 3.0 infrastructure enables bulk operations!

Creation of multiple objects in one request Update of multiple objects in one request Deletion of multiple objects in one request

=> Improves performance=> Scales better

‘Requestor’ of bulk operation always knows success status of each object in the request.

Page 14: Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

© Systemic Pty LtdSeptember 2014

Training Course - Sydney: SIF 3.x Concepts

14

Reduced ‘Chatiness’

Bulk Operations Usage of standard HTTP Status codes rather

than ACK/NAK Messages. Queues: ‘Get Next Message and Delete

Previous’ in one message rather then spread over 4 messages!

=> Improves performance=> Scales better=> Easier to implement!

Page 15: Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

© Systemic Pty LtdSeptember 2014

Training Course - Sydney: SIF 3.x Concepts

15

SIF 3.0.1 Infrastructure Documentation

SIF Association Websitehttps://www.sifassociation.org/Specification/Pages/Infrastructure_3_0_1.aspx

Page 16: Presented by: SIF 3.0 Concepts SIF 3.x Concepts & Terms Joerg Huber

© Systemic Pty LtdSeptember 2014

Training Course - Sydney: SIF 3.x Concepts

16

Questions

Any Questions?