Escolar Documentos
Profissional Documentos
Cultura Documentos
Library
Page 1
Version: 1.0
Table of contents
Description___________________________________________________________
Glossary_____________________________________________________________
Requirements_________________________________________________________
Package: Functional Requirements_________________________________________________________
Package: Non-Functional Requirements_____________________________________________________
Classes_____________________________________________________________
Package: System______________________________________________________________________
Package: Frameworks__________________________________________________________________
Page 2
Version: 1.0
Description
Glossary
Name
Description
Type
Add Reservation
Use Case
address in Borrower
Attribute
author in Book
Attribute
Book
A book that the borrower might loan copies of (the copies are the
actual books in the library, where a popular book may have
several copies in the library). The book has information like:
name, author, ISBN etc...
Entity
BookCopyListForm
Screen
Borrower
Entity
Copy
Entity
copyId in Copy
Attribute
CustomerListForm
Screen
id in Borrower
Attribute
isbn in Book
Attribute
Lend Book
Use Case
LendBookForm
Screen
lendingTime in Book
Attribute
Loan
The loan is the contract between the borrower and the library
Entity
loanDate in Loan
Attribute
Maintain Books
Use Case
Maintain Borrowers
Use Case
name in Book
Attribute
Page 3
Version: 1.0
name in Borrower
Attribute
Use Case
Remove Reservation
Use Case
Reservation
Entity
reservationDate in Reservation
Attribute
Return Book
Use Case
ReturnBookForm
Screen
returnDate in Loan
Attribute
searchBooks in
LendBookForm
Field in Screen
searchCustomers in
LendBookForm
Field in Screen
status in Copy
Attribute
Use Case1
Use Case
Use Case2
Use Case
Page 4
Version: 1.0
Requirements
Package: Functional Requirements
Package: Business Rules
No.
Name
Description
Priority
Status
Reservation cancel
Medium
Proposed
Reservation notification
Medium
Proposed
Package: Features
No.
Name
Description
Priority
Status
Medium
Proposed
Book loan
Medium
Proposed
Medium
Proposed
Data management
Medium
Proposed
Monthly report
Medium
Proposed
Multiple Copies
Medium
Proposed
Reservation
management
Medium
Proposed
Reservation of
unavailable Books
Medium
Proposed
Page 5
Version: 1.0
Name
Description
Priority
Status
Time availability
Medium
Proposed
User availability
Medium
Proposed
Package: Security
No.
Name
Description
Priority
Status
Security
Medium
Proposed
Page 6
Version: 1.0
Name
Description
Type
Customer
User
Librarian
User
Scheduler
Time
Package: DailyActivities
List of Use Cases
No.
Name
Description
Status
Lend Book
Proposed
Return Book
Proposed
Add Reservation
Proposed
Page 7
Version: 1.0
Notification by email
Return Book
Customer
Librarian
(from Actors)
(from Actors)
include
Lend Book
(from Maintenance)
Page 8
Version: 1.0
Diagram: Traceability
uc Traceability
Reservation of unavailable
Books
(from Features)
Reservation management
Reservation
notification
(from Features)
Return Book
Book loan
Lend Book
(from Features)
Package: Maintenance
List of Use Cases
No.
Name
Description
Status
Maintain Books
Proposed
Maintain Borrowers
Proposed
Remove Reservation
Proposed
Page 9
Version: 1.0
Diagram: Maintenance
uc Maintenance
Librarian
(from Actors)
Maintain Books
Page 10
Version: 1.0
Diagram: Traceability
uc Traceability
Data management
Maintain Books
Book and Copy separation
(from Features)
(from Features)
Borrowers and
Books
(from Features)
Maintain Borrowers
Multiple Copies
(from Features)
Reservation management
(from Features)
Package: Reports
List of Use Cases
No.
Name
Description
Status
Proposed
Page 11
Version: 1.0
Diagram: Reports
uc Reports
Scheduler
(from Actors)
Produce status
report
Status Report
Librarian
(from Actors)
Page 12
Version: 1.0
Diagram: Traceability
uc Traceability
Monthly report
(from Features)
Produce status
report
Page 13
Version: 1.0
Overview
Actors
Librarian
Requirements
Reservation cancel
Book loan
Remove Reservation
Author
MD
Status
Proposed
Complexity
System Response
Alternate flows
A-1 : Search Customer by Name
All Rights Reserved Maymone D. Software Consultancy and Training LTD
Page 14
Version: 1.0
Actor Action
System Response
System Response
2.
book/copy
A-3 : No copies available found with the entered details
Actor Action
System Response
Screens
Screen name: BookCopyListForm
Screen ID
Description
Complexity
Page 15
Version: 1.0
Complexity
Complexity
No.
Fields
Name
Description
Type
searchCustomers
Button
searchBooks
Button
Stereotype
Page 16
Version: 1.0
Librarian
LendBookForm
LendBookManager
Borrow er
Book
show()
enterCustomerId()
getCustomerDetails(int)
:Borrower
getDetails()
enterBookCopyId()
getBookDetails(string,
int) :Book
getBookDetails()
approve()
approve(Borrower,
Book) :bool
addLoan()
updateCopyStatus()
removeReservation()
(from Actors)
Page 17
Version: 1.0
Librarian
LendBookForm
BookCopyListForm
LendBookManager
BookManager
displayBookCopies()
getBookList()
getList()
show()
selectBook()
getBookDetails(string,
int) :Book
(from Actors)
Page 18
Version: 1.0
Librarian
LendBookForm
CustomerListForm
LendBookManager
Borrow erManager
displayCustomers()
getCustomerList(string,
string) :List<Customer>
getList()
show()
selectCustomer()
getCustomerDetails(int)
:Borrower
(from Actors)
Page 19
Version: 1.0
System
[Else]
[Has customer id]
[Else]
Enter customer id
Search customer by
name
[Customer exists]
[Copy available]
Display book details
No copies av ailable
Approv es
[Reservation found]
ActivityFinal
Page 20
Version: 1.0
System
ActivityInitial
[Selects "Yes"]
Adds the borrow er to the
reserv ation list
[Selects "No"]
ActivityFinal
Page 21
Version: 1.0
System
ActivityInitial
Select book
ActivityFinal
Page 22
Version: 1.0
Systen
ActivityInitial
Select customer
Display customer details
ActivityFinal
Page 23
Version: 1.0
Use case id
Overview
Actors
Librarian
Customer
Requirements
Reservation notification
MD
Status
Proposed
Complexity
System Response
13.
that is retiurned
Alternate flows
A-1 : Search Customer by Name
Actor Action
System Response
Page 24
Version: 1.0
Screens
Screen name: ReturnBookForm
Screen ID
Description
Complexity
Page 25
Version: 1.0
sd Primary flow
Librarian
Borrow er
ReturnBookForm
ReturnBookManager Book
EmailManager
show()
enterCustomerId()
getCustomerDetails()
getLentBooks()
selectReturnedBook()
getBookDetails()
approve()
approve()
getDetails()
getRentBooks()
getBookDetails()
updateLoan()
updateCopyStatus()
getFirstReservation()
sendMail()
(from Actors)
Page 26
Version: 1.0
Use case id
Overview
Actors
Librarian
Requirements
Reservation management
Reservation of unavailable Books
MD
Status
Proposed
Complexity
Package: Maintenance
Use Case: Maintain Books
Use case id
1
Overview
Actors
Librarian
Requirements
MD
Status
Proposed
Complexity
Page 27
Version: 1.0
Page 28
Version: 1.0
Use case id
Overview
Actors
Librarian
Requirements
Data management
Borrowers and Books
MD
Status
Proposed
Complexity
Page 29
Version: 1.0
Use case id
Overview
Actors
Librarian
Requirements
Data management
Reservation management
Lend Book
MD
Status
Proposed
Complexity
Package: Reports
Use Case: Produce status report
Use case id
1
Overview
Actors
Scheduler
Librarian
Requirements
Monthly report
MD
Status
Proposed
Complexity
Page 30
Version: 1.0
Page 31
Version: 1.0
Entities/Conceptual Model
Package: Entities
List of Entities/Concepts
No.
Name
Description
Complexity
Book
Borrower
Copy
Loan
Reservation
Page 32
Version: 1.0
Diagram: Entities
class Entities
entity
Book
entity
Copy
isbn: string
name: string
author: string
lendingTime: int
+
+
+
getBookDetails() : void
updateCopyStatus() : void
getFirstReservation() : void
0..* -
Includes
copyId: int
status: char
1
1
May-be-loaned-in
1
May-be-reserved-in
0..*
0..*
entity
Reserv ation
-
entity
Loan
reservationDate: DateTime
-
0..*
loanDate: DateTime
returnDate: DateTime
0..*
Has
Has
1
entity
Borrow er
1
-
id: string
name: string
address: string
+
+
+
+
+
getDetails()
addLoan() : void
removeReservation() : void
getRentBooks() : void
updateLoan() : void
Entity: Book
Overview
A book that the borrower might loan copies of (the copies are the actual
books in the library, where a popular book may have several copies in the
library). The book has information like: name, author, ISBN etc...
Complexity
No.
Attributes
Name
Description
Type
isbn
string
name
string
author
string
Remarks
Page 33
Version: 1.0
lendingTime
int
Entity: Borrower
Overview
Complexity
No.
Attributes
Name
Description
Type
id
string
name
string
address
string
Remarks
Entity: Copy
Overview
Complexity
No.
Attributes
Name
Description
Type
copyId
int
status
char
Remarks
Entity: Loan
Overview
The loan is the contract between the borrower and the library
Complexity
No.
Attributes
Name
Description
Type
loanDate
DateTime
returnDate
DateTime
Remarks
Page 34
Version: 1.0
Entity: Reservation
Overview
Complexity
No.
Attributes
Name
Description
Type
reservationDate
DateTime
Remarks
Page 35
Version: 1.0
Classes
Package: System
List of Classes
No.
Name
Description
Stereotype
BookManager
control
BorrowerManager
control
EmailManager
email manager
control
LendBookManager
control
ReturnBookManager
control
Page 36
Version: 1.0
Diagram: System
class System
BookManager
ReturnBookManager
LendBookManager
BorrowerManager
EmailManager
Class: BookManager
Overview
Stereotype
control
No.
Methods
Name
getList
Description
Return Type
void
Parameters
Class: BorrowerManager
Overview
Page 37
Version: 1.0
Stereotype
control
No.
Methods
Name
getList
Description
Return Type
void
Parameters
Class: EmailManager
Overview
email manager
Stereotype
control
No.
Methods
Name
sendMail
Description
Return Type
void
Parameters
Class: LendBookManager
Overview
Contains the main flow of the LendBook use case and manages it
Stereotype
control
No.
Methods
Name
1
2
Description
Return Type
Parameters
getCustomerDetails
Borrower
int aCustomerId
getBookDetails
Book
string aIsbn
bool
approve
int aCopyId
Borrower aCustomer
Book aBook
Page 38
Version: 1.0
If the customer is
registered for this book in
the reservation list, the
customer is removed from
the list
4
getCustomerList
getBookList
List<Customer>
void
string aFirstNname
string aLastName
Class: ReturnBookManager
Overview
Stereotype
control
No.
Methods
Name
Description
Return Type
getCustomerDetails
void
getLentBooks
void
getBookDetails
void
approve
void
Parameters
Package: Frameworks
List of Classes
No.
Name
Description
Class12
Twelve
Stereotype
Page 39
Version: 1.0
Diagram: Frameworks
class Framew orks
Class12
Class: Class12
Overview
Twelve
Stereotype
Page 40