Reading List Application Requirements Document
Goals
- Create a reading list application to better support reserves and learning management system integration with Alma / Primo.
Background and strategic fit
Alma's reading list functionality – mostly used in support of reserves – is pretty limited and clumsy.  This application will provide a better interface to that capability within Alma, as well as integration points into campus learning management systems in an effort to increase usage of library resources for instructional material.
This integration will make it easier for instructors to adopt library resources in favor of course packs and expensive text books, reducing costs to students (in support of the AL$ initiative). Â Developing this as an open source application will save the CSU money.
Assumptions
- Chancellor's Office will lead development and host the application
- We will build application in PHP 5.6 (or maybe PHP 7.1?)
- Will use Symfony 3.1Â as framework
- Will use Twig as the templating language
- Will use Bootstrap 4 (or maybe Foundation 6?) for CSS, front-end framework
- We will use APIs to interact with Alma and Primo
- Saving all data to Alma's reading lists
- Will use Shibboleth for authentication (perhaps some alternative for San Diego)
- Will use LTI as the primary method of integration to the learning management system
- Taskforce member institutions will provide initial testing, QA, feedback from faculty.
Requirements
# | Title | User Story | Importance | Notes |
---|---|---|---|---|
1 | Add resources to list from Primo search | Instructor can search Primo to find books and articles to make part of the reading list. | Primary |
|
2 | Add resources to list from manual entry | Instructor can manually add resources through a web form | Primary |
|
3 | Add resource to list from already saved resources | Instructor may elect to copy an existing list or add resources they have previously discovered to a new list. | Primary |
|
4 | Add resources by exporting from Primo | Instructor may already have items saved or discovered via Primo. This feature would allow them to export the item to the reading list. | Secondary |
|
5 | Organize and manage list | Instructor should be able to organize the list into sections (e.g., by week or assignment) and add, order, and delete resources within each section. Instructor will also need to annotate each item. | Primary |
|
6 | Add same list to multiple courses | Instructor may elect to use the same reading list in multiple courses, and so we need to distinguish users from each course | Secondary |
|
7 | Instructor and co-instructor roles | Instructor has ability to invite co-instructor or librarian(s) to be able to edit the reading list | Secondary |
|
8 | Sharing | Instructor can elect to make their list public, allowing other users of the system to see and adopt their list | Secondary |
|
9 | Usage reports | Instructor can view how many and which users have viewed each item in the reading list | Secondary |
|
User interaction and design
Questions
Below is a list of questions to be addressed as a result of this requirements document:
Question | Outcome |
---|---|
What should we call this application? | |
Should the instructor start their interaction with the system outside the LMS? | |
How best to expire, roll-over courses from term to term? | |
How much local branding should we support? | |
Can we create tasks in Alma for reserves and purchase? |
Not Doing
- Will not support uploading files, due to legal and security concerns