Bối cảnh và vấn đề nghiên cứu

Đồ án môn học "Phân tích thiết kế hướng đối tượng" với đề tài "Quản lý thư viện Open Library" được thực hiện bởi nhóm sinh viên Lê Văn Nam (MSSV: 2224802010119), Ngô Ngọc Duy (MSSV: 2224802010788) và Lê Đình Hoàng Sơn (MSSV: 2224802010883), thuộc lớp KTCN.06, Viện Kỹ thuật Công nghệ – Trường Đại học Thủ Dầu Một, dưới sự hướng dẫn của ThS. Nguyễn Trung Vũ.

Bối cảnh nghiên cứu xuất phát từ mô hình hoạt động của hệ thống thư viện Open Library – một thư viện phục vụ đa dạng đối tượng độc giả trong xã hội, bao gồm ba nhóm chính: học sinh - sinh viên, giảng viên và các nhóm độc giả khác. Hệ thống Open Library được định hướng quy hoạch gồm nhiều chi nhánh phân bổ trên địa bàn thành phố, đặt ra yêu cầu cấp thiết về việc tin học hóa toàn diện công tác quản lý nhằm thay thế phương thức vận hành thủ công truyền thống.

Hiện trạng và các bất cập trong quản lý thư viện

Khảo sát hiện trạng hoạt động tại thư viện cho thấy hệ thống ban đầu đã hình thành một số phân hệ cơ bản nhưng còn tồn tại nhiều điểm nghẽn nghiêm trọng:

  • Quá trình mượn/trả sách thủ công: Việc ghi chép và đối soát bằng sổ sách làm phát sinh nhiều thời gian chờ đợi của độc giả, gia tăng nguy cơ sai sót dữ liệu và thất thoát tài liệu.
  • Thống kê và báo cáo kém hiệu quả: Thiếu công cụ tổng hợp tự động khiến ban quản lý không thể nắm bắt tức thời số lượng tồn kho, lượt mượn trả theo chu kỳ để đưa ra quyết định bổ sung nguồn học liệu kịp thời.
  • Dữ liệu phân tán, thiếu cập nhật thời gian thực: Do mô hình có nhiều chi nhánh, việc thiếu cơ chế đồng bộ trực tuyến dẫn đến tình trạng mất tính nhất quán về trạng thái tài liệu giữa các điểm thư viện.
  • Tính năng tương tác và dịch vụ mở rộng hạn chế: Chưa tích hợp các công cụ trực tuyến như đặt sách trước, xếp hàng chờ, thanh toán tiền phạt trễ hạn hay diễn đàn trao đổi đánh giá sách.

Mục tiêu và phạm vi nghiên cứu

Nhiệm vụ của đề tài được xác định thông qua các mục tiêu trọng tâm:

  1. Tự động hóa quy trình nghiệp vụ: Số hóa toàn bộ các tác vụ đăng ký độc giả, lập danh mục sách, quản lý mượn/trả và xử lý vi phạm.
  2. Tối ưu hóa trải nghiệm người dùng: Xây dựng giao diện trực quan, hỗ trợ tra cứu thông tin nhanh chóng trên môi trường trực tuyến.
  3. Thiết lập hệ thống báo cáo - phân tích: Cung cấp số liệu thống kê chi tiết về xu hướng đọc, tình trạng lưu thông sách phục vụ công tác ra quyết định của cấp quản lý.
  4. Đảm bảo an toàn và phân quyền hệ thống: Phân định rõ ràng vai trò, quyền hạn giữa độc giả, thủ thư và người quản trị.

Phạm vi nghiên cứu tập trung vào việc phân tích nghiệp vụ, khảo sát hiện trạng hạ tầng kỹ thuật, khảo sát người dùng thực tế ($N = 100$) và tiến hành mô hình hóa hướng đối tượng cho hệ thống quản lý thư viện Open Library đa chi nhánh.


Cơ sở lý thuyết và phương pháp

Khung phương pháp phân tích thiết kế hướng đối tượng

