You are on page 1of 94

IT4490 - Thiết kế và xây dựng phần mềm

ĐẠI HỌC BÁCH KHOA HÀ NỘI


TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
------------

BÀI TẬP LỚN


MÔN: THIẾT KẾ VÀ XÂY DỰNG PHẦN MỀM

Đề tài: Quản lý thư viện công cộng

Nhóm : 31
Mã lớp học : 136821
Giáo viên hướng dẫn : ThS. Đỗ Văn Uy
Danh sách sinh viên thực hiện:

STT Họ tên Mã sinh viên


1 Lê Đức Anh 20193978
2 Nguyễn Đức Dũng 20194028
3 Lù Mạnh Thắng 20194167
4 Phạm Văn Hân 20194041

Hà Nội, tháng 11 năm 2022

Nhóm 31 1
IT4490 - Thiết kế và xây dựng phần mềm

MỤC LỤC
Contents
Chương 1: Xác định, thiết lập yêu cầu bài toán ............................................................... 8
1.1. Khảo sát, mô tả yêu cầu bài toán: ....................................................................... 8
1.2. Các hoạt động chính của hệ thống...................................................................... 9
1.2.1. Hoạt động mượn sách................................................................................... 9
1.2.2. Hoạt động trả sách ........................................................................................ 9
1.2.3. Hoạt động quản lý kho sách ......................................................................... 9
1.2.3.1. Kiểm kê trên giấy tờ ............................................................................... 9
1.2.3.2. Kiểm kê trong kho thực tế...................................................................... 9
1.2.3.3. Thống kê chênh lệch .............................................................................. 9
1.3. Đánh giá hiện trạng .............................................................................................. 9
1.3.1. Ưu điểm: ......................................................................................................... 9
1.3.2. Nhược điểm: ................................................................................................ 10
1.4. Sự cấp thiết xây dựng bài toán.......................................................................... 10
1.5. Khoanh vùng hệ thống ....................................................................................... 10
Chương 2: Đặc tả yêu cầu bài toán ................................................................................. 11
2.1. Giới thiệu chung ................................................................................................. 11
2.1.1. Các tác nhân của hệ thống ......................................................................... 11
2.1.1.1. Thủ thư: ................................................................................................. 11
2.1.1.2. Độc giả: ................................................................................................. 11
2.1.2. Các ca sử dụng của hệ thống ..................................................................... 11
2.1.2.1. Thủ thư: ................................................................................................. 11
2.1.2.2. Độc giả: ................................................................................................. 11
2.2. Biểu đồ ca sử dụng của hệ thống (Use case Diagram) .................................... 12
2.2.1. Biểu đồ Use case tổng quan ....................................................................... 12
2.2.2. Biểu đồ Use case phân rã chức năng ........................................................ 13
2.2.2.1. Thủ thư .................................................................................................. 13
2.2.2.2. Độc giả: ................................................................................................. 16
2.3. Đặc tả usecase .................................................................................................... 18
2.3.1. Thủ thư ......................................................................................................... 18
2.3.1.1. Nhóm usecase Quản lý tài khoản độc giả: ......................................... 18
Xem danh sách tài khoản độc giả ...................................................................... 18
Xem thông tin chi tiết tài khoản độc giả ............................................................ 19

Nhóm 31 2
IT4490 - Thiết kế và xây dựng phần mềm

Tìm kiếm tài khoản độc giả ................................................................................ 19


Xác nhận gia hạn tài khoản độc giả................................................................... 20
Xóa tài khoản độc giả ......................................................................................... 21
Chặn tài khoản độc giả ....................................................................................... 22
Kích hoạt tài khoản độc giả ............................................................................... 23
2.3.1.2. Nhóm usecase Quản lý mượn, trả sách: ............................................ 24
Quản lý mượn/trả sách độc giả ......................................................................... 24
Tìm kiếm tài khoản độc giả ................................................................................ 25
Xem chi tiết giá sách độc giả ............................................................................. 26
Xác nhận mượn sách ......................................................................................... 27
Xác nhận trả sách ............................................................................................... 27
2.3.1.3. Nhóm usecase Quản lý sách trong kho: ............................................. 28
Quản lý sách trong kho ...................................................................................... 28
Thêm sách ........................................................................................................... 29
Tìm kiếm sách ..................................................................................................... 30
Xem chi tiết giá sách .......................................................................................... 31
Xóa sách .............................................................................................................. 31
Chỉnh sửa thông tin sách ................................................................................... 32
2.3.2. Đọc giả: ........................................................................................................ 33
2.3.2.1. Đăng ký tài khoản: ................................................................................ 33
2.3.2.2. Chỉnh sửa thông tin cá nhân: .............................................................. 34
2.3.2.3. Đổi mật khẩu ......................................................................................... 35
2.3.2.4. Xem danh sách sách: ........................................................................... 36
2.3.2.5. Thêm sách vào giá sách ....................................................................... 37
2.3.2.6. Xóa sách khỏi giá sách ........................................................................ 37
2.3.2.7. Xem thông tin sách ............................................................................... 38
2.3.2.8. Xem giá sách ......................................................................................... 39
2.3.3. Người dùng chung: ..................................................................................... 40
2.3.3.1. Đăng nhập ............................................................................................. 40
Chương 3: Phân tích yêu cầu .......................................................................................... 41
3.1. Xây dựng biểu đồ tuần tự .................................................................................. 41
3.1.1. Thủ thư ......................................................................................................... 41
3.1.1.1. Quản lý tài khoản độc giả..................................................................... 41
Xem danh sách tài khoản độc giả............................................................................ 41
Xem chi tiết tài khoản độc giả ................................................................................ 42
Tìm kiếm tài khoản độc giả .................................................................................... 42

Nhóm 31 3
IT4490 - Thiết kế và xây dựng phần mềm

Xác nhận gia hạn tài khoản đọc giả ........................................................................ 43


Xóa tài khoản đọc giả............................................................................................. 43
Chặn tài khoản đọc giả .......................................................................................... 44
Kích hoạt tài khoản đọc giả .................................................................................... 44
3.1.1.2. Quản lý mượn/ trả sách........................................................................ 45
Trả sách ................................................................................................................ 45
Mượn sách ............................................................................................................ 46
3.1.1.3. Quản lý Kho sách ................................................................................. 47
Quản lý sách trong kho .......................................................................................... 47
Thêm sách ............................................................................................................. 47
Tìm kiếm sách ....................................................................................................... 48
Thay đổi sách ........................................................................................................ 48
Xem chi tiết giá sách .............................................................................................. 48
Xóa sách ................................................................................................................ 49
3.1.2. Độc giả.......................................................................................................... 50
3.1.2.1. Đăng nhập ............................................................................................. 50
3.1.2.2. Đăng ký.................................................................................................. 50
3.1.2.3. Đăng ký mượn sách ............................................................................. 51
3.1.2.4. Quên mật khẩu ...................................................................................... 51
3.1.2.5. Chỉnh sửa thông tin cá nhân ............................................................... 51
3.1.2.6. Xem thông tin sách ............................................................................... 52
3.1.2.7. Xóa sách khỏi giá ................................................................................. 53
3.1.2.8. Xem giá sách ......................................................................................... 53
3.2. Xây dựng biểu đồ giao tiếp (comunication diagram) ....................................... 54
3.2.1. Thủ thư ......................................................................................................... 54
3.2.1.1. Quản lý tài khoản độc giả..................................................................... 54
Xem danh sách tài khoản độc giả............................................................................ 54
Xem chi tiết tài khoản độc giả ................................................................................ 54
Tìm kiếm tài khoản độc giả .................................................................................... 55
Xác nhận gia hạn tài khoản đọc giả ........................................................................ 55
Xóa tài khoản đọc giả............................................................................................. 56
Chặn tài khoản đọc giả .......................................................................................... 56
Kích hoạt tài khoản đọc giả .................................................................................... 56
3.2.1.2. Quản lý mượn/ trả sách........................................................................ 57
Trả sách ................................................................................................................ 57

Nhóm 31 4
IT4490 - Thiết kế và xây dựng phần mềm

Mượn sách ............................................................................................................ 57


3.2.1.3. Quản lý Kho sách ................................................................................. 58
Quản lý sách trong kho .......................................................................................... 58
Thêm sách ............................................................................................................. 58
Tìm kiếm sách ....................................................................................................... 58
Thay đổi sách ........................................................................................................ 59
Xem chi tiết giá sách .............................................................................................. 59
Xóa sách ................................................................................................................ 59
3.2.2. Độc giả.......................................................................................................... 60
3.2.2.1. Đăng nhập ............................................................................................. 60
3.2.2.2. Đăng ký.................................................................................................. 60
3.2.2.3. Đăng ký mượn sách ............................................................................. 60
3.2.2.4. Quên mật khẩu ...................................................................................... 61
3.2.2.5. Chỉnh sửa thông tin cá nhân ............................................................... 61
3.3. Xây dựng biểu đồ lớp phân tích ........................................................................ 61
3.3.1. Xác định các lớp .......................................................................................... 61
3.3.2. Xác định các thuộc tính ............................................................................... 61
3.3.3. Xác định các phương thức ......................................................................... 62
3.3.4. Xác định liên kết .......................................................................................... 62
3.3.5. Biểu đồ lớp phân tích .................................................................................. 62
Chương 4: Thiết kế gói ..................................................................................................... 63
4.1. Tiêu chí đóng gói ................................................................................................ 63
4.2. Thiết kế gói .......................................................................................................... 64
4.2.1. Thiết kế gói client ............................................................................................ 64
4.2.2. Thiết kế gói server ........................................................................................... 64
Chương 5: Thiết kế chương trình .................................................................................... 65
5.1. Thiết kế chi tiếp lớp ............................................................................................ 65
5.1.1. Thiết kế chi tiếp lớp biên ............................................................................. 65
5.1.1.1. Thủ thư .................................................................................................. 65
- V_giao diện danh sách đọc giả ................................................................... 65
- V_Giao giện gia hạn tài khoản đọc giả ....................................................... 65
- V_Giao diện kích hoạt tài khoản đọc giả .................................................... 66
5.1.1.2. Đọc giả................................................................................................... 66
- V_giá sách .................................................................................................... 66
- V_trang cá nhân ........................................................................................... 66
- V_thông tin cá nhân..................................................................................... 67

Nhóm 31 5
IT4490 - Thiết kế và xây dựng phần mềm

- V_thông tin sách .......................................................................................... 67


- V_MuonSach ................................................................................................ 68
- V_Sach.......................................................................................................... 68
- V_DanhSachSach ........................................................................................ 68
- V_TraSach .................................................................................................... 69
- V_TrangChu ................................................................................................. 69
- V_Doimatkhau .............................................................................................. 70
- V_Dangnhap ................................................................................................. 71
5.1.2. Thiết kế chi tiếp lớp điều khiển................................................................... 72
5.1.2.1. C_giá sách............................................................................................. 72
5.1.2.2. C_tài khoản đọc giả .............................................................................. 72
5.1.2.3. C_thông tin cá nhân ............................................................................. 72
5.1.2.4. C_sách ................................................................................................... 72
5.1.2.5. C_tài khoản ........................................................................................... 73
5.1.2.6. C_đổi mật khẩu ..................................................................................... 73
5.1.3. Thiết kế chi tiếp lớp thực thể ...................................................................... 73
5.1.3.1. M_giá sách ............................................................................................ 73
5.1.3.2. M_tài khoản đọc giả.............................................................................. 74
5.1.3.3. M_thông tin cá nhân ............................................................................. 74
5.1.3.4. M_sách .................................................................................................. 74
5.1.3.5. M_tài khoản ........................................................................................... 75
5.2. Thiết kế Cơ sở dữ liệu ........................................................................................ 75
5.2.1. Các bảng Cơ sở dữ liệu .............................................................................. 75
5.2.2.1. Sach ....................................................................................................... 75
5.2.2.2. GiaSach ................................................................................................. 76
5.2.2.3. User ....................................................................................................... 76
5.2.2.4. Thongtincanhan .................................................................................... 76
5.2.2.5. Taikhoandocgia .................................................................................... 76
5.2.2.6. LoaiGoiGiaHan ...................................................................................... 77
5.2.3. Lược đồ Cơ sở dữ liệu................................................................................ 78
5.3. Thiết kế Giao diện ............................................................................................... 79
5.3.1. Đăng ký......................................................................................................... 79
5.3.2. Đăng nhập .................................................................................................... 79
5.3.3. Trang chủ ..................................................................................................... 80
5.3.3.1. Thủ thư .................................................................................................. 80
5.3.3.2. Đọc giả................................................................................................... 81

