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

Tác giả

Lê Anh Tuấn

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.

Tóm tắt và mô tả trên trang này được tạo với sự hỗ trợ của AI. Nếu bạn thấy nội dung không chính xác hoặc có vấn đề, vui lòng Báo lỗi nội dung.

21/04/2026
Tiểu luận báo cáo đồ án cuối kỳ môn nhập môn công nghệ phần mềm đề tài xây dựng website quản lý thư viện

Trích đoạn nội dung tài liệu

Chương 1: GIỚI THIỆU CHUNG Mục đích tài liệu Quản lý số lượng sách và độc giả tại thư viện dù lớn hay nhỏ cũng đều rất phức tạp. Do vậy, hiện nay có rất nhiều ứng dụng quản trị thư viện xuất hiện giúp hệ thống thư viện tối ưu quy trình quản lý. Hiện nay cùng với sự phát triển của xã hội và nền kinh tế thị trường thì công việc quản lý cũng ngày càng khó khăn và phức tạp. Công việc quản lý ngày càng đóng góp một vai trò quan trọng trong các công việc của các cơ quan, công ty, xí nghiệp.

Việc áp dụng các thành tựu của khoa học kỹ thuật nói chung và thành tựu của công nghệ thông tin nói riêng vào công tác quản lý đã không ngừng phát triển. Công tác quản lý ngày càng được nhiều các cơ quan và đơn vị quan tâm nhưng quản lý thế nào và quản lý làm sao cho đạt được hiệu quả cao nhất. Như nhanh? Bảo mật? Thân thiện? Tất cả những yếu tố trên chúng ta đều có thể nhờ đến những thành tựu của ngành công nghệ thông tin, đó là những phần mềm trợ giúp quản lý thay cho tệp hồ sơ dày, thay cho những ngăn tủ đựng hồ sơ chiếm nhiều diện tích và có thể ta phải mất rất nhiều thời gian để lục lọi, tìm kiếm những thông tin cần phải thu thập hay những dữ liệu quan trọng. Tất cả những điều bất tiện ở trên đều có thể được tích hợp trong phần mềm - một sản phẩm của ngành tin học.

Đây là công cụ được tạo ra với mục đích nâng cao hiệu quả, quản lý tài liệu thư viện một cách khoa học nhất. Những phần mềm này đóng vai trò giúp người quản lý có thể theo dõi cũng như kiểm soát các hoạt động của thư viện. Những ứng dụng này có thể áp dụng rộng rãi trong hệ thống trường học từ cấp tiểu học cho tới đại học. Hoặc những thư viện tại các khối văn phòng, công ty.

Những phần mềm quản lý được coi là trợ thủ đắc lực của hệ thống thư viện. Hiểu được tầm quan trọng của phần mềm Quản lý thư viện, nhóm chúng em hoàn thành báo cáo này với mục đích ghi nhận lại tính năng mà phần mềm đem lại cho người dùng cũng như yêu cầu của độc giả đối với phần mềm Quản lý thư viện. Với tư cách là một nhà phát triển phần mềm, nhóm chúng em được yêu cầu phát triển hệ thống cho phép quản lý các đối tượng trong thư viện như nhân sự, sách, phiếu mượn, báo cáo,… Hệ thống cung cấp đa dạng các chức năng để quản lý thư viện. Hệ thống được thiết lập dành cho nhân sự trong thư viện sử dụng với các quyền truy cập 18 | P a g e SE104 – Nhập môn Công nghệ Phần Mềm khác nhau dựa trên tư cách người dùng.

Hệ thống cung cấp những chức năng quản lý, thống kê số lượng phiếu mượn, thu - chi tiền và báo cáo tổng hợp. Ngoài ra còn có chức năng quản lý sách, quản lý lượng sách cho mượn, số sách nhập vào, sách tồn kho… Bên cạnh đó, hệ thống còn lưu lại thông tin độc giả đến mượn sách và thống kê lại số lượng theo từng tháng. Quyền quản lý thư viện là quyền hạn cao nhất trong hệ thống, cho phép thay đổi thông tin độc giả, nhân sự và các loại báo cáo. Với mục đích tìm hiểu và nâng cao kiến thức của mình, nhóm chúng em đã thực hiện đề tài này dưới sự dẫn dắt của ThS.

