Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
65 views

UCCS 1003 Programming Concepts and Design Programming Project (10%)

This document describes a programming assignment to create a library inventory management system with functionality for librarians and students. Librarians can add, display, check out, and check in books, periodicals, and DVDs. Students can search and view inventory items. Data like book titles and authors are stored in text files. The program must be menu-driven and include functions for each feature following best practices like pseudocode and documentation.

Uploaded by

funjoke88
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
65 views

UCCS 1003 Programming Concepts and Design Programming Project (10%)

This document describes a programming assignment to create a library inventory management system with functionality for librarians and students. Librarians can add, display, check out, and check in books, periodicals, and DVDs. Students can search and view inventory items. Data like book titles and authors are stored in text files. The program must be menu-driven and include functions for each feature following best practices like pseudocode and documentation.

Uploaded by

funjoke88
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 8

UCCS 1003

PROGRAMMING CONCEPTS AND DESIGN


PROGRAMMING PROJECT (10%)

The following elements of the C programming language will be required in the


implementation of this assignment:

• Built-in (primitive) data types

• Program control flows (e.g.: Selection, Repetition)

• Function

• File Input/Output

• Array (for strings)

Description of assignment:

Form a group of 2 to 3 students for this assignment. You need to divide your task equally for
each member. Marks will be allocated for the task you are assigned (Refer to marking scheme
for the project). Write a program that implements a simple Library Inventory Management
System for UTAR to help the Library staff to manage the operations in the library.

Functionalities:

There are two main modules in this system which are:

• Librarians module

• Students module

Each module has its own different functionalities as stated below:


Librarian Module:

Functionalities Descriptions

Log in To enable librarian to log in. All the username and


password of the librarian is stored in file called
“Librarian_ID.txt”. All the librarian must log in to the
system before perform any functionalities listed
below.

Add new items To let librarian to add new items to the library
collection which can be books, periodical and DVD?
• Add books Librarian needs to specify which one to add. Add
• Add periodical items to the respective files as below:

• Add DVD Book – “Items_Book.txt”


Periodical – “Items_Periodical.txt”
DVD – “Items_DVD.txt”

Display item To let librarian to display items in the library. They


can choose to display all items, books collections
• Display all item (Books, only, periodical only or DVD only. Librarian needs to
Periodical, DVD) choose one to display. Read from the respective files
• Display book collections to display the items as below:
only
• Display Periodical collection All – “Items_Book.txt”, Items_Periodical.txt” and
only Items_DVD.txt”.
Book – “Items_Book.txt”
• Display DVD only Periodical – “Items_Periodical.txt”
DVD – “Items_DVD.txt”

All display must be in a table format where there is a


header that contain all information of the items stored
such as Author, Title, Publication date, etc.
Check out item To enable the librarian to check out the items that is
borrowed by the students. They can choose to check
• Check out book out books, periodical and DVD. Librarian only needs
• Check out periodical to choose one to check out. To check out a book, just
change the status of the items from ON_SHELF to
• Check out DVD CHECK_OUT. Use the call number of the items to
find it in the text file. Display warning message if try
to check out an item that is already check out. Assume
there is no need to keep track of the due date. Read
and change the status of the items from the following
files to check out the following items:
Book – “Items_Book.txt”
Periodical – “Items_Periodical.txt”
DVD – “Items_DVD.txt”
Check in item To enable the librarian to check in the items that is
returned by the students. They can choose to check in
• Check in book books, periodical and DVD. Librarian only needs to
• Check in periodical choose one to check out. To check in a book, just
• Check in DVD change the status of the items from CHECK_OUT to
ON_SHELF. Use the call number of the items to find
it in the text file. Display warning message if try to
check in an item that is already on shelf. Assume there
is no need to keep track of the due date. Read and
change the status of the items from the following files
to check in the following items:
Book – “Items_Book.txt”
Periodical – “Items_Periodical.txt”
DVD – “Items_DVD.txt”

Student Module:

Functionalities Descriptions

Log in To enable librarian to log in. All the


