Báo cáo phân tích thiết kế hệ thống quản lý thư viện
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NÔIVIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
BÁO CÁO MÔN HỌC:
PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG THÔNG TIN
Trang 2I Phân tích chức năng.
1 System Requirements of Library System
You are working on a new business system for S City Library The library wants tosystematize book check-out, return, search and reservation as well as usage status check Assume that the library has multiple copies of the same books, each of which is identified by its book number The library also wants to offer book search,reservation and usage status check services to the public over the Internet S City Library is available to the public from 9:00 to 18:00
(1) User registration
- To borrow a book, users first create their “borrower’s cards”
- They fill out the “borrower’s card application form”, and submit the filled form with their identification (e.g health insurance card or driver’s license) to the front counter of the library
- Internet users can access the library system using their accounts and tentative passwords that are issued when they register as library users The tentative
password can be changed at any time
(2) Using the library system via the Internet
- Users can use the library system via the Internet by entering their accounts and passwords
- Library staff enter their employee numbers and passwords They leverage the system to perform operations of S City Library Specifically, they can perform book search, check-out, return, reservation, user registration and usage status check
- General users enter their borrower’s card numbers and passwords They can perform book search, usage status check and reservation
Trang 3- The system assigns an administration number (out number) to each out
check A user can borrow up to 10 books for 15 days
- Users bring books they want to borrow, together with their “borrower’s cards”, tothe front counter
- Books to be checked out are those that users personally bring from the shelves in the library to the “front counter” or that users have reserved over the Internet and library staff have held for them
- If a user has any books that are overdue, the user cannot borrow another book
- General users can reserve books they want to borrow and borrow the
reserved books Book reservation will be explained later in this text
(4) Returning books
- The system processes book return in units of books
- Users return books to the “return counter” of the library before the due date
- Users can return books to the “return post” when the library is closed
- Library staff put the returned books back on the shelves or hold them for users who have reserved the books
(5) Searching a book
- The system allows users to search for a book that the library owns
- Users can search books using keywords such as “title”, “author” and “publisher”
(6) Reserving books
- The library system allows users to “reserve” books that cannot be found for some reason For example, the book has been checked out
3
Trang 4- Users cannot reserve books that the library does not own
- The system processes reservation in units of book titles (A book number cannot
- The system does not allow double reservations for the same book
- When a reserved book is held for the general user, library staff notify the user of
it by phone or e-mail Users can specify their contact method (phone or e-mail) at the time of reservation
- The system allows checking the information on reservation that is made by a general user
(7) Checking usage status
- The library system allows checking the status of the books that a general user has borrowed or reserved Usage status check can also be performed over the Internet System users can check the usage status on the usage status check screen after logging on to the library system
Trang 6Make a borrower’s
card
Fill out form
Save user account
cardCreate accountIssue inform
Trang 7eCheck book’s status
Trang 9UseCaseID U001
9
Trang 111 An actor enter the following
information from the log-on screen: ID and Password
2 The system searches for librarian and citizen user information corresponding to the ID to verify that the password is correct
11
Trang 123 If the actor is successfully logged on the “library staff menu” or “citizen user menu” appears.
Exception
2a The librarian or citizen user corresponding to the entered
ID is no found
2b The entered librarian or citizen users password is wrong.1a There are some blank fields
Scenarios Description
U001-#01 The citizen user is successfully logged on
U001-#02 The librarian is successfully logged on
U001-#03 The user information corresponding to the ID is not found.U001-#04 The entered password is wrong
3
Hệ thống tìm kiếm sách tương ứng với “bookid”. Nếu người dùng đặt sách thì tìm kiếm thông tin ứng với
“reservation number”
4 Hệ thống kiểm tra sách có sẵn hay không. Nếu đặt sách
Trang 135 Hệ thống kiểm tra số lượng mượn dưới 10 quyển hay không
6 Hệ thống kiểm tra người dùng còn sách nào quá hạn hay không
7 Hệ thống xác nhận số sách đưa vào hệ thống
8 Hệ thống thay đổi thông tin trạng thái của sách.
9
Hệ thống tạo thông tin mượn sách và cập nhập vào trong thư viện các trường: card number, bookid,lending date, hạn mượn và trạng thái
“publisher”
Exception
6a Người dùng đang mượn sách quá hạn .5b Số lượng sách mượn lớn hơn 10 quyển
4a Lượng sách trong thư viện không còn đủ để cho mượn.3a “bookid” không đúng
Trang 143 Hệ thống kiểm tra xem sách đó đã đặt trước bởi người dùng chưa
4 Hệ thống ấn định 1 mã số đặt sách nếu sách được đặt thành công
5 Hệ thống có thể gửi mail đến người đặt nếu người đặt yêu cầu báo đặt thành công bằng việc gửi mail.1a Các ô cần nhập để trống
Trang 1515
Trang 16Precondition Quản lý thư viện, khách hàng đã đăng nhập thành công vào hệ thốngDescription N
o
Tác động
1 Người sử dụng hệ thống sử dụng chức năng “kiểm tra trạng thái
sử dụng” trên màn hình hiển thị sau khi đã đăng nhập thành công vào hệ thống
2 Hệ thống lấy thông tin ID, tên, thời điểm mượn của sách đang mượn
3 Hệ thống lấy thông tin ID, tên, thời điểm trả của sách
4 Nếu thời điểm trả hoặc thời điểm kiểm tra hiện tại lớn hơn thời điểm hạn trả sách thì hệ thống sẽ tăng mức cảnh báo
5 Hệ thống hiển thị ra màn hình thông tin của người dùng về:
ID, tên sách đang mượn, thời điểm thực hiện mượn, thời điểm hạn phải trả sách
ID, tên sách đã trả, thời điểm thực hiện mượn, thời điểm trả sách
ID, tên sách quá hạn, thời điểm mượn, thời điểm phải trả, thời gian quá hạn, mức cảnh báo và quy định
Exception 4a Hệ thống thông báo “Không có sách nào quá hạn” cho người sử
dụng khi không có sách nào quá hạn3a Hệ thống thông báo ‘Không có sách mượn “ cho người dùng biếtkhi chưa mượn hoặc trả quyển sách nào
2a Hệ thống thông báo ‘Không có sách mượn “ cho người dùng biếtkhi chưa mượn hoặc trả quyển sách nào
U005 - #01 Người dùng sử dụng thành công chức năng kiểm tra trạng thái sử
Trang 17U005 - #02 Hiển thị thông tin tương ứng khi người dùng không vi phạm thời
điểm hạn trả sách.
U005 - #03 Hiển thị thông báo khi người dùng chưa mượn/ trả sách của thư
viện
bước sau:
1.Scenario Analysis (Phân tích kịch bản)
Ở bước phân tích kịch bản ta xác đinh các đối tượng mà ta sẽ sử dụng rồi dùng chúng để vẽ biểu đồ tuần tự cho từng Use Case Trong biểu đồ tuần tự thứ tự
từ trên xuống dưới là theo thứ tự thời gian Chiều mũi tên từ A B tức là trong một đoạn code nào đó của A phải gọi B, và phương thức trên mũi tên phải là một phương thức có trong B
1.1 Lending Book
17
Logical Data ModelingScreen/Slip DesignObject AnalysisScenario Analysis
Trang 18Object Boundary Entity Objects Control Object
Lending Screen
Result lending screen
Lending error screen
Book Item Manager
Lending Manager
Reservation ManagerBiểu đồ tuần tự :
User Lendin
g
screen
Result Lending Screen
Error Screen
Lending Controller
User Manager
Book Manager
Book Item Manager
Lending Manager
Reservatio n
Lending(LendingNumber, User, BookItem, LendingDate)
Register(lending)
SetState(lending) Lend()
Trang 19User Logon Screen Result Logon Logon Logon User User Librarian
Screen Error Screen Controller Manager LogOn()
LoggingOn(UserID, Password)
Search(UserID, password)
Compare(UserID, Password)
Compare(UserID, Password)
Logon(): Hàm thực hiện chức năng Log on của hệ thống
LoggingOn(UserID, Password): Hàm nhận tham số vào là UserID và
Password mà hệ thống đọc được khi người dùng nhập vào
Search(UserID, Password): Hàm này thực hiện việc tìm kiếm UserID và Password của UserID đó trong cơ sở dữ liệu và trả về giá trị TRUE nếu tìm thấy và FALSE nếu không tìm thấy
Compare(UserID, Password): thực hiện so sánh UserID và Password với UserID và Password của từng đối tượng User
1.3 Reservation
19
Trang 20 Book Manager.
Reservation Manager
Reserve()
Reserving( UserID, BookID)
CheckNumberofReservedBook(UserID)
GetNumberofReservedBook() CheckBookAvailable(BookID)
GetReservationNumber()
Reserving(reservationNumber, User, Book, ReservingDate)
ChangeNumberofBook()
SetNumberofBook() ChangeNumberofReservedBook ()
SetNumberofReservedBook()
Reserving (UserID, BookID): hàm thực hiện chức năng mượn sách, nhận đầu vào là BookID người dùng nhập vào và UserID cập nhật từ hệ thống khingười dùng đăng nhập
Trang 21 ChekNumberofBook(UserID): kiểm tra xem số sách người dùng mượn có nhỏ hơn 10 không
GetNumberofReservedBook(): lấy thong tin về số lượng sách đã mượn của người dùng
CheckBookAvailable(BookID): Kiểm tra xem sách có sẵn cho việc đặt không
SetNumberofBook(): thiết lập số lượng sách mới
ChangeNumberofReservedBook(): thay đổi số lượng sách mà người dùng đãmượn(tăng lên 1)
SetNumberofReservedBook(): thiết lập số lượng sách đã đặt trong đối tượng User
Book Manager
Keyword Manager
21
Trang 22b Biểu đồ tuần tự.
User Searching
Screen
Result Searching Screen
Error Searching Screen
Searching Cotroller
User Manager
Book Manager
Keyword Manager
User Book Key
Search()
Searching(Keyword, TypeofKey)
CheckTypeofKey(TypeofKey)CaseSearchBook( CaseSearching)
Compare(Keyword)
Searching(Keyword, TypeofKey): tìm kiếm sách với keyword người dùng nhập vàovà loại keyword mà người dùng chọn(tên sách, nhà xuất bản hay tên tác giả)
CheckTypeofKey(TypeofKey): Kiểm tra xem người dùng chọn tìm theo tên sách, tên tác giả hay nhà xuất bản Hàm trả lại giá trị nguyên xác định trườnghợp tìm sách là theo tác giả, nhà xuất bản hay tên sách
CaseSearchBook(CaseSearching): Thiết lập tham số trường hợp tìm sách trong đối tượng BookManager
Compare(Keyword): tùy vào giá trị của CaseSearching sẽ so sách keyword với thuộc tính tên sách, tên tác giả hay nhà xuất bản trong Book
1.5 Register (Đăng kí người dùng)
a Các đối tượng
Trang 23Boundary Entity Objects Control Object
CreateNewAccount(UserID, Password) GetNewUser(UserID, Password, Class, Home, Tel)
CreateNewUser(UserID, Password, Class, Home, Tel)
Register(): Hàm này thực hiện khi người sử dụng chọn chức năng register của hệ thống
Register(UserID, Password, Class, Home, Tel)
CheckAvailble(UserID): Kiểm tra xem UserID này có khả dụng không
Search(UserID): Tìm kiểm xem trong đối tượng account có UserID không
23
Trang 24 GetNewAccount(UserID, Password): tạo một tài khoản mới.
CreateNewAccount(UserID, Password): tạo một tài khoản mới, thêm vào Account
GetNewUser(UserID, Password, Class, Home, Tel),
CreateNewUser(UserID, Password, Class, Home, Tel): tạo một đối tượng người sử dụng mới với các thuộc tính UserID, Password, Class, Home, Tel.1.6 Returning Book (Trả sách)
Error Screen
Returning Controller
User Manager
BookItem Manager
Book Manager
Lending Manger
Use r
Book Item Lending Book returning()
returning(UserID, BookItemID, BookID)
Search(UserID) ChangeNumberofLending(UserID)
SetNumberofLendngBook(UserID) ChangeState(BookItemID)
SetState(BookID) ChangeNumberofBook(BookID)
SetNumberofBook(BookID)
Search(UserID): Tìm kiếm người trả sách ứng với UserID nhập vào
ChangeNumberofLendingBook(UserID): thay đổi số sách mà người dùng mượn
Trang 25Trong bước phân tích đối tượng , trên cơ sở phân tích kịch bản, ta xác định xem các đối tượng có các thuộc tính và phương thức gì Từ đó ta vẽ biểu đồ lớp.
3 Logical Data Modeling (Mô hình hóa dữ liệu lôgic)
BookItem:
25
Trang 26Book
Reservation:
Lending:
Trang 27Account:
27