Question: For this assignment we are going to design a system to Manage loans from the local public library For this we will need the following
For this assignment we are going to design a system to Manage loans from the local
public library
For this we will need the following entities, plus collections for each of the
entities: Patrons, Books and Loans
The data for a Book will contain at least the following:
Author
Title
ISBN Number
Library ID number
Cost
Current Status In Out, Repair, Lost
You may add other data needed for your implementation as well as
you will need accessor and mutator functions for the data.
The data for a Patron will contain at least:
Name eg Fred Smith
ID number digits eg
Fine Balance
Current # of books out
You may add other data needed for your implementation as well as
you will need accessor and mutator functions for the data.
The data for a Loan The transaction entity will contain at least
the following:
Loan ID
Book ID
Patron ID
Due Date and Time
Current Status overdue normal
You may add other data needed for your implementation as well as
you will need accessor and mutator functions for the data.
For the collections of each of the Patrons and Books Classes identified above you
will need to include the ability to:
Add
Edit
delete
SearchFind based on appropriate criteria
Print a list of all entries in the collection
Print the details for a single entity do a find first
Other methods you may identify
For Loans you will need:
Check Out a book update book and patron info as well as add a loan
Check in a book check for fines and update patron and book info and delete loan
List all overdue
List all books for a particular patron
Update loan status based on system clock
ReCheck a book
Edit a loan
Report lost update book and charge patron book cost as well
Other methods you may identify
You will need to verify the following
Before borrowing a book, make sure Patron has no overdue books and that
total books out will be including new borrow
When checking a book in determine if fines are owed
Reporting a book as lost records the cost of the book to the patrons fine
balance
For Loans Add Borrow a book
Delete Return a book
Edit Recheck
Also will need a
PayFines in Patrons
Report Lost in Loans but will have to update books and patrons
Print a list of overdue books with patron info in loans but will have to update
books and patrons
You will need to provide an appropriate menu system that can be multilevel
if you like.
Do not attempt to provide card catalog services for allowing patrons to
search for books. You may assume each book has a unique acquisition
number, and you may use these numbers to refer to books borrowed and
returned.
You will need to load and store the data. This can be done automatically
when the program starts and ends. You should also want to store after an
add, delete or edit to make sure changes to the data are preserved.
You can assume the following
Loan period is days with an additional recheck of days recheck only
A max of books can be out to a single patron at a time
Fine rate is $ per day hour period
This assignment is a followon to Homework We will use the design in Homework as the starting point to implement the Library Management System using classes. Use of STL collections is allowed.
You will have a cpp and a h file for each of the classes, plus a cpp file for main. This is a minimum. If you choose to modularize more that is ok At a minimum this will create files
Then you will have a makefile to build your program so that is now a total of files
Then you need a wordpdf file as the report. you can read the expectations for the report in the rubric. That brings the total to files. these should all be zipped into a single file for submission. You will also turn in a modified version of your design from hw reflecting any significant changes from your original design. This makes the total files
Be sure your code has a header comment block with your name, course and assignment number. you should use your pseudocode from the design document as comments to guide your coding in each of the member functions.
for your zip file use your or initials plus hwzip ex dmkhwzip
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
