Open Standards Primer
The open source movement has stimulated developers to think about how to coordinate their efforts for the greatest good. Sharing costs for development of shared source libraries or sharing course content or reusable learning objects makes good business sense. There is a myriad of options for both open source and proprietary software for schools. Whatever the source, software systems must be smoothly integrated with each other and with existing systems. There is a need to make it easier to exchange data between applications from different vendors. The idea of developing standards for data exchange has profound implications for educational technology in schools.
When is compatibility between applications critical?
A systems integrator makes sure that all the software applications, networks, and hardware work together to the necessary degree. Some applications are completely stand-alone and only need to run on a given network. For example, an electronic book delivered from a CD-ROM has little need to exchange data with other applications.
Productivity applications for graphics, word processing, or spreadsheets can work independently, but they often need to read and write a wide range of file formats to work with other applications from other vendors.
Database-enabled programs for student records, school purchasing, or instructional management have a much greater need to exchange data from various component applications. It is far more efficient to open the classroom electronic grade book and have student names and other pertinent data filled in from the registrar’s office than to manually load a file from a floppy disc or re-enter this data. This is the essence of “interoperability,” the ability of applications to exchange data with each other to create a powerful, distributed system.
Open Standards for School Software
Just as open source software provides code modules that follow certain rules for input and output, open standards applications are built with protocols for exchanging information that are agreed upon in advance by a community of developers. Standards often emerge from the de facto practices followed by groups of users. For example, the mathematics community developed their own markup language MathML for representing their complex formulas on Web pages.
Eventually, informal practices become formal open standards that are codified, administered, and periodically updated by a controlling organization. The Schools Interoperability Framework (SIF) was designed for the K-12 instructional and administration area. IMS standards were designed for the needs of higher education, and the Sharable Courseware Object Reference Model (SCORM) was developed with the needs of the industrial training and certification market in mind. With the current worldwide emphasis on open technologies, all of these standards bodies have K-12 education clearly in minds as they move forward. Several of these standards make use of the course standards defined by IEEE and the Dublin Core. They are considered “open” standards because the specifications developed for data tagging and exchange are publicly available.
Standards-compliant applications are able to exchange specific types of information where there is a useful overlap. Accessing existing data can save the time and expense of re-entering data, reduce incorrect or inconsistent (dirty) data, and eliminate wasteful redundancy. Standards-compliant applications allow educators to combine data from various sources and analyze trends to provide optimal learning for all students.
Open Standards System Architecture
The Open Database Connectivity (ODBC) standard allows applications to access data from a variety of data sources such as MS-SQL, MySQL, Oracle or Excel. It is a cross-platform API designed to work not only on different operating systems with different programming languages but also allows the same program to access different data sources either locally or across a network. The general database Structured Query Language can be used with a majority of relational databases. Microsoft distributes its own ODBC driver specifications under the Windows operating system. Other manufacturers are responsible for their own ODBC drivers.
An application is set up with a specific ODBC data source, including a username and password. Each application that opens an ODBC data source expects to find tables with pre-specified yet arbitrary field names and data contents. These data names and formats can be unique for each vendor and are not automatically interoperable. Standards-compliant applications not only have specific protocols for getting connected, they should have extensive, predefined “vocabularies” that dictate what different types of information should be called.
Standards-compliant applications may talk to each other directly or via a message broker, such as the Zone Integration Server (ZIS) defined in the SIF specifications. Direct communication between two applications requires a computer that recognizes which application it owns or has rights to modify and which data elements and applications are permitted to request which data elements. Following this, applications can begin to exchange the various kinds of information that are relevant to each. Direct communication schema tends to be more efficient and scalable.
On the other hand, SIF-certified applications operate an “Agent,” which is a daemon or background routine that runs continually, ready to receive and send messages to the Zone Integration Server. The ZIS routes and transfers data from applications provided by dozens of different vendors without going through the field mapping of setting up a communication link with each.
Open standards supports the exchange of data between multiple applications. For example, an attendance program stores the student record for each day in a database. Each morning the automated telephone message system requests a list of absent students. The attendance program authenticates the request and sends back an XML stream with the names of tardy students. The telephone system then calls the parents of the absent students. The telephone system, attendance system, and student information system could theoretically come from different vendors.
In a more sophisticated application, the same attendance data sets could be combined with other achievement data to reveal patterns that were formerly hidden. Open standards make the entire Web of school information available to inform instructional improvement.