ILS 532: User Centered Database Design and Development

advertisement
ILS 532-01, Spring 2008
ILS 532: User Centered Database Design and Development
Instructor: Hak Joon Kim, Ph.D. E-mail: kimh1@southernct.edu
Class Hours: 6:15 - 9:15 pm, Thursday Class Room: EN B221
Office: BU417A Telephone: (203) 392-5764
Office Hours: Monday and Tuesday 2-4 PM and Thursday 5-6 PM or by an Appointment
Course Description
The database is now the underlying framework of the information system, and has fundamentally changed the way
many organizations including libraries operate. Database systems aid in systematic collection, update, retrieval, and
general management of information resources. In particular, the developments in this technology over the last years
have produced systems that are more powerful and more intuitive to use. Good databases are very practical things, but
their creation depends on understanding the important theoretical ideas and concepts. In particular, a sound conceptual
design is crucial to developing an effective database system – one that will meet the needs of current users and grow
with them into the future. Students who wish to become library information professionals need to understand the
context of database design. This course, which is intended as an introductory course in database design, will introduce
students to established theories and principles of database design. It will reinforce the theories and principles through
design and development activities conducted for a semester-long project.
Course Objectives
Upon completion of this course, students will be able to:
1
•
Describe the typical functions and components of a database system
•
Describe the main stages of the database application lifecycle
•
Explain the relational database model
•
Explain the Entity-Relationship model
•
Demonstrate knowledge of user-centric methodologies
•
Apply relational modeling in database design
ILS 532-01, Spring 2008
•
Demonstrate the knowledge of the Structured Query Language
•
Demonstrate the knowledge and skills of using MS Access as a DBMS
•
Design a relational database, basic applications, and user interfaces
•
Create a relational database system and conduct evaluation.
Course Grading
1. Database Design Team Project*: 400 pts. -- 40%
•
Conceptual Data Model: 100 pts. -- 10%
•
Logical Data Model: 150 pts. -- 15%
•
Completed Database System: 150 pts. -- 15%
2. Exams: 300 pts. -- 30%
•
Midterm Exam: 150 pts. -- 15%
•
Final Exam: 150 pts. -- 15%
3. Microsoft Access Individual Exercise: 200 pts. -- 20%
4. Class Attendance, Participation, and Contribution**: 100 pts. -- 10%
* Each team will be required to present one of the three components of the team project, which will be
randomly assigned by the instructor, to the class on its due date.
**If you are absent from a class, a 5 points penalty will be automatically given without regard to the reason of the
absence. Even though you attended all the classes, it does not guarantee full credit for Class
Attendance/Participation/Contribution. In order to get full credit, you must actively participate in class discussions and
contribute to the class.
Grading Scale
A = 1000-950 pts. A- = 949-900 pts. B+ = 899-867 pts. B = 866-834 pts. B- = 833-800 pts.
C+ = 799-767 pts. C = 766-734 pts. C- = 733-700 pts. D+ = 699-667 pts. D = 666-634 pts.
1
ILS 532-01, Spring 2008
Textbooks (Available from the university bookstore)
Thomas M. Connolly and Carolyn E. Begg (2005), Database Systems: A Practical Approach to
Design, Implementation and Management (4th Edition). New York: Addison Wesley. ISBN-10: 0321210255
Tentative Course Schedule*** and Readings
Class# Date Topics & Activities Readings
W 1 (01/24) Orientation to the Class, Introduction to Databases Connolly Ch. 1
W 2 (01/31) Database Environment & The Relational Model Connolly Ch. 2 & 3
W 3 (02/07) Database Planning, Design, and Administration Connolly Ch. 9
Fact-Finding Techniques Connolly Ch. 10
W 4 (02/14) Entity-Relationship Modeling Connolly Ch. 11
Enhanced Entity-Relationship Modeling Connolly Ch. 12
W 5 (02/21) Conceptual Database Design Connolly Ch. 15
W 6 (02/28) Normalization Connolly Ch. 13
W 7 (03/06) Midterm Exam
W 8 (03/13) Logical Database Design Connolly Ch. 16
W 9 (03/20) Spring Recess
W 10 (03/27) Physical Database Design Connolly Ch. 17
Monitoring and Tuning the Operational System Connolly Ch. 18
W 11 (04/03) Structured Query Language Connolly Ch. 5
W 12 (04/10) Structured Query Language & Query-By-Example Connolly Ch. 7
1
ILS 532-01, Spring 2008
W 13 (04/17) Wrap-Up (and/or Additional Selected Topics)
W 14 (04/24) Final Exam
***The following three parts sequence will be usually followed for most of the class meetings:
1. Class Lecture -- Selected Topics
2. MS Access Demo
3. Individual Exercise or Database Design Team Project
This course combines both theoretical concepts and practical topics into one class. Sometimes it may be difficult for
students to see the connection between these seemingly independent areas. In one part of class, for instance, you will
discuss the abstract idea of conceptual modeling, while in the other part you will learn about the practical skills of
using MS Access in a “hands-on” setting. However, as you learn more and more about theoretical database concepts
and practical skills, you will see the connection between the two subject areas and finally enjoy the course.
There will be two exams during the course of the semester as noted on the weekly class schedule. These exams test the
students’ understanding of database terms, concepts, methodologies, language, and conventions. While students will
primarily use MS Access as a DBMS for their individual exercises and the team project, it is important that students
are conversant in non-vendor specific database design concepts and standard relational database language SQL
(Structured Query Language).
Tentative Assignments Due Dates
W 6 (02/28) Microsoft Access Individual Exercise (200 pts.)
W 8 (03/13) Team Project: Conceptual Data Model (100 pts.)
W 10 (03/27) Team Project: Logical Data Model (150 pts.)
W 13 (04/20) Team Project: Completed Database System (150 pts.)
1
ILS 532-01, Spring 2008
Other Course Policies
E-mails: You must have a working e-mail address and keep the instructor appraised to that address. Send
an e-mail message introducing yourself to the instructor by this Saturday. It doesn't have to be long, but
you might want to share a bit of your background, describe your goals and aspirations, tell why you are
taking the course, and so forth.
Late Assignments: Any LATE assignments must either (a) be approved by the instructor at least 24 hours before they
are due, or (b) be accompanied by a doctor’s note; otherwise there will be a 20% penalty for turning in assignments
late.
Incompletes: A final grade of “I” or “Incomplete” will NOT be given except in extreme extenuating circumstances,
such as serious illness.
Students with Disabilities: If you need course adaptations or accommodations due to a disability, if you have
emergency medical information to share with me, or if you need special arrangements in case the building must be
evacuated, please make an appointment with me as soon as possible.
Academic Misconduct: This is a very serious issue, one that can affect your grade, your standing in the University, and
your future career. It is an issue that will only affect a small number of students. I apologize to the great majority of
students who maintain high standards of integrity and honesty in all their efforts for having to make this statement.
The School of Graduate Studies and the Department of Information and Library Science expects high standards of
ethical behavior on the part of all persons involved in research and other scholarly work. Faculty and students are
required to demonstrate honesty and integrity in all scholarly activity.
Students are reminded that areas of misconduct in scholarship include, but are not limited to, the following:
A. Falsification of data, which ranges from sheer fabrication through selective reporting, including the omission of
data.
B. Plagiarism, which involves taking and using as one's own the writing and/or ideas of another and ranges from
outright stealing to inadequate attribution.
1
ILS 532-01, Spring 2008
C. Violations of rules to protect patients, research subjects, and other persons and animals, which, while not fraudulent
in the traditional sense, are unethical and undermine the integrity of the academic process.
D. The use of commercial organizations or paid individuals to write all or part of the thesis.
Violations of the requirement for integrity of scholarship shall result in a failing grade . . . and dismissal from the
Graduate School. The highest level of integrity is expected in all work. Other examples of unethical behavior include
(but are not limited to):
- Cheating on exams
- Submitting the work of others as your own for papers, projects, and exercises
- Recycling work from other classes.
SCSU Weather Telephone Number: If it snowed heavily, the university may be closed. Don’t forget to call 392SNOW before you come to the school.
Microsoft Access Individual Exercise (200 points)
Using Microsoft Access 2007, implement a physical database design of the DreamHome case study described in
Figures 16.8 and 16.9 (Connolly and Begg, p. 487 and p. 489 respectively) and Appendix A (Connolly and Begg, pp.
1249-1254).
1. Each table should contain at least 10 different hypothetical records.
2. Each table should be fully self-documented (e.g., have clear “descriptions” for all fields).
3. Establish the relationships between the tables.
4. Enforce “referential integrity” on the relationships. You should also show the types (e.g., one-to-many) of the
relationships on the “Relationships” window.
5. Create the following queries (only every odd number, not all) required by the Branch user views, which are
listed in Appendix A: (a), (c), (e), (g), (i), (k), (m), (o), (q), and (s).
6. Create the following queries (only every even number, not all) required by the Staff user views, which are
1
ILS 532-01, Spring 2008
listed in Appendix A: (b), (d), (f), (h), (j), and (l).
To turn in your Microsoft Access Exercise file, you will need to save your file onto a properly labeled (your full name,
platform type, file name) CD and hand it to your instructor.
Database Design Team Project (Total 400 points)
An important part of the course is a semester-long database design team project. Together with two or three other
students in the class, you will work on a hypothetical database design project (see the case study below) throughout the
semester. Database design may be subjective and different designers may produce different, but equally valid,
interpretations. In addition, database design projects are often too large or complex to be done alone; hence, there is a
need for team members to share knowledge, skills, and experience to solve problems. Team work will help members
learn from each other. The team project that requires collaborative efforts accounts for 40% of your final grade as
follows:
•
Conceptual Data Model: 100 pts. -- 10%
•
Logical Data Model: 150 pts. -- 15%
•
Completed Database System: 150 pts. -- 15%
HappyFamily Video Rental – Hypothetical Case Study
I. Overview
This hypothetical case study describes a company called HappyFamily, which rents out videos to its members. The
first branch of HappyFamily was established in 1991 in New Haven but the company has now grown and has many
branches throughout the US. The company’s success is due to the first-class service it provides to its members and the
wide and varied stock of videos available for rent.
1
ILS 532-01, Spring 2008
HappyFamily currently has about 600 staff working in 40 branches. When a member of staff joins the company, the
HappyFamily staff registration form is used. HappyFamily currently has about 40,000 members. When a customer
joins, he or she is requested to complete the HappyFamily member registration form.
As HappyFamily has grown, so have the difficulties in managing the increasing amount of data used and generated by
the company. To ensure the continued success of the company, the Director of HappyFamily has urgently requested
that a database application be built to help solve the increasing problems of data management.
II. Data requirements
The data held on a branch of HappyFamily is the branch address made up of street, city, state, zip code, and the
telephone numbers. Each branch is given a branch number, which is unique throughout the company.
Each branch of HappyFamily has staff, which includes a Manager, one or more Supervisors, and a number of other
staff. The Manager is responsible for the day-to-day running of a given branch. Each branch has several Supervisors
and each Supervisor is responsible for supervising a group of staff. The data held on a member of staff is his or her
name, position, and salary. Each member of staff is given a staff number, which is unique throughout the company.
Each branch of HappyFamily is allocated a stock of videos. The data held on a video is the catalog number, video
number, title, category, daily rental rate, purchase price, status, and the names of the main actors, the characters played,
and the director. The catalog number uniquely identifies each video. In most cases, there are several copies of each
video at a branch, and the individual copies are identified using the video number. A video is given a category such as
Action, Adult, Children, Thriller, Horror, or Sci-Fi. The status indicates whether a specific copy of a video is available
for rent.
Before renting a video from the company, a customer must first register as a member of a local branch of
HappyFamily. The data held on a member is the first and last name, address, and the date that the member registered at
the branch. Each member is given a member number, which is unique across all branches and is used even when a
member chooses to rent videos at more than one branch. The name of the member of staff responsible for processing
the registration of a member at a branch is also noted.
Once registered, a member is free to rent videos. The data held on each video rented is the rental number, the member’s
full name and member number, the video number, title, and daily rental cost, and the dates the video is rented out and
1
ILS 532-01, Spring 2008
returned. The rental number is unique throughout the company.
III. Transaction requirements
Data entry
1. Enter the details of a new branch.
2. Enter the details of a new member of staff at a branch (such as an employee Tom Daniels at branch BOO1).
3. Enter the details for a newly released video (such as details of a video called Independence Day).
4. Enter the details of copies of a new video at a given branch (such as three copies of Independence Day at
branch BOO1).
5. Enter the details of a new member registering at a given branch (such as a member Bob Adams registering at
branch BOO2).
6. Enter the details of a rental agreement for a member renting a video (such as member Don Nelson renting
Tomorrow Never Dies on 02/25/02).
Data update/deletion
7. Update/delete the details of a branch.
8. Update/delete the details of a member of staff at a branch.
9. Update/delete the details of a given video.
10. Update/delete the details of a copy of a video.
11. Update/delete the details of a given member.
12. Update/delete the details of a given rental agreement for a member renting a video.
Data queries
The database should be capable of supporting the following sample queries:
1
ILS 532-01, Spring 2008
13. List the details of branches in a given city.
14. List the name, position, and salary of staff at a given branch, ordered by staff name.
15. List the name of each Manager at each branch, ordered by branch number.
16. List the title, category, and availability of all videos at a specified branch, ordered by category.
17. List the title, category, and availability of all videos for a given actor's name at a specified branch, ordered by
title.
18. List the title, category, and availability of all videos for a given director's name at a specified branch, ordered
by title.
19. List the details of all videos a specified member currently has on rent.
20. List the details of copies of a given video at a specified branch.
21.
List the titles of all videos in a specified category, ordered by title.
22.
List the total number of videos in each video category at each branch, ordered by branch number.
23.
List the total cost of the videos at all branches.
24.
List the total number of videos featuring each actor, ordered by actor name.
25.
List the total number of members at each branch who joined in 2006, ordered by branch number.
Each table should contain at least 10 different hypothetical records. Each table should be fully self-documented (e.g.,
have clear “descriptions” for all fields). Establish the relationships between the tables. Enforce “referential integrity”
on the relationships. You should also show the types (e.g., one-to-many) of the relationships on the “Relationships”
window.
To turn in your Completed Database System (MS Access file), you will need to save your file onto a properly labeled
(your team members’ full names, platform type, file name) CD and hand it to your instructor.
1
Download