Nhóm 31 6
IT4490 - Thiết kế và xây dựng phần mềm

5.3.4. Trả sách ........................................................................................................ 82


5.3.5. Quản lý sách ................................................................................................ 83
5.3.6. Quàn lý tài khoản ......................................................................................... 84
5.3.7. Quàn lý tài khoản ......................................................................................... 85
Chương 6: Thiết kế kiểm thử ........................................................................................... 86
6.1. Kiểm thử chức năng ........................................................................................... 86
6.1.1. Kiểm thử chức năng Đăng nhập................................................................. 86
6.1.2. Kiểm thử chức năng Đăng ký tài khoản đọc giả ....................................... 86
6.1.3. Kiểm thử chức năng Quên mật khẩu ......................................................... 87
6.1.4. Kiểm thử chức năng Quản lý tài khoản đọc giả ........................................ 87
6.1.4.1. Xem danh sách tài khoản ..................................................................... 87
6.1.4.2. Tìm kiếm tài khoản đọc giả .................................................................. 87
6.1.4.3. Chặn tài khoản đọc giả ......................................................................... 88
6.1.4.4. Xóa tài khoản đọc giả ........................................................................... 88
6.1.4.5. Xác nhận gia hạn tài khoản đọc giả .................................................... 88
6.1.4.6. Xem chi tiết tài khoản đọc giả .............................................................. 88
6.1.5. Kiểm thử chức năng Quản lý mượn/trả sách đọc giả ............................... 88
6.1.5.1. Xác nhận mượn sách ........................................................................... 88
6.1.5.2. Xác nhận trả sách ................................................................................. 89
6.1.5.3. Xem chi tiết giá sách đọc giả ............................................................... 89
6.1.6. Kiểm thử chức năng Quản lý kho sách...................................................... 89
6.1.6.1. Thêm sách ............................................................................................. 89
6.1.6.2. Xóa sách ................................................................................................ 90
6.1.6.3. Tìm kiếm sách ....................................................................................... 90
6.1.6.4. Xem chi tiết sách .................................................................................. 90
6.1.6.5. Chỉnh sửa thông tin sách ..................................................................... 90
6.1.7. Kiểm thử chức năng Đăng xuất .................................................................. 91
6.1.8. Kiểm thử chức năng Quản lý tài khoản ..................................................... 91
6.1.8.1. Chỉnh sửa thông tin cá nhân ............................................................... 91
6.1.8.2. Đổi mật khẩu ......................................................................................... 91
6.1.9. Kiểm thử chức năng Mượn sách................................................................ 91
6.1.10. Kiểm thử chức năng Quản lý giá sách ................................................... 92
6.1.10.1. Xem danh sách sách ............................................................................ 92
6.1.10.2. Thêm sách vào giá ................................................................................ 92
6.1.10.3. Xóa khỏi giá .......................................................................................... 92
6.1.10.4. Xem giá sách ......................................................................................... 92

Nhóm 31 7
IT4490 - Thiết kế và xây dựng phần mềm

6.2. Kiểm thử phi chức năng..................................................................................... 92

Chương 1: Xác định, thiết lập yêu cầu bài


toán
1.1. Khảo sát, mô tả yêu cầu bài toán:

Một thư viện công cộng mong muốn phát triển một ứng dụng web cho phép độc giả có thể
mượn sách online và đăng ký tài khoản thành viên thư viện theo phí thuê theo tháng hoặc
theo năm. Các yêu cầu cơ bản như sau:

➢ Độc giả đăng ký tài khoản theo hình thức online, điền các thông tin cơ bản, có thể
đăng ký trả theo tháng hoặc trả theo năm, trong lần đầu tiên đến mượn sách sau khi
đăng ký tài khoản, độc giả sẽ đến thư viện để tiến hành thanh toán phí cọc, phí định
kỳ (theo tháng hoặc theo năm) để được xác nhận đăng ký thành công.
➢ Độc giả không đăng ký thành viên sẽ không thể mượn sách.
➢ Mỗi lần độc giả đến mượn sách sách, thủ thư sẽ kiểm tra xem tài khoản của độc giả
còn hiệu lực hay không.Tài khoản còn hiệu lực là tài khoản của thành viên đã đóng
phí định kỳ. Nếu không tài khoản của độc giả không còn hiệu lực, độc giả có hai lựa
chọn: tiếp tục đóng tiền để duy trì tài khoản; hoặc hủy tài khoản và được nhận lại
tiền cọc mượn thẻ
➢ Độc giả được phép mượn tối đa 5 quyển sách từ thư viện. Muốn mượn tiếp phải trả
lại sách đang mượn sao cho số sách mượn tối đa là 5.
➢ Độc giả có thể truy cập các đầu sách theo danh mục hoặc tìm kiếm theo tên, theo tác
giả, theo nhà xuất bản. Khi đã lựa chọn được sách mong muốn, độc giả lựa chọn
thêm sách vào giá sách và tuỳ tình trạng số lượng sách còn sẵn có trong thư viện
hay không mà độc giả có được thêm sách đó vào giá sách của mình được hay
không. Khi thêm sách vào giá sách, độc giả có thể đến thư viện để mượn sách có
trong giá sách của mình. Sách được ở trong giá sách 1 ngày kể từ khi thêm vào giá
sách. Số sách tối đa trong giá sách sẽ phụ thuộc vào số sách đang mượn, ví dụ nếu
độc giả đang mượn 1 cuốn sách từ thư viện thì số sách tối đa có thể thêm vào giá
sách sẽ là 4. Độc giả có thể xóa sách ra khỏi giả sách của mình.
➢ Thủ thư có thể xác nhận sách mà độc giả đã mượn.
➢ Độc giả được phép mượn sách đọc trong thời gian tối đa là 20 ngày, kể từ ngày độc
giả mượn sách. Độc giả sẽ phải hoàn trả lại sách cho thư viện trước khi hết hạn, nếu
không tài khoản sẽ bị đánh dấu vi phạm. Vi phạm 3 lần sẽ bị block tài khoản vĩnh
viễn. Nếu sau thời gian hết hạn 30 ngày, độc giả vẫn không hoàn trả sách thì cũng sẽ
bị block tài khoản vĩnh viễn. Khi tài khoản bị block vĩnh viễn, toàn bộ số tiền phí
trong thẻ sẽ không được hoàn trả lại cho khách hàng.

Nhóm 31 8
IT4490 - Thiết kế và xây dựng phần mềm

➢ Thư viện cũng yêu cầu nhóm phát triển xây dựng các chức năng để quản lý độc giả,
quản lý sách và tác giả, cũng như nhà xuất bản. Các nhóm chức năng quản lý này có
thể cần trao đổi thêm để lên kế hoạch chi tiết cho ứng dụng trong quá trình phát
triển.

1.2. Các hoạt động chính của hệ thống

1.2.1. Hoạt động mượn sách


Đọc giả đến thư viện mượn sách mình muốn mượn, thủ thư ghi chép thông tin
mượn vào sổ ghi chép, kèm theo đó độc giả cần đặt cọc một số tiền mặt để có thể
mượn sách mang về
Thủ thư lưu giữ tiền cọc, thông tin giấy tờ vào trong ngăn kéo, nơi quy định

1.2.2. Hoạt động trả sách


Độc giả đến trả sách, thủ thư kiểm tra thông tin mượn sách trong sổ ghi chép do
độc giả cung cấp, thủ thư kiểm tra số lượng sách trả có đầy đủ so với lúc mượn
không, nếu chưa trả đủ, thủ thư ghi lại thông tin ngày trả, số sách đã trả, số sách
còn thiếu

1.2.3. Hoạt động quản lý kho sách

1.2.3.1. Kiểm kê trên giấy tờ


Sau định kì hàng tuần, hàng tháng, hàng năm, thủ thư kiểm kê lại số lượng
sách đã nhập trên các loại giấy tờ liên quan

1.2.3.2. Kiểm kê trong kho thực tế


Ngoài kiểm kê trên giấy tờ, thủ thư còn phải kiểm kê lại số lượng sách hiện
đang trưng trên giá của thư viện cũng như số lượng sách đang cho mượn được
ghi trên sổ thống kê mượn sách của thử thư.

1.2.3.3. Thống kê chênh lệch


Từ số lượng thống kê được trên thực tế và trên giấy tờ, người thủ thư sẽ tính
toán chênh lệch, tiến hanh kiểm tra nguyên nhân nếu lượng chênh lệch quá lớn

1.3. Đánh giá hiện trạng

1.3.1. Ưu điểm:
• Thư viện công cộng là một thư viện với quy mô không lớn, mở ra với mục đích
phi lợi nhuận, cho những người yêu thích sách,

Nhóm 31 9
IT4490 - Thiết kế và xây dựng phần mềm

• Thư viện này chỉ có một chi nhánh duy nhất, số lượng đầu sách không lớn,
chủng loại không đa dạng, nhiều, có thể quản lý dễ dàng
• Thư viện có các loại sách về một vài lĩnh vực cụ thể: Khoa học, Toán học, Sinh
học, Truyện, Tiểu thuyết,…
• Thư viện chỉ có một người là thủ thư duy nhất, nếu người này nghỉ thì sẽ tuyển
người mới

1.3.2. Nhược điểm:


• Công tác quản lý mượn sách, trả sách còn thủ công, thô sơ
• Độc giả cập nhật thông tin về số lượng sách, các loại sách mà thư viện hiện có
khó khăn
• Thủ thư khó thống kê các đầu sách hiện có, các đầu sách thêm vào, cũng như
nhu cầu nhập sách mỗi khi mượn sách
• Khó biết được số lượng sách nào được mượn nhiều nhất, thị hiếu của độc giả
để lựa chọn loại sách cần nhập nhiều, sách cần nhập ít
• Việc đặt cọc tiền mặt khi mượn sách là bất tiện và không còn phù hợp trong
thời đại số hóa hiện nay khi hầu hết người dân đều có thẻ ngân hàng, cũng như
thủ thư phải quản lý lượng tiền mặt gây mất mát không cần thiết
• Việc lưu trữ thông tin độc giả dễ gây mất mát dữ liệu khi lưu vào sổ giấy, mỗi
lần một người đọc giả cũ đến mượn sách thì sẽ không tận dụng được những
lần mượn trước đó, gây tốn thời gian chi phí.

1.4. Sự cấp thiết xây dựng bài toán


Qua những phân tích, đánh giá trên về thực trạng ở trên, chủ thư viện nhận thấy việc
quản lý theo phương thức thủ công. Việc tin học hóa hoạt động quản lý thư viện sẽ
đảm bảo cho hệ thống lưu trữ và tổ chức thông tin khối lượng lớn một cách khoa học,
giúp cho thủ thư truy cập, tìm kiếm, tra cứu thông tin, quản lý khách hàng và thống kê
dữ liệu nhanh chóng, chính xác giúp chủ thư viện nắm bắt nhanh chóng.

1.5. Khoanh vùng hệ thống


Hệ thống cần đáp ứng được các yêu cầu
- Có khả năng lưu trữ dữ liệu lâu dài,
- Kiểm kê, thống kê dễ dàng hơn
- Giải quyết các vấn đề nhập sách vào kho
- Giải quyết việc quản lý mượn sách, trả sách dễ dàng

Nhóm 31 10
IT4490 - Thiết kế và xây dựng phần mềm

Chương 2: Đặc tả yêu cầu bài toán


2.1. Giới thiệu chung

2.1.1. Các tác nhân của hệ thống

2.1.1.1. Thủ thư:


Nhân viên quản lý thư viện, chỉ gồm 1 nhân viên, quản lý các hoạt động
mượn trả sách, nhập kho

2.1.1.2. Độc giả:


Là những người yêu sách, đến mượn sách của thư viện, cung cấp các thông
tin cá nhân cần thiết cho hoạt động mượn sách

2.1.2. Các ca sử dụng của hệ thống

2.1.2.1. Thủ thư:


- Đăng nhập: Cho phép thủ thư đăng nhập vào hệ thống
- Đăng xuất: Cho phép thủ thư đăng xuất khỏi hệ thống
- Quản lý tài khoản độc giả: Cho phép thủ thư quản lý các thông tin về tài
khoản độc giả: Xem danh sách tài khoản, khóa tài khoản, xóa tài khoản,
tìm kiếm tài khoản, xác nhận đăng kí tài khoản
- Quản lý mượn/trả sách độc giả: Cho phép thủ thư quản lý việc mượn trả
sách của độc giả mỗi lần độc giả thực hiện mượn trả sách tại thư viện
- Quản lý sách trong kho: Cho phép thủ thư thêm, sửa, xóa các đầu sách, các
loại sách, nhập kho
- Quên mật khẩu: Cho phép thủ thư lấy lại mật khẩu tài khoản thủ thư khi họ
quên mật khẩu

