Friday, April 18, 2008

SIFA Members Journey to Bloomington

SIF Association Members traveled in from far and wide to Bloomington, IL for the developer's camp this week. We helped SIFA entertain friends from Sacramento, Vancouver, Boston, Baton Rouge, Santa Clara, Indianapolis, Lewisburg, Washington DC, Austin, Boca Raton, Salt Lake City, Everett, Los Angeles, McHenry, Columbus, Cheyenne and St. Louis (to name a few of the origins). The meetings focused on prioritizing improvements and functionality for the next major release of the SIF Implementation Specification.

Sunday, April 13, 2008

SIF Specification Development Coming to Bloomington, IL

Next week Integrity is hosting a SIFA Developer's Camp in Bloomington, IL. SIFA Developer's Camps focus primarily on the work of evolving the SIF specification. Some of the groundwork for the next major release of the specification was done at the board retreat in Columbus, OH in late 2007. The Bloomington meetings will focus on moving that work forward.
It is an important time for SIF as we leverage our proven Infrastructure in the field while actively looking for ways to incorporate other standards-based technologies, like Web Services, into the body of standards that the Association defines. We may diverge on this in the short term, but in the long run (over the next 5-7 years?) I believe we will end up with a unified architecture that incorporates the best pieces we have today with the best of "the rest of the world."
I would like to extend a warm welcome to anyone out there reading this who will be coming in for the Developer's Camp next week!

Tuesday, March 11, 2008

"Mix Master" Article in T.H.E. Journal

John K. Waters published an article in T.H.E. Journal titled "Mix Master." The article focuses on SIF and data warehouse work that we're doing with one of our clients, Champaign Unit District 4 in Champaign, IL. Mike Harden and Roger Grinnip from Champaign are quoted, as are Dave Moravec from Integrity and Larry Fruth from SIFA. Here is the link.

Wednesday, February 27, 2008

Student Record Exchange Pilot at Naperville CUSD 203

I am currently at the MIS Conference in San Francisco, CA. Today I participated in a presentation on a pilot project that we are working on with Naperville CUSD 203 in Illinois. The other partners in the pilot include SIFA and Docufide. My portion of the slide deck can be found here.

Friday, February 22, 2008

Example Intra-Zone and Extra-Zone Integration Architectures

One of the books I often recommend to people who are new to message based integration solutions is "Enterprise Integration Patterns" by Hohpe and Woolf. Visio stencils that contain shapes for the various patterns and pattern components can be downloaded from the book's website. The following diagram (click it to view a larger version) tries to do a few things...

First, it states SIF architecture in terms of Enterprise Integration Patterns (EIP). The second thing it does is illustrate one possible way to implement extra-zone services using EIP concepts. The third thing it does is to begin calling out the business and use cases for intra-zone versus extra-zone services, which are duplicated in the text below.

Intra-Zone Business and Use cases
1. Applications wish to exchange data on a regular basis
2. Applications are contained within a single enterprise, or closely related enterprises
3. Guaranteed delivery is desired or required
4. Central administration of message flow is desired or required
5. A collection of applications wish to share the same data

Extra-Zone Business and Use cases

1. Applications wish to exchange data on an infrequent basis
2. Applications have minimal or no organizational ties
3. Guaranteed delivery is not required
4. Central administration is not required
5. Two applications needs to share specific data

Thursday, February 14, 2008

Pennsylvania Schools Interested in SIF

I attended the PETE&C conference in Hershey, PA on Sunday and Monday. It was encouraging to see a good turnout from both small and large districts at the pre-conference sessions on SIF. We were invited to attend by the Pennsylvania Department of Education and graciously hosted by our friends at the Central Susquehanna Intermediate Unit (CSIU). The SIF Association and several other SIFA members were also present. Thanks to everyone who attended! Here is the link to the slides that I presented. They contain information about my involvement in SIFA, information about Integrity, and examples of integrations that we have done.

Sunday, January 27, 2008

Metadata and Services at the 2008 SIFA Annual Meeting

This year's SIFA Annual Meeting was held in Washington, D.C. Each day's agenda included both specification development work and end-user content. This forum is typical for SIF meetings; it provides great opportunities for end-users and developers to collaborate. The topics of metadata and services occupied quite a bit of my time during the meetings.
The primary focus of the Data Model Task Force meeting on day one was to make progress on the work that we are doing with pattern development for the Data Model. The general thought process is to develop and apply a pattern language for SIF data objects to increase the quality of the specification as it continues to grow and change. Patterns will hopefully arm our data experts with validated techniques for modeling and moving data. As the meeting actually unfolded, we were not able to spend a lot of time on patterns. The agenda item prior to patterns was metadata, and it actually occupied the majority of the meeting time.
Metadata in SIF tends to confuse most people. Metadata in SIF currently takes the form of learning-content-centric elements, plus a very general-purpose time element, that can be applied to any data object. The specification is loose about how to use metadata; it indicates that a specific contract must exist between suppliers and consumers of metadata. Metadata is always optional, and has no impact on operational systems; they simply ignore it if they don't want to use it. Metadata will increase in importance to SIF as more and more teaching and learning vendors use SIF. SIFA's intention is not to create a new specification for metadata but, rather, to leverage what is already out there. Elements of LOM have already been incorporated into SIF. Metadata will continue to evolve; new elements have been proposed for the 2.2 release. I think a good step in eliminating confusion and making metadata more useful will be to develop formal ways to define metadata contracts. Services will also likely have an impact on how we use metadata in SIF.
"Services" is a hot topic within SIFA. We have tried to take the time to clarify what we mean by services, and I have a previous blog post on what "SIF Services" are, and are not. It is most productive if you can wrap your mind around the fact that, today, SIF is primarily a message-based interoperability specification. Understanding message-based interoperability is really important. It is a recognized and valid approach to systems integration that falls in the general category of Enterprise Application Integration solutions. The current architecture of SIF as defined in the SIF Implementation Specification consists of a Zone Integration Server (ZIS) and Agents.
The ZIS is the message bus. Its main functions include guaranteed delivery of messages (queuing), providing a channel for transport, and providing access control to data. Agents are message gateways that sit between applications and the ZIS. Agents' main functions include moving messages to and from the message queue over SIF transport (which requires an understanding of Infrastructure) and translating between the SIF Data Model and the application's native data model. Many of the components of the SIF Infrastructure do not have mature, equivalent standards in the Web Services (note the intential caps) world. However, those standards are evolving and may, one day, provide an alternative to the SIF Infrastructure or, perhaps, replace it altogether. For various reasons, this will not happen over night. Today I believe that it is most advantageous to place "services" into two buckets: 1) intra-zone services, which will be based on the current Infrastructure, and 2) extra-zone services, which will be based on existing W3C standards.
Context of services in SIF

Intra-zone services
are proposed for the 2.3 development cycle. The proposal, which seems to be well thought out, adds new message types to the SIF Infrastructure to allow for service invocation, response, and eventing. It is a good evolutionary step for SIF that allows us to solve problems using our current and widely deployed technology base. Adding support for intra-zone services to existing agents should be a relatively low level of effort.
I frame extra-zone services as SIFA sanctioned methods to get data (and functionality) into and out of a Zone. Extra-zone services would likely be built on SOAP and other standards (RSS, REST, JSON were also suggested "protocols"). Leading members of the association are working together to determine the best ways to explore the design and construction of extra-zone services.
Over time, we will hopefully end up with a unified services architecture. For now I think exploring intra-zone and extra-zone services as separate solutions to distinct problems is the best approach.