Software Selection
Selecting repository software is one of the most important decisions you will make. You must consider many elements prior to making a selection. Review the output from all the previous planning groups to see if they made any decisions that may impact software requirements. For example, if fees are to be collected, you should specify the need for an e-commerce function.
There are a number of key areas that the Software Selection Team should research and address. When North Carolina initiated their repository project, a detailed request for proposal (RFP) [PDF] was created through the input of multiple teams that enumerated all their software requirements. Many of the areas for consideration below are adapted from this RFP.
Existing Software or “Home Grown”
Do you plan to develop your own software or use an existing product, either open source or commercial? Many of the repository developers and managers that we interviewed for this blueprint chose to develop their own software specifically designed for their repository. Developing your own software can ensure maximum control over the features and specifications of your repository; however it does require that your group have access to programmers, developers, and other technical staff with the high-level skills necessary to undertake this type of software development.
Open Source or Commercial
If you do plan to use an existing software product, the next decision is whether to use open source or commercial software. There are pros and cons to each option, and you will want to weigh these fully when investigating software possibilities. Open source software may allow greater flexibility to edit and customize the program code to meet your project’s needs. According to Open Source Initiative (http://www.opensource.org/), “The promise of open source is better quality, higher reliability, more flexibility, lower cost, and an end to predatory vendor lock-in.” However, such flexibility will likely require the services of a programmer/s or a third party who is able to create and modify the system to meet your repository needs. While an open source package may offer savings in terms of licensing, you may ultimately have to expend more in staffing and programming.
A commercially licensed vendor might include programming support in your financial agreement, but you may sacrifice the convenience of being able to make modifications to the system in house. In addition, you are subject to the availability and responsiveness of the vendor’s programmer. When deciding on this aspect of your software, it is vital to consider your available staff and if your repository will have access to personnel with the necessary skills.
You should also determine the number of users a software package will support. While open source software generally has no restrictions on user numbers, many commercial products have varying fee levels depending on the number of users. It is sometimes possible to “buy out” the software. Normally, this includes the payment of a lump sum to own the software for system use and requires an annual “maintenance fee” of 20% of the total purchase price. However, even if the system is “bought out”, there may still be a yearly maintenance fee. If your project plans to start with a small pilot implementation, it might be beneficial to begin with a small number of licenses and increase the number as the repository expands. Florida began its pilot implementation with 500 faculty licenses or seats.
In 2009, the OnCoRe Blueprint project contracted with the University of North Texas to identify possible open source solutions for repository software and to review the features and functionality of various products. The results of this study can be found here.
Metatagging and Discoverability
Discoverability of content is essential. A quality repository must enable users to precisely and easily locate content. This is accomplished by searching the metadata associated with each resource. Repository software must allow customization of your metadata schema and crosswalks that allow it to communicate with other repositories that employ a different schema. Determine the software capabilities in this area. For example, can there be multiple metadata schemas or can the metadata schema be customized to include information unique to your repository? You also may want to consider the methods available for entering the metadata. Is there a template or wizard to assist users in attaching the proper metadata? Are you able to specify which fields are mandatory and which are optional? Can you duplicate metadata records and reuse them for another resource? Can you bulk upload metadata records?
When addressing this issue, consider how your users search. Do they access the repository knowing exactly what they want, or do they prefer to browse within subject areas? What types of terms do they search on? Search terms can vary widely, from controlled vocabulary lists with predetermined search terms to free text searches that allow a user to enter any terms they wish. You may want to consider a combination of these options. For example, the Orange Grove allows searchers to locate information in a variety of ways. They may enter their own keywords or select from a number of preloaded, controlled vocabulary options [i.e. Sunshine State Standards (K-12), common course numbers (postsecondary courses) and both ERIC (Education Resources Information Center) and GEM (Gateway to Educational Materials) search terms.] It is important to determine if the software will support these options.
Personalization
Another useful software function is to allow personalization of the repository experience. Can users create and maintain a personal profile? Can they save or bookmark resources that they use often or tag resources as favorites. An RSS feed that notifies a user when new resources are added to the repository is also a nice feature.
User Management
The specifications of your software system will dictate how users can be managed. User management consideration might include: what type of permissions the user is granted, if users can be assigned to different groups, if user accounts can be enabled/disabled by the repository manager, and if a user’s login or account history can be tracked?
Content Upload & Management
It is important to learn how content is uploaded into the system. You should explore both the process users will follow to upload a file as well as the possibilities for batch upload of content. Also explore management issues such as setting up and managing workflows for content creation or quality reviews and the ability to set copyright/access restrictions and to ensure access for persons with disabilities. Additionally, see if the product contains tools that allow users to edit or repurpose content to meet their specific needs. Users may also wish to comment on resources and have those comments visible to other users through some type of peer rating mechanism. This allows users to share how they used a particular resource and learn what others thought of it.
Presentation
Examine the environment that the repository presents to your repository’s community of users. Is the interface simple, attractive, and easy to use for not-so-technically-savvy users? Does the repository provide any tools to assist users in creating new resources that include one or more repository resources? Is collaboration supported, and how flexible is that system? A simple process to contribute resources, link to resources, and download resources is always best.
Integration and Interoperability
Ideally, a repository can integrate easily with multiple repositories and with multiple learning management systems (LMS) such as Angel, Blackboard, Desire2Learn, Sakai, or Moodle. This is especially useful for higher education faculty members, many of whom are now accustomed to their institution’s LMS. Integration should allow faculty to log into their LMS and have seamless entry into the repository, without additional log-ins required. You may want the system to employ Lightweight Directory Access Protocol (LDAP), which allows single sign on and allows one password for a user to be shared between many services.
Customization
Some products also offer the opportunity to customize many aspects of the repository management system. For example, users may wish to customize the interface look and feel. Are branding text and graphics customizable?
Data
Consider your group’s needs to collect data on repository usage, as well the ability to quickly and easily produce statistical reports with information such as total number of items, information on items under review, weekly usage, user log-in times, and counts of external queries. Automated tracking and reporting on any nonfunctioning URLs within the repository is also valuable. Some repositories also track student performance data, through integration with their course management system. Institutional, departmental, district, or state level entities may also want to collect various types of user information or usage reports.
Installation and Support
It is important to determine what the vendor will provide as well as what sort of in-house support staff will be required. What sort of training is available and recommended for users, system administrators, and other roles? Is this included with the software package?
Resource Portability
Finally, consider how easy it will be to move your repository resources, and the metadata associated with them. At some future point, you might need to migrate to a new software version or to a new software platform.
The Software Team will need to take all of these factors into consideration when selecting the software for the repository. They will also need to work closely with the other Operational Planning Teams to ensure that the selected software accommodates the policies and procedures they have established in their areas. They will also need to consider the available budget for the project and decide how much they can invest in software purchase and licensing as well as the maintenance and updating of the package
Resources