Báo cáo đồ án cuối kỳ môn Nhập môn Công nghệ Phần mềm: Xây dựng Website Quản lý Thư viện

Hướng dẫn chi tiết cách xây dựng website quản lý thư viện chuyên nghiệp, phục vụ đồ án Công nghệ Phần mềm. Bao gồm các bước lập trình, thiết kế database và

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

Đồ án cuối kỳ

2021

229
0
0

Phí lưu trữ

55 Point

Tóm tắt

I. Tổng quan về đồ án xây dựng website quản lý thư viện

Đồ án xây dựng website quản lý thư viện thuộc môn Nhập môn Công nghệ Phần mềm (SE104) tại Trường Đại học Công nghệ Thông tin - ĐHQG TP.HCM. Dự án được thực hiện bởi nhóm sinh viên với mục tiêu ứng dụng quy trình phát triển phần mềm vào bài toán quản lý thư viện thực tế. Hệ thống hướng đến việc số hóa toàn bộ quy trình cho mượn sách, nhận trả sách, quản lý độc giả và lập phiếu thu tiền phạt. Công nghệ chính sử dụng bao gồm ReactJS cho phần giao diện người dùng, NodeJS cho máy chủ backend và SQL Server 2019 làm hệ quản trị cơ sở dữ liệu. Đồ án áp dụng đầy đủ các giai đoạn phát triển phần mềm: khảo sát hiện trạng, đặc tả yêu cầu, thiết kế kiến trúc, thiết kế cơ sở dữ liệu, hiện thực và đánh giá. Qua đó, nhóm sinh viên tích lũy kinh nghiệm thực tiễn về teamwork, quản lý tiến độ bằng Trello, quản lý mã nguồn bằng GitHub và thiết kế giao diện bằng Figma.

1.1. Mục tiêu và phạm vi của dự án website quản lý thư viện

Dự án đặt ra mục tiêu xây dựng hệ thống quản lý thư viện hoạt động trên nền web, phục vụ hai đối tượng chính là thủ thư và độc giả. Phạm vi chức năng bao gồm quản lý sách (thêm, xóa, tìm kiếm), quản lý độc giả (đăng ký, cấp thẻ), xử lý mượn trả sách và lập phiếu thu tiền phạt khi trả trễ. Hệ thống áp dụng mô hình Client-Server với giao diện thân thiện, giúp thủ thư thao tác nhanh chóng và giảm thiểu sai sót so với cách quản lý thủ công truyền thống.

1.2. Đội ngũ thực hiện và quy trình quản lý dự án

Nhóm gồm chín thành viên do ThS. Võ Tấn Khoa hướng dẫn, được phân công nhiệm vụ rõ ràng theo năng lực. Nhóm trưởng phụ trách tổng thể, các thành viên đảm nhận từng phần cụ thể như vẽ sơ đồ Use-case, thiết kế cơ sở dữ liệu, code frontend/backend. Công cụ quản lý dự án bao gồm Trello theo dõi tiến độ, Google Drive lưu trữ tài liệu, Draw.io vẽ sơ đồ và GitHub quản lý phiên bản code. Lịch trình thực hiện kéo dài từ tháng 9 đến tháng 12 năm 2021.

II. Phân tích yêu cầu và hiện trạng hệ thống quản lý thư viện

Giai đoạn phân tích yêu cầu đóng vai trò nền tảng cho toàn bộ dự án xây dựng website quản lý thư viện. Nhóm tiến hành khảo sát thực tế tại thư viện trường đại học, phỏng vấn thủ thư và quan sát quy trình nghiệp vụ. Kết quả khảo sát cho thấy hệ thống quản lý thủ công tồn tại nhiều hạn chế: mất thời gian tìm kiếm sách, khó kiểm soát tình trạng mượn trả, thống kê sai sót và mất mát dữ liệu. Từ đó, nhóm tổng hợp danh sách yêu cầu chức năng chi tiết, bao gồm Use-case Diagram cho từng nghiệp vụ và mô tả dòng sự kiện cụ thể. Sơ đồ luồng xử lý dữ liệu (Data Flow Diagram) được vẽ để minh họa cách thông tin di chuyển giữa các thành phần trong hệ thống. Mỗi Use-case đều có đặc tả đầy đủ về tiền điều kiện, hậu điều kiện, luồng chính và luồng ngoại lệ, đảm bảo tính toàn diện trước khi chuyển sang giai đoạn thiết kế.

2.1. Hiện trạng quản lý thư viện bằng phương pháp thủ công

Qua khảo sát thực tế, thư viện sử dụng sổ sách giấy để ghi nhận thông tin mượn trả. Thủ thư phải tra cứu thủ công mỗi khi độc giả yêu cầu tìm sách. Việc thống kê số lượng sách tồn kho, sách quá hạn và tiền phạt gặp nhiều sai sót. Dữ liệu phân tán ở nhiều nơi, không có cơ chế sao lưu dẫn đến nguy cơ mất mát thông tin. Ngoài ra, không có hệ thống cảnh báo nhắc nhở độc giả trả sách đúng hạn.

2.2. Đặc tả yêu cầu chức năng và phi chức năng của hệ thống

Yêu cầu chức năng bao gồm: đăng nhập phân quyền, quản lý sách (CRUD), quản lý độc giả (CRUD), xử lý mượn trả sách, lập phiếu thu tiền phạt và xuất báo cáo. Yêu cầu phi chức năng đảm bảo hệ thống có thời gian phản hồi nhanh, giao diện trực quan dễ sử dụng, bảo mật thông tin đăng nhập và hỗ trợ nhiều trình duyệt phổ biến. Các Use-case Diagram và Sequence Diagram được vẽ chi tiết cho từng chức năng, phục vụ làm cơ sở cho giai đoạn thiết kế và lập trình.

