Thông báo đăng nhập, đăng kí tài khoản: Nếu trang web bán sách yêu cầu người dùng đăng ký và đăng nhập, hệ thống cần gửi thông báo cho người dùngThông báo đặt hàng: Hệ thống cần có khả n
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN &
TRUYỀN THÔNG VIỆT HÀN
Khoa Khoa Học Máy Tính
BÁO CÁO CÔNG NGHỆ PHẦM MỀM (7)
QUẢN LÝ THƯ VIỆN SÁCH
Giảng viên hướng dẫn: ThS Võ Văn Lường
Sinh viên thực hiện:
Nguyễn Thành Công 21IT469 Nguyễn Thành Công 21IT469 Nguyễn Thành Công 21IT469 Nguyễn Thành Công 21IT469 Nguyễn Thành Công 21IT469
Đà Nẵng, tháng 11 năm 2023
Trang 2TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN &
TRUYỀN THÔNG VIỆT HÀN
Khoa Khoa Học Máy Tính
BÁO CÁO CÔNG NGHỆ PHẦM MỀM (7)
QUẢN LÝ THƯ VIỆN SÁCH
Giảng viên hướng dẫn: ThS Võ Văn Lường
Sinh viên thực hiện:
Nguyễn Thành Công 21IT469 Nguyễn Thành Công 21IT469 Nguyễn Thành Công 21IT469 Nguyễn Thành Công 21IT469 Nguyễn Thành Công 21IT469
Đà Nẵng, tháng 11 năm 2023
Trang 3LỜI MỞ ĐẦU
Thế giới hiện đại đang trải qua một sự phát triển đáng kể trong lĩnh vực côngnghệ thông tin và ngày càng nhiều ứng dụng thông minh đang trở thành mộtphần không thể thiếu trong cuộc sống hàng ngày của chúng ta Khả năng truycập thông tin và thực hiện các nhiệm vụ qua thiết bị di động hay website đã trởnên dễ dàng và tiện lợi hơn bao giờ hết Trong bối cảnh này, việc quản lý thưviện sách thông qua một website đã trở thành một ứng dụng quan trọng và hữuích đối với cả người quản lý thư viện và người sử dụng
Đề tài "Quản lý thư viện sách" nhằm mục đích tạo ra một ứng dụng hiệu quả
và tiện lợi để quản lý tài liệu sách trong các thư viện Sự phát triển của côngnghệ thông tin không chỉ giúp giảm bớt công việc thủ công mà còn tạo ra mộtmôi trường tương tác thông minh giữa thư viện, người quản lý, và người đọc.Điều này không chỉ cải thiện hiệu suất quản lý thư viện mà còn giúp người đọctruy cập thông tin sách một cách nhanh chóng và thuận tiện
Với sự hỗ trợ tận tình của thầy ThS.Võ Văn Lường trong khoa "Công nghệthông tin và truyền thông Việt Hàn", người đã trực tiếp hướng dẫn, chỉ bảo vàgiúp đỡ Chúng em rất biết ơn vì đã nhận được sự chỉ dẫn và hỗ trợ tận tình củathầy trong suốt quá trình thực hiện đề tài này
Một lần nữa chúng em xin được chân thành cảm ơn!
Trang 4NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN
Trang 5
MỤC LỤC
Trang 6DANH SÁCH THUẬT NGỮ VIẾT TẮT
Trang 7CHƯƠNG 1: GIỚI THIỆU
1.1 Tổng quan
Trang 8CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
2.1 Phân tích yêu cầu
2.1.1 Yêu cầu của người dùng
Trang 9Là thủ thư tôi cần cung cấp chức năng hỗ trợ khách hàng, bao gồm cung cấp thông tin liên hệ, trả lời câu hỏi và yêu cầu hỗ trợ từ người dùng.
Là một quản trị viên hệ thống, tôi cần quản lý báo cáo và thống kê: quản lý và phân tích các báo cáo và thống kê liên quan đến hoạt động và hiệu suất của trang web bán sách
Là một quản trị viên hệ thống, tôi cần quản lý và duy trì các máy chủ và hạ tầng cần thiết để trang web hoạt động ổn định
Là một quản trị viên hệ thống,tôi cần có thể giám sát các cài đặt, cấu hình và giám sát máy chủ, cơ sở dữ liệu
Tôi muốn có khả năng tìm kiếm sách theo tiêu chí như tên sách, tác giả, thể loại, và các thuộc tính khác, giúp tôi thuận lợi quản lý sách hơn
Tôi cần có khả năng xem thông tin chi tiết sách: có thể xem thông tin chi tiết vềmột cuốn sách cụ thể, bao gồm tên sách, tác giả, mô tả, danh mục thể loại
0 Người quản lý người dùng
Với vai trò là một người quản lý người dùng tôi cần có khả năng đăng ký và đăng nhập vào trang quản lý, để có thể quản lý người dùng
Là người quản lý người dùng tôi cần có khả năng quản lý truy xuất điều này bao gồm việc tạo tài khoản mới cho người dùng, cung cấp chức năng đăng nhập và đăng xuất cho người dùng khi đăng nhập
Là thủ thư tôi cần có khả năng quản lý tất cả thông tin người dùng: bao gồm cảtài khoản mật khẩu, tên, số điện thoại, email, địa chỉ, thông tin liên hệ …
Trang 10Là thủ thư tôi cần có khả năng xác định quyền truy cập cho từng người dùng.
Sao lưu và khôi phục dữ liệu: Hệ thống bảo trì cần cung cấp chức năng sao lưu định kỳ dữ liệu của trang web và khả năng khôi phục lại dữ liệu
0 Hệ thống thông báo
Với vai trò là hệ thống thông báo, tôi cần có tất cả khả năng có thể thông báo
và giám sát tất cả hoạt động của khách hàng trên trang, để có thể tiện lợi thông báo các hoạt động cho khách hàng
Thông báo đăng nhập, đăng kí tài khoản: Nếu trang web bán sách yêu cầu người dùng đăng ký và đăng nhập, hệ thống cần gửi thông báo cho người dùngThông báo đặt hàng: Hệ thống cần có khả năng gửi thông báo đến khách hàng sau khi họ đặt hàng thành công trên trang web
Thông báo thanh toán: Hệ thống cần gửi thông báo cho khách hàng khi thanh toán của họ được xác nhận
Thông báo cập nhật và xóa đơn hàng: Nếu có bất kỳ thay đổi nào về đơn hàng,
hệ thống cần gửi thông báo cho khách hàng để thông báo về sự thay đổi
0 Hệ thống quản lý kho
Quản lý thông tin sách: Hệ thống cần có khả năng lưu trữ và quản lý thông tin chi tiết về sách, bao gồm tên sách, tác giả, mô tả, danh mục, giá cả, hình ảnh sách và các thông tin liên quan khác
Quản lý số lượng sách: Hệ thống cần cập nhật số lượng sách có sẵn trong kho mỗi khi có giao dịch mua hoặc bán sách trên trang web
Quản lý nhập sách: Hệ thống cần cung cấp chức năng nhập sách mới vào kho Người quản lý kho có thể nhập thông tin chi tiết về sách như tên sách, tác giả,
mô tả, danh mục, giá cả, số lượng và hình ảnh
Quản lý đơn hàng: Hệ thống cần lưu trữ thông tin về các đơn hàng được đặt trên trang web Khi có đơn hàng mới, hệ thống cần cập nhật số lượng sách trong kho và xác nhận đơn hàng
Trang 11Quản lý thông tin nhà cung cấp: Hệ thống có thể lưu trữ thông tin về nhà cung cấp sách như tên, địa chỉ, thông tin liên hệ và các chi tiết khác
2.1.2 Yêu cầu chức năng
1 Đăng ký và Đăng nhập:
- Đăng ký tài khoản mới: Cho phép người dùng điền thông tin cá nhân
như tên, email, số điện thoại, địa chỉ, và tạo mật khẩu Hệ thống cần kiểm tra tính hợp lệ của thông tin và xác nhận rằng không có tài khoản trùng lặp đã tồn tại
- Xác thực tài khoản qua email hoặc số điện thoại: Sau khi đăng ký, hệ
thống gửi mã xác thực hoặc liên kết xác thực đến email hoặc số điện thoại mà người dùng đã cung cấp Người dùng cần xác minh tài khoản bằng cách nhập mã xác thực để kích hoạt tài khoản
- Đăng nhập: Người dùng có thể đăng nhập vào tài khoản bằng tên đăng
nhập hoặc email và mật khẩu Hệ thống kiểm tra tính chính xác của thông tin đăng nhập và đưa người dùng đến trang chính sau khi đăng nhập thành công
2 Quản lý Tài khoản (nhân viên, khách hàng):
- Cập nhật thông tin cá nhân: Người dùng có thể thay đổi thông tin cá
nhân của họ, bao gồm cập nhật địa chỉ, số điện thoại, hình ảnh cá nhân
và thay đổi mật khẩu
- Trang cá nhân: Mỗi người dùng có một trang cá nhân riêng biệt Trang
này hiển thị lịch sử mượn sách của họ, danh sách đơn hàng hiện tại, lịch
sử đơn hàng, thông tin cá nhân, và các hoạt động khác liên quan đến tài khoản của họ
3.Tìm kiếm và Xem Sách:
- Tìm kiếm sách: Người dùng có thể tìm kiếm sách bằng cách nhập tiêu
đề, tác giả, thể loại, xuất bản phụ, năm xuất bản hoặc từ khoá Hệ thống cần trả về kết quả tương ứng với yêu cầu tìm kiếm của người dùng
- Hiển thị danh sách sách kết quả: Kết quả tìm kiếm sẽ hiển thị danh
sách sách với thông tin chi tiết bao gồm ảnh bìa sách, tiêu đề, tác giả và
mô tả ngắn
- Xem tóm tắt sách, thông tin về tác giả và bìa sách: Người dùng có thể
xem chi tiết về một cuốn sách bằng cách nhấp vào sách trong danh sách kết quả tìm kiếm Thông tin chi tiết bao gồm tóm tắt sách, thông tin về tác giả và hình ảnh bìa sách
Trang 124.Đặt hàng và Mượn Sách:
- Đặt hàng sách: Cho phép người dùng đặt hàng sách bằng cách
thêm sách vào giỏ hàng hoặc danh sách đặt hàng Người dùng cần chọn thời gian mượn và xác nhận đặt hàng
- Kiểm tra tính khả dụng của sách: Hệ thống cần kiểm tra tính
khả dụng của sách trước khi xác nhận đặt hàng để đảm bảo rằng sách còn trong kho hàng
- Gửi xác nhận đặt hàng và thông tin liên quan: Sau khi đặt
hàng thành công, hệ thống cần gửi email hoặc thông báo xác nhận đặt hàng cùng với thông tin liên quan như thời gian mượn, giá trị đặt hàng và chi tiết liên hệ
5.Thanh toán và Phí dịch vụ:
- Hỗ trợ thanh toán trực tuyến: Cho phép người dùng thanh toán
trực tuyến bằng thẻ tín dụng, ví điện tử hoặc chuyển khoản
- Tính phí dịch vụ: Hệ thống cần tính phí dịch vụ dựa trên thời
gian mượn và số lượng sách mượn, sau đó hiển thị tổng giá trị đặthàng
6.Quản lý Đơn hàng:
- Xem danh sách các đơn hàng hiện tại và lịch sử đơn hàng:
Người dùng có thể xem danh sách các đơn hàng hiện tại, thay đổitrạng thái đơn hàng và xem lịch sử đơn hàng trước
- Cho phép gia hạn thời gian mượn hoặc trả sách trước hạn:
Người dùng có thể gia hạn thời gian mượn hoặc quyết định trả sách trước hạn nếu họ muốn
7.Xử lý Giao nhận:
- Quản lý thông tin vận chuyển và giao hàng: Hệ thống cần lưu
trữ thông tin về địa chỉ giao hàng và thông tin vận chuyển để chuẩn bị quá trình giao sách
- Giao diện cho người giao sách xác nhận việc giao sách và thu tiền: Người giao sách cần xác nhận việc giao sách và thu tiền từ
khách hàng theo thông tin trong đơn hàng
8.Lịch sử Mượn Sách:
- Hiển thị lịch sử mượn sách của người dùng: Cho phép người
dùng xem lịch sử mượn sách của họ, bao gồm danh sách sách đã mượn trước đây và thời gian mượn
Trang 13- Cho phép người dùng đánh giá và đọc đánh giá về sách đã mượn: Người dùng có thể đánh giá sách đã mượn và đọc đánh
giá của người dùng khác về sách đó
9.Thông báo và Gửi Email:
- Gửi thông báo và email xác nhận: Hệ thống cần gửi thông báo và email xác nhận đặt hàng, gia hạn và nhắc nhở trả sách đến người dùng
10.Quản lý Sách và Kho hàng:
- Cập nhật thông tin sách: Quản trị viên có thể cập nhật thông tin
sách, bao gồm số lượng sách còn lại, tình trạng sách và thông tin khác về sách
- Giao diện quản lý cho thư viện hoặc cửa hàng sách: Cho phép
quản trị viên theo dõi và quản lý kho hàng sách, bao gồm thêm sách mới và xóa sách cũ
11.Hệ thống Xác thực và Bảo mật:
- Bảo mật thông tin người dùng và giao dịch: Đảm bảo
rằng dữ liệu người dùng và giao dịch được bảo vệ một cách an toàn bằng cách sử dụng các biện pháp bảo mật như mã hóa, chứng thực và kiểm tra dấu vết
- Xác thực và ủy quyền người dùng đúng quyền truy cập: Đảm bảo rằng người dùng chỉ có quyền truy cập vào
những phần của hệ thống mà họ được phép truy cập, và hệthống cần xác minh danh tính của họ trước khi cho phép truy cập
12.Thống kê và Báo cáo:
Thu thập dữ liệu về hoạt động của người dùng: Thu thập dữ
liệu về hoạt động của người dùng trên hệ thống, bao gồm lịch sử mượn sách, thời gian sử dụng, và sở thích đọc sách
Thống kê số lượng sách đã mượn: Tạo báo cáo về số lượng sách
đã mượn, thời gian mượn, và doanh thu từ dịch vụ cho mượn sách
13.Hỗ trợ Khách hàng:
Hệ thống hỗ trợ trực tuyến hoặc qua email/chat: Cung cấp
một hệ thống hỗ trợ trực tuyến hoặc qua email/chat để giải quyết các vấn đề và thắc mắc của người dùng, cung cấp trợ giúp và hỗ trợ kỹ thuật
14.Hệ thống Gợi ý Sách:
Trang 14- Tích hợp tính năng đề xuất sách: Dựa trên lịch sử mượn
sách và sở thích của người dùng, hệ thống cung cấp gợi ý sách tương tự hoặc sách phù hợp với sở thích của họ
15.Hệ thống Quản lý Đánh giá:
- Cho phép quản trị viên quản lý và kiểm duyệt đánh giá
và nhận xét của người dùng về sách: Quản trị viên có
thể xem, duyệt, và quản lý đánh giá và nhận xét mà người dùng gửi về các cuốn sách
16.Thanh toán COD:
- Hỗ trợ phương thức thanh toán khi nhận hàng (Cash
On Delivery): Cho phép người dùng thanh toán khi nhận
sách từ người giao hàng
17.Điều hướng và Tìm kiếm Tối ưu:
- Cung cấp điều hướng dễ sử dụng: Tạo giao diện người
dùng thân thiện và dễ sử dụng để người dùng có thể dễ dàng tìm kiếm sách và sử dụng các chức năng trên hệ thống của bạn
2.1.3 Yêu cầu phi chức năng
Tính bảo mật: Hệ thống cần đảm bảo tính bảo mật cao để bảo vệ thông
tin độc giả, thông tin giao dịch và dữ liệu thư viện Điều này có thể đạt được bằng cách sử dụng mã hóa dữ liệu, xác thực hai yếu tố, kiểm tra phân quyền và các biện pháp bảo mật khác
Giao diện người dùng thân thiện: Hệ thống cần có một giao diện người
dùng dễ sử dụng và thân thiện, cho phép người dùng dễ dàng tìm kiếm, xem thông tin, mượn sách và quản lý tài khoản của họ Giao diện cũng cần tương thích với các thiết bị di động để hỗ trợ người dùng truy cập từ nhiều nền tảng khác nhau
Tích hợp thanh toán: Website cần hỗ trợ các phương thức thanh toán
trực tuyến phổ biến như thẻ tín dụng, chuyển khoản ngân hàng và ví điện
tử Tích hợp thanh toán an toàn và tin cậy là một yêu cầu quan trọng để đảm bảo thành công và sự tin tưởng của khách hàng
Quản lý đơn mượn sách và kho sách: Hệ thống cần có tính năng quản lí
đơn mượn hàng và kho hàng hiệu quả để theo dõi quá trình đặt hàng, xử
lý đơn và kiểm soát số lượng sách tồn kho Điều này giúp đảm bảo rằng sách được giao đúng và đúng số lượng
Trang 15Tích hợp xã hội: Để tăng cường tương tác và quảng bá, hệ thống có thể
tích hợp các tính năng xã hội như chia sẻ sách, nhận xét và đánh giá sách,kết nối với các mạng xã hội khác, vv
Đa ngôn ngữ và đa vùng: Hệ thống có thể hỗ trợ đa ngôn ngữ để phục
vụ khách hàng ở nhiều quốc gia và khu vực khác nhau Ngoài ra, nó cũng
có thể hỗ trợ các đơn vị tiền tệ và quy tắc về thuế phí của từng khu vực
Hỗ trợ khách hàng: Hệ thống cần có một kênh liên lạc hoặc hỗ trợ trực
tuyến để khách hàng có thể gửi câu hỏi, yêu cầu hỗ trợ hoặc báo cáo sự
cố Thời gian phản hồi nhanh và chất lượng dịch vụ tốt là quan trọng để đáp ứng nhu cầu của khách hàng
2.1.4 Yêu cầu hệ thống
Yêu cầu hệ thống của website Thuê Sách Online được mô tả như sau:
Hệ điều hành và môi trường phát triển:
Hệ điều hành máy chủ:Microsoft Windows (Windows 11 Version 22H2) đây hiện đang là version mới nhất của windows
Ngôn ngữ lập trình: Java (Sử dụng Apache Maven để quản
lý dự án và build chương trình)
Phiên bản Java: OpenJDK 20
Framework: Sử dụng Spring MVC mới nhất
Máy chủ ứng dụng: Apache Tomcat 9
Nền tảng hoạt động: Website có thể chạy được trên nhiều nền tảng khác
nhau từ máy tính cho đến điện thoại, từ Windows, Android cho đến IOS,MacOS.Website phù hợp với các loại màn hình khác nhau từ điện thoạicho đến laptop vì được responsive web design một cách hợp lý Đồngthời có đường IP rõ ràng nên sẽ không bị chặn như các trang web đọctruyện online lậu tràn lan trên thị trường hiện nay
Kết nối mạng: Máy chủ cần có kết nối Internet ổn định để có thể gửi và
nhận dữ liệu từ thiết bị di động và máy tính của người dùng Đảm bảorằng cổng mạng phù hợp đã được mở và được bảo mật
Trang 16Hiệu suất: Thực hiện giám sát và tinh chỉnh máy chủ để đảm bảo hiệu
suất tốt, đặc biệt khi website có nhiều người dùng truy cập cùng một lúc
Sao lưu và khôi phục dữ liệu: Thực hiện sao lưu dữ liệu định kỳ và lập
kế hoạch cho quy trình khôi phục dữ liệu trong trường hợp có sự cố
2.1.5 Biểu đồ Usecase
Actor:
Biểu đồ UseCase tổng quát:
Biểu đồ UseCase chi tiết:
1 Biểu đồ UseCase đăng nhập
Trang 172 Biểu đồ UseCase giỏ hàng
Trang 183 Biểu đồ UseCase tìm kiếm sách
Trang 197 Biểu đồ UseCase Quản lý kho
8 Biểu đồ UserCase Quản lý xuất nhập kho
Trang 209 Quản lý mượn sách
10 Usecase Quản lý trả sách
11.1 Usecase Quản lý thông tin sản phẩm
Trang 2111.2 Usecase Quản lý thông tin cá nhân
12 Usecase Quản lý đơn hàng
13 Usecase Báo cáo thống kê
Trang 2214 Usecase Quản lý độ tuổi
15 Biểu đồ usecase thanh toán
Trang 2316 usecase quản lý thông tin nhân viên
Trang 2417 usecase quản lý khách hàng
18 usecase quản lý thông báo
Trang 25Đặc tả UseCase
1 Use Case: Tìm kiếm
tìm kiếm thông tin
Điều kiện kích hoạt Người dùng muốn tìm kiếm thông tinTiền điều kiện Người dùng đã đăng nhập vào hệ
thốngHậu điều kiện Người dùng nhận được kết quả tìm
kiếm và có thể xem chi tiết thông tinLuồng sự kiện chính - Người dùng nhập từ khóa tìm kiếm
- Luồng kết thúc
Trang 26Luồng sự kiện rẽ nhánh Kết quả không tìm thấy:
+ Nếu không có kết quả tìm kiếmnào, hệ thống hiển thị thông báo chongười dùng và gửi họ quay lại tùychọn tìm kiếm hoặc thực hiện một tìmkiếm khác
Bảng 1: UseCase tìm kiếm
2 Use Case: Quản lý account
Tên UseCase Quản lý tài khoản (Đăng nhập và
Đăng ký)
thể đăng nhập vào hệ thống hoặc đăng
ký tài khoản mới
Điều kiện kích hoạt Người dùng muốn truy cập hệ thống
hoặc muốn tạo tài khoản mới.Tiền điều kiện Người dùng chưa đăng nhập hoặc
chưa có tài khoản
Hậu điều kiện Người dùng đã đăng nhập thành công
hoặc đã đăng ký tài khoản mới vàđược chuyển đến giao diện chính của
hệ thống
Luồng sự kiện chính Đăng nhập:
+ Người dùng nhập tên đăng nhập
và mật khẩu vào biểu mẫu đăng nhập + Hệ thống kiểm tra thông tin và xácthực tên đăng nhập và mật khẩu + Nếu thông tin xác thực thànhcông, người dùng được đăng nhập vàchuyển đến giao diện chính của hệthống
+ Nếu thông tin xác thực thất bại,thông báo lỗi xuất hiện và quá trìnhđăng nhập kết thúc
Đăng ký:
+ Người dùng chọn tùy chọn "Đăngký" và nhập thông tin đăng ký mới,bao gồm tên đăng nhập, mật khẩu,email, và các thông tin khác
Trang 27+ Hệ thống kiểm tra tính hợp lệ củathông tin đăng ký.
+ Nếu thông tin hợp lệ, hệ thống tạotài khoản mới và người dùng đượcđăng ký thành công
+ Nếu thông tin đăng ký không hợp
lệ hoặc tên đăng nhập đã tồn tại, thôngbáo lỗi xuất hiện và quá trình đăng kýkết thúc
+ Người dùng được chuyển đến giaodiện chính của hệ thống sau khi đăng
ký thành công
Luồng sự kiện rẽ nhánh Đăng nhập không thành công:
+ Nếu thông tin đăng nhập khônghợp lệ hoặc không khớp, hệ thốnghiển thị thông báo lỗi cho người dùng
và yêu cầu họ thử lại hoặc đặt lại mậtkhẩu
Đăng ký lỗi:
+ Nếu có lỗi xảy ra trong quá trìnhđăng ký (ví dụ: email đã tồn tại), hệthống hiển thị thông báo lỗi và yêucầu người dùng điều chỉnh thông tinđăng ký
Bảng 2: UseCase quản lý account
3 Use Case: Giỏ hàng
thể thêm, xem, cập nhật và xóa sảnphẩm trong giỏ hàng khi mua sắm trựctuyến
Điều kiện kích hoạt Người dùng muốn thêm sản phẩm vào
giỏ hàng hoặc quản lý giỏ hàng đã có.Tiền điều kiện Người dùng đã đăng nhập vào tài
khoản và đã truy cập vào trang muasắm
Hậu điều kiện Người dùng đã thực hiện các thao tác
quản lý giỏ hàng và có thể tiến hànhthanh toán
Trang 28Luồng sự kiện chính Thêm sản phẩm vào giỏ hàng:
+ Người dùng chọn sản phẩm muốnmua và nhấp vào nút "Thêm vào giỏhàng"
+ Hệ thống cập nhật giỏ hàng củangười dùng bằng cách thêm sản phẩmvào danh sách giỏ hàng
+ Người dùng có thể xem danh sáchsản phẩm trong giỏ hàng và tiếp tụcmua sắm hoặc thực hiện thanh toán.Xem giỏ hàng:
+ Người dùng chọn tùy chọn "Xemgiỏ hàng" để xem danh sách sản phẩmtrong giỏ hàng
+ Hệ thống hiển thị danh sách sảnphẩm trong giỏ hàng của người dùng.+ Người dùng có thể cập nhật sốlượng sản phẩm hoặc xóa sản phẩmkhỏi giỏ hàng
Cập nhật sản phẩm trong giỏ hàng:+ Người dùng chọn sản phẩm tronggiỏ hàng và cập nhật số lượng hoặcxóa sản phẩm
+ Hệ thống cập nhật giỏ hàng dựatrên thay đổi của người dùng.+ Người dùng có thể tiếp tục muasắm hoặc thực hiện thanh toán.Xóa sản phẩm khỏi giỏ hàng:+ Người dùng chọn sản phẩm tronggiỏ hàng và chọn tùy chọn "Xóa".+ Hệ thống loại bỏ sản phẩm khỏigiỏ hàng
Thanh toán:
+ Người dùng chọn tùy chọn "Thanhtoán" trong giỏ hàng
+ Hệ thống hướng dẫn người dùngđến quy trình thanh toán, yêu cầuthông tin thanh toán và địa chỉ giaohàng
Trang 29+ Người dùng hoàn tất thanh toán.+ Hệ thống cập nhật trạng thái đơnhàng và xóa danh sách sản phẩm khỏigiỏ hàng.
+ Người dùng nhận được xác nhậnđơn hàng và thông tin giao hàng.Luồng sự kiện rẽ nhánh Thêm sản phẩm lỗi:
+ Nếu người dùng gặp lỗi khi thêmsản phẩm vào giỏ hàng (ví dụ: sảnphẩm đã hết hàng), hệ thống hiển thịthông báo lỗi và yêu cầu người dùngthử lại hoặc chọn sản phẩm khác
Bảng 3: UseCase giỏ hàng
4 Use Case: Thanh toán
có thể thực hiện thanh toán để muasản phẩm hoặc dịch vụ
Điều kiện kích hoạt Người dùng muốn mua sản phẩm hoặc
dịch vụ và đã đặt hàng
Tiền điều kiện Người dùng đã thêm sản phẩm vào giỏ
hàng và đã đăng nhập hoặc cung cấpthông tin liên hệ
Hậu điều kiện Thanh toán được xử lý thành công,
đơn hàng được xác nhận, và ngườidùng nhận được thông báo thanh toán.Luồng sự kiện chính Chọn phương thức thanh toán:
+ Người dùng chọn phương thứcthanh toán, ví dụ: thẻ tín dụng, chuyểnkhoản, PayPal, tiền mặt khi nhậnhàng, v.v
+ Người dùng cung cấp thông tinthanh toán tương ứng với phương thứcchọn
+ Hệ thống kiểm tra thông tin thanhtoán và chuyển tới cổng thanh toánhoặc xử lý thanh toán bên trong + Hệ thống yêu cầu xác nhận thông
Trang 30tin thanh toán từ người dùng (nếucần).
+ Người dùng xác nhận thông tinthanh toán
+ Hệ thống xử lý thanh toán, gửi yêucầu thanh toán đến bên thứ ba nếucần, và ghi nhận giao dịch
+ Hệ thống cập nhật trạng thái đơnhàng và gửi xác nhận đơn hàng đếnngười dùng
Xử lý lỗi thanh toán:
+ Nếu thanh toán không thành công,
hệ thống thông báo lỗi và yêu cầungười dùng thử lại hoặc sử dụngphương thức thanh toán khác + Người dùng có thể quay lại để sửathông tin thanh toán hoặc thử lại thanhtoán
Xác minh thanh toán (tùy chọn): + Hệ thống có thể yêu cầu xác minhthanh toán bằng cách gửi mã xác minhđến điện thoại hoặc email của ngườidùng
+ Người dùng nhập mã xác minh đểhoàn tất thanh toán
Hoàn tất thanh toán:
+ Thanh toán được xử lý thành công + Đơn hàng được xác nhận
+ Người dùng nhận được xác nhậnđơn hàng và thông báo thanh toán.Luồng sự kiện rẽ nhánh Lỗi thanh toán:
+ Nếu thanh toán bằng thẻ tín dụngkhông thành công, hệ thống hiển thịthông báo lỗi và yêu cầu người dùngkiểm tra thông tin thẻ hoặc sử dụngphương thức thanh toán khác
Bảng 4: UseCase thanh toán
5 Use Case: Quản lý tài khoản
Tên UseCase Quản lý tài khoản (Khách hàng và
Trang 31Nhân viên)
Mô tả Use Case mô tả cách người dùng
(khách hàng và nhân viên) quản lý tàikhoản của họ
Luồng sự kiện chính Xem thông tin tài khoản:
+ Người dùng (khách hàng hoặc nhânviên) truy cập trang quản lý tài khoản + Hệ thống hiển thị thông tin tàikhoản hiện tại của người dùng.Chỉnh sửa thông tin tài khoản: + Người dùng chọn tùy chọn "Chỉnhsửa thông tin tài khoản"
+ Hệ thống hiển thị biểu mẫu chophép người dùng chỉnh sửa thông tin
Trang 32+ Hệ thống kiểm tra tính hợp lệ củamật khẩu mới.
+ Nếu mật khẩu mới hợp lệ, hệ thốngcập nhật mật khẩu và thông báo đổimật khẩu thành công
Đăng xuất:
+ Người dùng chọn tùy chọn "Đăngxuất" để thoát khỏi tài khoản + Hệ thống đăng xuất người dùng vàchuyển họ trở về trang đăng nhập.Luồng sự kiện rẽ nhánh Quản lý tài khoản không thành công:
+ Nếu người dùng không có quyềntruy cập hoặc gặp lỗi khi quản lý tàikhoản, hệ thống hiển thị thông báo lỗihoặc yêu cầu xác thực tài khoản
Bảng 5: UseCase quản lý tài khoản
6 Use Case: Quản lý thông báo
có thể quản lý thông báo của họ
Điều kiện kích hoạt Người dùng muốn kiểm tra và quản lý
thông báo của họ
Tiền điều kiện Người dùng đã đăng nhập vào tài
khoản và có thông báo đang chờ xem.Hậu điều kiện Thông báo đã được đọc hoặc quản lý
bởi người dùng
Luồng sự kiện chính Xem danh sách thông báo:
+ Người dùng truy cập trang quản lýthông báo
+ Hệ thống hiển thị danh sách cácthông báo có sẵn cho người dùng + Người dùng xem danh sách thôngbáo và có thể chọn một thông báo cụthể để xem chi tiết
Đánh dấu thông báo đã đọc:
+ Người dùng chọn tùy chọn "Đánhdấu đã đọc" cho một hoặc nhiều thông
Trang 33+ Hệ thống đánh dấu các thông báođược chọn là đã đọc
Xóa thông báo:
+ Người dùng chọn tùy chọn "Xóa"cho một hoặc nhiều thông báo + Hệ thống xóa các thông báo đượcchọn khỏi danh sách thông báo củangười dùng
Luồng sự kiện rẽ nhánh Xóa thông báo:
+ Nếu người dùng chọn xóa thôngbáo, hệ thống xác nhận họ có chắcchắn muốn xóa hoặc lưu trữ thôngbáo
Bảng 6: UseCase quản lý thông báo
7 Use Case: Quản lý kho sách
có thể quản lý kho sách của một cửahàng sách hoặc thư viện
Điều kiện kích hoạt Nhân viên quản lý kho sách muốn
thực hiện các thao tác quản lý khosách
Tiền điều kiện Nhân viên quản lý kho sách đã đăng
nhập vào hệ thống quản lý kho sách.Hậu điều kiện Thay đổi trong kho sách đã được ghi
nhận và cập nhật
Luồng sự kiện chính Thêm sách vào kho:
+ Nhân viên quản lý kho sách chọntùy chọn "Thêm sách vào kho" + Hệ thống hiển thị biểu mẫu chophép nhập thông tin sách mới, baogồm tên sách, tác giả, thể loại, sốlượng, v.v
+ Nhân viên quản lý kho sách nhậpthông tin sách mới
+ Hệ thống kiểm tra tính hợp lệ của
Trang 34thông tin sách mới.
+ Nếu thông tin hợp lệ, hệ thống thêmsách mới vào kho và ghi nhận thayđổi
Cập nhật thông tin sách:
+ Nhân viên quản lý kho sách chọntùy chọn "Cập nhật thông tin sách" + Hệ thống hiển thị danh sách sáchhiện có trong kho
+ Nhân viên quản lý kho sách chọnmột cuốn sách để cập nhật thông tin + Hệ thống hiển thị biểu mẫu chophép cập nhật thông tin sách, bao gồmtên sách, tác giả, thể loại, số lượng,v.v
+ Nhân viên quản lý kho sách cậpnhật thông tin sách theo nhu cầu + Hệ thống kiểm tra tính hợp lệ củathông tin cập nhật
+ Nếu thông tin cập nhật hợp lệ, hệthống cập nhật thông tin sách và ghinhận thay đổi
Xóa sách khỏi kho:
+ Nhân viên quản lý kho sách chọntùy chọn "Xóa sách khỏi kho" + Hệ thống hiển thị danh sách sáchhiện có trong kho
+ Nhân viên quản lý kho sách chọnmột cuốn sách để xóa khỏi kho + Hệ thống xóa sách khỏi kho và ghinhận thay đổi
Luồng sự kiện rẽ nhánh Thêm sách mới:
+ Nếu người dùng muốn thêm sáchmới vào kho sách, hệ thống hiển thịbiểu mẫu nhập thông tin sách hoặcyêu cầu họ cung cấp thông tin bổ sungnếu cần
Bảng 7: UseCase quản lý kho sách
8 Use Case: Quản lý xuất nhập kho
Trang 35Tên UseCase Quản lý xuất nhập kho
quản lý xuất và nhập hàng hóa vàokho
Điều kiện kích hoạt Nhân viên quản lý kho muốn thực
hiện các thao tác xuất nhập hàng hóa.Tiền điều kiện Nhân viên quản lý kho đã đăng nhập
vào hệ thống quản lý kho
Hậu điều kiện Thay đổi trong kho sau các giao dịch
xuất nhập đã được ghi nhận và cậpnhật
Luồng sự kiện chính Xuất hàng hóa khỏi kho:
+ Nhân viên quản lý kho chọn tùychọn "Xuất hàng hóa khỏi kho" + Hệ thống hiển thị danh sách hànghóa hiện có trong kho
+ Nhân viên quản lý kho chọn sảnphẩm cần xuất, nhập số lượng vàthông tin giao hàng
+ Hệ thống kiểm tra tính hợp lệ củathông tin giao hàng
+ Nếu thông tin hợp lệ, hệ thống cậpnhật kho và ghi nhận thay đổi.Nhập hàng hóa vào kho:
+ Nhân viên quản lý kho chọn tùychọn "Nhập hàng hóa vào kho" + Hệ thống hiển thị biểu mẫu chophép nhập thông tin hàng hóa mới,bao gồm tên, số lượng, giá, v.v + Nhân viên quản lý kho nhập thôngtin hàng hóa mới
+ Hệ thống kiểm tra tính hợp lệ củathông tin nhập hàng hóa
+ Nếu thông tin hợp lệ, hệ thống cậpnhật kho và ghi nhận thay đổi.Luồng sự kiện rẽ nhánh Xuất kho lỗi:
+ Nếu quá trình xuất kho gặp lỗi
Trang 36hoặc hết sản phẩm trong kho, hệ thốnghiển thị thông báo lỗi và yêu cầungười dùng kiểm tra lại.
Bảng 8: UseCase quản lý xuất nhập kho
9 Use Case: Quản lý mượn sách
có thể mượn sách từ thư viện hoặc cửahàng sách và quản lý các giao dịchmượn sách
viên, v.v.)Điều kiện kích hoạt Người dùng muốn mượn sách từ thư
viện hoặc cửa hàng sách
Tiền điều kiện Người dùng đã đăng nhập vào tài
khoản mượn sách (nếu áp dụng).Hậu điều kiện Giao dịch mượn sách đã được ghi
nhận và sách đã được mượn thànhcông
Luồng sự kiện chính Tìm sách và đặt mượn:
+ Người dùng truy cập trang tìm kiếmsách hoặc danh mục sách
+ Hệ thống hiển thị danh sách sách vàtùy chọn tìm kiếm sách
+ Người dùng tìm kiếm sách bằng tênsách, tác giả hoặc thể loại
+ Người dùng chọn sách cần mượn vàthực hiện đặt mượn
+ Hệ thống kiểm tra tính khả dụngcủa sách và ghi nhận giao dịch mượn.Xem danh sách mượn:
+ Người dùng truy cập trang quản lýgiao dịch mượn sách
+ Hệ thống hiển thị danh sách cácgiao dịch mượn sách của người dùng + Người dùng xem danh sách mượnsách và thực hiện các thao tác quản lý(gia hạn, trả sách, v.v.)
Trang 37Gia hạn mượn sách (tùy chọn): + Người dùng chọn tùy chọn "Giahạn mượn" cho một giao dịch mượnsách.
+ Hệ thống kiểm tra tính khả dụngcủa sách và thực hiện gia hạn nếu có + Hệ thống cập nhật thông tin giaodịch mượn sách và ghi nhận thay đổi.Trả sách:
+ Người dùng chọn tùy chọn "Trảsách" cho một giao dịch mượn sách + Hệ thống kiểm tra thông tin và tìnhtrạng của sách
+ Hệ thống cập nhật thông tin giaodịch mượn sách và ghi nhận trả sách.Luồng sự kiện rẽ nhánh Gia hạn mượn sách không thành công:
+ Nếu người dùng muốn gia hạnmượn sách và gặp lỗi, hệ thống hiểnthị thông báo lỗi và yêu cầu họ thửlại hoặc liên hệ với dịch vụ hỗ trợ
Bảng 9: UseCase quản lý mượn sách
10 Use Case: Quản lý trả sách
có thể trả sách sau khi đã mượnchúng
viên, v.v.)Điều kiện kích hoạt Người dùng muốn trả sách đã mượn.Tiền điều kiện Người dùng đã đăng nhập vào tài
khoản mượn sách (nếu áp dụng).Hậu điều kiện Giao dịch trả sách đã được ghi nhận
và sách đã được trả thành công.Luồng sự kiện chính Xác định sách cần trả:
+ Người dùng truy cập trang quản lýsách đã mượn
+ Hệ thống hiển thị danh sách cácsách đã mượn của người dùng
Trang 38+ Người dùng chọn sách cần trả vàthực hiện đăng ký trả sách.
Đăng ký trả sách:
+ Người dùng chọn tùy chọn "Đăng
ký trả sách" cho một giao dịch mượnsách
+ Hệ thống kiểm tra thông tin và tìnhtrạng của sách cần trả
+ Hệ thống ghi nhận thông tin giaodịch trả sách
+ Hệ thống cập nhật thông tin và tìnhtrạng của sách sau khi trả
Luồng sự kiện rẽ nhánh Trả sách muộn:
+ Nếu người dùng trả sách muộn, hệthống có thể tính phí trễ và thông báocho họ về số tiền phải trả
Bảng 10: UseCase quản lý trả sách
11 Use Case: Xem thông tin
có thể xem thông tin về một đối tượnghoặc hồ sơ cụ thể
viên, v.v.)Điều kiện kích hoạt Người dùng muốn xem thông tin về
một đối tượng hoặc hồ sơ cụ thể.Tiền điều kiện Người dùng đã đăng nhập vào tài
khoản (nếu áp dụng)
Hậu điều kiện Thông tin về đối tượng hoặc hồ sơ đã
được hiển thị cho người dùng.Luồng sự kiện chính Xem thông tin cơ bản:
+ Người dùng truy cập trang xemthông tin
+ Hệ thống hiển thị thông tin cơ bản
về đối tượng hoặc hồ sơ (ví dụ: tên,địa chỉ, thông tin liên hệ, v.v.).Xem thông tin chi tiết:
+ Người dùng chọn tùy chọn "Xem
Trang 39chi tiết" cho một đối tượng hoặc hồsơ.
+ Hệ thống hiển thị thông tin chi tiết
về đối tượng hoặc hồ sơ (ví dụ: lịch
sử, giao dịch, thông tin chi tiết khác).Luồng sự kiện rẽ nhánh Thông tin không có sẵn:
+ Nếu thông tin cụ thể không có sẵn,
hệ thống hiển thị thông báo và yêu cầungười dùng quay lại hoặc thử tìmkiếm lại
Bảng 11: UseCase xem thông tin
12 Use Case: Quản lý đơn hàng
có thể tạo, xem, cập nhật và quản lýcác đơn hàng
Điều kiện kích hoạt Người dùng muốn tạo, xem hoặc quản
lý đơn hàng
Tiền điều kiện Người dùng đã đăng nhập vào tài
khoản của họ (nếu áp dụng).Hậu điều kiện Thay đổi trong đơn hàng đã được ghi
nhận và cập nhật
Luồng sự kiện chính Tạo đơn hàng:
+ Người dùng truy cập trang tạo đơnhàng
+ Hệ thống hiển thị danh sách sảnphẩm hoặc dịch vụ có sẵn để chọn + Người dùng chọn sản phẩm hoặcdịch vụ, chỉnh sửa số lượng và thôngtin liên hệ
+ Hệ thống kiểm tra tính hợp lệ củathông tin đơn hàng
+ Nếu thông tin hợp lệ, hệ thống tạođơn hàng mới và ghi nhận giao dịch.Xem đơn hàng:
+ Người dùng truy cập trang quản lýđơn hàng
Trang 40+ Hệ thống hiển thị danh sách cácđơn hàng đã đặt trước đó.
+ Người dùng xem chi tiết đơn hàng
và thông tin liên hệ của họ
Cập nhật đơn hàng (tùy chọn): + Người dùng chọn tùy chọn "Chỉnhsửa" cho một đơn hàng cụ thể + Hệ thống cho phép người dùngchỉnh sửa thông tin đơn hàng (sảnphẩm, số lượng, v.v.)
+ Hệ thống kiểm tra tính hợp lệ củathông tin cập nhật
+ Nếu thông tin cập nhật hợp lệ, hệthống cập nhật đơn hàng và ghi nhậnthay đổi
Hủy đơn hàng (tùy chọn):
+ Người dùng chọn tùy chọn "Hủyđơn hàng" cho một đơn hàng cụ thể + Hệ thống hủy đơn hàng và ghi nhậnthay đổi
Luồng sự kiện rẽ nhánh Hủy đơn hàng:
+ Nếu người dùng muốn hủy đơnhàng, hệ thống xác nhận và thực hiệnhủy đơn hàng theo yêu cầu của họ
Bảng 12: UseCase quản lý đơn hàng
13 Use Case: Báo cáo thống kê
có thể tạo, xem và xuất báo cáo thống
kê dựa trên dữ liệu hoặc thông tin cụthể
Actor Người dùng (Nhân viên, Quản lý,
Admin)Điều kiện kích hoạt Người dùng muốn tạo, xem hoặc xuất
báo cáo thống kê
Tiền điều kiện Người dùng đã đăng nhập vào tài
khoản của họ (nếu áp dụng).Hậu điều kiện Báo cáo thống kê đã được tạo hoặc