Đồ án áp dụng phương pháp Phân tích và Thiết kế Hướng đối tượng (Object-Oriented Analysis and Design - OOAD). Quy trình tiếp cận bao gồm:

  • Xác định các tác nhân (Actors) tham gia vào hệ thống.
  • Xây dựng mô hình ca sử dụng (Use Case Modeling) và đặc tả chi tiết luồng sự kiện (luồng chính, luồng thay thế, luồng ngoại lệ).
  • Đặc tả yêu cầu chức năng thông qua hệ thống Câu chuyện người dùng (User Stories) đi kèm tiêu chí nghiệm thu (Acceptance Criteria).
  • Thiết kế cấu trúc cơ sở dữ liệu quan hệ (Relational Database Schema) phản ánh các thực thể nghiệp vụ.

Phương pháp thu thập dữ liệu và khảo sát thực nghiệm

Nhóm tác giả đã triển khai đồng bộ các kỹ thuật khảo sát thực tế nhằm thu thập dữ liệu đầu vào phục vụ mô hình hóa:

  1. Khảo sát tài nguyên và trang thiết bị: Đánh giá cấu hình máy chủ (Server), băng thông hạ tầng mạng, dung lượng lưu trữ, thiết bị đầu cuối tại các chi nhánh và khả năng tương thích với đầu đọc mã vạch/RFID.
  2. Khảo sát văn bản và quy định nghiệp vụ: Hệ thống hóa các chính sách mượn/trả (thời hạn mượn 7 ngày, cho phép gia hạn tối đa 3 lần với thời gian mỗi lần bằng thời gian mượn ban đầu; chế tài phạt trễ hạn; quy định bồi thường gấp 2 lần giá trị sách hoặc mua mới cuốn tương đương nếu làm mất/hư hỏng).
  3. Điều tra phỏng vấn xã hội học: Tiến hành phỏng vấn $100$ đối tượng người dùng qua nhiều hình thức (phỏng vấn cá nhân, phỏng vấn nhóm nhỏ, khảo sát trực tuyến qua biểu mẫu và phỏng vấn trực quan).

Nội dung chính theo từng phần nghiên cứu

1. Phân tích kết quả khảo sát người dùng và hiện trạng kỹ thuật

Kết quả thu thập từ cuộc phỏng vấn $100$ độc giả cung cấp bức tranh chi tiết về cơ cấu nhân khẩu học, thói quen đọc và nhu cầu đối với hệ thống mới:

Tiêu chí khảo sát Phân loại chi tiết Tỷ lệ (%)
Cơ cấu độ tuổi Dưới 18 tuổi 15%
Từ 18 đến 30 tuổi 30%
Từ 31 đến 50 tuổi 40%
Trên 50 tuổi 15%
Sở thích thể loại sách Tiểu thuyết 45%
Khoa học 20%
Lịch sử 15%
Kỹ năng sống 10%
Thể loại khác 10%
Tần suất đến thư viện Hàng ngày 10%
Hàng tuần 30%
Hàng tháng 40%
Hiếm khi 20%
Hình thức phỏng vấn thực hiện Phỏng vấn cá nhân 60%
Phỏng vấn nhóm nhỏ 20%
Phỏng vấn qua biểu mẫu điện tử 10%
Phỏng vấn trực tuyến trực quan 10%

Khảo sát ghi nhận có $90%$ người dùng đưa ra ý kiến đóng góp về hệ thống hiện tại. Trong đó, nhu cầu cải thiện giao diện người dùng chiếm $40%$, nhu cầu bổ sung tính năng đánh giá/bình luận sách chiếm $50%$, và $10%$ đề xuất cập nhật danh mục sách theo xu hướng mới.

2. Mô hình hóa tác nhân và ca sử dụng (Use Case)

Hệ thống xác định 3 tác nhân chính tham gia tương tác:

  • Độc giả (Reader): Đăng ký tài khoản, tìm kiếm tài liệu, thực hiện mượn/trả, gia hạn sách, theo dõi lịch sử, thanh toán phí phạt và gửi phản hồi.
  • Thủ thư (Librarian): Tiếp nhận và phân loại sách mới, dán nhãn/làm hồ sơ, duyệt mượn/trả, thông báo quá hạn, lập phiếu thu tiền phạt, kiểm tra sách hỏng.
  • Quản lý (Manager): Quản lý tài khoản người dùng, giám sát báo cáo thống kê, phê duyệt đề xuất mua sách mới, quản lý ngân sách và điều phối sự kiện văn hóa.
