eNOSHA-The Design and Development of a Learning Object Repository

This paper describes the development of an open source Learning Object Repository (LOR), named eNOSHA (eLearning Neutral Object Storage with a Holistic Approach.), at University of Colombo School of Computing (UCSC), Sri Lanka. The eLearning Centre (eLC) at UCSC has been developing learning content for a nationwide e-Learning Bachelor of Information Technology degree (eBIT) and a preparatory programme for the eBIT program (The Foundation in Information Technology, FIT). Since eBIT started in 2002, a lot of learning content has been developed in-house and there was a need for a repository to support storing and reusing of learning content. The aim of the paper is to present the development of eNOSHA in regards to three key concepts, flexibility, reusability and user-friendliness. Based on a requirement analysis carried out in December 2008, a plan was drafted for the development and implementation of the system. A participatory approach was used where users have been involved in the design, evaluation and implementation. Based on the testing of the system we gained a positive response regarding the searchability and reuse of content. Tests have, however, shown that additional features are needed to be implemented to improve the usability of the system, Even though the system has been developed based on the needs of UCSC, one of the objectives has always been to make it context independent. Internal tests conclude that the system is flexible enough to work in different contexts but the design may need some minor changes once tested in other organizations or cultures.


INTRODUCTION
In the design of e-Learning content, it is important to have a constructive environment connecting all stakeholders in the e-content development process.At University of Colombo School of Computing the stakeholders are Subject Matter Experts (SMEs), Instructional Designers (IDs), Content Developers (CDs) and System Developers.The constructive environment should facilitate many to many interactions among participants and e-learning content in the process with the objective of developing different courses.Learning Content Management Systems (LCMS) generally provide one-to-one interaction in the development of a single course, but in order to allow collaborative development of related course, it is important to connect the environment with a Learning Object Repository (LOR) to promote reusability, collaboration, quality enhancement and productivity.Hence, LORs can be considered as an important ingredient of an LCMS.A repository is a required product for large scale content development and for the preservation of published materials.Repositories facilitate the collaboration among consumers and promote them to contribute their own artefacts, so that all parties benefit from their contributions.In order for a LOR to be reusable all objects in it must be marked with metadata for easy discovery.Metadata can be defined as "data about other data" and is the main tool for learning object markup in digital libraries (Nagamori et al. 2006).By using metadata repositories can be categorized and provided with searching functionality by using the entries included in the metadata set.The core function of metadata in a LOR is to make the stored content reusable and searchable (Hatakka and Mozelius, 2009).
During the last four years the e-Learning Centre (eLC) of UCSC has developed a large number of online courses for several academic programs of different educational levels.The programs are the e-BIT (http://lms.bit.lk), the FIT (http://fit.bit.lk),e-Lessons for secondary education, professional and community education and internal degree programs.eLC has a workforce of more than 25 developers to facilitate the development process together with more than 50 academic staff members of UCSC who contribute to the development as SMEs.At the time of writing this paper, eLC has developed more than 45 online courses and continuously upgrading, customizing and developing new course to meet specific and new user requirements.In this type of environment, it is hard to build one to one communication among all participants.An ID does not know what his/her colleagues have developed.As a result, much repetition of similar work and low level of reusability have negatively affected the productivity and quality of the work being done at the department.Although eLC is using a LCMS which is a customized version of a Moodle system, it is not possible to promote sharing among the stakeholders since there are no appropriate mechanisms to store and search for the stored content.It is, hence, important that the system helps with the internal content development process.The system has to enhance the reusability of content to speed up the content development process.It also has to be user-friendly to make the users accept the system and be flexible in regards to different type of content as well as different contexts.
The aim of this paper is to present and describe the development of the eNOSHA system regarding three key concepts, flexibility, reusability and user-friendliness.
• Flexibility in the meaning that the designed software should be as context independent as possible.A system that should be used by internal UCSC staff as well as external users.The eNOSHA learning object repository is open, adaptable and easy to install in any university, school or tele-centre in any part of the world.
• Reusability in the sense that the system should provide features for advanced searching where all resources should be easy to find and update.
• User-friendliness in the common broader definition that a system should be easy to understand, but in the later development phases we have also looked at the concept of usability with the Shackel's Model of Usability (Schackel, 1986).
The paper is organized as follows; in section two a brief overview of related work is given.After that the method used to develop the LOR is presented.In the result section we present the functionality, architecture and benefits with the system in regards to flexibility, reusability and user-friendliness.In the last section we conclude our tests of the system including future work that is needed.

A) Learning Object Repositories
LOR can be defined as a storage and retrieval engine for digital learning material that are to be used in an educational context based on searchability, accessibility and reusability.A LOR should also facilitate and support the collaborative development of educational e-learning content.