2.1.2.2. Độc giả:


- Đăng ký: Cho phép độc giả tạo tài khoản độc giả vào hệ thống
- Đăng xuất: Cho phép độc giả thoát khỏi tài khoản khi không dùng đến
- Đăng nhập: Cho phép độc giả truy cập vào tài khoản dưới tư cách độc giả
để thực hiện các chức năng cần thiết
- Quản lý tài khoản: Cho phép độc giả thay đổi thông tin tài khoản, mật
khẩu của mình
- Mượn sách: Cho phép độc giả thực hiện thao tác thêm sách muốn mượn
vào giá sách trước khi đến thư viện thực hiện việc mượn sách

Nhóm 31 11
IT4490 - Thiết kế và xây dựng phần mềm

2.2. Biểu đồ ca sử dụng của hệ thống (Use case Diagram)

2.2.1. Biểu đồ Use case tổng quan

Nhóm 31 12
IT4490 - Thiết kế và xây dựng phần mềm

2.2.2. Biểu đồ Use case phân rã chức năng

2.2.2.1. Thủ thư

- Quản lý tài khoản độc giả:

Nhóm 31 13
IT4490 - Thiết kế và xây dựng phần mềm

- Quản lý mượn/ trả sách:

- Quản lý sách trong kho:

Nhóm 31 14
IT4490 - Thiết kế và xây dựng phần mềm

Nhóm 31 15
IT4490 - Thiết kế và xây dựng phần mềm

2.2.2.2. Độc giả:

- Đăng ký:

- Quản lý tài khoản:

Nhóm 31 16
IT4490 - Thiết kế và xây dựng phần mềm

- Quản lý giá sách:

Nhóm 31 17
IT4490 - Thiết kế và xây dựng phần mềm

2.3. Đặc tả usecase

2.3.1. Thủ thư

2.3.1.1. Nhóm usecase Quản lý tài khoản độc giả:

Xem danh sách tài khoản độc giả

Mã Use case UC-1.1-01

Tên Use case Xem danh sách tài khoản độc giả

Mục đích Use Cho phép thủ thư xem danh sách tài khoản độc giả trong hệ thống
case

Tác nhân Thủ thư

Sự kiện kích hoạt Thủ thư click vào nút (biểu tượng) xem danh sách tài khoản độc giả

Tiền điều kiện Thủ thư đã đăng nhập vào hệ thống bằng tài khoản thủ thư được cấp

Hậu điều kiện Thông tin danh sách tài khoản độc giả hiển thị lên giao diện của thủ thư

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Click vào nút (biểu tượng) xem danh sách tài
khoản độc giả

2. Hệ thống Truy vấn thông tin tài khoản người dùng trong cơ
sở dữ liệu

3. Hệ thống Hiển thị ra màn hình của Thủ thư kết quả truy vấn

Luồng sự kiện Không có


thay thế

Luồng sự kiện STT Thực hiện bởi Hành động


ngoại lệ
2a. Hệ thống Quá trình truy vấn xảy ra lỗi do mất mạng, mất kết
nối server

3a. Hệ thống Hiển thị thông báo lỗi hệ thống, yêu cầu
người dùng kiểm tra kết nối

Nhóm 31 18
IT4490 - Thiết kế và xây dựng phần mềm

Xem thông tin chi tiết tài khoản độc giả

Mã Use case UC-1.1-02

Tên Use case Xem thông tin chi tiết tài khoản độc giả

Mục đích Use Cho phép thủ thư xem thông tin chi tiết tài khoản độc giả trong hệ thống
case

Tác nhân Thủ thư

Sự kiện kích hoạt Thủ thư click vào nút (biểu tượng) xem thông tin chi tiết tài khoản độc giả

Tiền điều kiện Thủ thư đã đăng nhập vào hệ thống bằng tài khoản thủ thư được cấp, đang trong
giao diện “Xem danh sách độc giả”, hoặc đang trong giao diện hiển thị kết quả
“Tìm kiếm tài khoản độc giả”

Hậu điều kiện Thông tin chi tiết về tài khoản độc giả hiển thị lên giao diện của thủ thư

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Click vào nút (biểu tượng) xem thông tin chi tiết
tài khoản độc giả

2. Hệ thống Truy vấn thông tin tài khoản người dùng trong cơ
sở dữ liệu theo id người dùng tương ứng

3. Hệ thống Hiển thị ra màn hình thông tin chi tiết tài khoản
độc giả của Thủ thư kết quả truy vấn

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
2a. Hệ thống Quá trình truy vấn xảy ra lỗi do mất mạng, mất kết
nối server

3a. Hệ thống Hiển thị thông báo lỗi hệ thống, yêu cầu người
dùng kiểm tra kết nối

Tìm kiếm tài khoản độc giả

Mã Use case UC-1.1-03

Tên Use case Xem thông tin chi tiết tài khoản độc giả

Nhóm 31 19
IT4490 - Thiết kế và xây dựng phần mềm

Mục đích Use Cho phép thủ thư xem thông tin chi tiết tài khoản độc giả trong hệ thống
case

Tác nhân Thủ thư

Sự kiện kích hoạt Thủ thư nhập thông tin tìm kiếm và click vào nút (biểu tượng) tìm kiếm tài
khoản độc giả

Tiền điều kiện Thủ thư đã đăng nhập vào hệ thống bằng tài khoản thủ thư được cấp, đang trong
giao hiện xem danh sách độc giả

Hậu điều kiện Kết quả danh sách tài khoản độc giả phù hợp với yêu cầu tìm kiếm hiển thị lên
giao diện của thủ thư

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Nhập thông tin tìm kiếm và click vào nút (biểu
tượng) tìm kiếm tài khoản độc giả
tài khoản độc giả

2. Hệ thống Tìm kiếm tài khoản người dùng trong cơ sở dữ


liệu theo dữ liệu thủ thư cung cấp trong ô tìm kiếm

3. Hệ thống Hiển thị ra màn hình danh sách tài khoản độc giả
tìm được

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
2a. Hệ thống Quá trình truy vấn xảy ra lỗi do mất mạng, mất kết
nối server

3a. Hệ thống Hiển thị thông báo lỗi hệ thống, yêu cầu người
dùng kiểm tra kết nối

Xác nhận gia hạn tài khoản độc giả

Mã Use case UC-1.1-04

Tên Use case Xác nhận gia hạn tài khoản độc giả

Mục đích Use Cho phép thủ thư xác nhận gia hạn tài khoản của độc giả sau khi độc giả nộp
case tiền gia hạn cho thủ thư

Tác nhân Thủ thư

Sự kiện kích hoạt Thủ thư click vào nút (biểu tượng) gia hạn tài khoản độc giả

Nhóm 31 20
IT4490 - Thiết kế và xây dựng phần mềm

Tiền điều kiện Thủ thư đã đăng nhập vào hệ thống bằng tài khoản thủ thư được cấp, đang trong
giao diện xem chi tiết thông tin độc giả

Hậu điều kiện Hệ thống ghi nhận thông tin gia hạn vào CSDL, tài khoản được gia hạn thay đổi
thời gian tương ứng

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Click vào nút (biểu tượng) gia hạn tài khoản độc
giả

2. Hệ thống Hiển thị lựa chọn số thời gian gia hạn (tùy vào độc
giả yêu cầu thủ thư)

3. Thủ thư Chọn thời gian tương ứng và xác nhận

4. Hệ thống Ghi nhận và cập nhật vào trong CSDL, tài khoản
được gia hạn thay đổi thời gian tương ứng

5. Hệ thống Thông báo gia hạn thành công

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
4a. Hệ thống Quá trình truy vấn xảy ra lỗi do mất mạng, mất kết
nối server

5a. Hệ thống Hiển thị thông báo lỗi hệ thống, yêu cầu người
dùng kiểm tra kết nối, gia hạn thất bại

Xóa tài khoản độc giả

Mã Use case UC-1.1-05

Tên Use case Xóa tài khoản độc giả

Mục đích Use Cho phép thủ thư xóa tài khoản độc giả trong hệ thống
case

Tác nhân Thủ thư

Sự kiện kích hoạt Thủ thư click vào nút (biểu tượng) xóa tài khoản độc giả

Tiền điều kiện Thủ thư đã đăng nhập vào hệ thống bằng tài khoản thủ thư được cấp, đang trong
giao diện xem chi tiết tài khoản độc giả

Nhóm 31 21
IT4490 - Thiết kế và xây dựng phần mềm

Hậu điều kiện Tài khoản độc giả không còn tồn tại trong CSDL

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Click vào nút (biểu tượng) xóa tài khoản độc giả

2. Hệ thống Hiện thị khung yêu cầu thủ thư xác nhận lại có
chắc muốn xóa không

3. Thủ thư Xác nhận xóa

4. Hệ thống Xóa tài khoản độc giả trong CSDL

5 Hệ thống Hiển thị thông báo xóa tài khoản người dùng thành
công

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
3a. Thủ thư Chọn hủy xóa

4a. Hệ thống Quay lại hiển thị giao diện chi tiết tài tài khoản,
kết thúc usecase, xóa tài khoản thất bại

Chặn tài khoản độc giả

Mã Use case UC-1.1-06

Tên Use case Chặn tài khoản độc giả

Mục đích Use Cho phép thủ thư chặn tài khoản độc giả trong hệ thống
case

Tác nhân Thủ thư

Sự kiện kích hoạt Thủ thư click vào nút (biểu tượng) chặn tài khoản độc giả

Tiền điều kiện Thủ thư đã đăng nhập vào hệ thống bằng tài khoản thủ thư được cấp, đang trong
giao hiện chi tiết tài khoản độc giả

Hậu điều kiện Tài khoản độc giả bị chặn, hệ thống ghi nhận thông tin độc giả, khiến độc giả
không thể đăng kí lại bằng thông tin đó (CMND, email, …)

Luồng sự kiện STT Thực hiện bởi Hành động

Nhóm 31 22
IT4490 - Thiết kế và xây dựng phần mềm

chính 1. Thủ thư Click vào nút (biểu tượng) chặn tài khoản độc giả

2. Hệ thống Hiện thị khung yêu cầu thủ thư xác nhận lại có
chắc muốn chặn không

3. Thủ thư Xác nhận chặn

4. Hệ thống Ghi nhận tài khoản độc giả vị chặn trong CSDL

5 Hệ thống Hiển thị thông báo chặn tài khoản người dùng
thành công

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
3a. Thủ thư Chọn hủy chặn

4a. Hệ thống Quay lại hiển thị giao diện chi tiết tài tài khoản,
kết thúc usecase, chặn tài khoản thất bại

Kích hoạt tài khoản độc giả

Mã Use case UC-1.1-07

Tên Use case Kích hoạt tài khoản độc giả

Mục đích Use Cho phép thủ thư kích hoạt tài khoản độc giả trong hệ thống
case

Tác nhân Thủ thư

Sự kiện kích hoạt Thủ thư click vào nút (biểu tượng) kích hoạt tài khoản độc giả

Tiền điều kiện Thủ thư đã đăng nhập vào hệ thống bằng tài khoản thủ thư được cấp, đang trong
giao hiện chi tiết tài khoản độc giả
Tài khoản độc giả ở chế độ mới đăng ký, chưa được kích hoạt

Hậu điều kiện Tài khoản độc giả được kích hoạt

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Click vào nút (biểu tượng) kích hoạt tài khoản độc
giả

Nhóm 31 23
IT4490 - Thiết kế và xây dựng phần mềm

2. Hệ thống Hiển thị khung yêu cầu xác nhận kích hoạt tài
khoản

3. Thủ thư Chọn xác nhận

4. Hệ thống Ghi nhận và cập nhật vào trong CSDL, tài khoản
được gia hạn thay đổi thời gian tương ứng

5. Hệ thống Thông báo gia hạn thành công

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
3a. Thủ thư Chọn hủy bỏ

4a. Hệ thống Quay lại hiển thị giao diện chi tiết tài tài khoản,
kết thúc usecase, kích hoạt tài khoản thất bại

2.3.1.2. Nhóm usecase Quản lý mượn, trả sách:

Quản lý mượn/trả sách độc giả

Mã Use case UC-1.2-01

Tên Use case Quản lý mượn/trả sách độc giả