+-------------------------------------------------------------------------+
|                  CÁC CA SỬ DỤNG CHÍNH CỦA HỆ THỐNG                      |
+-------------------------------------------------------------------------+
|  1. Quản lý danh mục sách          |  8. Phản hồi thông tin             |
|  2. Quản lý độc giả                |  9. Tìm kiếm sách                  |
|  3. Mượn sách                      | 10. Xem lịch sử mượn trả           |
|  4. Trả sách                       | 11. Thêm sách mới                  |
|  5. Thông báo hệ thống             | 12. Quản lý sự kiện                |
|  6. Thay đổi thông tin cá nhân     | 13. Xem báo cáo thống kê           |
|  7. Đóng tiền (Thẻ / Phạt / Đền)   | 14. Quản trị người dùng            |
+-------------------------------------------------------------------------+

Đặc tả các ca sử dụng quan trọng được xây dựng chặt chẽ với điều kiện tiên quyết và luồng xử lý ngoại lệ:

  • Ca sử dụng "Quản lý độc giả": Độc giả nhập thông tin (Họ tên, Ngày sinh, Số điện thoại, CCCD). Thủ thư tiến hành kiểm tra tính hợp lệ trên hệ thống trước khi phê duyệt và cấp thẻ thành viên.
  • Ca sử dụng "Mượn sách": Độc giả đăng nhập, chọn sách cần mượn; thủ thư duyệt yêu cầu trên hệ thống. Luồng ngoại lệ xử lý khi sách đã được mượn hết hoặc không tồn tại trong kho.
  • Ca sử dụng "Đóng tiền": Được module hóa thành 3 trường hợp riêng biệt gồm Đóng tiền thẻ thành viên, Đóng tiền phạt trễ hạn và Đóng tiền đền sách (khi sách bị rách, vẽ bậy hoặc mất mát với giá trị đền gấp 2 lần). Hệ thống hỗ trợ cả hình thức nộp trực tiếp tại quầy hoặc thanh toán trực tuyến.

3. Hệ thống câu chuyện người dùng (User Stories)

Hệ thống yêu cầu được phân rã thành $30$ câu chuyện người dùng chi tiết, phân bổ đều cho $3$ nhóm đối tượng:

  • Nhóm Thủ thư (10 User Stories): Bao gồm các chức năng Tìm kiếm sách, Đăng ký sách mới, Đăng ký thẻ thư viện, Mượn sách cho độc giả, Tiếp nhận trả sách, Gửi thông báo quá hạn tự động, Xử lý yêu cầu đặt trước, Tạo phiếu phạt, Kiểm tra tình trạng sách hư hỏng, Thống kê số lượng sách theo danh mục/vị trí.
  • Nhóm Quản lý (10 User Stories): Tập trung vào việc Xem báo cáo tổng quan, Quản lý hồ sơ nhân viên, Xem danh sách lưu thông sách, Quản trị thẻ thư viện, Lập báo cáo hoạt động định kỳ, Phê duyệt đề xuất mua sách mới, Quản lý sự kiện và triển lãm, Quản trị ngân sách thu chi, Quản lý đối tác - nhà xuất bản, Quản lý thông tin liên hệ.
  • Nhóm Độc giả (10 User Stories): Đăng ký thẻ trực tuyến, Tra cứu tài liệu theo tiêu chí (tiêu đề, tác giả, chủ đề), Mượn sách, Trả sách, Theo dõi thông tin cá nhân và lịch sử mượn trả, Đặt trước sách đang hết, Thanh toán phí phạt qua cổng trực tuyến, Đánh giá và bình luận sách, Xem lịch sự kiện/triển lãm, Gửi câu hỏi hỗ trợ trực tuyến.

Thiết kế và triển khai

Thiết kế cơ sở dữ liệu quan hệ

Cơ sở dữ liệu của hệ thống quản lý thư viện Open Library được mô hình hóa thành 6 bảng thực thể chính với cấu trúc trường và khóa định danh như sau:

