Designing, Implementing, and Maintaining Digital Library Services and Collections with MyLibrary

Eric Lease Morgan, et al.

This manual is a part of system of files called MyLibrary, a database-driven website application intended to facilitate digital library collections and services.

This manual is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This manual is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this manual if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

For more information about this MyLibrary and this manual, see: http://dewey.library.nd.edu/mylibrary/ .


Table of Contents

I. Contributors
1. Contributors to MyLibrary Manual
Bios
Alison Aldrich
Vishwam Annam
Marty Courtois
Nora Dimmock
Robert Fox
Terry Huttenlock
Megan Johnson
Leslie Johnston
Peter Karman
Hal P. Kirkwood Jr.
Tom Lehman
Shelley McKibbon
Eric Lease Morgan
Keith Morgan
Terry Nikkel
Tod Olson
Brenda Reeb
Michael Yunkin
II. Foreword
2. Foreword to Designing, Implementing, and Maintaining Digital Library Services and Collections with MyLibrary
Who should read this manual and why
Implementing digital libraries
MyLibrary is open source software
III. Information architecture
3. First Principles of Information Architecture: "On your Mark. Get set. Go!" not "Fire, and then Aim."
Introduction
A definition
Users
Context
Content
Summary
4. Facets and Terms in MyLibrary
Introduction
Background
Facets and Terms in MyLibrary
Creating Facets and Terms for MyLibrary
Conclusion
IV. Content standards
5. The Importance of Content Standards in Digital Libraries
Metadata for Digital Objects
Metadata Best Practices: Encoding Rules and Controlled Vocabularies
Digital Media File Formats
Interoperability and Aggregation
Professional Organizations and Authoritative Sites on Digital Collection Best Practices
V. User-centered design
6. Usability Testing: a Key to User-centered Designs
Bibliography
7. Surveys
Intro
Why do a survey?
Surveys compared to focus group interviews
Steps in Survey Design
Articulate survey goals
Decide who to survey
Sample selection:
Sample size:
Methods for Administering Surveys
Developing Survey Questions
General guidelines
Types of questions:
A list of categories:
Rating:
Agreement:
Issues related to survey question:
Pretest the survey
Conducting the survey
Analyzing survey results
References:
8. Focus Group Interviews
What is a Focus Group?
Why are They Helpful?
How to Conduct a Focus Group
Planning the Session
Sources and Helpful Web Sites
9. Attracting Users
Introduction
Incentives on the cheap
Locating willing participants
Conclusion
10. Card Sorting
Introduction
Description
Methodology
Analysis
11. Paper Prototyping
Introduction
Test Methodology
Prototype Design
Test Protocol
Presenting Results
References
12. Low-cost Recording of Usability Tests
HyperCam
Configuring HyperCam
Screen Area
Hot Keys
AVI File
Sound
Other Options
Other Settings
Color Mode
Hardware Acceleration
About Microphones
Use a cheap microphone
Adjust the Recording Volume
Using HyperCam
Playback
Analyzing Results
References
13. Communicating Usability Results
Introduction
Findings: observations, opinions, design recommendations
Verbal reports
Written reports
Video
Educating staff about usability
Instructional material for usability
Conclusion
14. Case Studies
Purdue University Libraries
Preliminary Research
Online Survey
Task-oriented Testing
Findings
Communicating with the webmasters
Underlying Infrastructure
Prototypes
Final Redesign
University of Virginia Library
A culture of assessment
Developing usability testing processes
2005 Review of Usability Procedures
MyLibrary and Campus Portal: a Case Study
Abstract
Introduction and Background:
Selecting Participants
The Script
Conducting the Usability Tests
Results summary
Major Findings and Recommendations
Conclusion
VI. Underlying technologies
15. What is XML, and Why Should I Care?
What is XML?
A descriptive markup language
Structure in XML: elements and attributes
Closing tags required: making structure explicit
Entity References
XML declarations
Processing instructions
Comments
CDATA sections
Well-formed documents
XML vocabularies: schemas, namespaces, and validation
Advantages of XML
Companion technologies
Why should I care?
Examples of XML-based standards
Summary
Bibliography
16. What are Relational Databases, and Why Should I Care?
What are relational databases, and why should I care?
What is a database?
Types of databases
Relational databases
Relational Database Design
What is SQL?
Conclusion
17. What are Indexers and Why Should I Care?
Introduction
Some Definitions
Database and Index: Working Together
Overview
Features
Summary
Methodologies
What's in a word?
To stem or not to stem
Hide and seek
Feedback
Conclusion
VII. Implementation and Maintenance
18. Implementation and Maintenance
Assemble a team of people to do the work
Give the team the necessary resources to accomplish the job
Answer questions regarding information architecture
Install, configure, and fill MyLibrary
Create interfaces, and do usability testing
Maintain content
Evaluate and repeat
VIII. MyLibrary Tutorial
19. MyLibrary Tutorial
Initialization
Configuration
Facets
Terms
Librarians
Location types
Resources
Terms and resources revisited
Implementing search
MyLibrary and OAI
Summary
IX. Perl API
20. MyLibrary::Core
NAME
SYNOPSIS
DESCRIPTION
21. MyLibrary::DB
NAME
SYNOPSIS
DESCRIPTION
FUNCTIONS
dbh()
22. MyLibrary::Facet
NAME
SYNOPSIS
DESCRIPTION
METHODS
new()
facet_id()
facet_name()
facet_note()
delete_facet_note()
commit()
delete()
get_facets()
related_terms()
23. MyLibrary::Term
NAME
SYNOPSIS
DESCRIPTION
METHODS
new()
term_id()
term_name()
term_note()
delete_term_note()
facet_id()
commit()
delete()
get_terms()
related_resources()
suggested_resources()
librarians()
sort()
overlap()
distinct_terms()
24. MyLibrary::Resource
NAME
SYNOPSIS
DESCRIPTION
METHODS
new()
name()
note()
access_note()
coverage_info()
full_text()
reference_linking()
lcd()
fkey()
qsearch_prefix() and qsearch_suffix()
date()
id()
commit()
delete_[attribute_name]()
delete()
get_resources()
lcd_resources()
qsearch_redirect()
get_fkey()
test_relation()
related_terms()
proxied()
creator()
publisher()
contributor()
coverage()
rights()
language()
source()
relation()
add_location()
delete_location()
resource_locations()
modify_location()
get_location()
25. MyLibrary::Resource::Location
NAME
SYNOPSIS
DESCRIPTION
METHODS
new()
commit()
id()
location()
location_note()
resource_location_type()
resource_id()
get_locations()
id_list()
delete()
location_type()
26. MyLibrary::Resource::Location::Type
NAME
SYNOPSIS
DESCRIPTION
METHODS
new()
name()
description()
location_type_id()
commit()
delete()
all_types()
27. MyLibrary::Librarian
NAME
SYNOPSIS
DESCRIPTION
METHODS
new()
id()
name()
telephone()
email()
url()
term_ids()
commit()
delete()
get_librarians()
ACKNOWLEDGEMENTS
X. Appendices
28. Pioneering Portals: A History Of MyLibrary@NCState
Introduction
The Emergence Of The Gateway
The Challenge of the Portal
Genesis
Determining Relevance
Ramifications
System Components
Policy, Content, and Technology
Open Source
Conclusion
Author's Note:
A. GNU General Public License
Preamble
GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
NO WARRANTY

List of Tables

1.1. Contributors to MyLibrary Manual
17.1. Feature Summary