Báo cáo bài tập phân tích thiết kế hệ thống thông tin hệ thống thư viện
Trang 1ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
BÁO CÁO BÀI TẬP PHÂN TÍCH THIẾT
KẾ HỆ THỐNG THÔNG TIN
HỆ THỐNG QUẢN LÝ THƯ VIỆN
GIẢNG VIÊN HƯỚNG DẪN: TS.Trần Đức Khánh SINH VIÊN THỰC HIỆN : Đỗ Quang Minh- 20091772
Hoàng Doãn Quân- 20093579 Trần Bảo Long-20091667 Bùi Tuấn Sơn-20092230 Ngô Thái Dương- 20090597
HÀ NÔI 2012
Trang 2MỤC LỤC
Lời nói đầu 3
Tài liệu nghiệpvụ 4
A.Phân tích 8
I.Phân tích nghiệp vụ 8
II.Phân tích ca sử dụng 15
IV.Mô hình hóa dữ liệu 26
B.Thiết kế sơ bộ 7
I Biểu đồ trình tự 27
II.Biểu đồ lớp 34
III.Cơ sở dữ liệu 35
IV.Thiết kế giao diện 37
C.Thiết kế chi tiết 104
I.Biểu đồ trình tự 104
II.Biểu đồ lớp 111
D.Kiểm thử 118
Trang 3Lời nói đầu
Phân tích thiết kế là công việc cực kì quan trọng trong quá trình xây dựng một hệ thống tin học Bài báo cáo này chúng em sẽ trình bày về các vấn đề phân tích, thiết
kế và kiểm thử trong xây dựng hệ thống tin học quản lý thư viện, báo cáo chủ yếu dựa theo bài giảng trên lớp và cuốn “phát triển hệ thống hướng đối tượng với UML 2.0 và C++” của thầy Nguyễn Văn Ba Chúng em xin chân thành cảm ơn các thầy
Trang 4Tài liệu nghiệp vụ( business document)
1 Tài liệu nghiệp vụ bao gồm các yêu cầu của khách hàng đối với hệ thống phần mềm được xây dựng, dưới đây là tài liệu nghiệp vụ của thư viện nguyên văn bản tiếng anh theo đề bài:
You are working on a new business system for S City Library The library wants
to systematize 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
- The borrower’s card is for use in S City Library only
Trang 5- 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
(3) Borrowing books
- The system processes check-out in units of books
- The system assigns an administration number (check-out number) to each check-out
- A user can borrow up to 10 books for 15 days
- Users bring books they want to borrow, together with their “borrower’s
cards”,
to the front counter
Trang 6(4) Returning books
- The system processes books return in units books
- Users return books to the “return counter” of library before the due date
- Users can return books to the “return post ” when the library is closed
- Library staff put the returnd books back on the shelves or hold them for users who have reserved books
(5) Searching a books
- The system allows users to search for a book the live library own
- User can search books using beywords such as “title”, “author” and
“publisher”
(6) Reserveing books
- The library system allows users to “reserve” book that cannot be found for some reason Example, the book has been checked out
- Userss cannot reserve books that the librey does not own
- The system processes reservation in units of boook titles (a book number cannot be specified)
- The system assigns an adminitration number (reservation number) to each reservation
- A user can reserve up to 10 books (excluding books that had been reserved and has already been checked out)
- The system does not allow double reservations for the same book
Trang 7- When a reserved books is held for the reneral user, library staff notify the user
of it by phone or mail Users can specify their contact method (phone or mail) at the time of reservation
e The system allows checking the information on reservation that is made by areneral user
(7) Checking usage status
- The library system allows checking the status of the books that a reneral user has borrowed or reserved Usage status check can also be performed over internet System users can check the usage status on the usage status check screen after loggin on to the library system
Trang 8A Phân tích
I.Phân tích nghiệp vụ ( business analysis)
Từ tài liệu nghiệp vụ, đưa ra những phân tích về quá trình thực hiện cho từng
nghiệp vụ trong thực tế Phân tích nghiệp vụ cho phép hiểu rõ được từng hoạt động nghiệp vụ cụ thể của hệ thống, xác định được tương tác giữa người sử dụng và các thành phần của hệ thống
Trang 91.Tạo tài khoản người dùng
Người dùng Người quản lý Hệ thống
(kết thúc)
2.Mượn sách
Người dùng Người Quản lý Hệ thống
Yêu cầu tạo thẻ người dùng
Điền thông tin vào form
Thẻ
Cung cấp form
Tạo một tài khoản người dùng Thông tin người dùng
Trang 10Danh sách sách cần mượn Kiểm tra người dùng
Thông tin về sách Thông tin sách đã mượn
Trang 11(Kết thúc)
3.2 Người quản lý tìm sách
Người dùng
Người quản lý Hệ thống
Thông tin sách cần tìm Đưa ra danh mục các sách tìm thấy
Trang 12(Kết thúc)
Thông tin sách cần tìm Đưa ra danh mục các sách tìm thấy
Trang 134.Trả sách
Người dùng Người quản lý hệ thống
(Kết thúc) Trả sách
Kiểm tra thông tin Cập nhập thông tin
Trang 15II.Phân tích ca sử dụng ( usecase analysis )
Phân tích ca sử dụng giúp xác định chính xác các chức năng của hệ thống.Từ các hoạt động nghiệp vụ đã phân tích được cần xây dựng các kịch bản của người sử dụng từ đó hình thành các chức năng của hệ thống
1.Xác định tác nhân(actor ) và ca sử dụng( usecase)
1.1Tác nhân :
Tác nhân là người sử dụng, tác động vào hệ thống:
-Người dùng ( user ) hay còn được hiểu là bạn đọc – người mượn sách
-Người quản lý ( librarian): thủ thư – người quản lý thư viện
1.2 Ca sử dụng:
-Đăng nhập (login)
-Tìm sách (search books)
-Đặt sách (reserve books)
-Kiểm tra thông tin người dùng (check user information)
-Tạo tài khoản người dùng (create new account)
-Cho mượn sách (lend books)
-Trả sách (return books)
-Cập nhập thông tin người dùng (update user’s information)
Trang 162.Biểu đồ ca sử dụng ( usecase )
Hệ thống
Đăng nhập Tìm sách
Đặt sách
Kiểm tra thông tin người dùng
Tạo tài khoản người dùng
Trả sách
Cập nhập thông tin người dùng
Cho mượn sách Người dùng
Trang 173.Chi tiết các ca sử dụng:
3.1 Đăng nhập ( login )
Tên ca sử dụng Đăng nhập
Tổng quan Đăng nhập vào hệ thống thư viện
Tác nhân Người dùng hoạc người quản lý
Điều kiện tiên quyết Đã có tài khoản với ID và password tương ứng
Mô tả Số thứ tự Hành động
1 Tác nhân điền ID và password vào form đăng nhập
2 Hệ thống tìm kiếm thông tin tương ứng với ID
được nhập và xác minh password
3 Nếu đăng nhập thành công, xuất hiện “menu quản
lý” hoặc “menu người dùng”
Ngoại lệ 2a Không tìm thấy thông tin tương ứng với ID được
nhập 2b Sai password 1a chưa điền ID hoặc password
#01 Người dùng đăng nhập thành công
#02 Người quản lý đăng nhập thành công
#03 Hệ thống không tìm thấy thông tin tương ứng với ID được
nhập
#04 Nhập sai password
#05 Chưa điền đầy đủ thông tin( thiếu password hoặc ID)
Trang 183.2 Tìm sách ( search books)
Tên ca sử dụng Tìm sách
Tổng quan Tìm kiếm sách theo từ khóa
Tác nhân Người quản lý hoặc người dùng
Điều kiện tiên quyết Đăng nhập thành công vào tài khoản
Mô tả Số thứ tự Hoạt động
1 Tác nhân chọn cách thức tìm kiếm( theo tên, theo loại,
theo tác giả, )
2 Tác nhân điền từ khóa tìm kiếm vào form
3 Hệ thống tìm kiếm thông tin sách ương ứng với từ khóa
được nhập
4 Nếu tìm thấy hiển thị kết quả Ngoại lệ 3a Không tìm thấy thông tin tương ứng với từ khóa được
nhập 2a Chưa điền từ khóa vào form Kịch bản Mô tả
#01 Tìm thấy sách
#02 Không tìm thấy thông tin tương ứng với từ khóa được nhập
#03 Chưa điền đầy đủ thông tin bắt buộc vào form
Trang 193.3 Đặt sách ( reseve books)
Tên ca sử dụng Đặt sách
Tổng quan Đặt trước sách để dữ chỗ khi mượn
Tác nhân Người quản lý hoặc người dùng
Điều kiện tiên quyết Đăng nhập thành công vào tài khoản quản lý hoặc tài khoản người
dùng
Mô tả Số thứ tự Hoạt động
1 Nếu tác nhân là người quản lý, nhập user ID và book
item vào form
Nếu tác nhân là người dùng, chỉ điền book item vào form
2 Hệ thống tìm kiếm và kiểm tra thông tin người dùng và
sách tương ứng với thông tin được nhập
3 Hệ thống kiểm tra sách có sẵn sàng hay không( chỉ cho
6 Nếu các điều kiện thỏa mãn và tác nhân là người dùng
hiện bảng chọn phương thức liên lạc( điện thoại hoặc mail)
7 Nếu tất cả các điều kiện thỏa mãn hệ thống tạo ra một
“administration number” để đánh dấu sách đã đặt
8 Nếu tác nhân là người dùng báo thành công và thông báo
thông tin đặt sách lần này đến người quản lý Ngoại lệ 6a Đặt sách thành công và người dùng là người quản lý
5a Người dùng đã nợ sách quá hạn 15 ngày
4a Nếu tính cả sách đặt lần này, tổng số sách đã đặt và
mượn của người dùng vượt quá 10 cuốn
3a Sách này hiện tại có trong thư viện và được phép mượn,
không được phép đặt 2a Không tìm thấy thông tin tương ứng với book item được
nhập 2b Không tìm thấy thông tin tương ứng với user ID được
nhập
Trang 201a Chưa điền đầy đủ thông tin bắt buộc vào form Kịch bản Mô tả
#01 Người dùng đặt sách thành công và thông báo thông tin đặt sách đến
người quản lý
#02 Người quản lý đặt sách thành công
#03 Người dùng đã nợ sách quá hạn 15 ngày nên không cho phép đặt
#04 tính cả sách muốn mượn lần này, tổng số sách đã đặt và mượn của
người dùng vượt quá 10 cuốn nên không cho phép đặt
#05 Sách muốn đặt hiện có trong thư viện và được phép mượn nên
không cho phép đặt
#06 Không tìm thấy thông tin tương ứng với book item được nhập
#07 Không tìm thấy thông tin tương ứng với user ID được nhập
#08 Chưa điền đầy đủ thông tin bắt buộc vào form
3.4 Kiểm tra thông tin người dùng( check user information )
Tên ca sử dụng Kiểm tra thông tin người dùng
Tổng quan Kiểm tra thông tin người dùng
Tác nhân Người quản lý hoặc người dùng
Điều kiện tiên quyết Đăng nhập thành công vào tài khoản quản lý hoặc người dùng
Mô tả Số thứ tự Hoạt động
1 Nếu tác nhân là người quản lý, nhập user ID vào form
2 Hệ thống tìm kiếm thông người dùng ương ứng với ID
được nhập
3 Nếu hệ thống tìm thấy thông tin tương ứng và tác nhân là
người quả lí, hiển thị thông tin người dùng Ngoại lệ 2a Không tìm thấy thông tin tương ứng với user ID được
nhập 1a Nếu tác nhân là người quản lý chưa điền từ khóa vào
form
1b Nếu tác nhân là người dùng, hiển thị thông tin của chính
người dùng đó Kịch bản Mô tả
#01 Người quản lý tìm thấy thông tin người dùng
Trang 21#02 Không tìm thấy thông tin tương ứng với user ID được nhập
#03 Người quản lý chưa điền ID vào form
#04 Người dùng tìm thấy thông tin của chính mình
3.5Tạo tài khoản ( create new acount)
Tên ca sử dụng Tạo tài khoản
Tổng quan Tạo một tài khoản người dùng mới
Tác nhân Người quản lý thư viện
Điều kiện tiên quyết Đăng nhập thành công vào tài khoản quản lý
Mô tả Số thứ tự Hoạt động
1 Người quản lí điền các thông tin cần thiết vào form
đăng kí : ID, password,
2 Hệ thống kiểm tra các thông tin được nhập xem có
đúng quy định hoặc bị trùng với ID của tài khoản đã
có hay không
3 Nếu tạo tài khoản thành công hiển thị thông báo tài
khoản đã được lập Ngoại lệ 2a Tìm thấy thông tin về 1 tài khoản đã có từ trước với
ID giống với ID được nhập 2b Một vài thông tin được nhập không đúng quy định 1a Chưa điền đầy đủ thông tin bắt buộc
Kịch bản Mô tả
#01 Tài khoản được tạo thành công
#02 ID được nhập đã cấp cho tài khoản khác
#03 Một vài thông tin được nhập không đúng quy định
#04 Chưa điền đầy đủ thông tin bắt buộc vào form
Trang 223.6.Cho mượn sách ( lend books)
Tên ca sử dụng Cho mượn sách
Tổng quan Cho người dùng mượn sách
Tác nhân Người quản lý
Điều kiện tiên quyết Đăng nhập thành công vào tài khoản quan lý
Mô tả Số thứ tự Hoạt động
1 Người quản lý điền user ID và book item vào form
2 Hệ thống tìm kiếm thông tin người dùng tương ứng với
User ID
3 Hệ thống tìm kiếm thông tin sách tương ứng với book
item được nhập
4 Hệ thống kiểm tra sách có sẵn sàng hay không
5 Hệ thống kiểm tra số lượng sách đang được mượn và đặt
bởi người dùng
6 Hệ thống kiểm tra người dùng có sách mượn quá hạn hay
không
7 Nếu tất cả các điều kiện thỏa mãn hệ thống tạo ra một
“administration number” để đánh dấu sách cho mượn hoặc nếu sách đã được đặt trước sử dụng chính
administration number đã được tạo ra trong quá trình đặt sách
8 Hệ thống cập nhật trạng thái của sách là “đã cho mượn”
9 Hệ thống tạo mới thông tin về sách đã mượn : User ID,
Book item, administration number, LendDate, ReturnDate
10 Nếu cho mượn thành công hiện thông báo Ngoại lệ 6a Người dùng đã nợ sách quá hạn 15 ngày
5a Nếu tính cả sách muốn mượn lần này, tổng số sách đã
đặt và mượn của người dùng vượt quá 10 cuốn 4a Sách không sẵn có (đã bị những người khác đặt hoặc
mượn hết) 3a Không tìm thấy thông tin tương ứng với ID sách được
nhập 2a Không tìm thấy thông tin tương ứng với ID người dùng
dược nhập 1a Chưa điền đầy đủ thông tin bắt buộc vào form
Trang 23Kịch bản Mô tả
#01 Cho mượn sách thành công
#02 Người dùng đã nợ sách quá hạn 15 ngày
#03 Nếu tính cả sách muốn mượn lần này, tổng số sách đã đặt và mượn
của người dùng vượt quá 10 cuốn
#04 Sách không sẵn có (đã bị những người khác đặt hoặc mượn hết)
#05 Không tìm thấy thông tin tương ứng với ID sách được nhập
#06 Không tìm thấy thông tin tương ứng với ID người dùng được nhập
#07 Chưa điền đầy đủ thông tin bắt buộc vào form
3.7 Trả sách( return books)
Tên ca sử dụng Trả sách
Tổng quan Cho người người dùng trả sách
Tác nhân Người quản lý
Điều kiện tiên quyết Đăng nhập thành công vào tài khoản quản lý
Mô tả Số thứ tự Hoạt động
1 Người quản lý điền user ID và book item vào form
2 Hệ thống tìm kiếm thông tin người dùng tương ứng với
user ID được nhập
3 Tìm kiếm thông tin sách tương ứng với book item được
nhập (chỉ tìm trong số các sách đã được người này mượn)
4 Nếu trả thành công hiện thông báo Ngoại lệ 3a Không tìm thấy thông tin tương ứng với book item
ddược nhập 2a Không tìm thấy thông tin tương ứng với user ID được
nhập 1a Chưa điền đầy đủ thông tin bắt buộc vào form
Trang 24Kịch bản Mô tả
#01 Trả sách thành công
#02 Không tìm thấy thông tin tương ứng với book item được nhập
#03 Không tìm thấy thông tin tương ứng với user ID được nhập
#04 Chưa điền đầy đủ thông tin bắt buộc vào form
3.8.Cập nhật thông tin người dùng ( update user information)
Tên ca sử dụng Cập nhật thông tin người dùng
Tổng quan Người quản lý thay đổi thôi tin về một người dùng
Tác nhân Người quản lý thư viện
Điều kiện tiên quyết Đăng nhập thành công vào tài khoản quản lý
Mô tả Số thứ tự Hoạt động
1 Nhập user ID muốn sửa chữa thông tin và form
2 Hệ thống tìm kiếm thông tin người dùng tương ứng
với ID được nhập
3 Nếu hệ thống tìm thấy người dùng tương ứng, hiển
thị form để sửa chữa các thông tin về người dùng này, người quản lý điền thông tin mới vào những mục muốn sửa chữa
4 Hệ thống kiểm tra các thông tin đã được sửa chữa
5 Nếu các thông tin hợp lệ, cập nhật vào hệ thống và
thông báo thành công
Trang 25Ngoại lệ 4a Một vài thông tin được sửa chữa không hợp lệ
2a Không tìm thấy thông tin người dùng tương ứng với
ID được nhập 1a Chưa nhập user ID Kịch bản Mô tả
#01 Thông tin người dùng được cập nhật thành công
#02 Một vài thông tin được sửa chữa không hợp lệ
#03 Không tìm thấy ngươi dùng có ID được nhập
#04 Chưa nhập user ID vào form
Trang 26IV.Mô hình hóa dữ liệu
Các dữ liệu mô hình hóa
Trang 27B.Thiết kế sơ bộ
I.Biểu đồ trình tự
1.đăng nhập(logon)
Actor: Librarian
Trang 28Actor: Citizen 2.Đặt sách (reservation)
Actor: librarian
Trang 29Actor: citizen 3.Tìm sách(search books)
Actor: librarian
Trang 30Actor: citizen 4.Kiểm tra trạng thái người dùng (check user’s information)
Actor: librarian
Trang 31Actor: citizen 5.tạo tài khoản mới ( creat acount)
Actor: librarian
Trang 326.cho mượn sách (lend books)
Actor: librarian 7.trả sách (return books)
Actor: librarian
Trang 338.Cập nhật thông tin người dùng (update user’s information)
Actor: librarian
Trang 34II.Biểu đồ lớp
Trang 35III.Cơ sở dữ liệu
column type Allow NULL index cardnumber String NOT NULL primary userID String NOT NULL primary name Char[30] NOT NULL
email Char[30] NULL
address Char[30] NULL
password Char[10] NOT NULL
phone Int NULL
Citizen user table
column type Allow NULL index librarianID int NOT NULL primary name Char[30] NOT NULL
email Char[30] NULL
address Char[30] NULL
password Char[10] NOT NULL
phone Int NULL
Librarian user table
column Type Allow NULL Index bookID Char[10] NOT NULL Primary title Char[50] NOT NULL
Author Char[30] NOT NULL
Publisher Char[30] NULL
Book table
Column Type Allow NULL Index bookitemID Char[10] NOT NULL primary
Trang 36bookID Char[10] NOT NULL Foreign key Status Int NOT NULL
Bookitem table
Column Type Allow NULL Index
lendingID Char[10] NOT NULL Primary userID Int NOT NULL Foreign key lendingdate Date NOT NULL
bookitemID Char[10] NOT NULL Foreign key
Lending table
Column Type Allow NULL Index
reservationID Char[10] NOT NULL Primary userID Int NOT NULL Foreign key reservationdate Date NULL
bookID Char[10] NOT NULL Foreign key Contact_method Char[5] NOT NULL
Reservation table
Trang 37IV Thiết kế giao diện
1.đăng nhập (logon)
1.1 sơ đồ chuyển tiếp ( screen transition)
Trang 381.2 giao diện làm việc (screen layout)