III. Giải pháp thiết kế và hiện thực website quản lý thư viện

Giải pháp thiết kế website quản lý thư viện áp dụng kiến trúc Client-Server hiện đại. Phần frontend xây dựng bằng ReactJS kết hợp HTML, CSS tạo giao diện responsive cho các màn hình đăng nhập, quản lý sách, quản lý độc giả, mượn trả sách và phiếu thu tiền phạt. Backend phát triển bằng NodeJS, xử lý các API thêm/xóa sách, thêm/xóa người dùng và tìm kiếm. Cơ sở dữ liệu sử dụng SQL Server 2019 với sơ đồ ERD được thiết kế kỹ lưỡng, chuyển đổi sang sơ đồ logic và triển khai thực tế. Sơ đồ lớp (Class Diagram) mô tả mối quan hệ giữa các đối tượng trong hệ thống. Quá trình hiện thực diễn ra tuần tự: thiết kế giao diện trên Figma, code frontend, xây dựng database, code backend và tích hợp hệ thống. Công cụ phát triển chính là Visual Studio 2019 và Visual Studio Code, đảm bảo môi trường làm việc thống nhất cho toàn bộ nhóm.

3.1. Thiết kế kiến trúc hệ thống và cơ sở dữ liệu

Kiến trúc hệ thống phân tách rõ ràng giữa tầng trình bày, tầng xử lý nghiệp vụ và tầng dữ liệu. Sơ đồ ERD thể hiện các thực thể chính: Sách, Độc giả, Thủ thư, Phiếu mượn, Phiếu trả và Phiếu phạt. Sơ đồ logic chuyển đổi các quan hệ thành bảng dữ liệu chuẩn hóa, tránh dư thừa và đảm bảo tính toàn vẹn tham chiếu. SQL Server 2019 lưu trữ toàn bộ dữ liệu với các ràng buộc khóa chính, khóa ngoại và trigger xử lý nghiệp vụ phức tạp.

3.2. Hiện thực giao diện và tích hợp các chức năng chính

Giao diện frontend được code bằng HTML, CSS và xử lý tương tác bằng ReactJS. Các màn hình chính bao gồm: đăng nhập/đăng ký, dashboard thủ thư, danh sách sách, quản lý độc giả, phiếu mượn sách, phiếu trả sách và phiếu thu tiền phạt. Backend NodeJS xây dựng RESTful API kết nối với SQL Server thông qua thư viện mssql. Chức năng tìm kiếm sách hỗ trợ lọc theo tên, tác giả và thể loại. Hệ thống xác thực người dùng trước khi cho phép truy cập các tính năng quản lý.

IV. Kết quả đạt được và ứng dụng thực tế của website quản lý thư viện

Đồ án xây dựng website quản lý thư viện hoàn thành đạt các mục tiêu đề ra. Hệ thống hoạt động ổn định với đầy đủ chức năng quản lý sách, quản lý độc giả, xử lý mượn trả và lập phiếu phạt. Giao diện thân thiện giúp thủ thư thao tác nhanh chóng, giảm thời gian xử lý nghiệp vụ đáng kể so với phương pháp thủ công. Qua quá trình thực hiện, nhóm tích lũy kiến thức thực tiễn về quy trình phát triển phần mềm: từ khảo sát, phân tích yêu cầu, thiết kế kiến trúc đến hiện thực và kiểm thử. Dự án cũng rèn luyện kỹ năng làm việc nhóm, quản lý tiến độ và sử dụng công cụ hỗ trợ phát triển phần mềm chuyên nghiệp. Website quản lý thư viện có tiềm năng ứng dụng rộng rãi tại các thư viện trường học, thư viện công cộng và thư viện doanh nghiệp nhỏ. Hệ thống dễ dàng mở rộng thêm tính năng như quản lý mượn sách trực tuyến, gửi thông báo qua email và tích hợp mã vạch cho sách.

4.1. Đánh giá kết quả và bài học kinh nghiệm từ đồ án

Kết quả đánh giá cho thấy hệ thống đáp ứng tốt yêu cầu nghiệp vụ đã đặc tả. Các Use-case được hiện thực đầy đủ, từ đăng nhập phân quyền đến xuất thông tin ra giấy. Bài học lớn nhất là tầm quan trọng của giai đoạn phân tích yêu cầu - sai sót ở bước này sẽ lan truyền sang toàn bộ dự án. Việc áp dụng UML và các sơ đồ thiết kế giúp nhóm hiểu rõ hệ thống trước khi viết code, giảm thiểu sửa đổi về sau.

4.2. Hướng phát triển và mở rộng hệ thống trong tương lai

Hệ thống có nhiều hướng phát triển tiềm năng. Thứ nhất, tích hợp mã vạch và QR code để tự động hóa quy trình mượn trả sách. Thứ hai, xây dựng ứng dụng mobile hỗ trợ độc giả tra cứu sách và đặt trước trực tuyến. Thứ ba, thêm module thống kê báo cáo nâng cao với biểu đồ trực quan. Thứ tư, triển khai cơ chế gửi thông báo nhắc nhở qua email hoặc SMS khi sách sắp đến hạn trả. Các tính năng mở rộng này giúp hệ thống trở nên toàn diện hơn.

21/04/2026