Thursday, May 1, 2008
SIF, SOA, and WOA
http://blogs.zdnet.com/Hinchcliffe/?p=168
Sunday, January 27, 2008
Metadata and Services at the 2008 SIFA Annual Meeting
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.
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.
Tuesday, December 25, 2007
A High Level Overview of SIF Services
SIF Services will:
- Be built on top of the SIF Infrastructure
- Require a Zone Integration Server
- Be based on message exchange integration patterns
- Be dependant on SOAP
- Directly interoperate with SOAP-based web services
- Be based on RPC integration patterns
- Add support for SOAP as a transport
- Be required for SIF Services
- Teaching and learning
- Exchange of large data payloads (e.g. multimedia, SCORM SCO's)
- General interoperability
- Point-to-point interoperability between applications
- Expanding interoperability to new applications/vendors, especially those that are not "native" to K12
Friday, November 16, 2007
SIFA's Boards Set Direction
Columbus, OH was the host city for SIFA's board retreat this year. I have a seat on the Technical Board since I'm the lead of the Data Model Task Force. This post is a summary of the major topics that were covered in the board retreat on November 14 and 15, 2007. Future posts will go into more detail on specific topics. The retreat kicked off on Wednesday, 11/14/2007 with a half-day joint session between the Technical Board and the Executive Board. Staff members presented status updates on various activities of the association.
SIF Association Activities
SIF 2 Certification
One of the major activities includes the forthcoming release of the SIF 2 test harness and certification program. Even though the SIF 2 Implementation Specification was released over a year ago, there have been several challenges surrounding the certification program. Most, if not all, of these challenges have been political versus technical in nature. There is always lag time between the release of a specification like SIF and the implementation of software in the field. However, the delays in the certification program, in my opinion, have definitely slowed down adoption of SIF 2.
National Data Model
Another major activity of the association is its involvement in the National Data Model. Vince Paredes, SIFA's data model architect, is the lead on this work from a SIFA perspective. We saw a preview of a more comprehensive presentation that Vince will deliver at the association-wide meeting in Washington, D.C. in January 2008. Quite a bit of new information was presented about this work, and I found it very interesting that the national data model is being defined using the Ontology Web Language (OWL). My hope would be that this will begin to lead SIF down the semantic road. According to Vince, the initial development of the national PK-12 data model is about 10% complete. He also made it clear that development will be a continual, evolutionary effort; it will likely never be “done.”
Internationalization
The internationalization of SIF was also a major topic. A significant amount of work has been done by SIFA and vendor members to localize the specification for use in other countries. BECTA in the United Kingdom is currently working through a set of pilot SIF implementations. Australia, I believe, is pre-pilot but very interested in using SIF. Other countries have expressed interest as well. The primary component of the SIF specification that must be adapted for international use is the data model. Since SIF was initially developed in the U.S., its data model was patterned on the processes and data in the U.S. educational system. Each country wanting to implement a local version of SIF will need to go through a process to design and implement a data model that fits its educational system. To facilitate this process, the creation of an Internationalization Task Force has been proposed.
Other Activities
Other association-level activities that were discussed include the SIFA/ADL partnership (see my earlier blog post on this), support of the state Longitudinal Data System grant recipients, and marketing and membership. All of these items were introduced during the first joint session between the boards. After lunch on Wednesday, the boards entered individual sessions. The tech board discussed several items but two topics took the bulk of the time.
Major Tech Board Topics
The first major topic that the tech board discussed was the 18 month timeline for specification releases. Decoupling the data model from the infrastructure, which is being driven by several business cases, including internationalization, was the second major topic.
18 Month Timeline
SIFA's current policy is to release new versions of the specification every 6 months. This rapid release cycle is critical to ensuring that SIF can quickly adapt to the needs of end-users. Achieving “out-of-the-box” interoperability and making SIF easier to implement continue to be the two major end-user oriented goals that drive evolution of the specification. Releases during this 18 month time frame will feature new data objects and infrastructure changes that will support achieving these goals. SIF Services will also be released within this window. Work group/task force leads will be planning and prioritizing tasks in further detail over the upcoming weeks and months.
De-Coupling
Since its inception, specification developers envisioned the possibility that SIF would one day need to implement new options for transport. Remember that the SIF specification was created prior to wide adoption of XML/RPC, SOAP and REST. SIF's current transport mechanism is XML over HTTP. However, the current structure of the SIF XSD contains “hard links” between the infrastructure and data model. Therefore, new data models cannot be “plugged” into the current infrastructure without some customization of the infrastructure. Initial investigation by the Infrastructure Work Group and Mark Reichert, SIFA's CTO, seem to indicate that formally de-coupling the data model from the infrastructure will not require a huge level of effort. It is also believed that this formal decoupling will have minimal impact for developers, and perhaps zero impact on end-users.
Volunteers Come Together to Help Schools
SIFA is a volunteer-driven association with a diverse set of member organizations. States, school districts, K-12 software companies, SIF software companies, and systems integrators are the major sub-groups in SIFA's constituency. I'm continually impressed how people from these diverse groups come together and harmonize their interests and knowledge within the specification development process.