CRAMS - Curriculum Repository and Meta-tagging System by 4c0dB5


									          CRAMS - Curriculum Repository and Metatagging System

                          Applied Computing and Engineering Sciences
                    Sheridan Institute of Technology and Advanced Learning
                     1430 Trafalgar Rd., Oakville, Ontario, Canada, L6H 2L1

Abstract: - The goal of the typical Learning Object Repository is to provide a secure database of educational
resources that allows the retrieval of learning materials based on criteria important to educators. Other benefits
include better management of intellectual property and the ability to archive the content taught in a specific
delivery of a course for administrative purposes. CRAMS (Curriculum Repository and Meta-tagging System)
is a Learning Object Repository System being implemented at the Sheridan Institute of Technology and
Advanced Learning that is designed to be easy to use and easy to manage. The system design includes the core
functionality expected of a Learning Object Repository and advanced features not available in other
Repositories. This paper discusses lessons learned in the design and implementation of CRAMS from project
initiation to the alpha stage.

Key-Words: - Learning Object Repository, Curriculum, Meta-tag, Database, Distributed System

1 Introduction                                             inventory of learning objects. A Learning Object
The increased use of mobile teaching environments          Repository (LOR) System provides facilities to store
and learning management systems (LMS's)                    Learning objects such as slide sets and HTML pages
combined with the dynamic nature of many subject           along with metadata pertaining to these Learning
areas is driving a need for a more organised way to        Objects [2]. This metadata might include the author
store and retrieve learning resources. Sheridan            name(s), short description, the file format, file
Institute of Technology and Advanced Learning was          location, resource type and copyright information
an early adopter of the use of mobile teaching             [3].
environments (i.e. student use of laptop computers
for learning) and learning management systems              At the time (February, 2002), WebCT did not
amongst third-level educational institutions in            provide a Learning Object Repository as a feature
Canada. Students at Sheridan are provided with             and had no firm schedule to provide one. A multi-
leased laptops and an infrastructure to support            disciplinary team was assembled to develop a
mobile learning, including the provision of high-          Learning Object Repository, called Curriculum
speed internet connections for every seat in most          Repository and Meta-tagging System (CRAMS).
classrooms and network drops outside of                    The project began as a departmental initiative of the
classrooms. Sheridan has standardised on the               School of Computing and Information Management,
WebCT Learning Management System and many                  Sheridan Institute of Technology and Advanced
courses are supported by a WebCT course site [1].          Learning but is now being considered for use in
                                                           several Schools within the Institute. Our team
While WebCT provided excellent support for                 decided to join a consortium of several third-level
individual courses there was no facility for cross-        educational institutions across Canada in order to
referencing or searching learning objects across           contribute to the eduSource project and share ideas
multiple courses. There were many high-quality             with others trying to solve similar problems [4]. The
learning objects being developed by faculty that           eduSource project will attempt to create a test-bed of
would only be known to the faculty member, his or          linked and interoperable learning object repositories
her immediate colleagues and the faculty member’s          across Canada. CRAMS is now in the alpha stage of
students.                                                  a production system. Currently CRAMS can be used
                                                           to upload and download learning objects and their
It was decided to investigate the implementation of a      associated metadata to and from a repository and
Learning Object Repository System to compensate            can perform searches for learning objects using the
for WebCT’s inability to manage the growing                metadata for these objects. CRAMS was
implemented using Java servlets, Java Server Pages,                      Provide a method to archive
and ORACLE database on the server and W3C-                        complete courses for later reference by
compliant browsers for the clients.                               administrators. 
                                                                         Facilitate the interchange of records
                                                                  describing educational resources and the
2 Problem Formulation                                             discovery of these resources within
Educational institutions that use the current                     Sheridan and across eduSource sites within
generation of the most popular Learning                           Canada.
Management Systems typically have extensive
collections of valuable learning materials embedded
within their course websites. The utility of these
materials is severely limited because it is not           2.2 Project Constraints
possible with current LMS’s to inventory the              Project constraints were as follows:
learning objects or efficiently search for materials
based on criteria important to an educator. A                             Minimise staffing requirements for
learning object repository could increase the utility             development and maintenance.
of these materials by storing meta-data with the                          Ensure security of objects once they
learning materials to facilitate later searching and              have been loaded into the repository.
retrieval. For administrative purposes, the Object                        Provide for future integration with
Repository should also be able to archive collections             the Sheridan Institute of Technology and
of learning objects that refer to a specific course               Advanced Learning Student Information
given during a specific semester for later reference.             System. This system is Oracle-based.
                                                                          Provide for future integration with
Several options for managing Sheridan’s Learning                  the Institute’s Web Portal.
Object Inventory were considered. Sheridan had                            Where        possible,       support
access to a remote Learning Object Repository                     international accepted standards for the
operating operated by the Belle Project [5]. While                representation of Learning Materials.
Sheridan was contributing objects to the Belle                            Allow for the future integration
Project (and later would contribute to its successor,             with a Canada-wide project, eduSource,
the eduSource Project), it was decided that                       intended to allow distributed searches of
maintaining control of access and security to the                 multiple learning object repositories from
complete inventory was important. The existing                    one site.
LOR’s were in various stages of stability and
functionality. There would be considerable effort in
retrofitting these LOR’s to integrate with Sheridan’s         3 Problem Solution
IT infrastructure. It was decided to investigate the      A project team was assembled under the leadership
feasibility of developing a custom-built LOR that         of Gary Closson, Dean, Applied Computing and
could integrate well with an ORACLE-based IT              Engineering Sciences, Sheridan Institute of
infrastructure and existing LMS’s (i.e. WebCT).           Technology and Advanced Learning. The team
                                                          included a Systems Analyst and Database Architect
2.1 Project Goals                                         (Peggy Hilliard), Software Engineer (Xiaolan Shi)
Project goals were as follows:                            and two consultants; Joseph Sant (User Interface
                                                          Design and Software Architecture) and Sean
                To develop a Learning Object             McShane (Database Architecture). The team
        Repository that could be effectively              members had an aggregate of approximately 45
        searched based on metadata pertinent to           years of teaching experience. All members had both
        educators and course architects. The              software development and database implementation
        repository should be available to                 and design expertise.
        administrators, full-time faculty, sessional
        faculty (i.e. faculty hired on contract for one   3.1 Phase One: Prototype Design
        semester) and part-time faculty.                 This phase involved capturing the requirements for
                Optimise the Repository’s utility by     CRAMS, designing and implementing a database
        ensuring that the user interface was easy to      based on those requirements, and building a simple
        learn and easy to use.                           PC-based prototype system. While the focus of the
prototype was on the sharing of curriculum objects                       A PC-based prototype
within Sheridan’s School of Computing and                        system for Object entry and
Information Management (SCIM), an effort was                     retrieval was developed using
made to align this project with the Belle Project (the           ORACLE Forms.
predecessor of the eduSource Project), which was
developing a system to catalogue and meta-tag
curriculum objects for sharing amongst educational       3.1.2 Discussion of Phase One:
institutions across Canada. The Peggy Hilliard, the      Some of the key issues identified and their proposed
project team’s System Analyst and Database               solutions are listed below:
Architect conducted this phase of the project using
regular input from the other team members.                               Which internal systems would the
                                                                 LOR potentially interact with? The student
3.1.1 Activities of Phase One:                                   information system and the human resource
Activities in Phase One included:                                system.
                                                                         Which external systems would the
                Background research of                          LOR interact with? Unknown, but the
        similar work at other institutions                       college was part of a Canada-wide project
        [5,6,7].                                                 known as Belle. One of the goals of Belle
                Surveys were conducted                          was to create a single access point to
        with Sheridan faculty members.                          multiple distributed Learning Object
                Metadata standards were                         Repository Systems.
        investigated to find an appropriate                              Versioning of Learning Objects?
        subset or superset of an existing                        Objects once loaded could not be modified.
        standard that would satisfy our                          New “modifications’ became new objects.
        needs. Metadata standards that were                      This would help with archiving for
        investigated and compared included                       historical purposes.
        IMS, Dublin Core, IEEE LTSC,                                     Versioning of Metadata? Metadata
        SCORM and CanCore [8,9,10,11].                           would not be versioned. Metadata would
                A report was produced that                      be stored when objects were uploaded.
        identified all of the issues and                                 Copyright Issues? Initially only
        questions that required consensus                        Sheridan-owned       available      for     use
        and/or decision before the full                          throughout the College would be uploaded.
        system could be developed. In the                                Granularity?      System       should
        report, a subset of data elements                        support very fine levels of granularity but
        and the rules for populating them,                       not below the “operating system file” level.
        were recommended for the                                         Categorisation of Materials? Initial
        prototype system.                                        focus will be to support categorisation based
                A Sheridan subset of the                        on a pre-defined hierarchy of subjects or
        CanCore Metadata Standard was                            topics. Future support for unconstrained
        chosen with some extensions added                        keyword entry and search should be
        to allow us to cross-reference                           accommodated in the database design.
        materials to courses and programs                        Meaningful categorisation of the learning
        at Sheridan.                                            objects would be a critical issue in the utility
                Sheridan’s information                          of the LOR. The use of a constrained
        systems were investigated to                             vocabulary (a pre-defined set of keywords
        identify possible interfaces to the                      to describe topics or subjects) would mean
        student information systems and                          that two contributors describing the same
        Information Technology systems.                          resource was more likely to use the same
                A relational database                           keyword to describe the object. Without a
        schema was designed that would                           constrained vocabulary, similar objects from
        properly represent all the metadata                      different contributors might have totally
        and their necessary relationships.                       dissimilar descriptors.
        The schema was implemented using                                  Types of Objects to be stored? A
        ORACLE 8.1.                                              list of the different types of objects that
        might be considered for storage was                          Forms locally within Sheridan
        defined. It would be necessary to shorten                    and meta-tag objects on the
        this list for it to be practicably implemented               CRAMS server.
        as a pick-list.                                             Procedures were developed and
                 System and Database Operations?                    documented for the installation
        Production system would have to run 24/7                     and configuration of client
        excepting scheduled downtime for backup                      software to properly allow
        and maintenance. Backup and maintenance                      remote access to the server
        procedures would need to be documented.                      database.
                 Method of Uploading Objects?                      Procedures were developed and
        Initial implementation would be for the                      documented for the loading and
        School of Computing and Information                          meta-tagging of learning
        Management. FTP would be acceptable for                      objects.
        the initial implementation (restricted to the               A topic category hierarchy was
        School of Computing and Information                          developed to enable association
        Management) but a more transparent                           of a topic with a learning
        method would be necessary if other Schools                   object. The model for this
        within the Institute were to use the                         topic hierarchy was derived
        repository.                                                  from the Association of
                                                                     Computing Machinery Topics.
The CanCore (Canadian Core Learning Object                          The prototype was tested by
Metadata Application Profile), a subset of the IMS                   attempting to load 25 learning
standard, was used as a starting point. eduSource has                objects of various types
standardised on CanCore as the metadata standard                     including HTML pages,
for describing learning resources. CanCore is a                      graphics files, data sets,
participant in the IMS Global Learning Consortium,                   PowerPoint slide sets, course
Inc. through the sponsorship of Industry Canada.                     descriptions and course
Peggy used a Sheridan subset of the CanCore subset                   schedules.
of the IMS standards for meta-tags and added                        A mock-up of a browser-based
extensions necessary to identify cross-references to                 client was developed. This
courses       and    programs        at     Sheridan.                mock-up preserved the core
                                                                     data entry fields but eliminated
                                                                     several fields that could be
3.2 Phase Two: Prototype Evaluation.                                 defaulted or were considered
This phase of the project involved porting the PC-                   extraneous.
only version of the prototype to a server, loading
learning objects into the repository, and then           3.2.2 Discussion of Phase Two
attempting retrieval of those objects. During this       The key goal of Phase Two was to convert the
phase the system primarily managed the metadata          stand-alone     prototype    to     a    client-server
and the actual objects were uploaded or downloaded       implementation then evaluate its effectiveness by
via FTP or copied to shared directories. Primary         using it to catalogue a variety of learning objects.
participants in this phase included Gary Closson         One instructor and two student interns were asked to
(Project Leader), Peggy Hilliard (Systems Analyst),      use the CRAMS prototype to enter meta-data for
Joe Sant (User Interface Consultant) and Sean            approximately 25 learning objects of various types.
McShane (Database consultant).                           The instructor was very proficient in the use of
                                                         Windows-based application programs while the
3.2.1 Activities of Phase Two                            interns were intermediate-level users of Windows-
Activities in Phase Two included:                        based applications. The prototype did not feature
                                                         automatic uploading of the actual learning objects
           Create a networked CRAMS                     from the client to the server. This was to be
            database that would enable                   implemented by mapping a directory on a
            School of Computing and                      networked drive to a local drive. Concurrent
            Information Management                       uploading of learning objects and their meta-data
            faculty members to run Oracle                was not considered essential for a prototype.
All three participants in the study were able to enter    While the prototype evaluation indicated that the
the meta-data for the 25 learning objects                 database implementation was capable of satisfying
successfully. All three noted that the entry of the       the storage and retrieval requirements for CRAMS,
fields using the Oracle Forms client was awkward          the fat client as designed would not be appropriate
when compared to other applications that the users        for wider deployment.
were familiar with. Some of the bugs identified in
the program behaviour were later identified as bugs       Joseph Sant suggested that a browser-based user
in the Oracle Forms product. The prototype allowed        interface be developed with the server functionality
for the entry of all data fields in the Sheridan subset   being implemented using Java Servlets and Java
of CanCore. This necessitated the use of several          Server Pages. The proposed system would allow for
‘tabs’ on a tabbed form and forced the user to            the management of “shopping baskets” of learning
navigate between several tabs in order to complete        objects. Mock-ups were developed which reduced
the entry of any single object. This was in spite of      the number of necessary input fields and the
the fact that many of the fields in the various tabs      necessary navigation between forms. Eliminating
were optional or could be defaulted.                      non-essential fields and providing defaults for other
                                                          fields improved navigation and meta-data entry.
The prototype was implemented using an Intel-
based server running Windows 2000 and IBM                 To make the Learning Object Repository more
Thinkpad R31 laptop clients using the Windows             useful to faculty, a “shopping-basket” capability
2000 Operating System.        The prototype was           could be added to the system. “Shopping baskets”
implemented in ORACLE Forms to facilitate                 are well understood by most Internet users. They are
porting to Linux or Unix if necessary. To run the         facilities used by many online retailers to allow
prototype on the IBM Thinkpad R31 clients, it was         users to select multiple distinct items into one order.
required that an ORACLE Forms run-time client be          In this case, faculty would be able to create one or
loaded on the laptop, the laptop be enabled as a          more named “shopping baskets” of learning objects.
virtual network client, the user map specific             These shopping baskets could be used to assemble
directories as a local drive, and that certain            courses or named collections of learning resources.
environment variables be set.                             It would also be possible for a group of instructors
                                                          to collaborate in the development of a “shopping
During the evaluation, it was determined that meta-       basket”. The “shopping baskets” would have to be
data entered into the Repository could be retrieved       implemented in the ORACLE database so that
using various data fields. All meta-data entered was      access to the same basket from multiple machines
retrieved as it was entered. The database                 was possible. Cookie-based “shopping baskets”,
implementation was able to properly save and              where the basket’s contents were stored on the
retrieve all the critical learning object metadata        client’s machine would make this impossible.
elements identified in the requirements documents.

The system was intended for use by advanced,              3.3 Phase Three: System Development
intermediate and novice users. The fact that one          Phase Two confirmed that the database could handle
advanced and two intermediate-level users had             all the data storage requirements of the CRAMS
difficulty entering the object metadata indicated that    system. The fat client developed using ORACLE
the prototype as designed would definitely not be         proved too awkward to use and too difficult to
appropriate for novice users. Furthermore, because        deploy. Phase Three involved the redesign and re-
of the awkwardness of the field entry and the forced      implementation of the core functionality of Learning
navigation through several tabs, entering object          Object Repository as a thin-client. The client was to
meta-data was slow.                                       be implemented using HTML/JavaScript forms. The
                                                          server was to be implemented using Servlets, JSPs
It was very important for Sheridan that sessional and     (Java Server Pages) and JDBC (Java Database
part-time instructors could quickly and reliably gain     Connectivity). During this phase, Xiaolan Shi, a
access to the repository shortly after being hired.       software engineer with experience in distributed
The difficulty of deploying the prototype on the          Java application development joined the team. She
laptops indicated that guaranteeing quick access to       was given overall responsibility for the system
the repository to part-time and sessional instructors     design and implementation although Joseph Sant
would be problematic.                                     was requested to provide consultation on specific
areas of the implementation.                        re-implemented the prototype from Phase Two as a
                                                    thin-client using HTML forms, JavaScript and
3.3.1 Activities of Phase Three                     server-side Java (Servlets and JSPs) [12]. The other
Activities in Phase Three included:                 important achievements during this phase included
                                                    streamlining both the data-entry and navigational
           Development of an Object-               requirements of CRAMS user interface, the
            Oriented Model of the new               development of a Topic Hierarchy which could be
            system based on knowledge               used across the various disciplines being taught at
            gained from the                         Sheridan Institute of Technology and Advanced
            implementation of the                   Learning and the development of a procedure to
            prototype. The model was                upload digital learning objects concurrently with
            documented in a set of UML              their meta-data.
            (Unified Modeling Language)
            diagrams.                              A screenshot of the Learning Object Entry Screen is
           Implementation of the Object-           shown below.
            Oriented Model of the System
            using a variety of Java
            technologies including Servlets,
            JSP’s and JDBC. 
           Implementation of a procedure
            to upload learning objects from
            the client to the server with
            their associated meta-data. A
            method to verify the success of
            the upload was also
           Implementation of a procedure
            to download learning objects
            from the server to the client
            based on searches of the
            objects’ meta-data.
           Refinement of the User
            Interface to minimise the data
                                                                Fig. 1 Learning Object Entry
            entry requirements and
            necessary navigation.
           Development of a procedure to
            ensure that the uploading of            The challenge in designing an effective browser-
            objects and the saving of               based client involves minimising both the number of
            object’s metadata was treated           fields that must be filled and the number of pages
            as an “atomic operation”.              that must be accessed to complete a repository
           Development and                         operation. The most complex repository operation,
            documentation of a new                  adding a resource to the Learning Object
            “restricted vocabulary” for             Repository, required only one form (assuming the
            topic selection that could be           user had already been authorised) and generated
            used by all schools in the              only one informational page that confirmed that the
            Institute.                             data had been uploaded properly. Streamlining data-
           Testing the Object-Entry and            entry requirements was achieved by eliminating
            Retrieval System by uploading           non-essential fields and by defaulting values for
            at least 50 learning objects of         other fields. For instance, in the prototype in Phase
            varying types then executing            Two, users could specify both the server and the
            various queries.                        directory name for the uploaded resource. The
                                                    system was altered to default the server name,
                                                    directory name, and filename based on the user
3.3.2 Discussion of Phase Three                     login name and the name of the file to be uploaded.
During Phase Three, the project team successfully   This procedure was modified for situations where a
third party was entering Learning Object Metadata      Learning Object Repositories and the provision of a
for a faculty member. It was determined that several   free-text boolean search capability for CRAMS.
other data-entry fields available or required in the
Phase Two prototype could be safely eliminated by      4 Conclusions
using defaults for those fields.                       Several important lessons were learned during the
                                                       development of CRAMS (Curriculum Repository
CRAMS was designed to support a restricted             and Meta-Tagging System.). The major lessons are
vocabulary for the assignment of topics to learning    listed below:
objects. These restricted vocabularies could be
implemented as shallow hierarchies of topics. To                      Major meta-data standards such as
select a topic for a specific learning object, the            IMS and CanCore typically provide a
contributor could select a major topic from a topic           superset of the descriptors that an Institution
hierarchy then successively select more narrow sub-           such as Sheridan would need to describe
topics. Originally a modification of the Association          their learning resources. CanCore was
of Computing Machinery (ACM) Computing                        chosen as a base standard and a few extra
Classification System was used as a starting point            descriptors were added to facilitate
for our restricted vocabulary [13]. This was                  interfacing with Sheridan’s Administrative
considered appropriate since the repository was               System. CanCore seemed to have the best
intended for use only within the School of                    compromise between simplicity and
Computing and Information Management.                         expressiveness.
                                                                      Serious     problems     were      not
The modified ACM Computing Classification                     encountered in representing the Learning
System was no longer appropriate because CRAMS                Object Metadata or Cataloguing information
was being considered for use across several Schools           in a relational database. 
within Sheridan Institute of Technology and                           There      were     no     significant
Advanced Learning. Constructing an appropriate                differences in the functionality of a
hierarchy for the breadth of subjects taught at               Learning Object Entry and Retrieval System
Sheridan would be extremely difficult without a               when implemented as a fat client or a thin
suitable starting point. The Library of Congress              client. The fat client was implemented in
Classification Outline List was chosen as a starting          ORACLE forms and the thin-client was
point for our hierarchy [14]. To ensure that the              browser-based. The fat-client did provide
hierarchy could be downloaded practicably as data             for the entry of a few more elements but the
in a web page, the hierarchy would be restricted to           values for these elements were defaulted in
three levels, with each node having approximately             the browser- based system. 
10 child nodes (for a total of approximately 1100                     There were considerable differences
nodes). This was considered the best compromise               in the difficulty of deployment of a
between speed of downloading, specificity, and ease           Learning Object Entry and Retrieval system
of selection.     It was sometimes necessary to               when implemented as a fat client using
combine several Library of Congress subject                   ORACLE forms or a thin client using only a
categories into one and some LOC categories were              browser. The only deployment issues for
not considered appropriate as subject areas in a              the thin-client were ensuring that users
third-level educational institution.                          enabled JavaScript on their browsers and
                                                              that users had password access to the
                                                              Sheridan portal, where the system would
3.4 Future Work                                               eventually reside. Deployment of the fat-
                                                              client would have been difficult. It would
Future work for the CRAMS project includes full               have necessitated setting up clients as
implementation of the ‘shopping basket” feature for           virtual network clients, mapping drives,
CRAMS such that various faculty can                           installing ORACLE Forms runtime on the
collaboratively develop collections of learning               client and setting environment variables on
objects for use in their courses. Other enhancements          the client machines.
being considered are the development of a SOAP                        Database             implementation
(Simple Object Access Protocol) based interface to            independence was not deemed feasible for
CRAMS to enable eduSource to include Sheridan’s               the initial phases of this project because of
repository in their federated searches of Canadian
        the small size of our development team and 
        the potential loss of the advantages that         [9]    CanCore        and     SCORM       Compared;
        using stored procedures brings to database 
        integrity. Several of the core functions of       [10] IMS          Learning Resource Meta-Data
        the system were implemented as ORACLE                Information                                Model;
        stored procedures.                        
                It was possible to reduce the               1/imsmd_infov1p2p1.html;
        amount of metadata to be entered and the          [11]     Dublin       Core     Metadata    Initiative;
        amount of site navigation needed during    
        Learning Object Entry and Retrieval by the        [12]        Java       Server      Pages        FAQ;
        liberal use of defaults. Examples of defaults
        that were hidden from users are the actual        [13] ACM Computing Classification System
        target location of the Learning Objects and          (1998);
        the Copyright Information. Initially, only 
        Sheridan-developed        and     copyrighted     [14] Library of Congress Classification Outline;
        material will be entered into the system. 
                It is possible to use a Learning
        Object Repository for the purposes of
        archiving entire courses if procedures for
        the archiving are established.
                Lightweight        Java       Server
        technologies such as Servlets, JSP’s and
        JDBC and relational database systems such
        as ORACLE provide all the necessary tools
        to implement a thin-client based Learning
        Object Repository system.
                The Library of Congress (LOC)
        Subject Category System provides an
        excellent starting point for a Topic
        Hierarchy for Third-Level Educational
        Institutions. Sometimes it was necessary to
        combine several LOC subject categories
        into one and some LOC categories were not
        considered appropriate.

[1] WebCT;
[2] Learning Objects and Instruction Components;
 [3]       Dr.       Tom's       Meta-Data      Guide;
[4] eduSource Canada, Canadian Network of
    Learning              Object          Repositories;
[5] Netera Alliance;
[6] Merlot;
[7] Christian Eller, An Associative Repository for
    the Administration of Course Material, Diploma
    Thesis, Technical University, Graz, Austria,
[8] IEEE Learning Technology Standards
    Committee (LTSC), Learning Object Metadata
    Draft                 Document                v3.6;

To top