B) Existing Learning Object Repositories
There are several open source LOR systems are available to facilitate the e-Learning content development process.However, we failed to accept any of those systems due to them not meeting the needs of UCSC, as well as technical limitations (see table 1).
Details from three of the tested systems are given below. During

Development of the system was carried out in collaboration between UCSC in Sri
Lanka and two universities in Sweden.The methodology used for the project is action

IV. eNOSHA
The e-learning Center at the University of Colombo School of Computing creates and publishes a large amount of learning material for its internal and external degree programs.In addition to this the staff of the e-Learning Center creates a huge volume of reusable content to be used within the center for later development.All these learning objects are stored with backups on UCSC servers, but what has been missing during a long period is functionality for mark-up and searching of eLearning content.In this context, a method for these learning materials as well as the developed content to be shared among the staff itself, or certain material to be made publicly available was needed.This is where eNOSHA (eLearning Neutral Object Storage with a Holistic Approach) is conceived as a sharing medium and most importantly as a complete collection of the center's work over the years.eNOSHA (see figure 1) will also be an attempt at creating a content developer community through sharing, modifying, feedback, rating, commenting facilities which will ultimately lead to content of better quality.

IV. DESIGN
Design of eNOSHA, was stared in December 2008 by designing the required metadata set, which were revised after conducting user evaluations.The prototypes created were evaluated by users from eLC to test different functionalities in the system.Usability tests were mainly done by using scenarios and the systems were modified according to the feedback obtained.After completion of the development, unit-tests were conducted in both Sri Lanka and Sweden to test the technical functionality of the system.These tests gave us an understanding of which features that were missing and what was needed to be improved. i.

Requirements of eNOSHA
The main requirements identified to develop eNOSHA are as follows; • Visibility -all persons working with e-learning at the UCSC eLC needs a common forum where learning object can be stored, found an updated.
• Searchability -the system UCSC previously used did not support an easy mechanism to search for material.In the eNOSHA system it should be easy to search for relevant content with minimal effort.A filtering facility should also be provided to improve the searchability.
• Version handling -The system should be able to handle different versions of files.This serves two purposes, 1) developers will be able to access the latest version of a file and 2) older versions are stored for historical purposes.
• User-friendly -The system should be user-friendly, both when it comes to adding objects to the repository and in accessing existing objects.It also has to be user-friendly to make users accept the system.
• Collaborative environment -The system should work as a collaborative environment whereas developers should be able to work together to make the development process more efficient.
• Reusability -This need aims at making the content created more reusable and thereby making the content development process more efficient.This need is achieved through visibility, searchability and flexibility.
The requirement mentioned above are common to both UCSC and other organizations which are in need of this type of repositories.

ii. Designing for Flexibility
The system has been designed to work in different contexts to make it flexible for users.
The content is categorized into as open and closed through a copyright option that let users know whether content can be used without copyright restrictions.Content is categorized into 4 Aggregation levels such as • Atom : The smallest level of aggregation, like Images, Text files, Sound files and Animations • Collection of atoms : A combination of atoms, like a HTML document with embedded pictures or a lesson • Course module: A complete course section that include a selection of collection of atoms.
• Full course: A full course that include all the course modules for the specific course.
The system also consists of 5 user roles such as Administrator, Instructional Designer, Content Developer, Normal user and External user.Privileges assigned to each user differ according to the user roles.Administrator is known as the super administrator who has been assigned full administration rights including the facility to take system backups periodically.The second highest role is Instructional designer where he/she has been given some administrative rights to create categories/sub categories, set file types or formats, add languages, add activity types and also to add target regions.Both the content developers and normal users have facilities to upload, search and download content.External users can only search and download content.
As mentioned earlier some of the functionalities of the Administration module can be accessed by Instructional designers where special functionalities such as adding a new module to the system, taking a backup of the system and viewing users feedbacks are only accessible by super administrator. iii.

Designing for Reusability
The content that can be uploaded to the system has been divided into two categories as internal and external, where internal means all of the content that will be reused within the organization and external means the content that can be reused by outside organizations as well as within the organization.When considering this factor we have mainly considered about the security and copyright aspect of the content where outside organizations cannot access internal content.We have also used metadata for users to find out whether content is modifiable or not and whether content has parts which are restricted by copyrights which allow users to find out which content can be reusable.

iv. Designing for User-friendliness
To make the system user-friendly functions such as bulk uploading and user templates were included in the system.These are explained in detail under functionalities of this paper.Additionally Auto fill-in and defaults values are also provided in necessary areas to make it easy for the users.Users are also presented with tooltips and a help module.

