Date post: | 08-Apr-2018 |
Category: |
Documents |
Upload: | neha-pandey |
View: | 218 times |
Download: | 0 times |
of 13
8/7/2019 ASSIGNMENT NO.02
1/13
ASSIGNMENT NO.02
LIBRARY MANAGEMENT SYSTEM
SUBMITTED TO:
Mr. SUMEDH PUNDKAR
SUBMITTED BY:
RASIKA CHAUDHARY(C-309)
MAYURI MULGIR(C-340)
SNEHAL PATIL(C-349)
SNEHA UKEY(C-364)
SWARNA WASNIK(C-369)
USHA MITTAL INSTITUTE OF TECHNOLOGY
SNDT WOMENS UNIVERSITY
SANTACRUZ(W)
MUMBAI-49
8/7/2019 ASSIGNMENT NO.02
2/13
INTRODUCTION
This system can manage all the happenings of the Library. Book transactions including Book Registration
Students Registration, Book Issuing, Current Status of a particular books etc. can be very easily handled bthis module. Overall this system can be very helpful and it can makes things easier.
The LIBRARY MANAGEMENT SYSTEM process made computerized to reduce human errors and t
increase the efficiency. The main focus of this project is to lessen human efforts. The maintenance of th
records is made efficient, as all the records are stored in the ACCESS database, through which data can bretrieved easily. The navigation control is provided in all the forms to navigate through the large amount o
records. If the numbers of records are very large then user has to just type in the search string and user get
the results immediately. The editing is also made simpler. The user has to just type in the required field an
press the update button to update the desired field.
The Books and Students are given a particular unique id no. So that they can be accessed correctly an
without errors. Our main aim of the project is to get the correct information about a particular student an
books available in the library.
The problems, which existed in the earlier system, have been removed to a large extent. And it is expectethat this project will go a long way in satisfying users requirements. The computerization of the Librar
Management will not only improves the efficiency but will also reduce human stress thereby indirectl
improving human recourses.
8/7/2019 ASSIGNMENT NO.02
3/13
CLASS DIAGRAM
Identify the classes in the problem domain:
This is the first and most important step for creating the class diagram. What classes should yo
include and how to identify them given a problem statement or a scenario? The solution is simple ansome time should be spent with the client / system engineers /your teacher in case you are making a
academic project or any concerned authority having the required business knowledge. The first ste
however is creating a problem statement or establishing a set of requirements that the software shoul
fulfill. E.g. you need to create a small library management system. What are some of the requirements fo
the system? Lets try to make a problem statement or the scenario for your design. For the sake of simplicit
considers the following simple problem Statement. The library management system would be used by th
librarian to keep track of books, library members and the borrowing activity. Not all books can be borroweby the members. Some books may only be available to review in the library; all such books are termed a
Reference books. There are 2 types of library members students and college faculty members. Facult
members can also check out research papers and magazines where as students can only checkout books. Th
system need to send alerts whenever a book that has to be returned within a specific date is not returned. Aemail is sent to the librarian and the borrower. The system maintains a catalogue having a description o
each book that is available in the library
Ways to identify Classes:
Do the Noun Analysis: Go through the problem statement again and again and try to figure out all the nounthat you come across. In our case some strong contenders for the classes of the library management system
would be:
Librarian,Book,Member,Catalogue,Student_Member,Faculty_Member,Reference_Book,Issueable_Book,Alert .
Perhaps there might be some nouns that I skipped but why?? I did that intentionally because of either of th
two reasons. Either there is no data associated with them. They have no role to play in the system i.e. thedont have any functions or actions associated with them. So by this we mean that In order for a noun to b
an object or a class it should have some attributes or member data and some actions or member functions.
Resolving the relationships between classes:
Object oriented analysis and design is all about relationships between objects. Look for a certain typ
of relationships. These include generalization/inheritance/specialization, composition / containershi
aggregation/ collections and associations. All of these are explained briefly below and discussed in term
of our scenario. There are some key questions associated with object oriented design over here. How data
passed between the classes? What classes should have the objects of another class?What classes create thobjects of other classes?What are some of the utility classes that the application requires? All thes
questions play an important role in the design. Think in terms of hierarchy fo
generalizations/inheritence:First of all check for hierarchy that may exist between the classes or thobjects.This would model the inheritance or generaliztion or the superclass/subclass relationship.I
natural language this might resolve to type of or can be. If you find such words in a problem statemen
there might be a case of generalization. E.g. In our scenario take the three classes BOOK
REFERENCE_BOOK and ISSUEABLE_BOOK . So a book can be a reference book or an issue able boo
8/7/2019 ASSIGNMENT NO.02
4/13
or you can say that reference books and issue able books are the type of books. They all should ideally shar
many characteristics which are common to all the three classes.What I mean to say is, whether it is any boo
(reference or issue able) they all have ISBN number, author a language, a topic e.t.c so what is thdifference. The difference is implied by the business rule that reference books cannot be issued but on
reviewed. So for reference books we might add a Boolean data member called m_bReference and set it t
true or something. Same is the case with Member, Student_Member and Faculty_Member. Inheritance indicated in the class diagram with a filled black triangle pointing towards the base class and connecter
connecting it to all the derived classes. In our scenario the inheritance could be shown as the figure below:
Think of the Part-Whole Relationships:
Now we know what might be the possible hierarchies in your system and what might be the commodata members and the common functions. What are the differences and how the qualify to be another clas
Another important type of relationship in terms ofObject Oriented Analysis and Design is the Part of
or Part Whole relationship. In Natural language, you might come across has a words to quicklidentify these kind of relationships. In the list of candidate classes observe which of the objects the part o
other objects is. This can also be taken as collection.To give you some examples for common scenarios.
Windows form is a collection of many controls.An automobile is composed of many parts.A shopping cahas many itemsA university is comprised of many campuses Here you want to ask a simple question t
resolve the type of relationship and to know whether it is an aggregation or a composition. Is the whodestroyed when the part is destroyed or It doesnt make a difference to the Whole if the part i
destroyed. Now going through this example list. A form would still exist if any of the control destroyed; the form serves it purpose properly. This implies an aggregation .An automobile wont functio
properly if any of its parts are destroyed e.g. it cannot function if the tires, steering, battery is taken out s
this implies composition. A university will still exist if a campus is destroyed. So it depends upon thscenario and the business rules.
Returning to our depicted scenario the only part whole relationship noticeable is perhaps th
catalogue. A catalogue has list of books available in the system with a short description of each. Th
catalogue is not destroyed if a book is destroyed so I would use aggregation in the design. In UMaggregation is shown with an empty diamond where as composition is shown with a solid black diamond.
The Uses relationship Association:
Many objects use the methods/functions of other classes for utility. The objects are someho
related might be statically or dynamically but there is not a hierarchy or a part whole relationship
Such relationships are called association and can be mostly identified with makes use of or uses
in the problem statement. E.g. There is a class called Pen which exposes a method called Draw ()
There is also a Shape class having a method calleddrawShape ( ) . In the implementation o
drawShape( ) it internally calls / invokes the Draw () method exposed by Pen. In our scenario librarian uses the book and student information to issue a book.The catalogue needs a reference of the boo
to add or update itselfAnd probably some more:
8/7/2019 ASSIGNMENT NO.02
5/13
Fig: Class diagram for library management system
8/7/2019 ASSIGNMENT NO.02
6/13
Fig: Class diagram for library management system
8/7/2019 ASSIGNMENT NO.02
7/13
Classes Attributes Operations
Library management system userType
userNameuserPass
userInfo
Login
RegisterLogout
User userId
userName
userInfo
userPasssearchString
verifyUser
search
checkAccount
Keyboard searchString
userInfo
acceptSearchString
Librarian userName
userPass
userInfosearchString
verifyLibrarian
search
LibraryInventory listOfBooks add
deleteupdate
check
LibraryDatabase nameOfDatabase openDatabase
closeDatabase
updateDatabase
Browser accountInfo
itemInfo
displayAccountInfo
displayItemInfo
navigateItem itemId
typetitle
category
publisher
displayDueDate
giveFeedBackshowDetailsInfo
Book author inbox
renewhomeDelivering
requestNewBooks
AccountInfo formattedListOfREnewedBooks formatAccountInfoItemInfo formattedTitle
formattedInfoformatItemInfo
Account listOfRenewedItemlistOfReservedItem
fine
calculateFine
VIPUser
RegularUser
8/7/2019 ASSIGNMENT NO.02
8/13
Fig: Class diagram for library management system with UML
8/7/2019 ASSIGNMENT NO.02
9/13
STATE DIAGRAM
Changes in the system that occur, such as a background thread while the main process is running, are
called "sub states." Even though it affects the main state, a sub state is not shown as a part of themain state. Hence, it is depicted as contained within the main state flow.
As you saw above, a state is represented by a rectangle with rounded edges. Within a state, its Name,
variables, and Activities can be listed as shown in Figure 6.1.
Figure 6.1: the structure of the state element
8/7/2019 ASSIGNMENT NO.02
10/13
8/7/2019 ASSIGNMENT NO.02
11/13
DATA FLOW DIAGRAM
When building a data flow diagram, the following items should be considered:
Where does the data that passes through the system come from and where does it go,
What happens to the data once it enters the system (i.e., the inputs) and before it leaves the system
What delays occur between the inputs and outputs (i.e., identifying the need for data stores).
Steps to draw data flow diagram
Start from the context diagram. Identify the parent process and the external entities with their
netinputs and outputs.
Place the external entities on the diagram. Draw the boundary.
Identify the data flows needed to generate the net inputs and outputs to the external entities.
Identify the business processes to perform the work needed to generate the input and output dataflows.
Connect the data flows from the external entities to the processes.
Identify the data stores.
Connect the processes and data stores with data flows.
Apply the Process Model Paradigm to verify that the diagram addresses the processing needs of all
external entities.
Apply the External Control Paradigm to further validate that the flows to the external entities are
correct.
Continue to decompose to the nth level DFD. Draw all DFDs at one level before moving to the next
level of decomposing detail. You should decompose horizontally first to a sufficient nth level toensure that the processes are partitioned correctly; then you can begin to decompose vertically.
8/7/2019 ASSIGNMENT NO.02
12/13
Fig: Functional diagram for library management system
8/7/2019 ASSIGNMENT NO.02
13/13
Fig: Functional diagram for library management system