CSE Library
Management System
Group No. 10
GroupMembers
• Group Leader:
Priyatham Bollimpalli 10010148
• Other members:
Neha Goyal 10010137
Anuj Gupta 10010176
Samarth Tripathi 10010156
Jitendra Singh Solanki10010124
Nitesh Singhal 10010139
Vivek Rajwar 10010171
Mohit 10010134
SoftwareModelImplemented
• In the development of this application the spiral model has
been used and the application has undergone many cycles of
improvement which will be highlighted for each module in this
presentation.
Theback-end
• MS Access is used for managing the back-end.
• ProjectDatabase.mdb (MS Access File) is used as the backend
database. It is password protected so that it won’t be
tampered with. Only the owner of the software is provided
with its password.
• The above file is automatically updated as required at various
events like issuing, returning, renewing, adding or deleting a
book.
TheWelcomeScreen.
HavingtheoptionfortheLibrarian(Administrator)tologin,
for thestudentstochecktheirdetailsandtosearchthelibrary
forbooks.
• Logic and Implementation
• Since this is the most external interface, its implementation was the
easiest of all once the essentials had been thought of.
• An SQL query is used to retrieve the entries of a possible admin. The
validation of admin credentials are checked against these entries in
the database.
• If correct credentials are entered, another form containing
administrative functions is called.
• In the check-outs, the student details concerning the library are
displayed using simple SQL select statement. This is the most static
portion of the project.
• In ‘explore library database’ an appropriate form containing
searching and sorting functions is connected.
Followingthespiralmodel.
• Initially, this form consisted of only the admin login.
TheAdminhomescreen.
Itconsistsofvariousfunctionslikeissue,renewal,return,addorremove
books,viewstudentdatabase,viewlibrarydatabase,andviewmailinglist.
Italsohasanoptionofchangingthepassword.
Issue,ReturnandRenewal
• Logicandimplementation
• Appropriate SQL commands are executed to update the
database.
• It is also checked if the book is available to issue and if the
student crossed his limit while taking the books.
• It is also checked if the book being returned was the book
actually issued by the student and if any fine is there on the
book. Then the fine is made to be paid by the student.
• To renew is to return and issue again.
Followingofthespiralmodel
• Initially it was ignored that a book could be returned if and only if it
had been issued by the student. So, subsequently the code was
modified to check the entries in the student table in the database to
accommodate this requirement.
AddorRemoveBooks
LogicandImplementation
• Adding an existing book or removing a book can be done with
just the accession number as all details of the book are
already entered in the database. For this it is important to
check that the accession number is already entered in the
database (using SQL select). The SQL queries used are update
for addition and delete for removal.
• For adding a new book various details of the book are to be
entered to complete its database entry. We are ensuring that
a unique accession number is entered. Insert SQL query is
used.
Followingthespiralmodel
• At first, we had implemented the add and delete feature
without checking beforehand whether the accession number
is present. This change was later incorporated.
ViewMailingList
LogicandImplementation.
• The SQL query used is select in the students table to retrieve
the mail ids of where totalfine is greater than zero.
• The result set is then transferred into a list box.
Followingthespiralmodel
• This feature was not a part of the proto model for the
application and was itself added later.
ChangePassword
LogicandImplementation
• It is easily implemented by using select and update queries
one after the other
Followingthespiralmodel
• This entire feature was added once the basic model was
running successfully as it was not part of the problem
statement.
ViewLibraryDatabase
LogicandImplementation
• Primarily, the form has been rendered functionality by using Dataset
class and the datagridview class. An object of Dataset is used to
store the result set of a SELECT SQL query. A datagridview facilitates
the direct display of the result set stored in the a Dataset object
after appropriate binding of its text columns with the dataset on
form load: the text columns of datagridview1 have been data bound
with appropriate columns of dataset11, an instance of Dataset class.
Then the dataset11 has been cleared since data will be appended to
it on further use. The dataset is then filled with the result set of the
query .All the items of the library are displayed when the form is
loaded.
• On typing in any of the textboxes, the common function Search ()
will be triggered as text change event. It will search for the strings
present in the four textboxes.
• On click of the any of the sorting button we are searching and
sorting simultaneously. We are also making the button act like
toggle button between ascending and descending order by
maintaining Boolean variable.
Followingthespiralmodel
• Initially the code for this section was implemented omitting
the fact that every textbox may contain a null string requiring
us to code for every possible permutation by checking
emptiness of textboxes one by one on every textbox keypress.
• This was later improved by using a single function search() and
checking for emptiness of all textboxes as a single entity.
ViewStudentDatabase
LogicandImplementation
• The implementation of search is the same as that of the
previous section.
• And the implementation of view dues is the same as that of
checkouts. Hence it is apparent that a lot of code has been
reused and recycled.
Updatingthefine
• This is very important feature. Firstly at the start of the
application, all the fines of the students are updated.
• The date is stored in a static variable when it‟s updating. Later
this update function is called whenever:
1. The student checks his check-outs
2. The admin sees the student database
3. Issuing, returning ,renewing is done
4. Viewing the mailing list.
• Before we are updating the fine we are comparing the present
date with the stored date during which it is updated. Then if
its same day then we are not updating the fine otherwise we
are updating. This ensures that the fines are updated
whenever required during a minimum interval of 1 day.
Possibleimprovementsandextensions
• Increase the database library to accommodate all the books in
the establishment where this application is employed.
• Increase student database to accommodate all eligible
members.
• Increase or decrease the limit of books a student can issue
• Increase or decrease the issue duration as the purpose
demands.
• This model is not specific to the CSE library and can be used in
the institute library as well as other departments.