Mục đích Use Cho phép thủ thư xem danh sách các độc giả đang mượn sách
case

Tác nhân Thủ thư

Sự kiện kích hoạt Thủ thư click vào nút (biểu tượng) quản lý mượn/trả sách độc giả

Tiền điều kiện Thủ thư đã đăng nhập vào hệ thống bằng tài khoản thủ thư được cấp

Hậu điều kiện

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Click vào nút (biểu tượng) quản lý mượn/trả sách
độc giả

2. Hệ thống Truy vấn thông tin tài khoản người dùng trong cơ
sở dữ liệu

Nhóm 31 24
IT4490 - Thiết kế và xây dựng phần mềm

3. Hệ thống Hiển thị ra màn hình giao diện quản lý mượn/trả


sách cho thủ thư

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
2a. Hệ thống Quá trình truy vấn xảy ra lỗi do mất mạng, mất kết
nối server

3a. Hệ thống Hiển thị thông báo lỗi hệ thống, yêu cầu người
dùng kiểm tra kết nối

Tìm kiếm tài khoản độc giả

Mã Use case UC-1.2-02

Tên Use case Xem thông tin chi tiết tài khoản độc giả

Mục đích Use Cho phép thủ thư xem thông tin chi tiết tài khoản độc giả trong hệ thống
case

Tác nhân Thủ thư

Sự kiện kích hoạt Thủ thư nhập thông tin tìm kiếm và click vào nút (biểu tượng) tìm kiếm tài
khoản độc giả

Tiền điều kiện Thủ thư đã đăng nhập vào hệ thống bằng tài khoản thủ thư được cấp, đang trong
giao hiện xem danh sách độc giả

Hậu điều kiện Kết quả danh sách tài khoản độc giả phù hợp với yêu cầu tìm kiếm hiển thị lên
giao diện của thủ thư

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Nhập thông tin tìm kiếm và click vào nút (biểu
tượng) tìm kiếm tài khoản độc giả
tài khoản độc giả

2. Hệ thống Tìm kiếm tài khoản người dùng trong cơ sở dữ


liệu theo dữ liệu thủ thư cung cấp trong ô tìm kiếm

3. Hệ thống Hiển thị ra màn hình danh sách tài khoản độc giả
tìm được

Luồng sự kiện STT Thực hiện bởi Hành động

Nhóm 31 25
IT4490 - Thiết kế và xây dựng phần mềm

thay thế 2a. Hệ thống Quá trình truy vấn xảy ra lỗi do mất mạng, mất kết
nối server

3a. Hệ thống Hiển thị thông báo lỗi hệ thống, yêu cầu người
dùng kiểm tra kết nối

Xem chi tiết giá sách độc giả

Mã Use case UC-1.2-03

Tên Use case Xem chi tiết giá sách độc giả

Mục đích Use Cho phép thủ thư xem danh sách các độc giả đang mượn sách
case

Tác nhân Thủ thư

Sự kiện kích hoạt Thủ thư click vào một độc giả

Tiền điều kiện Thủ thư đã ở giao diện quản lý mượn/trả sách độc giả

Hậu điều kiện

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Click vào vào một độc gải

2. Hệ thống Truy vấn thông tin tài khoản người dùng trong cơ
sở dữ liệu

3. Hệ thống Hiển thị giao diện xem chi tiết giá sách độc giả

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
2a. Hệ thống Quá trình truy vấn xảy ra lỗi do mất mạng, mất kết
nối server

3a. Hệ thống Hiển thị thông báo lỗi hệ thống, yêu cầu người
dùng kiểm tra kết nối

Nhóm 31 26
IT4490 - Thiết kế và xây dựng phần mềm

Xác nhận mượn sách

Mã Use case UC-1.2-04

Tên Use case Xác nhận mượn sách

Mục đích Use Cho phép thủ thư xác nhận yêu cầu mượn sách của độc giả
case

Tác nhân Thủ thư

Sự kiện kích hoạt Thủ thư click vào nút (biểu tượng) xác nhận mượn sách

Tiền điều kiện Thủ thư đã đăng nhập vào giao diện xem chi tiết giá sách độc giả

Hậu điều kiện

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Click vào nút (biểu tượng) xác nhận mượn sách

2. Hệ thống Hiển thị thông báo thành công, quay về giao diện
xem chi tiết giá sách độc giả

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
2a. Hệ thống Quá trình truy vấn xảy ra lỗi do mất mạng, mất kết
nối server

3a. Hệ thống Hiển thị thông báo lỗi hệ thống, yêu cầu người
dùng kiểm tra kết nối

Xác nhận trả sách

Mã Use case UC-1.2-05

Tên Use case Xác nhận trả sách

Mục đích Use Cho phép thủ thư xác nhận yêu cầu trả sách của độc giả
case

Tác nhân Thủ thư

Nhóm 31 27
IT4490 - Thiết kế và xây dựng phần mềm

Sự kiện kích hoạt Thủ thư click vào nút (biểu tượng) xác nhận trả sách

Tiền điều kiện Thủ thư đã đăng nhập vào giao diện xem chi tiết giá sách độc giả

Hậu điều kiện

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Click vào nút (biểu tượng) xác nhận trả sách

2. Hệ thống Hiển thị thông báo thành công, quay về giao diện
xem chi tiết giá sách độc giả

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
2a. Hệ thống Quá trình truy vấn xảy ra lỗi do mất mạng, mất kết
nối server

3a. Hệ thống Hiển thị thông báo lỗi hệ thống, yêu cầu người
dùng kiểm tra kết nối

2.3.1.3. Nhóm usecase Quản lý sách trong kho:

Quản lý sách trong kho

Mã Use case UC-1.3-01

Tên Use case Quản lý sách trong kho

Mục đích Use Cho phép thủ thư xem danh sách sách sách trong kho
case

Tác nhân Thủ thư

Sự kiện kích hoạt Thủ thư click vào nút (biểu tượng) quản lý sách trong kho

Tiền điều kiện Thủ thư đã đăng nhập vào hệ thống bằng tài khoản thủ thư được cấp

Hậu điều kiện Thông tin danh sách tài khoản độc giả hiển thị lên giao diện của thủ thư

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Click vào nút (biểu tượng) xem sách sách trong
kho

Nhóm 31 28
IT4490 - Thiết kế và xây dựng phần mềm

2. Hệ thống Truy vấn thông tin tài khoản người dùng trong cơ
sở dữ liệu

3. Hệ thống Hiển thị giao diện quản lý danh sách trong kho

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
2a. Hệ thống Quá trình truy vấn xảy ra lỗi do mất mạng, mất kết
nối server

3a. Hệ thống Hiển thị thông báo lỗi hệ thống, yêu cầu người
dùng kiểm tra kết nối

Thêm sách

Mã Use case UC-1.3-02

Tên Use case Thêm sách

Mục đích Use Cho phép thủ thư thêm sách vào kho
case

Tác nhân Thủ thư

Sự kiện kích hoạt Thủ thư click vào nút (biểu tượng) thêm sách

Tiền điều kiện Thủ thư đã đăng nhập vào giao diện quản lý sách trong kho

Hậu điều kiện

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Click vào nút (biểu tượng) thêm sách

2. Hệ thống Hiển thị giao diện thêm sách

3 Thủ thư Nhập thông tin các trường

4 Hệ thống Thông báo thành công, quay về giao diện sách


trong kho

Luồng sự kiện STT Thực hiện bởi Hành động

Nhóm 31 29
IT4490 - Thiết kế và xây dựng phần mềm

thay thế 2a. Hệ thống Quá trình truy vấn xảy ra lỗi do mất mạng, mất kết
nối server

3a. Hệ thống Hiển thị thông báo lỗi hệ thống, yêu cầu người
dùng kiểm tra kết nối

Tìm kiếm sách

Mã Use case UC-1.3-03

Tên Use case Xem thông tin chi tiết tài khoản độc giả

Mục đích Use Cho phép thủ thư xem thông tin chi tiết tài khoản độc giả trong hệ thống
case

Tác nhân Thủ thư

Sự kiện kích hoạt Click vào nút (biểu tượng) tìm kiếm sách

Tiền điều kiện Đang ở giao diện quản lý sách trong kho

Hậu điều kiện

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Click vào nút (biểu tượng) tìm kiếm sách

2. Hệ thống Hiển thị giao diện tìm kiếm sách

3. Thủ thư Nhập vào các trường cần tìm kiếm và chọn xác
nhận

4 Hệ thống Hiển thị lại giao diện quản lý sách trong kho với
danh sách với kết quả là danh sách sách theo yêu
cầu

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
2a. Hệ thống Quá trình truy vấn xảy ra lỗi do mất mạng, mất kết
nối server

Nhóm 31 30
IT4490 - Thiết kế và xây dựng phần mềm

3a. Hệ thống Hiển thị thông báo lỗi hệ thống, yêu cầu người
dùng kiểm tra kết nối

Xem chi tiết giá sách

Mã Use case UC-1.3-04

Tên Use case Xem chi tiết giá sách

Mục đích Use Cho phép thủ thư xem chi tiết thông tin của sách
case

Tác nhân Thủ thư

Sự kiện kích hoạt Thủ thư click vào một hàng sách

Tiền điều kiện Thủ thư đã ở giao diện quản lý mượn/trả sách độc giả

Hậu điều kiện

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Click vào vào một hàng sách

2. Hệ thống Truy vấn thông tin tài khoản người dùng trong cơ
sở dữ liệu

3. Hệ thống Hiển thị giao diện xem chi tiết thông tin sách

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
2a. Hệ thống Quá trình truy vấn xảy ra lỗi do mất mạng, mất kết
nối server

3a. Hệ thống Hiển thị thông báo lỗi hệ thống, yêu cầu người
dùng kiểm tra kết nối

Xóa sách

Nhóm 31 31
IT4490 - Thiết kế và xây dựng phần mềm

Mã Use case UC-1.3-05

Tên Use case Xóa trả sách

Mục đích Use Cho phép thủ thư xóa sách ra khỏi kho
case

Tác nhân Thủ thư

Sự kiện kích hoạt Thủ thư click vào nút (biểu tượng) xóa sách

Tiền điều kiện Thủ thư đã đăng nhập vào giao diện xem chi tiết sách

Hậu điều kiện

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Click vào nút (biểu tượng) xóa sách

2. Hệ thống Hiển thị thông báo thành công, quay về giao diện
xem quản lý sách trong kho

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
2a. Hệ thống Quá trình truy vấn xảy ra lỗi do mất mạng, mất kết
nối server

3a. Hệ thống Hiển thị thông báo lỗi hệ thống, yêu cầu người
dùng kiểm tra kết nối

Chỉnh sửa thông tin sách

Mã Use case UC-1.3-06

Tên Use case Chỉnh sửa thông tin sách

Mục đích Use Cho phép thủ thư chỉnh sửa thông tin sách
case

Tác nhân Thủ thư

Sự kiện kích hoạt Thủ thư click vào nút (biểu tượng) chỉnh sửa thông tin sách

Nhóm 31 32
IT4490 - Thiết kế và xây dựng phần mềm

Tiền điều kiện Thủ thư đã đăng nhập vào giao diện xem chi tiết sách

Hậu điều kiện

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Thủ thư Click vào nút (biểu tượng) chỉnh sửa thông tin
sách

2. Hệ thống Hiển thị giao diện chỉnh sửa thông tin sách

3 Thủ thư Nhập lại thông tin các trường cần sửa

4 Hệ thống Thông báo thành công, quay về giao diện xem chi
tiết sách

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
2a. Hệ thống Quá trình truy vấn xảy ra lỗi do mất mạng, mất kết
nối server

3a. Hệ thống Hiển thị thông báo lỗi hệ thống, yêu cầu người
dùng kiểm tra kết nối

2.3.2. Đọc giả:

2.3.2.1. Đăng ký tài khoản:

Mã Use case UC-2.1-01

Tên Use case Đăng ký tài khoản

Mục đích Use Độc giả đăng ký tài khoản để sử dụng thư viện
case

Tác nhân Độc giả

Sự kiện kích hoạt Độc giả chọn “Đăng ký tài khoản” ở giao diện đăng nhập

Tiền điều kiện Độc giả chưa có tài khoản hoặc muốn đăng ký tài khoản mới

Hậu điều kiện Tài khoản được đăng ký thành công

Nhóm 31 33
IT4490 - Thiết kế và xây dựng phần mềm

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Độc giả Chọn “Đăng ký tài khoản” ở giao diện đăng nhập

2. Hệ thống Hiển thị giao diện đăng ký tài khoản