username and password of the students is
stored in file called “Student_ID.txt”. All the
students must log in to the system before
perform any functionalities listed below.

Search items To enable students to search for the items


they want. They can choose to search from all
• Search all items items including books, peirodical and DVD
• Search books or they can choose only one of the items to
• Search periodical choose from. Read from respective files to
search the items as below:
• Search DVD
All – “Items_Book.txt”, Items_Periodical.txt”
and Items_DVD.txt”.
Book – “Items_Book.txt”
Periodical – “Items_Periodical.txt”
DVD – “Items_DVD.txt”

Display all information of the items if it is


found otherwise display a not found message.
You have to use Call Number Author/Artist
name or Title or ISBN/ISSN of the items as
search criteria where user can choose from
any of these four criteria during search.

Assumptions:

• No need to keep track of the due date.

• There is only one copy of the items in the library.

• Each item is assumed to be in CHECK IN status when it is added to the files.

Data Specification:

The following data are to be stored for each of the files below:

Items_Book.txt

• Call number (Format for book: start with ‘B’ and follow by 6 digits, e.g.: B123456)

• Author(s) (Maximum length = 128 characters)


• Publication date (Maximum length = 11 characters, format = mm/dd/yyyy)
• Title (Maximum length = 128 characters)
• Publisher location (Maximum length = 81 characters)
• Publisher name (Maximum length = 81 characters)
• ISBN (Format e.g.: 0-13-239300-X)
• State (ON_SHELF or CHECKED_OUT)

Items_Periodical.txt

• Call number (Format for Periodical: Start with ‘P’ and follow by 6 digits, e.g.:
P123456)
• Author(s) (Maximum length = 128 characters)
• Publication date (Maximum length = 11 characters, format: mm/dd/yyyy)
• Title (Maximum length = 128 characters)
• Periodical name (Maximum length = 128 characters)
• Page range (Maximum length = 16 characters, format: pp. xx - xx)
• ISSN(Format e.g.: 0378-5955)
• State (ON_SHELF or CHECKED_OUT)

Items_DVD.txt

• Call number ((Format for DVD: Start with ‘D’ and follow by 6 digits, e.g.: D123456)
• Artist(s) (Maximum length = 128 characters)
• Title (Maximum length = 128 characters)
• Label (Maximum length = 81 characters)
• Date (Maximum length = 11 characters, format: mm/dd/yyyy)
• State (ON_SHELF or CHECKED_OUT)

Librarian_ID.txt

• Username (Maximum length = 30 characters)

• Password(Maximum length = 30 characters)

Student_ID.txt

• Username (Maximum length = 30 characters)

• Password(Maximum length = 30 characters)

Requirement:

• Each functionality and its sub functionalities must be implemented using one
function.
• Draw a structure chart for this system before you write the code.

• Try to write pseudocode or draw flowchart for each function before writing code.

• Provide comment as documentation for your program.


• The program must be menu-driven. Provide a main menu so user can choose from
each functionality and sub menu for the sub functionality. Below show a sample part
of the menu-driven program of a main menu and sub menu.

WELCOME TO LIBRARY INVENTORY MANAGEMENT SYSTEMS

Please choose your login from below:

1. Librarian
2. Student

Login as: 1

Please enter the following:


Username:
Password:

WELCOME TO THE LIBRARIAN MODULE:

Please choose a task to perform:

1. Add new items


2. Display items
3. Check out items
4. Check in items
5. Quit

Task: 1
Add new items

Please choose one items from below to add:

1. Books
2. Periodicals

3. DVD

Item: 1

//Ask user to enter all the required information of the books and save to
Items_Book.txt.

Submission:
You need to submit the following for this assignment:

• A hard copy report of the assignment that contain the structure chart for the program
and the source code for the program (Please provide documentation to your code.)

• A soft copy of your program in a CD.

Due date for report and CD is 25th August 2008 before 9.00AM.

You need to demo your program to your Tutor during the Practical session in week 14. Since
this is a group assignment. Each group member must present their part respectively to your
Tutor. During demonstration, Tutor will asked relevant question to your assignment.

You might also like