Library Management System

  • 1.
  • 2.
    GroupMembers • Group Leader: PriyathamBollimpalli 10010148 • Other members: Neha Goyal 10010137 Anuj Gupta 10010176 Samarth Tripathi 10010156 Jitendra Singh Solanki10010124 Nitesh Singhal 10010139 Vivek Rajwar 10010171 Mohit 10010134
  • 3.
    SoftwareModelImplemented • In thedevelopment of this application the spiral model has been used and the application has undergone many cycles of improvement which will be highlighted for each module in this presentation.
  • 4.
    Theback-end • MS Accessis used for managing the back-end. • ProjectDatabase.mdb (MS Access File) is used as the backend database. It is password protected so that it won’t be tampered with. Only the owner of the software is provided with its password. • The above file is automatically updated as required at various events like issuing, returning, renewing, adding or deleting a book.
  • 5.
  • 6.
    • Logic andImplementation • Since this is the most external interface, its implementation was the easiest of all once the essentials had been thought of. • An SQL query is used to retrieve the entries of a possible admin. The validation of admin credentials are checked against these entries in the database. • If correct credentials are entered, another form containing administrative functions is called. • In the check-outs, the student details concerning the library are displayed using simple SQL select statement. This is the most static portion of the project. • In ‘explore library database’ an appropriate form containing searching and sorting functions is connected.
  • 7.
    Followingthespiralmodel. • Initially, thisform consisted of only the admin login.
  • 8.
  • 9.
  • 10.
    • Logicandimplementation • AppropriateSQL commands are executed to update the database. • It is also checked if the book is available to issue and if the student crossed his limit while taking the books. • It is also checked if the book being returned was the book actually issued by the student and if any fine is there on the book. Then the fine is made to be paid by the student. • To renew is to return and issue again.
  • 11.
    Followingofthespiralmodel • Initially itwas ignored that a book could be returned if and only if it had been issued by the student. So, subsequently the code was modified to check the entries in the student table in the database to accommodate this requirement.
  • 12.
  • 13.
    LogicandImplementation • Adding anexisting book or removing a book can be done with just the accession number as all details of the book are already entered in the database. For this it is important to check that the accession number is already entered in the database (using SQL select). The SQL queries used are update for addition and delete for removal. • For adding a new book various details of the book are to be entered to complete its database entry. We are ensuring that a unique accession number is entered. Insert SQL query is used.
  • 14.
    Followingthespiralmodel • At first,we had implemented the add and delete feature without checking beforehand whether the accession number is present. This change was later incorporated.
  • 15.
  • 16.
    LogicandImplementation. • The SQLquery used is select in the students table to retrieve the mail ids of where totalfine is greater than zero. • The result set is then transferred into a list box.
  • 17.
    Followingthespiralmodel • This featurewas not a part of the proto model for the application and was itself added later.
  • 18.
  • 19.
    LogicandImplementation • It iseasily implemented by using select and update queries one after the other
  • 20.
    Followingthespiralmodel • This entirefeature was added once the basic model was running successfully as it was not part of the problem statement.
  • 21.
  • 22.
    LogicandImplementation • Primarily, theform has been rendered functionality by using Dataset class and the datagridview class. An object of Dataset is used to store the result set of a SELECT SQL query. A datagridview facilitates the direct display of the result set stored in the a Dataset object after appropriate binding of its text columns with the dataset on form load: the text columns of datagridview1 have been data bound with appropriate columns of dataset11, an instance of Dataset class. Then the dataset11 has been cleared since data will be appended to it on further use. The dataset is then filled with the result set of the query .All the items of the library are displayed when the form is loaded. • On typing in any of the textboxes, the common function Search () will be triggered as text change event. It will search for the strings present in the four textboxes. • On click of the any of the sorting button we are searching and sorting simultaneously. We are also making the button act like toggle button between ascending and descending order by maintaining Boolean variable.
  • 23.
    Followingthespiralmodel • Initially thecode for this section was implemented omitting the fact that every textbox may contain a null string requiring us to code for every possible permutation by checking emptiness of textboxes one by one on every textbox keypress. • This was later improved by using a single function search() and checking for emptiness of all textboxes as a single entity.
  • 24.
  • 25.
    LogicandImplementation • The implementationof search is the same as that of the previous section. • And the implementation of view dues is the same as that of checkouts. Hence it is apparent that a lot of code has been reused and recycled.
  • 26.
    Updatingthefine • This isvery important feature. Firstly at the start of the application, all the fines of the students are updated. • The date is stored in a static variable when it‟s updating. Later this update function is called whenever: 1. The student checks his check-outs 2. The admin sees the student database 3. Issuing, returning ,renewing is done 4. Viewing the mailing list. • Before we are updating the fine we are comparing the present date with the stored date during which it is updated. Then if its same day then we are not updating the fine otherwise we are updating. This ensures that the fines are updated whenever required during a minimum interval of 1 day.
  • 27.
    Possibleimprovementsandextensions • Increase thedatabase library to accommodate all the books in the establishment where this application is employed. • Increase student database to accommodate all eligible members. • Increase or decrease the limit of books a student can issue • Increase or decrease the issue duration as the purpose demands. • This model is not specific to the CSE library and can be used in the institute library as well as other departments.