v. Design of the metadata
As a result of the needs analysis at UCSC a new adapted metadata set was constructed based on the LOM standard.One strong reason for deriving the set from LOM is that it is the most used metadata set in SCORM which is e-learning standard for all courses in the eBIT programme at UCSC (Hatakka et al. 2009).Existing metadata models are complex and hard to implement in a system where userfriendliness is an important aspect (Attwell et al. 2007;Hatakka et al. 2007).If there are too many metadata fields that need to be filled in user acceptance will be hard to achieve (Cardinaels et al. 2005) and on the other hand a system based on an oversimplified metadata set will never serve good searchability.For the eNOSHA system we use an adapted version of the LOM metadata-set consisting of 34 metadata elements (for a full list see (Hatakka et al. 2009)).The reduced number of metadata fields together with techniques for automated metadata generation will help solve issues related to reuse in general and the needs specific for UCSC.Use of templates (i.e.predefined metadata for a set of resources), default values and automated values will significantly reduce the workload for the users, hence, making the system more user-friendly.As an example, the number of fields that has to be filled in manually for an external course module can be reduced from 28 to 7.

vi. System structure
eNOSHA, consist of core modules such as upload, search, user management, administration, help, error handling and statistics.Upload and search modules are the vital parts when it comes to eNOSHA.Therefore detailed explanations about those two modules are given below.
Search module has been divided into two parts namely, "Search" and "Advanced Search".Search can be classified as a simple search which can be used to perform a basic search either by selecting a particular category or by typing in a word or a phrase.Advanced search is an area where the users are provided with lot of search options.After performing a particular search, users are given the facility to filter results based on authors, keywords, category, title or description.
Upload module consist of functionalities to upload content into four aggregation levels known as atoms, collection of atoms, course modules and full courses.Users have to upload content into categories and sub categories which can be created by them according to their requirements.Creation of categories can be done under "Administration" module.The fields which the users have to be filled are categorized into two separate parts called "mandatory" and "optional' to make it easy for the users.Even to make it more flexible and to reduce the same data being entered several times, it was decided to introduce a facility called "User Templates", where users are given the freedom to create their own template for their requirement.

File upload:
The user can upload material after filling in some metadata fields (mandatory and optional).This function was enhanced with user templates and bulk uploading.A file upload in eNOSHA is shown in Figure1.

Figure 1: File Upload in eNOSHA
Other modules along with their functionalities are given below.

vii. Functionality
Being a LOR, eNOSHA is equipped with the most basic to the enhancement functionalities.Core functionalities like upload, search, download, administration, user management were identified initially and then the enhancement modules like commenting, rating, user templates, bulk uploading, help, error handling and statistics were integrated.
• Search (Simple and advanced): A simple search was implemented for the purpose of a broader search.Whereas an Advanced search was set alongside it to enable better locating of resources.This concept of locating was implemented in the simple search by a filtering mechanism, where the user can keep on filtering the results until a hit is found.The Functionality of downloading was also attached with search.
• Administration: Initial concept of system administration was a single unit to control the system, where a super administrator had control over the options, users and overall system customization.This was broken down in to 2 separate functions, where system administration is to be assigned as a role to an administrative user and user administration and some other special tasks is held by the super administrator.
• Commenting: Users are able to comment on the learning objects uploaded to the system • User Templates: When a certain user will upload similar files, with almost the same metadata, with the exception of few key metadata, they can create a user template and use it to upload objects.The information from the selected user template will be automatically taken, while the rest of has to be filled in.
• Bulk Upload: Attached to the templates, when a user uploads similar files with the shared metadata, the process can be split in to 2 actions, the upload action and the metadata filling action.The latter will not take much time since the user template has already filled in a lot of values.Only the unique metadata has to be filled in after all the files have been uploaded to the server.
• Help: A separate module for glossary and tutorials on how to use the system, showing sample data uploads and search along with other administrative tasks.
• Error Handling: A module for storing the source of errors and details including originating module, error message etc.
• Statistics: A module for a comprehensive statistic reporting of the system, including the most rated or downloaded materials, active users, most searched keywords, most uploaded category etc.In addition the statistics on the errors are also recorded.

VIII. ARCHITECTURE OF THE SYSTEM
One of the primary concerns of the database design was to make it as flexible as possible for other adopters of the system and future expansions.Flexibility meant making the system customizable for all users who will adopt the system.eNOSHA enables customization of metadata values including categories, languages etc.Our main assumption in building the system was eNOSHA will be a out of the box learning object repository for a generic use because we incorporate our own metadata set which we have derived out of the LOM standard, considering the most prominent metadata when learning objects are considered.It will serve as a LOR in most cases without any customization except for a very few.eNOSHA has a localization scheme based on language files.System Architecture can be illustrated as shown in Figure 2.