Tài liệu chỉ mang tính chất tương đối vì lượng kiến thức còn hạn hẹp, nhóm chúng em mong nhận được được góp ý và sửa chữa để đề tài mang tính khả thi hơn. Người sử dụng Mục đích Để hiểu các chức năng và đặc tính của hệ thống được phát triển (hiểu được những yêu cầu người dùng nào Nhóm phát triển hệ thống mà hệ thống đáp ứng). Và sử dụng trong quá trình thiết kế hệ thống. Phục vụ xây dựng tài liệu test và test chức năng hệ Nhóm kiểm thử thống (system test).

Biết được các chức năng và đặc tính của phần mềm Khách hàng trong tương lai, kịp thời trao đổi và chỉnh sửa. Chủ đầu tư Là cơ sở để ký kết hợp đồng.1 Người sử dụng và mục đích Phạm vi hệ thống Phần mềm được xây dựng với mục đích phục vụ các thư viện quy mô vừa và nhỏ. Khái niệm, thuật ngữ Mô hình thác nước cải tiến : Mô hình thác nước là một mô hình có tính trình tự trong phát triển phần mềm. Nó chú trọng vào sự phát triển logic và lần lượt trong suốt 19 | P a g e SE104 – Nhập môn Công nghệ Phần Mềm vòng đời phát triển phần mềm.

Mô hình thác nước cải tiến, bản chất tương tự như mô hình thác nước. Nhưng sẽ có một vòng lặp tạo ra sản phẩm mẫu để đánh giá và xác định rõ yêu cầu. Khi đã đảm bảo yêu cầu sẽ bước vào phát triển phần mềm. Use-Case : là một kỹ thuật được dùng trong kỹ thuật phần mềm và hệ thống để nắm bắt yêu cầu chức năng của hệ thống.

Use-case mô tả sự tương tác đặc trưng giữa người dùng bên ngoài (actor) và hệ thống. Một trong những cách biểu diễn trực quan phổ biến hiện nay là lược đồ use-case của UML. Squence Diagram (Sơ đồ tuần tự) : là bản vẽ mô tả sự tương tác của các đối tượng để tạo nên các chức năng của hệ thống. Bản vẽ này mô tả sự tương tác theo thời gian nên rất phù hợp với việc sử dụng để thiết kế và cài đặt chức năng cho hệ thống phần mềm.

Sơ đồ luồng xử lý dữ liệu : là một mô hình hệ thống cân xứng cả dữ liệu và tiến trình (progress). Nó chỉ ra cách thông tin chuyển vận từ một tiến trình hoặc từ chức năng này trong hệ thống sang một tiến trình hoăc chức năng khác. Sơ đồ lớp : là một loại sơ đồ cấu trúc tĩnh mô tả cấu trúc của hệ thống bằng cách hiển thị các lớp của hệ thống, thuộc tính, hoạt động của chúng và mối quan hệ giữa các đối tượng. Sơ đồ lớp là khối xây dựng chính của mô hình hướng đối tượng.

Mô tả tài liệu Tài liệu bao gồm các phần chính sau: - Phần 1: Giới thiệu chung: giới thiệu tổng quan về tài liệu. - Phần 2: Khảo sát hiện trạng: đưa ra kết quả khảo sát về hiện trạng tổ chức, tin học, nghiệp vụ. - Phần 3: Đặc tả yêu cầu hệ thống: yêu cầu chức năng và phi chức năng của hệ thống cần xây dựng. - Phần 4: Thiết kế.

- Phần 5: Hiện thực. - Phần 6: Nhận xét và kết luận. - Phần 7: Tài liệu tham khảo. 20 | P a g e SE104 – Nhập môn Công nghệ Phần Mềm Kế hoạch thực hiện đồ án 1.1 Quy trình quản lý tại thư viện - Phác thảo sơ lược mô hình dữ liệu.

- Lên kế hoạch thực hiện và khảo sát hiện trạng. - Phân tích đặc tả yêu cầu. ▪ Thiết kế hệ thống. ▪ Thiết kế dữ liệu.