3. Độc giả Điền các thông tin đăng ký, bao gồm: họ tên, giới
tính, ngày sinh, CCCD, số điện thoại, email , địa
chỉ, mật khẩu

4. Hệ thống Kiểm tra các thông tin đã được điền đầy đủ chưa,
CCCD có bị trùng với các tài khoản đã có hay
không

5. Hệ thống Lưu tài khoản vào cơ sơ dữ liệu

6. Hệ thống Thông báo đăng ký thành công

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế

4a Hệ thống Nếu chưa điền đầy đủ thông tin bắt buộc hoặc tài
khoản đã tồn tại thì yêu cầu điền lại

2.3.2.2. Chỉnh sửa thông tin cá nhân:

Mã Use case UC-2.1-02

Tên Use case Sửa thông tin cá nhân

Mục đích Use Độc giả có thể chỉnh sửa thông tin cá nhân.
case

Tác nhân Độc giả

Sự kiện kích hoạt Độc giả chọn nút “Chỉnh sửa thông tin” trong giao diện xem thông tin cá nhân.

Tiền điều kiện Độc giả đã có tài khoản

Hậu điều kiện Hệ thống cập nhật thành công thông tin chỉnh sửa.

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Người dùng Chọn nút “Chỉnh sửa thông tin” trong giao diện
xem thông tin cá nhân.

Nhóm 31 34
IT4490 - Thiết kế và xây dựng phần mềm

2. Hệ thống Hiển thị giao diện biểu mẫu chỉnh sửa thông tin cá
nhân.

3. Người dùng Chỉnh sửa, cập nhật các thông tin cần thiết trong
các trường biểu mẫu.

4. Người dùng Chọn nút “Cập nhật thông tin”.

5. Hệ thống Kiểm tra tính hợp lệ các trường thông tin.

6. Hệ thống Cập nhật chỉnh sửa lên cơ sở dữ liệu.

7. Người dùng Nhấn thoát để quay về giao diện xem chi tiết.

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
6.a. Hệ thống Hiển thị thông báo các trường không hợp lệ và yêu
cầu nhập lại.
Nếu phần không hợp lệ không được chỉnh sửa, sẽ
không cập nhật lên cơ sở dữ liệu.

2.3.2.3. Đổi mật khẩu

Mã Use case UC-2.1-03

Tên Use case Đổi mật khẩu

Mục đích Use Độc giả có thể đổi mật khẩu tài khoản
case

Tác nhân Độc giả

Sự kiện kích hoạt Độc giả chọn “Đổi mật khẩu” trong giao diện xem thông tin cá nhân

Tiền điều kiện Độc giả đã có tài khoản

Hậu điều kiện Hệ thống cập nhật thành công mật khẩu mới

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Độc giả Chọn “Đổi mật khẩu” trong giao diện thông tin cá
nhân

2. Hệ thống Hiển thị giao diện đổi mật khẩu

Nhóm 31 35
IT4490 - Thiết kế và xây dựng phần mềm

3. Độc giả Điền mật khẩu cũ và mật khẩu mới

4. Hệ thống Gửi mã xác nhận qua email

5. Độc giả Điền mã xác nhận

6. Hệ thống Hiển thị giao diện thông báo đổi mật khẩu thành
công và lưu mật khẩu vào cơ sở dữ liệu nếu mã
xác nhận là đúng

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
5. Độc giả Điền sai mã xác nhận

6. Hệ thống Hiển thị thông báo “Mã xác nhận không chính
xác” và gửi lại mã xác nhận

2.3.2.4. Xem danh sách sách:

Mã Use case UC-2.1-04

Tên Use case Xem danh sách sách

Mục đích Use Độc giả xem các cuồn sách có ở thư viện
case

Tác nhân Độc giả

Sự kiện kích hoạt Độc giả truy cập trang chủ thư viện

Tiền điều kiện Không có

Hậu điều kiện Độc giả thấy được những đầu sách hiện có ở thư viện

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Độc giả Truy cập vào hệ thông

Luồng sự kiện Không có


thay thế

Nhóm 31 36
IT4490 - Thiết kế và xây dựng phần mềm

2.3.2.5. Thêm sách vào giá sách

Mã Use case UC-2.1-05

Tên Use case Thêm sách vào giá sách

Mục đích Use Độc giả thêm sách muốn mượn vào giá sách cá nhân
case

Tác nhân Độc giả

Sự kiện kích hoạt Độc giả click vào cuốn sách muốn mượn và chọn “Thêm vào giá sách”

Tiền điều kiện Độc giả đã có tài khoản

Hậu điều kiện Sách được thêm vào giá sách

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Độc giả Click vào cuốn sách muốn mượn và chọn “Thêm
vào giá sách”

2. Hệ thống Thêm sách vào giá sách của độc giả (danh sách
sách muốn mượn) và hiển thị thông báo thêm
thành công

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
1. Độc giả Thêm sách mặc dù tổng số sách đang mượn và dự
định mượn đã đủ 5

2. Hệ thống Hiển thị thông báo “Không thể mượn quá 5 cuốn
sách”

2.3.2.6. Xóa sách khỏi giá sách

Mã Use case UC-2.1-06

Tên Use case Xóa sách khỏi giá sách

Mục đích Use Độc giả xóa sách muốn mượn khỏi giá sách cá nhân
case

Nhóm 31 37
IT4490 - Thiết kế và xây dựng phần mềm

Tác nhân Độc giả

Sự kiện kích hoạt Độc giả click vào cuốn sách trong giá sách và chọn “Xóa khỏi giá sách”

Tiền điều kiện Độc giả đã có tài khoản

Hậu điều kiện Sách được xóa khỏi giá sách

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Độc giả Click vào cuốn sách muốn mượn và chọn “Xóa
khỏi giá sách”

2. Hệ thống Sách được xóa khỏi giá sách và hiển thị thông báo
xóa thành công

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
Không có

2.3.2.7. Xem thông tin sách

Mã Use case UC-2.1-07

Tên Use case Xem thông tin sách

Mục đích Use Độc giả xem thông tin sách (tác giả, ngày xuất bản, tóm tắt nội dung,...)
case

Tác nhân Độc giả

Sự kiện kích hoạt Độc giả click vào cuốn sách trong danh sách sách

Tiền điều kiện Không có

Hậu điều kiện Hệ thống hiển thị thông tin sách

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Độc giả Click vào cuốn sách muốn xem thông tin ở danh
sách sách

Nhóm 31 38
IT4490 - Thiết kế và xây dựng phần mềm

2. Hệ thống Hiển thị thông tin sách

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
Không có

2.3.2.8. Xem giá sách

Mã Use case UC-2.1-08

Tên Use case Xem giá sách

Mục đích Use Độc giả xem giá sách (những cuốn sách muốn mượn)
case

Tác nhân Độc giả

Sự kiện kích hoạt Độc giả chọn “Giá sách” ở giao diện trang chủ

Tiền điều kiện Độc giả đã có tài khoản

Hậu điều kiện Hệ thống hiển thị giá sách của độc giả

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Độc giả Chọn “Giá sách” ở giao diện trang chủ

2. Hệ thống Hiển thị những cuốn sách độc giả đã thêm vào giá
sách

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
Không có

Nhóm 31 39
IT4490 - Thiết kế và xây dựng phần mềm

2.3.3. Người dùng chung:

2.3.3.1. Đăng nhập

Mã Use case UC-3.0-01

Tên Use case Đăng nhập

Mục đích Use Đăng nhập vào hệ thống.


case

Tác nhân Người dùng

Sự kiện kích hoạt Người chọn nút “Đăng nhập” ở giao diện chính.

Tiền điều kiện Đã có tài khoản đăng nhập từ trước.

Hậu điều kiện Đăng nhập thành công, quay về giao diện chính theo vai trò của tác nhân.

Luồng sự kiện STT Thực hiện bởi Hành động


chính
1. Người dùng Chọn nút “Đăng nhập” ở giao diện chính.

2. Hệ thống Hiển thị giao diện đăng nhập.

3. Người dùng Điền CCCD, điền mật khẩu đăng nhập.

4. Hệ thống Kiểm tra kiểu dữ liệu vào có hợp lệ.

5. Hệ thống Truy xuất cơ sở dữ liệu kiểm tra tài khoản mật


khẩu.

6. Hệ thống Đăng nhập thành công, quay về giao diện chính


theo vai trò của tác nhân.

Luồng sự kiện STT Thực hiện bởi Hành động


thay thế
4.a. Hệ thống Kiểu dữ liệu đầu vào sai (email thiếu đuôi, mật
khẩu không đủ 8 ký tự,...).
Hiển thị thông báo tại vị trí sai.

5.b. Hệ thống Không tìm thấy tài khoản hoặc mật khẩu sai.
Hiển thị đăng nhập không thành công.

Nhóm 31 40
IT4490 - Thiết kế và xây dựng phần mềm

Chương 3: Phân tích yêu cầu


3.1. Xây dựng biểu đồ tuần tự

3.1.1. Thủ thư

3.1.1.1. Quản lý tài khoản độc giả

Xem danh sách tài khoản độc giả

Nhóm 31 41
IT4490 - Thiết kế và xây dựng phần mềm

Xem chi tiết tài khoản độc giả

Tìm kiếm tài khoản độc giả

Nhóm 31 42
IT4490 - Thiết kế và xây dựng phần mềm

Xác nhận gia hạn tài khoản đọc giả

Xóa tài khoản đọc giả

Nhóm 31 43
IT4490 - Thiết kế và xây dựng phần mềm

Chặn tài khoản đọc giả

Kích hoạt tài khoản đọc giả

Nhóm 31 44
IT4490 - Thiết kế và xây dựng phần mềm

3.1.1.2. Quản lý mượn/ trả sách

Trả sách

Nhóm 31 45
IT4490 - Thiết kế và xây dựng phần mềm

Mượn sách

Nhóm 31 46
IT4490 - Thiết kế và xây dựng phần mềm

3.1.1.3. Quản lý Kho sách

Quản lý sách trong kho

Thêm sách

Nhóm 31 47
IT4490 - Thiết kế và xây dựng phần mềm

Tìm kiếm sách

Thay đổi sách

Xem chi tiết giá sách

Nhóm 31 48
IT4490 - Thiết kế và xây dựng phần mềm

Xóa sách

Nhóm 31 49
IT4490 - Thiết kế và xây dựng phần mềm

3.1.2. Độc giả

3.1.2.1. Đăng nhập

3.1.2.2. Đăng ký

Nhóm 31 50
IT4490 - Thiết kế và xây dựng phần mềm

3.1.2.3. Đăng ký mượn sách

3.1.2.4. Quên mật khẩu

3.1.2.5. Chỉnh sửa thông tin cá nhân

Nhóm 31 51
IT4490 - Thiết kế và xây dựng phần mềm

3.1.2.6. Xem thông tin sách

Nhóm 31 52
IT4490 - Thiết kế và xây dựng phần mềm

3.1.2.7. Xóa sách khỏi giá

3.1.2.8. Xem giá sách

Nhóm 31 53
IT4490 - Thiết kế và xây dựng phần mềm

3.2. Xây dựng biểu đồ giao tiếp (comunication diagram)

3.2.1. Thủ thư

3.2.1.1. Quản lý tài khoản độc giả

Xem danh sách tài khoản độc giả

Xem chi tiết tài khoản độc giả

Nhóm 31 54
IT4490 - Thiết kế và xây dựng phần mềm

Tìm kiếm tài khoản độc giả

Xác nhận gia hạn tài khoản đọc giả

Nhóm 31 55
IT4490 - Thiết kế và xây dựng phần mềm

Xóa tài khoản đọc giả

Chặn tài khoản đọc giả

Kích hoạt tài khoản đọc giả

Nhóm 31 56
IT4490 - Thiết kế và xây dựng phần mềm

3.2.1.2. Quản lý mượn/ trả sách

Trả sách

Mượn sách

Nhóm 31 57
IT4490 - Thiết kế và xây dựng phần mềm

3.2.1.3. Quản lý Kho sách

Quản lý sách trong kho

Thêm sách

Tìm kiếm sách

Nhóm 31 58
IT4490 - Thiết kế và xây dựng phần mềm

Thay đổi sách

Xem chi tiết giá sách

Xóa sách

Nhóm 31 59
IT4490 - Thiết kế và xây dựng phần mềm

3.2.2. Độc giả

3.2.2.1. Đăng nhập

3.2.2.2. Đăng ký

3.2.2.3. Đăng ký mượn sách

Nhóm 31 60
IT4490 - Thiết kế và xây dựng phần mềm

