数据库代写|BT2102 Assignment 1 : A Library System (ALS)

这是一个新加坡的数据库设计assignment代写

NARRATIVE

A library system (ALS) is required to keep records of books and provide services for library members to borrow, return, and reserve books. The library is not a typical library that you may be aware of. It only has 50 books available for loan. It intends to increase the number of books for circulation in twelve months’ time, but you are told this is not a concern for this project.

To facilitate the construction of ALS, the following functions have been gathered from the library administrators:

1. Membership Creation

  • Tobe able to use the library facilities (such as borrowing or reserving books), an individual must become a library member.
  • Amember can borrow (i.e., number of books borrowable) a maximum of 2 books at any
  • Themembership id is assigned when a membership is
  • Members are distinguished by membership id and not by name i.e., two member records with the same name“Tan Jia Yu” are considered distinct if the membership ids are different, and two member records are the same even with different member names if the membership ids are the
  • Thedatabase cannot have two member records with the same membership

 

2. Membership Deletion

  • Anindividual membership with the library can be terminated at any
  • Whenthis happens, the membership record is
  • Allbooks loaned to members must be returned prior to the
  • Alloutstanding fines must be paid prior to the
  • Allreservations requested by members will be

 

3. Membership Update

  • Membershiprecord details can be updated at any
  • Informationthat can be updated include member’s name, faculty, phone number, and email
  • Membershipid, the number of books borrowable, and the number of books reservable cannot be

 

4. Book Acquisition

  • Libraryacquires new books for use by library
  • Eachbook has the following details: accession number (used to identify an instance of book), title, authors (there can be multiple authors for a book), isbn, publisher, and publication
  • Allbooks have unique accession
  • Booksmay have the same isbn but not the same accession number since there can be multiple copies of the same text.

 

5. Book Withdrawal

  • Librarybooks that are outdated will be withdrawn from
  • Thebook record is deleted from the

 

  • Onlybooks that are currently not borrowed can be withdrawn from
  • Anybook on reservation can be withdrawn after the book has been removed from all

 

6. Book Borrowing

  • Abook can be borrowed if it is not on reservation or already on loan to another
  • Eachbook loan is valid for 2  The due date is therefore a date 14 days after the borrow date (or loan date). When the 14 days are up, the book on loan must be returned. There is no renewal service.
  • Amember can borrow a book if he/she does not have an outstanding fine (i.e., the fine has not been paid).
  • Informationcaptured for a book loan includes accession number, borrow date (taken from the system), due date (a derived attribute), and membership

 

7. Book Returning

  • Abook on loan must be returned to the library on the due
  • Amember has a fine when a book is returned later than the due  A penalty of $1 per book per day is imposed as a fine to the member.
  • Thefine amount is cumulative if more than one book is returned
  • Abook returned can be borrowed by the same or another
  • Informationcaptured for a book return includes accession number and return

 

8. Book Reservation

  • Ifa book is currently not available (because it is on loan to a member), a member can request for the book to be reserved.
  • When a reserved book becomes available (because it has been returned), it can be loaned only to the memberwho reserved it. When the reservation is fulfilled (i.e., the book is loaned to the member who reserved it), the reservation is
  • Amember can only reserve a book if he/she does not have an outstanding
  • Amember can reserve (i.e., number of books reservable) a maximum of 2 books at any
  • Informationcaptured for a book reservation includes accession number, reserve date, and membership

 

9. Reservation Cancellation

  • Areservation on a book on loan can be cancelled at any time before the book is available for
  • Whenit is cancelled, the reservation record is
  • Informationcaptured for cancelling a book reservation includes accession number and membership

 

10. Book Search

  • Amember can perform a basic search on the collection of  No sophistication on the search is required.
  • Searchcan be done by specifying ONE word in the title, authors, isbn, publisher, publication year
  • A searchable word is a single distinct element of writing e.g., “man” is a word but “man” in “batman” is not aword; however, “batman” is a word.
  • The search field will only accept one word for each search and on any of the book attributes e.g., a search forword like “Batman” on title, “2011” on publication year, “Isaac” on author, etc. It does not take in more than one word for any search field/attribute.
  • The search results will display information on the book including accession number, title, authors, isbn,publisher, and publication

 

11. Fine Payment

  • Finesmust be completely  No partial payment is allowed. For example, if the fine amount is $4, only $4 payment is allowed; any payment less than or more than $4 will be rejected.
  • Informationcaptured for fine payment includes accession number, member id, date,
  • Thisfunction does not facilitate the actual collection of the  It merely records the payment amount, date and indicate the fine has been fully paid e.g., update the fine amount to 0.
  • Nofurther action is required after the fine has been

 

12. Display books on loan

  • Thisfunction displays all the books currently on loan to
  • Theinformation on the books displayed include accession number, title, authors, isbn, publisher, and publication

 

13. Display books on reservation

  • Thisfunction displays all books on reservation to
  • Theinformation on the reservation displayed include accession number, title, membership id,

 

14. Display members who have outstanding fines

  • Thisfunction displays all members who have outstanding
  • Theinformation on the members displayed include membership id, name, faculty, phone number, and email

 

15. Display the books on loan to a member given the membership id

  • Thisfunction displays all the books a member identified by the membership id has
  • Theinformation on the books displayed include accession number, title, authors, isbn, publisher, and publication

 

ONLY MySQL database will be used to store all information on books, members, loans (book borrowing and returning), reservations, fines, and payments on fines.

WHAT YOU ARE REQUIRED TO DO?

  1. Produce a Powerpoint presentation on the development of a conceptual data model andlogical data model for the relational database based on the above Narrative. The relational database will be implemented on a MySQL database (Do not use SQLite).

To produce the conceptual data model, a summary of the steps is given below:

  1. Identifyentities, their associated attributes, and primary key attribute(s).
  2. Identifythe relationships between entities and the associated relationship attributes and cardinality (including multiplicity and participation constraints).
  3. Producean Entity-Relationship Diagram depicting the conceptual data
  4. Transformthe Entity-Relationship Diagram into relational schemas (i.e., tables).
  5. Refinethe relational schemas by combining schemas and normalize the tables where necessary to produce the final logical data model.
  1. Implementthe relational database on MySQL (using the MySQL Workbench) based on the final logical data model:
    1. ProduceSQL scripts to create tables and specify all essential constraints via MySQL
    2. Aninitial set of 50 books together with their attributes are given in the txt file.
    3. Aninitial set of 9 members together with their attributes are given in the txt file.
    4. Initialize the database with these 50 books and 9 members i.e., there will be 50 books and 9members inserted into the Book and LibMem tables (You may use MySQL workbench to directly insert these records).