IMPLEMENTATION AND AVAILABILITY
Testing of the eNOSHA system can be done at http://www.e-learning.lk/enosha.The full product together with the source code and documentation is available for download from the g-forge server located at the http://kammala.cmb.ac.lk.Programming languages and techniques used in the development of eNOSHA are PHP, JavaScript and Ajax.The system is tested on both Windows and Linux operating systems and it works well on both platforms.

X. DISCUSSION AND CONCLUSION
The aim of this paper was to present the development of the eNOSHA Open Source LOR in regards to three key concepts, flexibility, reusability and user-friendliness.
Initial testing of the system indicates that the reuse of content can be improved with eNOSHA.Several modules (i.e.search, comments, version handling etc.) support reuse.Considering user-friendliness we found a need for improved efficiency if the system should be used in the daily work at the UCSC eLC.The most important functionality we added was bulk uploading where the CDs and IDs should be able to work with templates to reduce the repeated filling in of standard metadata fields.
Regarding flexibility and context independence it is hard to measure it without first implementing the system in more environments, but the eNOSHA LOR seems flexible enough to work in parallel for internal and external use at the UCSC.Important future work is to test the eNOSHA system in more contexts.

XI. FUTURE WORK
In this paper the eNOSHA system has been tested and updated in the daily work at UCSC.For a better understanding of the systems flexibility, strengths and weaknesses we find it important to test the software at universities in different parts of the world.As the work process differs between universities we need to compare the use of the system in different contexts to further improve its functionalities.

XII. ACKNOWLEDGEMENT
The development of the eNOSHA system has more than anything been a team work where far from everything has been done by the authors.We would like to thank the members of the software development team: Sirani Hewage, Thilini Chaturika, and Chetana Nanayakkara.We would also like to thank Madhavie Mudalige, Lars Glimbert, Gihan Wikramanayake and the staff at the UCSC eLC for their support and feedback throughout the process.
research (AR)(Baskerville et al. 1996;Davison et al. 2004;Kock 2007).Within the framework for AR we have, however, used different methods.The development of the eNOSHA system was carried out in collaboration between UCSC and two universities from Sweden, Stockholm University and Örebro University in the Sida funded NeLC project.An aid project where the main objective is to extend and improve the National eLearning Centre at UCSC.The development project started with a need analysis of the requirements specific to UCSC as well as more general needs for an LOR.Existing literature was reviewed to find current best practices for LORs and lessons learned from other LOR projects.Focus groups consisting of staff from UCSC and external project members from Sweden have been conducted on several occasions, both as physical meeting, and as distance meetings, using tools for video and voice conferencing.The initial requirement analysis was carried out in December 2008, and based on the analysis a plan was drafted for the development and implementation of the system.A key ingredient in the development was from the start that users of the systems should be included in the whole development process, i.e. the system is based on a participatory design(Michael 2003;Michael et al. 1993) where users have been involved in the design, evaluation and implementation of the system.The initial plan has iteratively been revised based on the feedback from the users.Our aims with this method were to develop a system that meets the needs and requirements of the users and increase the user acceptance.Throughout the development we have conducted usability tests of the different functionalities in the system.Usability tests were mainly done by using scenarios and unit-tests were conducted to test the technical functionality.These tests gave us an understanding of which features that were missing and what was needed to be improved.The software development method used was SCRUM(Schwaber et al. 2001) which is an agile method for system development.During the design and development phases we have used SCRUM techniques like sprints, backlogs and burn down charts.Backlogs and burn down charts have been put together as Excel spreadsheets.The SCRUM meetings have not always been daily as prescribed and sometimes by distance as Skype conferences.

Figure 2 -
Figure 2 -System Architecture SCAM has two types of systems available, a base object repository (SCAM Nimble) and an ePortfolio.SCAM proved to be a difficult system to install and use primarily due to the lack of documentation.At both Örebro University and at UCSC the test installation of SCAM took a lengthy period and the idea of having SCAM as a LOR diminished after the trying period.Table1illustrates the details of the tested LOR's.
and the other module is meant for access and search for resources.At the time when we looked into the system, MrCute was still in development and the two modules only partially fulfil the requirements of UCSC.SCAM (http://project.iml.umu.se/projects/scam-repository),A Java based, Semantic Web Technology and Resource Description Framework (RDF) based LOR was one of the alternatives considered for use at UCSC.Initial attractions being a scalable metadata set, multi platform deployability, IMS Content Packaging, web based operation etc.