▪ Thiết kế giao diện. - Code và kiểm thử.2 Kế hoạch chi tiết - áp dụng quy trình phát triển phần mềm: Các bước thực hiện - Phác thảo sơ lược mô hình dữ liệu ▪ Phân tích đối tượng và các thuộc tính. ▪ Vẽ mô hình sơ đồ lớp. - Lên kế hoạch thực hiện và khảo sát hiện trạng: ▪ Phân tích tính khả thi và cách thức thực hiện.

▪ Tiến hành khảo sát bằng việc phỏng vấn đối với các đối tượng liên quan đến đề tài. - Thu thập thông tin và rút ra yêu cầu phần mềm. - Phân tích đặc tả yêu cầu: Dựa trên các đặc tả yêu cầu đã thu thập được để vẽ bản Draft: Phác thảo UI sơ lược để dễ thực hiện code. - Thiết kế: Thiết kế hệ thống ▪ Vẽ Use-case : Phân tích nghiệp vụ tổng quan.

▪ Vẽ sơ đồ Squence Diagram ( Sơ đồ tuần tự). ▪ Xác định kiến trúc hệ thống. 21 | P a g e SE104 – Nhập môn Công nghệ Phần Mềm Thiết kế dữ liệu: ▪ Phân tích dữ liệu dựa trên yêu cầu người dùng. ▪ Kết quả đầu ra là tài liệu thiết kế dữ liệu, dùng để phục vụ viết thiết kế database.

Thiết kế giao diện: ▪ Vẽ giao diện màn hình cũng như phân tích thiết kế xử lý dựa trên yêu cầu người dùng. ▪ Kết quả đầu ra là tài liệu thiết kế giao diện, dùng để phục vụ viết thiết kế giao diện (UI) cho sản phẩm. - Code và Kiểm thử: ▪ Lập bảng quy định cách đặt tên biến, tên hàm. Cách đặt tên nhánh trên Git.

▪ Phân chia nhiệm vụ code dựa theo các yêu cầu. ▪ Tạo các test case để test hệ thống chạy tốt hay chưa. Cách thức tổ chức quản lý và chi tiết thực hiện: - Nhóm áp dụng Quy trình Thác nước Cải tiến để thực hiện đồ án.1 Quy trình thác nước cải tiến Giải thích về quy trình: Mô hình thác nước là một mô hình của quy trình phát triển phần mềm, trong đó quy trình phát triển trông giống như một dòng chảy, với các pha được thực hiện theo trật tự nghiêm ngặt. 22 | P a g e SE104 – Nhập môn Công nghệ Phần Mềm Đi qua các giai đoạn chính: - Khảo sát hiện trạng - Xác định yêu cầu - Phân tích - Thiết kế - Cài đặt - Kiểm chứng - Triển khai ➔ Bản chất tương tự như mô hình thác nước.

Nhưng có thể quay lại bước trước đó để hoàn thiện hay sửa lỗi rồi mới tiếp tục. Vì vậy, Dễ dàng nắm được toàn bộ thông tin của giai đoạn trước để thực hiện giai đoạn hiện tại. Nhanh, gọn, giải quyết vấn đề của thác nước truyền thống là lỗi ở bước trước thì có thể được quay lại sửa. Cách tổ chức quản lý các thành viên: Leader: Lê Anh Tuấn Team chúng em cùng thảo luận, họp bàn để phân công, phân chia tìm hiểu kiến thức về mỗi giai đoạn.

Mỗi bạn trong nhóm sẽ có vai trò riêng. → Khi đã nắm được kiến thức về giai đoạn mình tìm hiểu Tiến hành training và thực hiện ngay. → Sau mỗi giai đoạn được hoàn thành Tiến hành kiểm tra, nếu có lỗi có thể quay lại bước trước đó để hoàn thiện hay sửa lỗi rồi mới tiếp tục tới tiếp theo. Cứ như vậy cho tới khi hoàn thành hết tất cả các giai đoạn, nhóm em sẽ báo cáo cuối kì.

Công cụ quản lý và thực hiện đồ án: Trao đổi thông tin: - Facebook – Messenger: Nơi thông báo các việc quan trọng. - Microsoft Teams: Meeting trao đổi giữa các thành viên.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