Tên bảng Khóa chính (PK) Các trường thuộc tính Mô tả chức năng
DocGia MaDG TenDG, TenTK, Password Lưu trữ hồ sơ, tài khoản của người đọc
ThuThu MaThuThu TenThuThu, ChucVu, TenTK, Password Thông tin nhân viên nghiệp vụ thư viện
QuanLy MaQL TenQL, ChucVu, TenTK, Password Tài khoản cấp quản trị hệ thống
Sach MaSach TenSach, TenTG, DanhMucSach, NamXB, PhanHoiSach, SoLuong Danh mục tài liệu và thông tin xuất bản
PhieuMuon MaPhieu MaDG, MaSach, NgayMuon, NgayTra Ghi nhận chi tiết từng lượt mượn sách
GiaoDich MaGD MaDG, MaSach, NgayMuon, NgayTra, PhiTre, PhiHu Quản lý tài chính, phí trễ hạn và đền bù

Thiết kế giao diện và hệ thống nhận diện thị giác (UI/UX)

Giao diện người dùng được thiết kế dựa trên bố cục phân khu chức năng rõ ràng:

  • Trang chủ: Bố trí thanh tìm kiếm nổi bật ở phía trên; khối danh mục phân loại sách theo thể loại ở cột bên trái; khu vực trung tâm hiển thị danh sách "Sách nổi bật" (tổng hợp các đầu sách có lượt mượn cao nhất) nhằm định hướng cho độc giả chưa có chủ đích tìm kiếm cụ thể.
  • Các phân hệ chức năng chuyên biệt: Bao gồm trang đăng nhập hệ thống, giao diện quản lý nhân sự dành riêng cho Quản lý, module thêm/cập nhật sách dành cho Thủ thư/Quản lý, và danh mục quản lý cấp phát thẻ thư viện.

Bảng quy chuẩn màu sắc giao diện được xây dựng có tính định hướng tâm lý và công năng sử dụng:

Màu sắc Vị trí áp dụng Ý nghĩa và mục đích thiết kế
Màu trắng Màu nền chủ đạo toàn trang Tạo cảm giác sạch sẽ, sáng sủa, tạo độ thoáng cho nội dung văn bản
Màu xanh dương Logo, thanh menu điều hướng, thanh tìm kiếm Mang lại cảm giác an toàn, tin tưởng và tính chuyên nghiệp
Màu đỏ Các nút kêu gọi hành động (Call to Action) Thu hút sự chú ý nhanh chóng, thúc đẩy thao tác của người dùng
Màu cam Biểu tượng thông báo hệ thống, mục Flash Sale Tạo sự năng động, kích thích sự chú ý vào các thông báo quan trọng
Màu xám Đường viền ngăn cách, tiêu đề phụ Cân bằng thị giác, tạo sự hài hòa cho bố cục tổng thể
Màu đen Chữ viết trên logo và các chi tiết định danh Tạo độ tương phản cao, tăng khả năng nhận diện văn bản

Kết quả và đóng góp

Kết quả đạt được

Đồ án đã hoàn thành việc xây dựng hồ sơ phân tích thiết kế hệ thống hoàn chỉnh cho Open Library:

  • Hệ thống hóa toàn bộ quy trình nghiệp vụ thư viện từ cấp độ chi nhánh đến trung tâm quản lý.
  • Xây dựng hệ thống $14$ ca sử dụng chi tiết cùng $30$ câu chuyện người dùng có tiêu chí nghiệm thu rõ ràng.
  • Thiết lập lược đồ dữ liệu gồm $6$ bảng quan hệ, bao quát đầy đủ việc quản lý hồ sơ người dùng, danh mục tài liệu và các giao dịch tài chính phát sinh.
  • Xác lập quy chuẩn thiết kế giao diện với sự phối hợp màu sắc tương phản cao, tối ưu hóa trải nghiệm đọc và thao tác nghiệp vụ.

Đóng góp thực tiễn

Đồ án cung cấp giải pháp chuyển đổi phương thức vận hành cho mô hình thư viện công cộng đa chi nhánh, giải quyết triệt để các tồn đọng của phương pháp thủ công: loại bỏ tình trạng sai lệch dữ liệu mượn/trả, rút ngắn thời gian xử lý của thủ thư, cung cấp công cụ kiểm soát thất thoát tài liệu và tự động hóa quy trình quản lý phí phạt.


Hạn chế và hướng nghiên cứu tiếp