3.2.2.4. Quên mật khẩu

3.2.2.5. Chỉnh sửa thông tin cá nhân

3.3. Xây dựng biểu đồ lớp phân tích

3.3.1. Xác định các lớp


Các lớp phân tích được xác định từ các biểu đồ tuần tự và biểu đồ giao tiếp, bao
gồm: các lớp biên (<<boundary>>), các lớp điều khiển (<<controller>>), các lớp
thực thể (<<entity>>)

3.3.2. Xác định các thuộc tính


Từ các đặc tả ở phần phân tích yêu cầu bài toán, ta xác định được các thuộc tính
tương ứng với các lớp

Nhóm 31 61
IT4490 - Thiết kế và xây dựng phần mềm

3.3.3. Xác định các phương thức


Từ các liên kết theo chiều mũi tên ở biểu đồ tuần tự (sequence diagram) ta xác
định được phương thức tương ứng của từng lớp

3.3.4. Xác định liên kết


Liên kết được xác định thông qua các liên kết đã có ở hai biểu đồ trên (biểu đồ
tuần tự, biểu đồ giao tiếp)

3.3.5. Biểu đồ lớp phân tích


Sau các bước phân tích như trên, tiếp theo nhóm tiến hành vẽ biểu đồ lớp phân
tích, nhóm được biểu đồ:

* Xem chi tiết tại link:


https://drive.google.com/file/d/1w0II_gsidIHBdrxOJAiDryYtaiKKvLuW/view?usp=share_lin
k

Nhóm 31 62
IT4490 - Thiết kế và xây dựng phần mềm

Chương 4: Thiết kế gói


4.1. Tiêu chí đóng gói

Lựa chọn tiêu chí: Căn cứ vào bài toán, căn cứ vào nền tảng mà nhóm khách hàng hướng tới
là đa nền tảng: web, mobile, desktop, nhóm quyết định chọn kiểu đóng gói Client – Server
với những ưu điểm sau:
➢ Dễ dàng mở rộng hệ thống
➢ Chỉ cần chung định dạng giao tiếp mà không cần chung nền tảng là có thể hoạt động
được.
➢ Người dùng có thể truy cập dữ liệu từ xa, thực hiện các thao tác gửi, nhận file hay tìm
kiếm thông tin đơn giản.
➢ Client Server có khả năng chống quá tải mạng.
➢ Cho phép triển khai client trên nhiều nền tảng khác nhau, bao gồm desktop, web và di
động.
➢ Điều này giúp đáp ứng nhu cầu của người dùng ở nhiều nền tảng khác nhau.
➢ Tách biệt phần giao diện và dữ liệu: giúp quản lý dữ liệu dễ dàng và linh hoạt hơn.

Tuy nhiên, mô hình này còn có một số nhược điểm:


➢ Tắc nghẽn lưu lượng: Trong trường hợp quá nhiều người dùng server 1 lúc sẽ làm kết
nối chậm hơn, xấu hơn có thể xuất hiện hiện tượng crash, khi một server bị quá tải sẽ
gây nhiều vấn đề khi truy cập thông tin của người dùng
➢ Độ bền: Khi server bị gặp sự cố hoặc bị nhiễu, thì toàn bộ hệ thống mạng sẽ bị gián
đoạn

So sánh với một số mô hình điển hình khác (MVC):


➢ MVC không thể đáp ứng sự đa dạng yêu cầu người dùng, khi người dùng muốn sử
dụng đa nền tảng web, desktop, hay mobile thì server – client là lựa chọn dễ dàng và
hợp lý
➢ Việc triển khai thư viện ở nhiều địa điểm khác nhau dẫn tới vấn đề kho lưu trữ dữ liệu
bị phân tán, việc đồng bộ dữ liệu sẽ trở nên phức tạp hơn nếu áp dụng mô hình MVC

Nhóm 31 63
IT4490 - Thiết kế và xây dựng phần mềm

4.2. Thiết kế gói

4.2.1. Thiết kế gói client


Đóng gói theo nhóm tác nhân của hệ thống:

* Xem chi tiết tại link: https://app.diagrams.net/#G1qZnZBVIjJ43lrmUADZsdfCcQjZpWtOfl

4.2.2. Thiết kế gói server


Đóng gói theo các tầng với các chức năng cụ thể:
- Tầng điều khiển (controller) với các chức năng điều khiển logic hệ thống
server khi nhận request từ client
- Tầng dữ liệu (model) với các tác vụ xử lý dữ liệu phía database khi nhận điều
khiển từ tầng controller

* Xem chi tiết tại link: https://app.diagrams.net/#G1qZnZBVIjJ43lrmUADZsdfCcQjZpWtOfl

Nhóm 31 64
IT4490 - Thiết kế và xây dựng phần mềm

Chương 5: Thiết kế chương trình


5.1. Thiết kế chi tiếp lớp

5.1.1. Thiết kế chi tiếp lớp biên

5.1.1.1. Thủ thư

- V_giao diện danh sách đọc giả


* Các thuộc tính:

Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

listDocGiaView List View Private Danh sách đọc gi


deleteDocGiaBtn Button Private Nút xóa tk đọc giả
blockDocGiaBtn Button Private Nút chặn tk đọc giả
kichHoatDocGiaBtn Button Private Nút kích hoạt đọc giả

* Các phương thức:

Phương thức Đầu Đầu ra Phạm Mô tả


vào vi truy
cập
deleteDocGiaBtnOnClicked() String Boolean Public Nút xóa tk đọc
giả được kích
blockDocGiaBtnOnClicked() String Boolean Public Nút chặn tk đọc
giả được kích
kichHoatDocGiaBtnOnClicked() Void Void Public Nút kích hoạt đọc
giả được kích

- V_Giao giện gia hạn tài khoản đọc giả


* Các thuộc tính:

Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

docGiaInfoView Text View Private Thông tin đọc giả


confirmBtn Button Private Nút xác nhận kích hoạt

* Các phương thức:

Nhóm 31 65
IT4490 - Thiết kế và xây dựng phần mềm

Phương thức Đầu vào Đầu ra Phạm vi truy Mô tả


cập
confirmBtnOnClicked() Void View Public Nút xác nhận được
nhấn

- V_Giao diện kích hoạt tài khoản đọc giả


* Các thuộc tính:

Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

docGiaInfo Text View Private View hiển thị thông tin đọc giả
confirmBtn Button Private Nút xác nhận kích hoạt

* Các phương thức:

Phương thức Đầu vào Đầu ra Phạm vi Mô tả


truy cập
confirmBtnOnClicked() Void View Public Nút xác nhận kích hoạt
được nhấn

5.1.1.2. Đọc giả

- V_giá sách
* Các thuộc tính:

Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

deleteSachFromGiaBtn Button Private Nút xóa sách từ giá

* Các phương thức:

Phương thức Đầu vào Đầu ra Phạm vi Mô tả


truy cập
deleteSachFromGiaBtnOnClicked() Sach Void Public Nút xóa sách từ giá
được nhấn

- V_trang cá nhân
* Các thuộc tính:

Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

Nhóm 31 66
IT4490 - Thiết kế và xây dựng phần mềm

giaSachBtn Button Private Nút đến trang xem giá


sách

* Các phương thức:

Phương thức Đầu vào Đầu ra Phạm vi truy cập Mô tả


giaSachBtnOnClicked() Void Void Public Nút xem giá được
nhấn

- V_thông tin cá nhân


* Các thuộc tính:

Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

ten TextView Private Tên


email TextView Private email
phone TextView Private Số điện thoại
DoB TextView Private Ngày sinh
updateBtn Button Private Nút cập nhật thông tin

* Các phương thức:

Phương thức Đầu Đầu ra Phạm Mô tả


vào vi truy
cập
updateBtnOnClicked() Sach View Public Nút cập nhật sách
được nhấn

- V_thông tin sách


* Các thuộc tính:

Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

SachInfoView Text View Private Text view hiển thị


thông tin sách

* Các phương thức: không có

Nhóm 31 67
IT4490 - Thiết kế và xây dựng phần mềm

- V_MuonSach
* Các thuộc tính:

Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

docGiaInput Text Field Private Ô nhập thông tin đọc


giả
chooseSachInputBtn Button Private Nút Chọn sách cần
mượn
confirmBtn Button Private Nút xác nhận trả sách

* Các phương thức:

Phương thức Đầu Đầu ra Phạm Mô tả


vào vi truy
cập
confirmOnClicked() Void View Public Nút xác nhận trả
sách
checknullString() String Boolean Public Kiểm tra input
thông tin từ người
dùng

- V_Sach
* Các thuộc tính:

Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

deleteBtn Button Private Nút xóa sách


updateBtn Button Private Nút cập nhật sách

* Các phương thức:

Phương thức Đầu vào Đầu ra Phạm vi truy Mô tả


cập
deleteBtnOnClicked() Sach Void Public Nút xóa sách được nhấn
updateBtnOnClicked() Sach View Public Nút cập nhật sách được
nhấn

- V_DanhSachSach
* Các thuộc tính:

Nhóm 31 68
IT4490 - Thiết kế và xây dựng phần mềm

Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

addSachBtn Button Private Nút thêm sách


addSachtoGiaBtn Button Private Nút thêm sách vào giá
viewDetailSachBtn Button Private Nút xem chi tiết sách
listSach ListView Private Danh sách sách

* Các phương thức:

Phương thức Đầu vào Đầu ra Phạm Mô tả


vi truy
cập
addSachtoGiaBtnOnClicked() SachID Boolean Public Nút thêm sách
vào giá được
nhấn
viewDetailSachBtnOnClicked() SachID View Public Nút xem chi tiết
sách được nhấn
addSachBtnOnClicked() Sach Void Public Nút thêm sách
được nhấn

- V_TraSach
* Các thuộc tính:

Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

docGiaInput Text Field Private Ô nhập thông tin đọc


giả
chooseSachInputBtn Button Private Nút Chọn sách cần trả
confirmBtn Button Private Nút xác nhận trả sách

* Các phương thức:

Phương thức Đầu vào Đầu ra Phạm vi truy Mô tả


cập
confirmOnClicked() Void View Public Nút xác nhận trả sách
checknullString() String Boolean Public Kiểm tra input thông tin
từ người dùng

- V_TrangChu
* Các thuộc tính:

Nhóm 31 69
IT4490 - Thiết kế và xây dựng phần mềm

Thuộc tính Kiểu dữ liệu Phạm vi Mô tả


truy cập
searchBtn Button Private Nút tìm kiếm
viewHistoryBtn Button Private Nút xem lịch sử mượn
viewGiaSachBtn Button Private Nút xem xem giá sách
QLTaiKhoanDocGiaBtn Button Private Nút quản lý tài khoản đọc giả
MuonSachBtn Button Private Nút quản lý mượn sách
TraSachBtn Button Private Nút quản lý trả sách
SearchInput Text Field Private Ô nhập thông tin tìm kiếm
viewInfoPersonBtn Button Private Nút xem thông tin cá nhân

* Các phương thức:

Phương thức Dữ liệu Đầu Phạm vi Mô tả


dầu vào ra truy cập
Nút tìm kiếm được
searchSachBtnOnClicked() String Void Public
click
Nút xem lịch sử
viewHistoryBtnOnClicked() Void Void Public
mượn sách được click
Nút xem giá sách
viewGiaSachBtnOnClicked() Void Void Public
được click
Nút quản lý tài khoản
QLTaiKhoanDocGiaBtnOnClicked() Void Void Public
được click
Nút quản lý mượn
MuonSachBtnOnClicked() Void Void Public
sách được click
Nút quản lý trả sách
TraSachBtnOnClicked() Void Void Public
được click
Nút xem thông tin cá
viewInfoPersonBtnOnClicked() Void Void Public
nhân được click
Bool Kiểm tra input search
checknullString() String Public
ean từ người dùng

- V_Doimatkhau
* Các thuộc tính:
Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

emailInput Text Field Private Ô nhập địa chỉ email


getPassBtn Button Private Nút Lấy lại mật khẩu
backSignInViewBtn Button Private Nút quay lại trang đăng
nhập

* Các phương thức:

Nhóm 31 70
IT4490 - Thiết kế và xây dựng phần mềm

Phương thức Đầu Đầu ra Phạm Mô tả


vào vi truy
cập
checkEmailInput() String Boolean Public Kiểm tra dữ liệu email
người dùng nhập
getPassBtnOnClicked() Void Void Public Nút Lấy lại mật khẩu
được nhấn
backSignInViewBtnOnClicked() Void View Public Nút đến trang đăng kí
được nhấn

