SIF DEVELOPER DECISION TREE
SIF Developer Decision Tree:
Copyright © SIF Association
Walking the Branches
Software Component Types:
Glossary of Terms
Data Providers (SIS, Data Warehouse, LMS) Data Requesters (Dashboards, Student Contact Systems) Infrastructure Providers (Brokers, Application Adapters) SIF versions & SIF-compliant component types Environment Types
Developer Choices
SIF 2.x or SIF 3.0 or Simple SIF? (Or a combination?) Application Packaging (Service or Direct Environment?) What optional SIF functionality is commonly supported? Make or Buy infrastructure Components? Available Toolsets Copyright © SIF Association
Q1: Which SIF Version?
V2.x:
Large customer base (solutions deployed in all 50 states at the school, district and state levels). Growth driven from new District-wide deployments of SIF 2.x in SIFfriendly States (Massachusetts, ...) Established Software Certification program Focus includes school / small district needs
Transportation, Library and Food Service system coverage
V3.0:
Leverage REST technology Early Adopter customer base Growth driven from the large District / State Level down (Iowa, Minnesota, New York) CEDS Logical Data Model an important 3.0 differentiator Market primarily Greenfield opportunities “Relatively “ seamless migration from SIF v.2x deployments Copyright © SIF Association
Q2: Which SIF Component type? Depending upon the specific SIF version targeted, there are several alternatives regarding how a given Service Provider application may be “packaged” when participating in a SIF solution
Copyright © SIF Association
A SIS (Student Object Provider) in a SIF 2.x Zone SIF v2.x Browser
JavaScript
SIS Application
DB
SIF v2.x Student Object Provider
ZIS
V2.x Client Client Application Agent
V2.x Client SIF v2.x Client Application Agent
V2.x Object Provider Agent Copyright © SIF Association
Q3: SIF 2.x - Make or Buy Agent?
All Make:
Mix:
Open Source, free SIF 2.x Agent Developer Kit (ADK)
Use Open SIF 2.x ADK, buy consulting
All Buy: (Infrastructure Vendor does custom Agent)
Bridge between SIF DM and internal Application DM Handle all SIF Infrastructure requirements Agent may use DB, SIF is transparent to Application (!!) Agent Vendor may optionally be contracted to move Application / Agent through SIF Certification process Copyright © SIF Association
SIF 3.0 Consumer World View “Create” Consumer Application
Consumer Application
Service Consumer Adapter
Service Consumer Adapter
Environment”
Environments URL
Environment”
Service Requests URL
Service Responses
Environments Provider Copyright © SIF Association
SIF 3.0 Component Types SIF Direct Environment Consumer Application
Consumer Application
Optional Service Consumer Adapter
Optional Service Consumer Adapter
Direct Environment Provider Adapter
Service Provider Logic
Brokered Environment Provider Adapter Message Broker Middleware
SIF Brokered Environment
Service Provider Adapter
Service Application (Ex: SIS)
Service Application (Ex: SIS)
Service Consumer Adapter Copyright © SIF Association
Q4. Which SIF 3.0 Service Component?
Simple SIF Service Direct Environment Provider (minimal and up) Brokered Environment Service Provider
Copyright © SIF Association
Simple SIF Service (functionality defined)
RESTful Service
One or more “use case driven” composite object types
Decouple SIF Object Model / Client needs (Ex: Student Roster)
JSON Payload support (only) Typical Optional Extensions
Supports browser based immediate response Queries Uses OAUTH for user authentication (user, password) No Events, URL Query Parameters not HTTP Header Fields
Create, Modify and Delete Immediate Response support Multi-objects / message packing
Typical Deployment / Tradeoff
Clients are mobile device apps (or pretend to be) Extremely simple implementation (but SIF-certifiable) Interoperability with other SIF Services not an issue SIS Cloud Vendor doesn’t want “Clever disintermediation” Copyright © SIF Association
Simple SIF Service Motivation: An SIS must support RESTful Clients on Mobile Devices
Browser
Simple SIF Client Application
Simple SIF “CRUD” Requests (JSON Payloads)
“Simple“ Simple SIF (Queries only, JSON Responses)
SIS Copyright © SIF Association
Direct Environment Provider
Minimal Direct Environment
Fully compatible subset of SIF 3 Environment functionality Requires successful initial Environment creation. Supports BASIC (application level) Consumer Authentication XML payload support Create, Modify, Delete and Query “ Immediate Requests Multi-objects / message Alert Utility Service (**) One or more CEDS compliant object types (ex: Student)
Typical Deployment / Tradeoff
No middleware required SIS is directly accessible “owner of record” for Student data Clients are “low demand” SIF-compliant Consumer Apps Copyright © SIF Association
SIF 3.0 Service Application Alternatives for SIS: Simple SIF RESTful Web Service Consumer Application
Consumer Application
Consumer Application
Optional Service Consumer Adapter
Optional Service Consumer Adapter
Report Objects (Roster) JSON, OAUTH
Report Objects + CEDS Objects
XML, BASIC, Alerts, multi-object messages
Report Objects, CEDS Objects XML, BASIC, Alerts, multi-object messages, + Events, self-provision
Service Application (Ex: SIS)
Simple SIF Web Service Logic
Minimal Environment Provider Adapter
Service Provider Logic
Service Application (Ex: SIS)
Enhanced Environment Provider Adapter
Service Provider Logic
Service Application (Ex: SIS)
Copyright © SIF Association
Service Provider in a Brokered Environment
Valid SIF 3 Consumer
Service multi-object Requests from many Clients
Support one or more specific Object types (ex: Student) Create, Modify, Delete and Query Requests Requests / Response messages relayed by Broker
Must also publish Events when data changes
Must first Register with Environment, then self-provision as Object Service
Delivered to all active subscribers by Broker
Typical Deployment / Tradeoff
District SIS in a State-level solution SIF 3 Broker middleware available
Copyright © SIF Association
Dual Component Support
District SIS Simple SIF “CRUD” Requests (JSON Payloads)
SIF 3 Service Provider (Req/Resp, Events) JSON
SIF 3 XML
State Consumer Application
SIF 3 JSON
District Consumer Application
SIF v3.0 Broker
“Queries only, JSON Responses) Simple SIF Client Application
Browser
Copyright © SIF Association
Any Questions?
Ron Kleinman CTO,
SIF Association
[email protected]
Copyright © SIF Association