Hạn chế

  • Hệ thống chưa triển khai tích hợp trực tiếp với các thiết bị phần cứng tự động hóa như máy tự mượn/trả sách (Self-check kiosk) hay cổng an ninh thư viện.
  • Cơ chế kết nối dữ liệu giữa các chi nhánh mới dừng lại ở mức mô hình thiết kế logic, chưa đánh giá thực nghiệm tải hệ thống khi có lượng truy cập đồng thời lớn trên hạ tầng phân tán.
  • Chưa hoàn thiện module tích hợp API với các cổng thanh toán điện tử trung gian cho việc thu phí trực tuyến.

Hướng phát triển

Nhóm tác giả định hướng tiếp tục hoàn thiện hệ thống qua các giai đoạn tiếp theo:

  1. Tích hợp công nghệ thẻ thông minh không tiếp xúc (RFID, NFC) và mã phản hồi nhanh (QR Code) vào việc định danh độc giả cũng như kiểm kê tự động sách trên giá.
  2. Xây dựng module phân tích dữ liệu nâng cao (Business Intelligence) nhằm dự báo chính xác xu hướng mượn sách theo từng thời điểm trong năm.
  3. Phát triển API mở để kết nối hệ thống thư viện với các kho học liệu số, dịch vụ sách điện tử bên ngoài.

Giá trị tham khảo

Tài liệu đồ án mang lại giá trị tham khảo thiết thực cho:

  • Sinh viên ngành Công nghệ thông tin, Kỹ thuật phần mềm: Làm tài liệu mẫu về phương pháp thu thập yêu cầu thực tế, phân tích ca sử dụng, viết User Story chuẩn hóa và mô hình hóa cơ sở dữ liệu trong môn học Phân tích Thiết kế Hướng đối tượng.
  • Các nhà phát triển hệ thống quản lý thư viện (ILS): Tham khảo quy trình nghiệp vụ mượn/trả, quy định xử phạt - đền bù sách và bộ quy chuẩn thiết kế giao diện thư viện số.

Câu hỏi thường gặp

1. Hệ thống Open Library phục vụ những nhóm đối tượng độc giả nào?
Hệ thống được thiết kế để phục vụ $3$ nhóm đối tượng chính: học sinh - sinh viên, giảng viên và các đối tượng độc giả khác trong cộng đồng.

2. Quy định về thời hạn mượn và gia hạn sách tại Open Library được thiết lập như thế nào?
Thời gian mượn tiêu chuẩn cho một lượt là $7$ ngày. Độc giả được phép gia hạn tối đa $3$ lần, mỗi lần gia hạn có khoảng thời gian bằng thời gian mượn ban đầu ($7$ ngày).

3. Chế tài xử lý khi độc giả làm mất hoặc hư hỏng tài liệu của thư viện là gì?
Độc giả phải chịu trách nhiệm đền bù bằng $2$ lần giá trị của cuốn sách bị mất/hỏng hoặc tự mua lại một cuốn sách mới hoàn toàn tương đương để bàn giao lại cho thư viện.

4. Khảo sát thực tế 100 người dùng cho thấy thể loại sách nào được độc giả quan tâm nhiều nhất?
Thể loại Tiểu thuyết chiếm tỷ lệ quan tâm cao nhất với $45%$, tiếp theo là Khoa học ($20%$), Lịch sử ($15%$), Kỹ năng sống ($10%$) và các thể loại khác ($10%$).

5. Cơ sở dữ liệu của hệ thống Open Library được cấu thành từ những bảng dữ liệu nào?
Cơ sở dữ liệu gồm $6$ bảng: DocGia (Độc giả), ThuThu (Thủ thư), QuanLy (Quản lý), Sach (Sách), PhieuMuon (Phiếu mượn) và GiaoDich (Giao dịch tài chính/phí).


Kết luận

Đồ án "Quản lý thư viện Open Library" của nhóm sinh viên Trường Đại học Thủ Dầu Một đã giải quyết trọn vẹn bài toán phân tích thiết kế hệ thống tin học hóa cho mô hình thư viện công cộng đa chi nhánh. Thông qua quy trình khảo sát thực tế bài bản trên $100$ đối tượng, nghiên cứu đã xây dựng thành công hệ thống ca sử dụng, câu chuyện người dùng, cấu trúc cơ sở dữ liệu và giao diện tối ưu hóa. Công trình là tài liệu tham khảo có giá trị cao về mặt học thuật và ứng dụng thực tiễn trong lĩnh vực phát triển phần mềm quản trị thư viện.