代做FINT2100、代写Java/Python程序设计
FINT2100 Computer Programming and Application Development
(2023-2024 Semester 2)
Programming Project
Deadline: (Fri) 26 Apr 2024 (11:59pm)
(Upload all the Java source code files and test plan to Moodle by the deadline)
Project
Design and implement a menu-driven Library Management System.
Objective
Develop a Library Management System that allows librarians to manage books, readers,
and borrowing/returning operations efficiently through a console-based interface. The
system should provide functionality for adding and removing books, registering new
readers, and borrowing and returning books.
Features
1. Book Management
• Add new books to the library with details such as title, author, ISBN,
publication year, and availability status.
• Remove books from the library.
• Update book information.
• Display all books’ information.
• Search for a book by its ISBN and display the book's details if found.
2. Readers Management
• Add a new reader to the library by providing the reader's details such
as name, contact information, and a unique reader ID.
• Remove a reader from the library using their reader ID.
• Display the list of all registered readers.
• Search for a reader by their ID and display the reader's details if found.
3. Borrowing and Returning
• Allow a reader to borrow a book by providing their reader ID and the
book's ISBN.
• Validate the reader and book existence in the library.
• Check the availability of the book before allowing borrowing.
• Mark the book as borrowed and associate it with the reader if available.
• Allow a reader to return a borrowed book by providing their reader ID
and the book's ISBN.
• Update the book's availability status and remove the association with
the reader upon return.
Console-based User Interface
1. Main Menu
• Display options for book management, reader management,
borrowing and returning, and exiting the system.
• Prompt the user to enter their choice and navigate to the
corresponding submenu or perform the selected action.
2. Book Management
• Add a new book to the library by entering the book's details (title,
author, ISBN, publication year).
• Remove a book from the library by providing the book's ISBN.
• Display the list of all books in the library.
• Search for a book by its ISBN and display the book's details if found.
3. Reader Management
• Add a new reader to the library by entering the reader's details (name,
contact information, reader ID).
• Remove a reader from the library by providing the reader's ID.
• Display the list of all registered readers.
• Search for a reader by their ID and display the reader's details if found.
4. Borrowing and Returning
• Allow a reader to borrow a book by entering the reader's ID and the
book's ISBN.
 Check if the reader and book exist in the library.
 Check if the book is available for borrowing.
 If the book is available, mark it as borrowed and associate it
with the reader.
 Display a success message or appropriate error messages for
invalid input or unavailable books.
• Allow a reader to return a borrowed book by entering the reader's ID
and the book's ISBN.
 Check if the reader and book exist in the library.
 If the book is borrowed by the reader, mark it as returned
and update its availability.
 Display a success message or appropriate error messages for
invalid input.
The menu should be displayed after each operation, allowing the librarian to perform
multiple actions without restarting the program. The program should exit when the
librarian chooses the "Exit" option from the main menu.
Technical Requirements
1. Use Java as the programming language.
2. Implement a console-based user interface for interacting with the Library
Management System.
3. Use appropriate data structures like arrays, to store book and reader
information.
4. Implement unit tests to verify the functionality of critical components.
5. Follow coding best practices, including proper naming conventions, code
comments, and modular design.
Project Deliverables
1. Java source code files organized in a structured manner.
2. Test cases and test data to demonstrate the functionality of the system.
3. Documentation explaining the system design in terms of the class structure,
methods, and key attributes.
Grading Criteria
• Correct implementation of the system functions
• User-friendly design of the system
• Good programming styles
• Clear and detailed documentation and testing

热门主题

课程名

socs0030 data7201 data2x01 mn-3507 mat246h1 ib2d90 ib3j80 acc207 comp90007 compx518-24a fit1050 info1111 acct2201 buad801 compsci369 cse 332s info1110 math1033 scie1000 eeee2057 math4063 cmt219 econ5074 fit3094 finm081 econ2005 cpt202 ec333 econ0001 eng5009 csse2310/csse7231 cpt204 elec4630 dts104tc ma117 comp2017 640481 csit128 eco000109m finc5090 ggr202h5f nbs8295 4ssmn902 chc6171 dsa1002 ebu6304 csci-ua.202 ma416 mec206 comp1021 iom209 com6511 cpt206 bism7202 cpt106 ecom209 comp1212 idepg001 math1062 mn-3526 fnce3000 fmhu5002 psyc10003 fina2222 be631-6-sp/1 finc2011 37989 5aaob204 citx1401 econ0028 bsan3204 comp9123 cmt218 itp122 qbus6820 ecmt1020 ecmt2150 bus0117 soft3202/comp9202 basc0057 mecm30013 aem4060 acb1120 comp2123 econ2151 ecmt6006 inmr77 com 5140 ocmp5328 comp1039 had7002h cmt309 asb-3715 elec373 cpt204-2324 be631-6-sp mast10007 econ3016 comp30023 buss6002 comp4403 finm1416 csc-30002 6qqmn971 fin668 mnfg309 inft2031 cits1402 comp2011 eecs 3221 ebu4201 ct60a9600 com336 8pro102 comp8410 comp3425 econ7300 comp222 finm8007 comp2006 comp26020 eeen3007j cis432 comp1721 csci251 comp5125m com398sust finm7405 econ7021 fin600 infs4205/7205 mktg2510- 32022 mth6158 comp328 finn41615 2024 mec302 mgmt3004 mgt7158 com160 as.640.440 f27sb rv32i eecs 113 comp1117b cs 412 comp 315 ecs 116 fit5046 comp30024 acs341 econ1020 isys3014 acc408 comp1047 csc 256 cs 6347 comp5349 ecx2953/ecx5953 bios706 msin0041 econ339 finm7008 comp34212 csmde21 estr2520 comp285/comp220 mds5130/iba6205 finc6010 is3s665 busi2194 125.785 comp3310 mth6150 comp30027 busi2211 bff2401 fnce90046 visu2001 mang6554 finc6001 125785 data423-24s1 engi 1331 fint2100 comp20005 eec286 (520|600).666 cs 61b can202 mast20029 info20003 stat512 econ3208 cmpsc311 engg1340 ecmt1010 fit5216 basc0003
联系我们
EMail: 99515681@qq.com
QQ: 99515681
留学生作业帮-留学生的知心伴侣!
工作时间:08:00-21:00
python代写
微信客服:codinghelp
站长地图