Database Implementation Report
-
Upload
jennifer-n-wiley -
Category
Education
-
view
599 -
download
0
Transcript of Database Implementation Report
Special Collections Processing DatabaseJennifer Wiley
IST 659Final Project Implementation Report
5/1/12
1
Table of Contents
Project Summary..............................................................................................................................3
Entities and Attributes.....................................................................................................................4
ERD..................................................................................................................................................7
Infrastructure....................................................................................................................................8
SQL
Create Tables........................................................................................................................8
Sample Data.......................................................................................................................10
Queries...........................................................................................................................................12
Interfaces
Forms.................................................................................................................................15
Reports...............................................................................................................................18
Improvements................................................................................................................................21
2
II. Project Summary
Almost every special collections library (a library that acts in many ways as an archive
repository) has a substantial backlog of collections yet to be processed. Due to the lack of
resources from money to time to staff, these unprocessed collections leave researchers in the
dark of what the library truly has to offer, going against the most basic business rule of all
libraries to make materials accessible for the public. Communication problems worsen the issue,
leaving donors (who are most often the source of these libraries’ collections) demanding
information about the status of their collection and staff members unaware of that status. To
make issues worse, researches (library users) may miss out on collections that could be of great
value to them if they are not aware that the library is in possession of such collections.
This project will build a database that strives to alleviate this lack of communication
by maintaining detailed data about the donor, collection, staff, and progress of processing.
By keeping track of the various parties, all members will be able to quickly and efficiently
determine whom to contact when questions or problems arise. By tracking the process, donors
and researchers can be provided with an expected date of completion while the library staff
can easily share with one another what has been done and what still needs to be done. Having
detailed information about the contents of the collection keeps all valuable information in a
single location that the entire staff can have quick access to.
3
III. Entities and Attributes
1. Donor Entity
Field Name ExplanationPrimary Key DID Donor ID: unique identifier for each individual donor.
A donor is the individual or organization who donates a collection to the library
Other Attributes DFName Donor’s first name (Required) DLName Donor’s last name (Required) DEmail Donor’s email address (Required) DPhone# Donor’s phone number (Required) DStreet Donor’s physical street address (Required) DState Donor’s physical address - state (Required)
DZip Donor’s physical address - zip code (Required)
2. Staff Entity
Field Name ExplanationPrimary Key SID Staff ID: unique identifier for each individual member
of staffOther Attributes SFName Staff member’s first name (Required) SLName Staff member’s last name (Required) SEmail Staff member’s work email address (Required) SPhone# Staff member’s work phone number (Required) STitle Staff member’s work title (Required) SSDate Staff member’s start date (Required) SEDate Staff member’s end date (Optional)
3. Assignment Entity
Field Name ExplanationPrimary Key AID Assignment ID: unique identifier for each individual
assignment record.Foreign Key 1 SID Staff IDForeign Key 2 CID Collection IDOther Attributes ASDate Assignment record’s start date (Required) AEDate Assignment record’s end date (Optional)
4
4. Collection Entity
Field Name ExplanationPrimary Key CID Collection ID: unique identifier for each
individual collection. A collection is a related group of materials donated by the same donor.
Foreign Key DID Donor IDOther Attributes
CName Collection’s name (Required)
Accession# Collection’s accession number (Required). Individual number assigned to a collection upon acquisition documenting the donor, year, and collection. Used for identification and retrieval.
CDesc Description (Required). A quick description of the collection as a whole.
Location (Required). Physical place where the collection is stored.
ExpectedCompletionDate (Optional). Estimated date of completion based on how much of the collection has been processed and knowledge from experience of the staff of how long each step should take.
Appraisal (Optional). The approximate value of the collection as determined by a professional with expertise in such areas.
5
5. Process Entity
Field Name ExplanationPrimary Key PID Process step IDForeign Key1 CID Collection ID
Foreign Key2 SID Staff ID
Other Attributes PType Process type (Required). Step in the process in the collection is on. Types are limited to Accession, Survey, Arrangement, Process, Box, and Digitization. No other inputs will be allowedAccession: act of transferring legal title and physically bringing a collection into a library. Establishes legal, physical, and intellectual control over the collection for the library.Survey: quick overview of the collection to get the general idea of what it contains.Arrangement: separating individual items into series (categories) and place the series in the order you wish to present them in the finalized collection.Process: within the set arrangement, processing is placing items into archival folders and labeling appropriately with collection name, series name, subseries (if it applies), and dates of items within a folder.Box: within the set arrangement, boxing is organizing folders within boxes and labeling boxes appropriately. A list of what folders go into what boxes must be kept.Digitization: if resources permit, the library staff may choose to make digital copies of items within the collection.
PSDate Process start date (Required). Date at which the individual process step begins.
PEDate Process end date (Optional).
6
ERD
Business Rules Not Represented Above
1. Donors may have access to only their donor record.
2. Donors may have access to only their collection record.
3. Researchers (library users) may have access to collection names, descriptions, accession
numbers, and expected dates of completion.
4. Staff may have access to all data.
5. Process types are not necessarily completed chronologically.
7
IV. Database System Infrastructure
This is a simple client-server model infrastructure. SQL Server 2008 was used for the database engine and Access was used for designing the interface. V. SQL
Create Tables
CREATE TABLE Donor(
DID INTEGER NOT NULL,DFName VARCHAR(40) NOT NULL,DLName VARCHAR(40) NOT NULL,DEmail VARCHAR(30) NOT NULL,DPhone# VARCHAR(20) NOT NULL,DStreet VARCHAR(30) NOT NULL,DState VARCHAR(20) NOT NULL,DZip VARCHAR(10) NOT NULL,
CONSTRAINT Donor_PK PRIMARY KEY (DID)); CREATE TABLE Staff(
SID INTEGER NOT NULL,SFName VARCHAR(40) NOT NULL,SLName VARCHAR(40) NOT NULL,SEmail VARCHAR(30) NOT NULL,SPhone# VARCHAR(20) NOT NULL,STitle VARCHAR(40) NOT NULL,SSDate DATETIME default getdate () NOT NULL,SEDate DATETIME default getdate (),
CONSTRAINT Staff_PK PRIMARY KEY (SID));
8
CREATE TABLE Collection(
CID INTEGER NOT NULL,DID INTEGER NOT NULL,DonationDate DATETIME default getdate () NOT NULL,CName VARCHAR(100) NOT NULL,Accession# VARCHAR(50) NOT NULL,CDesc VARCHAR(100) NOT NULL,Location VARCHAR(40) NOT NULL,ExpectedCompletionDate VARCHAR(30),--Since this date is an estimation, it will not be automatically generated.Appraisal VARCHAR(40),
CONSTRAINT Collection_PK PRIMARY KEY (CID),CONSTRAINT Collection_FK FOREIGN KEY (DID) references Donor(DID)); CREATE TABLE Assignment(
AID INTEGER NOT NULL,SID INTEGER NOT NULL,CID INTEGER NOT NULL,ASDate DATETIME default getdate () NOT NULL,AEDate DATETIME default getdate (),
CONSTRAINT Assignment_PK PRIMARY KEY (AID),CONSTRAINT Assignment_FK1 FOREIGN KEY (SID) references Staff(SID),CONSTRAINT Assignment_FK2 FOREIGN KEY (CID) references Collection(CID)); CREATE TABLE Process(
PID INTEGER NOT NULL,CID INTEGER NOT NULL,SID INTEGER NOT NULL,PType VARCHAR(40)NOT NULLcheck (PType IN ('Accession', 'Survey', 'Arrangement', 'Process', 'Box', 'Digitization')),
--process types are set to include "Accession", "Survey", "Arrangement", "Process", "Box, and "Digitization". No other input will be allowed
PSDate DATETIME default getdate () NOT NULL,PEDate DATETIME default getdate (),
CONSTRAINT Process_PK PRIMARY KEY (PID),CONSTRAINT Process_FK1 FOREIGN KEY (CID) references Collection(CID),CONSTRAINT Process_FK2 FOREIGN KEY (SID) references Staff(SID)---the Staff and Process tables are related so that documentation of who performed each step and how to contact them is maintained);
9
Sample Data INSERT into Donor values('1', 'John', 'Smith', '[email protected]', '5555550000', '111 Street Ave', 'Smalltown', 'New York'),('2', 'Jane', 'Thompson', '[email protected]', '5555551111', '345 Avenue Blvd', 'Largeville', 'Virginia'),('3', 'Teddy', 'Perkins', '[email protected]', '5555552222', '987 One Way St', 'Nowheresville', 'Ohio');
INSERT into Staff values('1', 'Eliza', 'Jenkins', '[email protected]', '5551111111', 'Head Archivist', '2009-09-01 00:00:00:000', NULL),('2', 'Terry', 'Simpson', '[email protected]', '5551112222', 'Assistant Archivist', '2010-04-01 00:00:00:000', '2011-05-31 00:00:00:000'),('3', 'Bob', 'Robert', '[email protected]', '5551112222', 'Assistant Archivist', '2011-06-01 00:00:00:000', NULL);
INSERT into Collection values('1', '1', '2011-01-18 00:00:00:000', 'The Smith WWII Papers', 'SM2011.01.01', 'WWII personal artifacts', 'E3', '2012-05-16', NULL),('2', '1', '2011-10-29 00:00:00:000', 'The Smith Family Papers', 'SM2011.01.02', 'Personal family artifacts of the Smith family', 'F5', NULL, NULL),('3', '2', '2011-05-23 00:00:00:000', 'The Thompson Collection', 'TH2011.02.01', 'Personal artifacts of Jane Thompson, author', 'B2', '2012-08-01', NULL),('4', '3', '2011-06-03 00:00:00:000', 'The Perkins Family Papers', 'PE2011.03.01', 'Personal family artifacts of the Perkins family', 'T4', '2012-12-15', NULL);
10
INSERT into Assignment values('1', '2', '1', '2011-01-20 00:00:00:000', NULL),('2', '2', '2', '2011-10-30 00:00:00:000', NULL),('3', '1', '2', '2011-10-30 00:00:00:000', NULL),('4', '1', '3', '2011-05-26 00:00:00:000', NULL),('5', '2', '4', '2011-06-03 00:00:00:000', NULL);
INSERT into Process values('1', '1', '2', 'Accession', '2011-01-20 00:00:00:000', '2011-01-30 00:00:00:000'),('2', '1', '2', 'Survey', '2011-01-31 00:00:00:000', '2011-02-15 00:00:00:000'),('3', '1', '1', 'Arrangement', '2011-03-01 00:00:00:000', '2011-10-13 00:00:00:000'),('4', '1', '2', 'Process', '2011-10-20 00:00:00:000', NULL),('5', '3', '2', 'Accession', '2011-10-30 00:00:00:000', '2011-11-17 00:00:00:000'),('6', '3', '1', 'Survey', '2011-11-23 00:00:00:000', '2012-01-05 00:00:00:000'),('7', '3', '1', 'Process', '2012-01-20 00:00:00:000', NULL),('8', '4', '1', 'Accession', '2012-03-12 00:00:00:000', NULL);
11
VI. Queries
What date will The Smith WWII Papers collection be complete? - a question requesting the expected date of completion could be asked by either a donor or a researcher with specific interest in the progress of a particular collection (could be asked of a staff member to perform the actual query from them to avoid the views created below)
What collections with information about WWII will be available by the end of the year? - a question requesting what collections pertaining to a certain topic are expected to be complete by a certain date could be asked by a researcher working on the subject with a deadline (could be asked of a staff member to perform the actual query from them to avoid the views created below)
What process steps have been completed for The Smith WWII Papers collection? - a question requesting the steps completed for a specific collection could be asked by a library staff member either responding to a question from a researcher or donor or one interested in picking up where other staff members have left off in the process. (could be asked of a staff member to perform the actual query from them to avoid the views created below)
12
How many collections have been donated by John Smith? - a question asking how many collections have been donated by one donor could be asked by either a donor trying to remember what repositories have their collections or a staff member surveying how many donors give repeatedly (could be asked of a staff member to perform the actual query from them to avoid the views created below)
How many collections is the head archivist working on? - a question requesting how many collections a specific member of staff is currently working on could be asked by a member of staff responsible for assigning new collections to staff members in order to ensure no one is being overworked.
13
To protect privacy, views can be created to limit access to both researchers and donors on different levels while leaving access open for the library staff Donors_V: view created to restrict access to donors so that they may only view information about their own donor record or collection record.
Collections_V: view created to restrict access to researchers so they may only see the collection ID, collection name, collections description, accession number, and expected completion date for collections meeting their queries
Additionally, a view can be created so that staff can quickly see who is working on each collection.StaffAssign_V
14
VII. Interfaces
Forms
Donor form with collections subform
15
Collections form with process subform
16
Staff form with assignment subform
17
Reports
Report for view: Donors_V
18
Report for view: Collections_V
19
Report for Staff Assignments
20
Improvements
There were three major flaws suggested in critiques during the demo that were fixed
1. A relationship was created between the Process and Staff entities so that each process
type within the collection could be tied to the person responsible for it and there contact
information.
2. A business rule not represented in the ERD was added explaining that process types are
not always performed chronologically.
3. A view and report were created for staff assignments.
Additionally fixed was a flaw in the relationship between Collections and Process in Access
which caused the form/subform not to work properly.
21