Showing posts with label sif services. Show all posts
Showing posts with label sif services. Show all posts

Thursday, May 1, 2008

SIF, SOA, and WOA

The following article talks about the successes of Web Oriented Architecture (WOA) and the challenges of Service Oriented Architecture (SOA). It is particulary interesting as SIFA embarks upon enriching its current messaging platform with new approaches to services.
http://blogs.zdnet.com/Hinchcliffe/?p=168

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.

Tuesday, December 25, 2007

A High Level Overview of SIF Services

The SIFA Infrastructure group is currently working on adding service-oriented messaging to SIF. This work is currently being labeled "SIF Services." It should not be confused with web services and the attendant set of WS-* standards. The Technical Board has had some recent discussions around what services ARE and ARE NOT. Following is a summary that I have put together that will hopefully bring additional clarity for all.

SIF Services will:
  • Be built on top of the SIF Infrastructure
  • Require a Zone Integration Server
  • Be based on message exchange integration patterns
SIF Services will not:
  • Be dependant on SOAP
  • Directly interoperate with SOAP-based web services
  • Be based on RPC integration patterns
SIF Infrastructure will:
  • Add support for SOAP as a transport
  • Be required for SIF Services
Building services on the existing SIF Infrastructure has many advantages. However, there are many business and use cases that have been put forward by the community that are not necessarily well addressed only by the current SIF Services proposal. Following are the main areas of functionality that need further discussion:
  • 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
More discussion will take place at the SIFA Annual meeting in Washington, D.C. in January and in planned discussions about "services" within SIF.

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.