- V_Dangnhap
* Các thuộc tính:

Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

usernameInput Text Field Private Ô nhập username


passwordInput Text Field Private Ô nhập mật khẩu
signInBtn Button Private Nút đăng nhập
toSignUpViewBtn Button Private Nút đến trang đăng kí
toForgotPasswordViewBtn Button Private Nút đến trang quên mật
khẩu

* Các phương thức:

Phương thức Đầu Đầu ra Phạm Mô tả


vào vi truy
cập
checkNullUsernameInput() String Boolean Public Kiểm tra dữ liệu
username người
dùng nhập
checkNullPasswordInput() String Boolean Public Kiểm tra dữ liệu
password người
dùng nhập
SignInBtnOnClicked() Void Void Public Nút Đăng nhập
được nhấn
toSignUpViewBtnOnClicked() Void View Public Nút đến trang
đăng kí được
nhấn
toForgotPasswordViewBtnOnClicked() Void View Public Nút đến trang
quên mật khẩu
được nhấn

Nhóm 31 71
IT4490 - Thiết kế và xây dựng phần mềm

5.1.2. Thiết kế chi tiếp lớp điều khiển

5.1.2.1. C_giá sách


* Các thuộc tính: Không có

* Các phương thức:


Phương thức Đầu vào Đầu ra Phạm vi truy cập Mô tả
AddtoGiaSach() Sach boolean Public Thêm sách vào giá
sách
GetGiaSach() GiaSachID boolean Public Lấy thông tin giá
sách
DelFromGiaSach() Sach boolean Public Xóa sách khỏi giá
sách
DelGiaSach() GiaSachID boolean Public Xóa giá sách
TraSach() SachID boolean Public Xác nhận Trả sách
MuonSach() SachID boolean Public Xác nhận mượn sách

5.1.2.2. C_tài khoản đọc giả


* Các thuộc tính: Không có

* Các phương thức:


Phương thức Đầu vào Đầu ra Phạm vi truy cập Mô tả
SignUp() User boolean public Đăng kí
SignIn() Username, boolean public Đăng nhập
password
DeleteSinger() Singer boolean Public Xóa ca sĩ

5.1.2.3. C_thông tin cá nhân


* Các thuộc tính: Không có

* Các phương thức:


Phương thức Đầu vào Đầu ra Phạm vi truy cập Mô tả
UpdateUser() User boolean public Cập nhật thông tin
người dùng

5.1.2.4. C_sách
* Các thuộc tính: Không có

Nhóm 31 72
IT4490 - Thiết kế và xây dựng phần mềm

* Các phương thức:


Phương thức Đầu vào Đầu ra Phạm vi truy cập Mô tả
UpdateSach() Sach boolean Public Cập nhật thông tin
sách
AddSach() Sach boolean Public Thêm sách
DeleteSach() SachID boolean Public Xóa sách
FindSach() Sach Public Tìm kiếm sách
GetSach() SachID Sach Public Lấy sách

5.1.2.5. C_tài khoản


* Các thuộc tính: Không có

* Các phương thức:


Phương thức Đầu vào Đầu ra Phạm vi truy cập Mô tả
SignUp() User boolean public Đăng kí
SignIn() Username, boolean public Đăng nhập
password

5.1.2.6. C_đổi mật khẩu


* Các thuộc tính: Không có

* Các phương thức:


Phương thức Dữ liệu dầu Đầu ra Phạm vi truy Mô tả
vào cập
UpdatePassword() UserID, boolean public Cập nhật Password
OldPassword,
NewPassword

5.1.3. Thiết kế chi tiếp lớp thực thể


Tại các lớp thực thể, các phương thức khởi tạo và getter, setter sẽ không được mô tả
tại đây.

5.1.3.1. M_giá sách


* Các thuộc tính
Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

GiaSachID int Private Mã giá sách

Nhóm 31 73
IT4490 - Thiết kế và xây dựng phần mềm

SachID int Private Mã sách


AddAt DateTime Private Ngày giờ thêm sách
vào giá

* Các phương thức: không có

5.1.3.2. M_tài khoản đọc giả


* Các thuộc tính
Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

UserID int Private Mã người dùng


GiaSachID int Private Mã giá sách
HanTK DateTime Private Ngày giờ hết hạn
CreateAt DateTime Private Ngày giờ tạo
UpdateAt DateTime Private Ngày giờ cập nhật

* Các phương thức: không có

5.1.3.3. M_thông tin cá nhân


* Các thuộc tính
Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

UserID int Private Mã người dùng


Gender String Private Giới tính
Name String Private Họ tên
DoB Date Private Ngày sinh
Avatar String Private Ảnh đại diện
Email String Private Email

* Các phương thức: không có

5.1.3.4. M_sách
* Các thuộc tính
Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

SachID int Private Mã sách


Bookname String Private Tên sách
Author String Private Tên tác giả
Thể loại Enum Private Thể loại
PublishAt Date Private Ngày phát hành

Nhóm 31 74
IT4490 - Thiết kế và xây dựng phần mềm

* Các phương thức: không có

5.1.3.5. M_tài khoản


* Các thuộc tính
Thuộc tính Kiểu dữ liệu Phạm vi truy cập Mô tả

UserID int Private Mã Người dùng


Username String Private Tên tài khoản
Password-Hash String Private Mật khẩu- Băm
QuyenHan String Private Quyền hạn (admin/
người dùng thường)

* Các phương thức: không có

5.2. Thiết kế Cơ sở dữ liệu

5.2.1. Các bảng Cơ sở dữ liệu

STT Tên thực thể Mô tả

1 Sach Là thực thể ứng với sách


2 GiaSach Là thực thể ứng với giá sách
3 User Là thực thể ứng với người dùng
4 Thongtincanhan Là thực thể ứng với thông tin người dùng
5 Taikhoandocgia Là thực thể ứng với tài khoản đọc giả
6 LoaiGoiGiaHan Là thực thể ứng với các loại gói đăng ký gia hạn

5.2.2. Chi tiết hóa các lớp thực thể


5.2.2.1. Sach
Mô tả: Là thực thể ứng với sách

Danh sách các trường


STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả
1 SachID Int Not null, Khóa Mã sách
chính
2 BookName Nvarchar(100) Not null Tên sách
3 Author Nvarchar(100) Not null Tên tác giả
4 TheLoai ENUM Not null Thể loại

Nhóm 31 75
IT4490 - Thiết kế và xây dựng phần mềm

5 PublishAt datetime Not null Ngày phát hành


5.2.2.2. GiaSach
Mô tả: Là thực thể ứng với giá sách của đọc giả

Danh sách các trường


STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả
1 GiaSachID Int Not null, Khóa Mã giá sách
chính
2 SachID Int Not null, Khóa Mã sách
chính
3 AddAt datetime Not null Ngày giờ thêm
sách vào giá

5.2.2.3. User
Mô tả: Là thực thể ứng với người dùng

Danh sách các trường


STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả
1 UserID Int Not null, Khóa Mã Người dùng
chính
2 Username Nvarchar(100) Not null Tên tài khoản
3 Password-Hash Nvarchar(Max) Allow null Mật khẩu- Băm
4 QuyenHan ENUM Allow null Quyền hạn (thủ
thư/ đọc giả)

5.2.2.4. Thongtincanhan
Mô tả: Là thực thể ứng với thông tin cá nhân của người dùng

Danh sách các trường


STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả
1 UserID Int Not null, Khóa Mã người dùng
chính
2 Gender Nvarchar(100) Not null Giới tính
3 Name Nvarchar(Max) Not null Họ tên
4 DoB datetime Not null Ngày sinh
5 Avatar Nvarchar(50) Not null Ảnh đại diện
6 Email Nvarchar(50) Not null Email

5.2.2.5. Taikhoandocgia
Mô tả: Là thực thể ứng với tài khoản đọc giả

Danh sách các trường

Nhóm 31 76
IT4490 - Thiết kế và xây dựng phần mềm

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả


1 UserID Int Not null, Khóa Mã người dùng
chính
2 GiaSachID Int Not null Mã giá sách
3 HanTK datetime Not null Ngày giờ hết hạn
4 CreateAt datetime Not null Ngày giờ tạo
5 UpdateAt datetime Not null Ngày giờ cập
nhật

5.2.2.6. LoaiGoiGiaHan
Mô tả: Là thực thể ứng với các gói gia hạn sách

Danh sách các trường


STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả
1 GoiID Int Not null, Khóa Mã gói
chính
2 GoiName Nvarchar(100) Not null Tên gói
3 Gia Int Not null Giá gói
4 Thoihan Int Not null Thời gian gia hạn

Nhóm 31 77
IT4490 - Thiết kế và xây dựng phần mềm

5.2.3. Lược đồ Cơ sở dữ liệu

Nhóm 31 78
IT4490 - Thiết kế và xây dựng phần mềm

5.3. Thiết kế Giao diện

5.3.1. Đăng ký

5.3.2. Đăng nhập

Nhóm 31 79
IT4490 - Thiết kế và xây dựng phần mềm

5.3.3. Trang chủ


5.3.3.1. Thủ thư

Nhóm 31 80
IT4490 - Thiết kế và xây dựng phần mềm

5.3.3.2. Đọc giả

Nhóm 31 81
IT4490 - Thiết kế và xây dựng phần mềm

5.3.4. Trả sách

Nhóm 31 82
IT4490 - Thiết kế và xây dựng phần mềm

5.3.5. Quản lý sách

Nhóm 31 83
IT4490 - Thiết kế và xây dựng phần mềm

5.3.6. Quàn lý tài khoản

Nhóm 31 84
IT4490 - Thiết kế và xây dựng phần mềm

5.3.7. Quàn lý tài khoản

Nhóm 31 85
IT4490 - Thiết kế và xây dựng phần mềm

Chương 6: Thiết kế kiểm thử


6.1. Kiểm thử chức năng

6.1.1. Kiểm thử chức năng Đăng nhập


Test case Mô tả Input Kết quả mong muốn
1 Người dùng (độc Email: tkxdpm@gmail.com Hệ thống hiển thị giao
giả, thủ thư) đăng Password: 123456789 diện trang chủ với avatar
nhập đúng email và người dùng tương ứng
mật khẩu
2 Người dùng (độc Email: Thông báo lỗi: Cần nhập
giả, thủ thư) đăng Password: 123456789 email
nhập thiếu email
3 Người dùng (độc Email: tkxdpm@gmail.com Thông báo lỗi: Cần nhập
giả, thủ thư) đăng Password: password
nhập thiếu mật
khẩu
4 Người dùng (độc Email: tkxdpm@gmail.com Thông báo lỗi: Tài khoản
giả, thủ thư) đăng Password: 123456789 hoặc mật khẩu không
nhập sai hoặc email chính xác
và mật khẩu
5 Người dùng (độc Email: tkxdpmgmail.com Thông báo lỗi: Email
giả, thủ thư) đăng Password: 123456789 không đúng định dạng
nhập với email sai
định dạng (thiếu @,
không có đuôi )

6.1.2. Kiểm thử chức năng Đăng ký tài khoản đọc giả
Test case Mô tả Input Kết quả mong muốn
1 Đọc giả đăng nhập Email: tkxdpm@gmail.com Thông báo đăng ký thành
đúng email chưa Password: 123456789 công
tồn tại trong hệ Tên: ABC
thống và mật khẩu, Phone number: 0123456789
thông tin cá nhân Address: Hanoi
Gender: Nam
DoB: 01/01/2001
2 Đọc giả nhập thiếu Email: tkxdpm@gmail.com Thông báo lỗi: Cần nhập
trường Password: đầy đủ thông tin
Tên: ABC
Phone number: 0123456789
Address: Hanoi
Gender: Nam
DoB: 01/01/2001
3 Đọc giả nhập email Email: tkxdpm@gmail.com Thông báo lỗi: Email đã
đã có trên hệ thống Password: 123456 tồn tại
Tên: ABC

Nhóm 31 86
IT4490 - Thiết kế và xây dựng phần mềm

Phone number: 0123456789


Address: Hanoi
Gender: Nam
DoB: 01/01/2001

6.1.3. Kiểm thử chức năng Quên mật khẩu


Test case Mô tả Input Kết quả mong muốn
1 Người dùng (độc Email: tkxdpm@gmail.com Thông báo mật khẩu mới
giả, thủ thư) nhập Mã xác nhận: 062636 về email và thông báo đổi
đúng email đã tồn mật khẩu thành công
tại trong hệ thống
và mã xác nhận
được gửi về email
2 Người dùng (độc Email: tkxdpm@gmail.com Thông báo lỗi: Sai mã
giả, thủ thư) nhập Mã xác nhận: 020320 xác nhân
sai mã xác nhận
được gửi về email
3 Người dùng (độc Email: Thông báo lỗi: Email
giả, thủ thư) nhập tkxdpm123@gmail.com chưa tồn tại
email chưa có trên
hệ thống

