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
2
MỤ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
3
Lờ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.
4
Tà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.
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.
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
7
- When a reserved books is held for the reneral 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
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.
8
A. 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.
Các nghiệp vụ:
1. Tạo tài khoản người dùng
2. Mượn sách
3. Tìm sách
4. Trả sách
5. Đặt sách
Sơ đồ các hoạt động nghiệp vụ trên:
9
1.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
10
(Kết thúc)
3.Tìm sách
3.1 người dùng tìm sách
Người dùng
Người quản lý
Hệ thống
Danh 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
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
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
13
4.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
14
5.Đặt sách
Người dùng
Người quản lý
Hệ thống
(Kết thúc)
Đặt sách
Tiếp nhận yêu cầu đặt sách
Cập nhật thông tin
15
II.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)
16
2.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
dungdungdùn
Người quản lý
17
3.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
Kịch bản
Mô tả
#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)
18
3.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
19
3.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
phép đặt nếu sách đã hết, không sẵn có)
4
Hệ thống kiểm tra số lượng sách đang được mượn và đặt
bởi người dùng
5
Hệ thống kiểm tra người dùng có sách mượn quá hạn hay
không
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
20
1a
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
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
22
3.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
23
Kị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
24
Kị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
25
Ngoạ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