Presentation is loading. Please wait.

Presentation is loading. Please wait.

CSCI3170 Introduction to Database Systems Tutorial 3 – Project Specification By Kester Lee 1.

Similar presentations


Presentation on theme: "CSCI3170 Introduction to Database Systems Tutorial 3 – Project Specification By Kester Lee 1."— Presentation transcript:

1 CSCI3170 Introduction to Database Systems Tutorial 3 – Project Specification By Kester Lee 1

2 GENERAL INFORMATION An overview of the course project

3 Introduction Library Inquiry System  Command line interface (in JAVA)  Database Management System (Oracle) Platform  CSE Linux machine With JAVA JDK 7.0  Oracle Database For storing the data Tutorials will be given on Linux, JAVA and Oracle

4 Accounts The following accounts will be provided AccountUsage CSE Unix account (For non-CSE students) Access the Linux machines Connect to the CSE VPN Oracle account (For each student) Connect to the database

5 Grouping – Each group should have three members – If you want to form a one-person group or a two- person-group, please send an to the tutor – You will be randomly assigned to a group if you are not in a group after the registration period

6 Milestones PhaseDeadlineTasks Group Registration 6/2/2015 Form a group Phase 1 13/3/2015 Draw an ER-diagram Translate into a relation schema Phase 2 10/4/2015 Write a JAVA application Write a read me file DEMO TBA Demonstrate your works * The deadlines are subjected to change

7 Data Specification The data are in four categories  Categories  Library users  Books  Checked-out records They are the format of the data files only – Not meant to be the tables in the final schema 7

8 Data Specification User categories – Category ID: A unique identifier for a category – Max Books:The maximum number of books that can be borrowed by the library user in the corresponding category. – Loan Period: The number of days that a user can borrow a book in the corresponding category. 8

9 Data Specification Library users – User ID:A unique identifier of a user (like student id in CUHK library system) – Name:The name of a user – Address:The address of a user – Category ID:It indicates which category the library user belongs to.

10 Data Specification Books – Call number: It is used for the library users to search for the book. – Number of copies: The number of identical copies of a book – Title:The title of a book – Author(s):Author name(s) of the book concatenated as a string with comma character as the delimiter. – Date of publication:The date that a book is published

11 Data Specification System – All numerical values are less the 2 32 – The system is case sensitive – All dates is expressed as DD/MM/YYYY and have the same time zone as Hong Kong. – Your program may assume that any value entered into any input field is correct in format only. – Your program may assume that any data file inputted into it doesn’t have duplicated row and is correct in format and content.

12 Assumptions and Regulations Categories – Each category has a unique category id and it can be used to identify a category. – Some library users may have the same maximum loan period or number of book that can be borrowed. Library Users – Each library user has a unique user id and it can be used to identify a library user. – Some library users may have the same name or the same address. – A user can only belong to one user category 12

13 Assumptions and Regulations Books – Each book has a unique call number and it can be used to identify a book. – Some books may have the same title. – A book copy refers to a physically existing book in the library. – Each book copy has a unique pair of call number & copy number and they can be used jointly to identify a book copy. – The book copy has a copy number begins with 1. – Each book must have at least one author. – An author can be uniquely identified by his/her name. – An author may write more than one book.

14 Assumptions and Regulations Checked-out records – Each check-out record has a unique set of {Call number, Copy number, User ID and Check-out date} and this set of attributes can be used to identify a check-out record. – Some library users may never check out any book copies. – Some book copies may have never been checked out. – A user may borrow same book copy for more than 1 time. – The return date of a book copy is NULL if the book copy is not returned. 14

15 PROJECT PHASE 1 ER-diagram and relation schema

16 Workflow STEP 1: Read Sections 3 and 4 of the specification STEP 2: Draw the ER-diagram accordingly STEP 3: Transform into a relation schema STEP 4: Remove any redundancy in the schema

17 Remarks Four input files does not mean that there are four entities in the ER-diagram You may need to add extra attributes or transform the existing attributes The relation schema should clearly show the key relationships The relation schema should not consist of redundant information

18 PROJECT PHASE 2: JAVA APPLICATION Requirements for the JAVA application

19 Workflow STEP 1: Read Section 5 of the specification STEP 2: Write the JAVA application STEP 3: Test with the provided data set STEP 4: Test with other data sets

20 System Functions You have to implement three set of functions  Functions for administrator  Functions for librarian  Functions for library director You need to implement all functions in a command line program 20

21 System Functions Functions for administrator – Create table schemas in the database – Delete table schemas in the database – Load data into the database Your system should read data files from a user defined directory and insert data in those data files into the database Please make sure that it can read the sample data provided – Show the information of the database List the existing tables and the numbers of records 21

22 System Functions Functions for librarian – Search for books (only one method per query) By call number (exact matching) By title (partial matching) By author (partial matching) – Output should include Call number Title Author(s) Number of available copies – The results of the query should be sorted in ascending order of call number

23 System Functions Functions for librarian – Show all check-out records of a library user By user ID (exact matching) – Output should include Call number Copy number Title Author(s) Check out date The book copy of the corresponding check-out record is returned or not. – The check-out records should be sorted in descending order of check-out date 23

24 System Functions Functions for library director – Show total number of book checked-out within a period: The library director enters the start date and end date The program will perform the query and return the total number of book checked-out within the inputted period inclusively. – Show the N books that are most often to be overdue: The library director enters a number N The program return the N books that are most often to be over- due in terms of call number, title and total number of over-due. The books should be sorted in descending order of number of over-due as the table below. For the sake of simplicity, the check-out record with a null return date is ignored 24

25 Q&A 25


Download ppt "CSCI3170 Introduction to Database Systems Tutorial 3 – Project Specification By Kester Lee 1."

Similar presentations


Ads by Google