6.1.4. Kiểm thử chức năng Quản lý tài khoản đọc giả
6.1.4.1. Xem danh sách tài khoản
Test case Mô tả Input Kết quả mong muốn
1 Thủ thư xem danh Thủ thư click vào xem danh Hiển thị trang danh sách
sách tài khoản sách tài khoản tài khoản đọc giả
thành công
2 Thủ thư click vào Mạng lỗi Thông báo lỗi: Mất kết
xem danh sách tài nối
khoản nhưng lỗi
mạng

6.1.4.2. Tìm kiếm tài khoản đọc giả


Test case Mô tả Input Kết quả mong muốn
1 Thủ thư tìm kiếm Email, tên của user Hiển thị tài khoản đọc giả
tài khoản thành
công
2 Thủ thư tìm kiếm Email, tên của user Hiển thị không tìm thấy
tài khoản không tồn
tại
3 Thủ thư click vào Mạng lỗi Thông báo lỗi: Mất kết
tìm kiếm tài khoản nối
nhưng lỗi mạng

Nhóm 31 87
IT4490 - Thiết kế và xây dựng phần mềm

6.1.4.3. Chặn tài khoản đọc giả


Test case Mô tả Input Kết quả mong muốn
1 Thủ thư chặn tài Email, tên của user Hiển thị thành công
khoản thành công
2 Thủ thư chặn tài Email, tên của user Hiển thị không tìm thấy
khoản không tồn tại
3 Thủ thư click vào Mạng lỗi Thông báo lỗi: Mất kết
chặn tài khoản nối
nhưng lỗi mạng

6.1.4.4. Xóa tài khoản đọc giả


Test case Mô tả Input Kết quả mong muốn
1 Thủ thư xóa tài Email, tên của user Hiển thị thành công
khoản thành công
2 Thủ thư xóa tài Email, tên của user Hiển thị không tìm thấy
khoản không tồn tại
3 Thủ thư click vào Mạng lỗi Thông báo lỗi: Mất kết
chặn tài khoản nối
nhưng lỗi mạng
6.1.4.5. Xác nhận gia hạn tài khoản đọc giả
Test case Mô tả Input Kết quả mong muốn
1 Thủ thư gia hạn tài Email, tên của user Hiển thị thành công
khoản thành công
2 Thủ thư gia hạn tài Email, tên của user Hiển thị không tìm thấy
khoản không tồn tại
3 Thủ thư click vào Mạng lỗi Thông báo lỗi: Mất kết
tìm kiếm tài khoản nối
nhưng lỗi mạng

6.1.4.6. Xem chi tiết tài khoản đọc giả


Test case Mô tả Input Kết quả mong muốn
1 Thủ thư xem chi Email, tên của user Hiển thị thành công
tiết tài khoản thành
công
2 Thủ thư xem chi Email, tên của user Hiển thị không tìm thấy
tiết tài khoản không
tồn tại
3 Thủ thư click vào Mạng lỗi Thông báo lỗi: Mất kết
tìm kiếm tài khoản nối
nhưng lỗi mạng

6.1.5. Kiểm thử chức năng Quản lý mượn/trả sách đọc giả
6.1.5.1. Xác nhận mượn sách
Test case Mô tả Input Kết quả mong muốn

Nhóm 31 88
IT4490 - Thiết kế và xây dựng phần mềm

1 Thủ thư xác nhận Email, tên của user đọc giả, Hiển thị thành công
đọc giả mượn sách sách
thành công
2 Thủ thư xác nhận Email, tên của user, sách Hiển thị không tìm thấy
đọc giả mượn sách không tồn tại sách
thất bại
3 Thủ thư xác nhận Mạng lỗi Thông báo lỗi: Mất kết
đọc giả mượn sách nối
nhưng lỗi mạng

6.1.5.2. Xác nhận trả sách


Test case Mô tả Input Kết quả mong muốn
1 Thủ thư trả sách Sách Hiển thị thành công
thành công
2 Thủ thư xem chi Sách Hiển thị không tìm thấy
tiết tài khoản không
tồn tại
3 Thủ thư click vào Mạng lỗi Thông báo lỗi: Mất kết
tìm kiếm tài khoản nối
nhưng lỗi mạng

6.1.5.3. Xem chi tiết giá sách đọc giả


Test case Mô tả Input Kết quả mong muốn
1 Thủ thư xem chi Email, tên của user Hiển thị thành công
tiết tài khoản thành
công
2 Thủ thư xem chi Email, tên của user Hiển thị không tìm thấy
tiết tài khoản không
tồn tại
3 Thủ thư click vào Mạng lỗi Thông báo lỗi: Mất kết
tìm kiếm tài khoản nối
nhưng lỗi mạng

6.1.6. Kiểm thử chức năng Quản lý kho sách


6.1.6.1. Thêm sách
Test case Mô tả Input Kết quả mong muốn
1 Thủ thư xem chi Sách Hiển thị thành công
tiết tài khoản thành
công
2 Thủ thư xem chi Sách Hiển thị không tìm thấy
tiết tài khoản không
tồn tại
3 Thủ thư click vào Mạng lỗi Thông báo lỗi: Mất kết
tìm kiếm tài khoản nối
nhưng lỗi mạng

Nhóm 31 89
IT4490 - Thiết kế và xây dựng phần mềm

6.1.6.2. Xóa sách


Test case Mô tả Input Kết quả mong muốn
1 Thủ thư xem chi Sách Hiển thị thành công
tiết tài khoản thành
công
2 Thủ thư xem chi Sách Hiển thị không tìm thấy
tiết tài khoản không
tồn tại
3 Thủ thư click vào Mạng lỗi Thông báo lỗi: Mất kết
tìm kiếm tài khoản nối
nhưng lỗi mạng

6.1.6.3. Tìm kiếm sách


Test case Mô tả Input Kết quả mong muốn
1 Thủ thư xem chi Sách Hiển thị thành công
tiết tài khoản thành
công
2 Thủ thư xem chi Sách Hiển thị không tìm thấy
tiết tài khoản không
tồn tại
3 Thủ thư click vào Mạng lỗi Thông báo lỗi: Mất kết
tìm kiếm tài khoản nối
nhưng lỗi mạng

6.1.6.4. Xem chi tiết sách


Test case Mô tả Input Kết quả mong muốn
1 Thủ thư xem chi Sách Hiển thị thành công
tiết tài khoản thành
công
2 Thủ thư xem chi Sách Hiển thị không tìm thấy
tiết tài khoản không
tồn tại
3 Thủ thư click vào Mạng lỗi Thông báo lỗi: Mất kết
tìm kiếm tài khoản nối
nhưng lỗi mạng

6.1.6.5. Chỉnh sửa thông tin sách


Test case Mô tả Input Kết quả mong muốn
1 Thủ thư xem chi Sách Hiển thị thành công
tiết tài khoản thành
công
2 Thủ thư xem chi Sách Hiển thị không tìm thấy
tiết tài khoản không
tồn tại
3 Thủ thư click vào Mạng lỗi Thông báo lỗi: Mất kết
tìm kiếm tài khoản nối
nhưng lỗi mạng

Nhóm 31 90
IT4490 - Thiết kế và xây dựng phần mềm

6.1.7. Kiểm thử chức năng Đăng xuất


Test case Mô tả Input Kết quả mong muốn
1 Thủ thư đăng xuất void Hiển thị thành công
thành công
2 Thủ thư đăng xuất void Hiển thị không tìm thấy
thất bại
3 Thủ thư click vào Mạng lỗi Thông báo lỗi: Mất kết
tìm kiếm tài khoản nối
nhưng lỗi mạng

6.1.8. Kiểm thử chức năng Quản lý tài khoản


6.1.8.1. Chỉnh sửa thông tin cá nhân
Test case Mô tả Input Kết quả mong muốn
1 Độc giả chỉnh sửa Email, tên của user Hiển thị thành công
thông tin cá nhân
thành công
2 Độc chỉnh sửa Email, tên của user Hiển thị không tìm thấy
thông tin cá nhân
thất bại
3 Độc giả chỉnh sửa Mạng lỗi Thông báo lỗi: Mất kết
thông tin cá nhân nối
nhưng lỗi mạng

6.1.8.2. Đổi mật khẩu


Test case Mô tả Input Kết quả mong muốn
1 Độc giả đổi mật Email, tên của user, mật Hiển thị thành công
khẩu thành công khẩu
2 Độc giả đổi mật Email, tên của user, mật Hiển thị không tìm thấy
khẩu của tài khoản khẩu tài khoản
không tồn tại
3 Độc giả đổi mật Email, tên của user, mật Thông báo lỗi: Mất kết
khẩu nhưng lỗi khẩu nối
mạng

6.1.9. Kiểm thử chức năng Mượn sách


Test case Mô tả Input Kết quả mong muốn
1 Đọc giả mượn sách Sách Hiển thị thành công
thành công
2 Thủ thư xem chi Sách Hiển thị không tìm thấy
tiết tài khoản không
tồn tại

Nhóm 31 91
IT4490 - Thiết kế và xây dựng phần mềm

3 Thủ thư click vào Mạng lỗi Thông báo lỗi: Mất kết
tìm kiếm tài khoản nối
nhưng lỗi mạng

6.1.10. Kiểm thử chức năng Quản lý giá sách


6.1.10.1. Xem danh sách sách
Test case Mô tả Input Kết quả mong muốn
1 Đọc giả xem danh Sách Hiển thị thành công
sách sách thành
công
2 Đọc giả xem danh Sách Hiển thị không tìm thấy
sách sách thất bại
3 Đọc giả click vào Sách Thông báo lỗi: Mất kết
xem danh sách sách nối
nhưng lỗi mạng

6.1.10.2. Thêm sách vào giá


Test case Mô tả Input Kết quả mong muốn
1 Đọc giả thêm sách Sách Hiển thị thành công
vào giá thành công
2 Đọc giả thêm sách Sách Hiển thị không tìm thấy
vào giá không
thành công

6.1.10.3. Xóa khỏi giá


Test case Mô tả Input Kết quả mong muốn
1 Đọc giả xóa sách Tên sách Hiển thị thành công
khỏi thành công
2 Đọc giả xóa sách Sách Hiển thị không tìm thấy
thất bại

6.1.10.4. Xem giá sách


Test case Mô tả Input Kết quả mong muốn
1 Đọc giả xem giá void Hiển thị thành công
sách thành công
2 Đọc giả xem giá void Hiển thị không tìm thấy
sách thất bại

6.2. Kiểm thử phi chức năng

• Performance Testing (Kiểm thử hiệu năng)


• Load Testing (Kiểm thử tải)

Nhóm 31 92
IT4490 - Thiết kế và xây dựng phần mềm

• Failover Testing (Kiểm thử chuyển đổi dự phòng)


• Compatibility Testing (Kiểm thử tương thích)
• Usability Testing (Kiểm thử khả năng sử dụng)
• Stress Testing (Kiểm thử về áp lực)
• Maintainability Testing (Kiểm thử bảo trì)
• Scalability Testing (Kiểm thử khả năng mở rộng)
• Volume Testing (Kiểm thử khối lượng)
• Security Testing (Kiểm thử bảo mật)
• Disaster Recovery Testing (Kiểm thử khắc phục thảm họa)
• Compliance Testing (Kiểm thử tuân thủ)
• Portability Testing (Kiểm thử tính di động)
• Efficiency Testing (Kiểm thử hiệu quả)
• Reliability Testing (Kiểm thử độ tin cậy)
• Baseline Testing (Kiểm thử cơ bản)
• Endurance Testing (Kiểm thử độ bền)
• Documentation Testing (Kiểm thử tài liệu)
• Recovery Testing (Kiểm thử phục hồi)
• Internationalization Testing (Kiểm thử quốc tế hóa)
• Localization Testing (Kiểm thử nội địa hóa)

Nhóm 31 93
IT4490 - Thiết kế và xây dựng phần mềm

Tài liệu tham khảo


[1] Slide môn Thiết kế và xây dựng phần mềm do thầy Đỗ Văn Uy cung cấp.
[2] Vở ghi môn Thiết kế và xây dựng phần mềm do thầy Đỗ Văn Uy giảng dạy

Nhóm 31 94

You might also like