1 CaseStudy1: UNIFIED LIBRARY SYSTEM Problem statement: Unified library system is an automation software System to automate internal activities of library. These software system can be used to automate internal activities of university library or library lends books and magazines to members who are registered with the system. The member can be faculty, student and non-teaching staff. In an university library or in college library, the teaching staff automatically becomes members after their administration that means when new students or faculty or staff joined in college then library prepares membership details which are stored in database table data entry operator. These members then onwards can barrow the books and return the books when members are borrowing books they are sending request to the librarian then librarian issue
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
1
CaseStudy1:
UNIFIED LIBRARY SYSTEMProblem statement:
Unified library system is an automation software
System to automate internal activities of library. These software system
can be used to automate internal activities of university library or library
lends books and magazines to members who are registered with the
system. The member can be faculty, student and non-teaching staff. In an
university library or in college library, the teaching staff automatically
becomes members after their administration that means when new
students or faculty or staff joined in college then library prepares
membership details which are stored in database table data entry operator.
These members then onwards can barrow the books and return the books
when members are borrowing books they are sending request to the
librarian then librarian issue books to the members. Books are return to
issuing clerk means while the software provides a facility for the members
to search books by title wise, author wise, publisher wise and combination
when books are return in late then fine is imposed. Generally, library
purchases different books every year then the details of books are stored in
database when certain books and magazines are in bad condition then the
removed from library and data is deleted from database. If books are
presently not available then members has a chance to reserve the books for
borrowing. This entire system is support with central database and there is
DBA to maintain database activities.
UseCase View:
2
Use-case diagram graphically depict system behaviour (use cases). These diagrams
present a high level view of how the system is used as viewed from an
outsider’s(actor’s) perspective. A use-case diagram may depict all or some of the use
cases of a system.
A use-case diagram can contain:
Actors
Use cases
Interaction or relationship between actor and use cases in the system including
the associations, dependencies, and generalizations.
Usecase diagram can be used during analysis to capture the system requirements an dto
understand how the system should work. During the design phase, you can use use-case
diagrams to specify the behavior of the systemas implemented.
USECASE DIGRAM FOR UNIFIED LIBRARY SYSTEM:
STEP1: Identify actors in our library system.
1. Librarian
2. Student
3. Faculty
4. Member
5. Non-teaching staff
6. Clerk
7. DBA
3
8. DEO
Step2: Identify relationship between actors having common role.
In our case, actors like faculty, students, non-teaching staff who are
borrowing books from library are having common role called members in library
system. So, we have generalization among actors, member, faculty, student and non-
teaching staff with member as parent as faculty, student, non-teaching staff as childs.
Step3: Identify use cases in our Unified Library System.
(1) Login
(2) Issue membership
(3) Request membership
(4) Case order
Login
Issue membership
Request membership
Case order
4
(5) Add books to database
(6) Modify books
(7) Delete books
(8) Modify member
(9) Prepare catalog
(10) Search books
(11) Search books by title
(12) Search books by author
Add books to database
Modify books
Delete books
Modify member
Prepare catalog
Search books
Search book by title
Search book by author
5
(13) Search books by publisher
(14) Request books
(15) Issue books
(16) Reserve books
(17) Book return
(18) Book renewal
(19) Fine collection
Search book by publisher
Request book
Issue book
Reserve book
Book return
Book renewal
Fine collection
6
(20) Delete member
(21) Finding book status
(22) Create backup
(23) Recovery
(24) View catalog
Step4: Identify Generalization among usecases having common behavior if any
search books
title wiseauthor wise
publisher wise
Step5: Draw complete diagram
Delete member
Finding book status
Create backup
recovery
View catalog
7
search books by title
recovery
search books by publishers
search books by author
student
faculity
non teaching faculity
request membership
search books
request book
reserve book
return book
issue book
book renveal
finding book status
files collection
add books
delete books
modify books
issue membershipmodify member
delete member
prepare catalog
member
librarian cleark
deo
login
create backup
place order
dba
librarin
Step6: Documentation
8
1.Login
Any actor working with unified library system use services must first login with
system.
Flow of Events:
Prompts userid,passwd from actor.
User enters userid and passwd
Verify userid and passwd by database.
If valid display next screen.
If not valid, display message and return login again.
2. Request membership:
Any member like faculity , student, and non-teaching member must request for before
working with system .
Flow of Events:
Prompts required information form membership.
Enter information from membership.
Store information into database.
3. Issue Membership
This usecase is accessed by librarian to know those people who are applied for
membership then issues membershiped.
Flow of Events:
Librarian use database to identify people who are applied for membership.
Librarian verifies information and takes decision for issuing membership.
Store membership details in database.
4. Place Order:
Librarian places order for purchasing books whenever new books are required or
new copies of existing books are required or when new magazines are required
Flow of Events:
Librarian checks feedback from submitted from different departments or checks
books requirement from various departments.
Verify with the database
Creates new purchase order
5. Add books:
9
This is accessed by DEO to store new book details into database.
Flow of Events:
Input the book details.
Store in database.
6.modify books:
This is accessed by data entry operator to change book details of existing book.
Flow of Events:
Input even book name or id of the book
Get the existing details.
Change required fields with new details.
Rewritting database.
7. Delete books:
This is also accessed by DEO delete existing book details.
Flow of Events:
Input the given book title or id
Get the existing details.
Delete the book details.
8.modify member:
This is accessed by librarian to change member details.
Flow of events:
Input member id.
Get the member details.
Change the required fields with new value.
9.Delete member:
This is accessed by librarian to delete existing members
Flow of Events:
Input the member id.
Get member details.
Delete member details
10.prepare catalog
Librarian used to prepare a catalog that contain list of book names in a specific order
according to subject wise and author wise, or publisher wise.
10
Flow of Events:
Read all book names from database.
To organize them subject wise
Organize them title wise
Organize them author wise
Organize them publisher wise.
Prepare a single list.
Store in database.
11. view catalog:
This is accessed by librarian ,librarian clerk and also member to view list of books
in catalog.
Flow of Events:
Get the catalog from database.
Display the catalog details.
12. search books:
This is accessed by member to know availability of require book, how many copies
of books are available we have three types of book searchingthey are title wise,
publisher wise, author wise.
Flow of Events:
Select choice for search.
According to choice input, title or author publisher name.
Read required details from database.
13. Request books:
This is accessed by member who wants to borrow book from library
Flow of Events:
Member request book by input in book number or name.
Member waits for response message.
14. Issue books:
This is accessed by library clerk to issue books for the members.
Flow of Events:
Library clerk reads all the requests from database posted by members.
11
Identify specific request about a specific member.
Check the availability of book with the database.
If book is available issue it to members
A book is not available inform to the member using message.
Delete requested message posted by member after book is issued.
15.Reserve book:
This is accessed by member to reserve a book for feature issued .A book is not
Presently available.
Flow of Events:
Check the availability of required books.
Send message for reserving book.
16. Book return:
This is accessed by member to return the book which is barrowed previously.
Flow of Events:
Return book to library clerk by member
Delete book details from member a/c
Check the stipulated date
Close the transaction
17. Book renewal:
This is accessed by library clerk to renewal book when member is requested book
Flow of Events:
The member who already borrowed book approaches library clerk and request
for renewal.
The library clerk checks the demand of the back
According to demand of the book renewal is completed
18. Fine collection:
This is accessed by library clerk
Flow of Events:
12
When member returns book to library clerk
Library clerk check the date of return
If the date of return exceeded he imposses fine
When member pays a fine we issues slip
19. Finding book status:
This is accessed by both member and library clerk to know status of the book status
Means to know how many copies are presently available, how many copies are issued
Flow of Events:
Input the given book name
Get the status
Creating data
20. Create backup:
This is accessed by DBA
Flow of Events:
Read complete data from database and each table
Write into single file
21. Recovery:
This is accessed by DBA
Flow of Events:
Read complete data from backup file.
According to data, create tables in database
Store data table wise.
Architectural view:
Class Diagram for Unified Library System:
Step1: Identify classes according to vocabury of the system.
13. catalog Book typeBook nameBook noNo.of issuesNo.of references
21
Logical view:
Collaboration Diagrams:
Collaboration diagrams and sequence diagrams are alternate representations of an interaction. A collaboration diagram is an interaction diagram that shows the order of messages that implement an operation or transaction. A sequence diagram shows object interaction in a time-based sequence.
Collaboration diagrams show objects, their links, and their messages. They can also contain simple class instances and class utility instances and class utility instances. Each collaboration diagram provides a view of the interactions or structural relationships that occur between objects and object-like entities in the current model.
The create collaboration diagram command creates a collaboration diagram from information command in the sequence diagram from information contained in the interaction’s collaboration diagram. The Go to sequence Diagram and go to collaboration diagram commands traverse between an interaction’s two representations.
Collaboration diagram contain icon representing objects. you can create one or more collaboration diagrams to depict interaction for each logical package in your model. Such collaboration diagrams are themselves contained by the logical package enclosing the object they depict
An object specification enables you to display and modify the properties and relationships of an object. The information in a specification is presented textually. Some of this information can also be displayed inside the icons representing objects in collaboration diagram
You can change properties of relationships by editing the specification or modifying the icon on the diagram. The associated diagrams or specifications are automatically updated.
During analysis use collaboration diagram to: Indicate the semantics of the primary and secondary interactions design show the semantics of mechanisms in the logical design of the system
Use collaboration diagrams as the primary vehicle to describe interactions that express your decisions about the behaviour of the system
22
Collaboration Diagrams for Unified Library System:
1. Login:
main controller
login
member
1: enter login
2: get member details
3: send details
4: return message
2. Request membership:
maincontroller member
1: ak for membership
2: issuing the membershp
3. Issue membership:
maincontroller member
1: ak for membership
2: send details
23
4. Add books:
maincontroller book
1: input the book details
2: return message
5. Place order:
maincontroller
book
departments
1: ask feedback from dept
2: getting the information
3: create new place order
6. Modify books:
maincontroller book
1: create the bookid
2: getting book details
3: modify books
24
7. Delete books:
maincontroller book
1: create the bookid
2: getting book details
3: delete books
8.modify member:
maincontroller member
1: input the memberid
2: get the member details
3: modify the member
9. Delete member
maincontroller member
1: input the memberid
2: get the member details
3: delete the member
10. Prepare catalog:
main controller
book catalog1: get the book information 2: prepare catalog
3: return message4: return message
11. View catalog:
main controller
catalog
1: get the catalog
2: return message
25
12. Search books:
main controller
book
1: get the details
2: return message
13. Request books:
main controller
book
1: get book info
2: return message
14. Issue books
main controller
bookmember
1: identify member 2: identify book
3: return message4: return message
15. Reserve books
main controller
book
1: availabilty of required books
2: return message
16. Book return
main controller
book copy
1: return the book 2: modify copy details
3: return message4: return message
17. Book renewal
main controller
book
1: return book
2: return message
18. Fine collection:
main controller
book
1: impose fine
2: return message
26
19. Finding book status
main controller
copy
1: check present book status
2: return message
20. Create backup:
main controller
copy
1: copy the info
2: return message
21. recovery:
main controller
copy
1: recovery
2: return message
27
Sequence Diagram:
A sequence diagram is a graphical view of a scenario that shows object
Interaction in a time based sequence ¾ what happen first, what happen next sequence
Diagrams establish the roles of objects and help provide essential information to determine
Class responsibilities and interfaces. This type of diagram is best used during early analysis
phases in design because they are simple and easy to comprehend. Sequence diagrams are
normally associated with use case
sequence diagram are closely related to collaboration diagrams and both are
alternative representation of interaction. There are two main differences between sequence
and collaboration diagrams: sequence diagrams show time based object interaction while
collaboration diagram show how object associate with each other.
A sequence diagram has two dimensions: typically, vertical placement represents time and horizontal placement represents different objects.
The following tools located on the sequence diagram toolbox enable you to model sequence diagram:
Object Message icons Focus of control Message to self Note and note anchor
28
Sequence Diagrams for Unified Library System:
1.Login
:
main controller login member
enter login
get member details
send details
return message
2. Request membership
maincontroller member
ak for membership
issuing the membershp
29
3. Issue membership:
maincontroller member
ak for membership
send details
4. add books:
maincontroller book
input the book details
return message
30
5. place order:
maincontroller book departments
ask feedback from dept
getting the information
create new place order
6. modify books
:
maincontroller book
create the bookid
getting book details
modify books
31
7. Delete books:
maincontroller book
create the bookid
getting book details
delete books
8. Modify member:
maincontroller member
input the memberid
get the member details
modify the member
32
9. Delete member:
maincontroller member
input the memberid
get the member details
delete the member
10. Prepare catalog:
main controller book catalog
get the book information
prepare catalog
return message
return message
33
11. View catalog:
main controller catalog
get the catalog
return message
12. Search Books:
main controller book
get the details
return message
13. Request Books:
main controller book
get book info
return message
34
14. Issue Books:
main controller book member
identify member
identify book
return message
return message
15. Reserve Books:
main controller book
availabilty of required books
return message
35
16. Fine collection:
main controller book
impose fine
return message
17. Book return:
main controller book copy
return the book
modify copy details
return message
return message
36
18. Book renewal:
main controller book
return book
return message
19. Finding Book Status:
main controller copy
check present book status
return message
37
20. Create backup:
main controller copy
copy the info
return message
21. Recovery:
main controller copy
recovery
return message
38
Activity Diagram:
Activity diagrams provide a way to model the work flow of a business process. You can also use activity diagrams to model code-specific information such as a class operation. Activity diagrams are very similar to a flow chart because you can model a workflow from activity to activity. An activity diagram is basically a special case of a state machine in which most of the states are activities and most of the transitions are implicitly triggered by completion of the actions in the source activities. The main difference between activity and state chart is activity diagrams are activity centric, while state charts are state centric. An activity diagram is typically is used for modelling the sequence of activities in a process, whereas a state chart is better suited to model the discrete stages of an object’s lifetime.
Activity Diagram for Unified Library System:
1.Login:
enter login details
is a member get member details
send member
return message
39
2. Request membership:
read complete data
create tables
check with db
3. Issue membership:
get details
verify getails
issue membership
40
4. modify books:
read completedata
create tables
check with detabase
update books
5. place order:
read complete data
create tables
check with detabase
place order
update books
41
6. Add books:
read completedata
create tables
store info
7. Delete books:
get book info
check with detabase
delete book
update details
42
8. Modify member:
read complete data
create tables
check with detabase
update details
9. Delete member:
get book info
check with detabase
delete book
update details
43
10. Prepare catalog:
get book info
gety dept info
create tables
check with detabase
11. View catalog:
read complete data
create tables
check with detabase
44
12. Search Books:
read complete data
create tables
return mesg
update details
if book is available
no
13. Request Books:
enter id
search books
check with detabase
reqq books
45
14. Issue Books:
read complete data
create tables
check with detabase
update details
delete member request
update details
if book issued
15. Reserve Books:
enter id
search for availabity
check with detabase
reserve book
46
16. Fine collection:
get book info
get borrower details
calculate fine
collect fine
17. Book return:
read complete data
check with detabase
get stimulated data
del deatils
update details
47
18. Book renewal:
enter id
check with detabase
return mesg
update details
19. Finding Book Status:
read complete data
check with detabase
return mesg
update details
48
20. Create backup:
copy the db
store db
21. Recovery:
get the details
verify db
get db from backup
49
Component Diagram:
component diagrams provide a physical view of the current model. A component diagram shows the organizations and dependencies among software components, including source code components, binary code components, and executable components. These diagrams also show the externally-visible behaviour of the components by displaying the interfaces of the components. Calling dependencies among components are shown as dependency relationship between component and interfaces on other components. Note that the interface actually belong to the logical view, but they can occur both in class diagram and in component diagram.
Step1: Identify set of components in unified library system.
coreLibrary
front panel
Help system
library db
admin service
Step2: Provide relationship between components to model component diagram.
coreLibrary
front panel
Help system
library dbadmin service
50
Step3: Describe and explain each and every component.
1. Front panel component:
This component is collection of several executable releases which provides GUI design for users. Some programs provides GUI design to interact with system in selecting various options. Some programs provides GUI design for user to enter data. Some programs provide GUI design for user to display users.
2. Core library component:
These contains no. of programs to perform core library business logic
3. Admin service Component:
These components contain some set of executable programs which performs administration services. This includes back-up, recovery, user profiles modification, setting privileges
4. Library db component:
This contains set of physical database files.
5. Help system:
This contains some set of manual files to provide help to users.
Step4: Working process:
Users or actors like members, librarian, DEO, clerk, administrator interact with front panel component and executes in programs in front panel component depends on type of programs front panel component may interact with help system or core library component or admin service component. In case of core library component or admin service component they further interact with database component. Finally they transfer result to front panel component which produces to user.
51
Deployment Diagram:
A deployment diagram shows processors, devices, and connections. Each model contains a single deployment diagram which shows the connection between its processors and devices, and the allocation of its processes and processors.
Processor specifications, device specifications, and connection specification enable you to display and modify the respective properties. The information in a specification is presented textually; some of the information can also be displayed inside the icons.
You can change properties or relationship by editing the specification or modifying the icon on the diagram. The deployment diagram specifications are automatically updated
Deployment Diagram for Unified Library System:
<<server>>
<<client 1>> << client 2>><<client n>>
52
Forward Engineering for Unified Library System:
Forward engineering is the process of transferring a model into code through a mapping to an implementation language. Forward engineering results in a loss of information, because models written in UML are semantically richer than any current object-oriented programming language. In fact this is a major reason why you need models in addition to code. structural features such as collaborations and behavioural feature such as interaction can be visualized clearly in the UML but not so clearly from raw code.
Steps for forward engineering:
Step1: select class using mouse.
Step2: Go to tools menu and java/j2ee.
Step3:select generate code.
Step4:result is
main controller
voidAccessmember()voidAccessbook()voidAccesscatalog()voidAccessdepartment()voidImposefine()void prepare copy()void preparebarcode()void main controller()maincontroller()
Reverse engineering is the process of transforming code into a model through a mapping from a specific implementation language. Reverse engineering results in a flood of information, some of which is at a lower level of detail than you will need to build useful models. at the same time, reverse engineering is incomplete. There is loss of information when forward engineering models into code, and so you cannot completely recreate a model from code unless your tools encode information in the source comments that goes beyond the semantics of the implementation language.
Steps for reverse engineering:
Step1: create a new project in rational rose
Step2: create new empty class diagram.
Step3: select tools menu.
Step4: select java/j2EE
Step5:select reverse engineering.
Step6:select class from list then press add button.
Step7:select chosen class and then press reverse button and then done button.