Việc sử dụng một hệ thống quản lý thư viện sách tự động có thể giúp giảm thiểu thờigian và công sức cần thiết cho quản lý sách, từ việc đăng ký mới cho đến việctheo dõi mượn/trả sách.. V
Trang 1TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
KHOA ĐIỆN TỬ VIỄN THÔNG
-*** -BÁO CÁO PHÁT TRIỂN ỨNG DỤNG TRÊN THIẾT BỊ DI
ĐỘNG
Đề tài : Thiết kế ứng dụng quản lý thư viện
Giáo viên hướng dẫn: Phan Thị Thanh Ngọc
Sinh viên thực hiện: Nguyễn Văn Khoa
Mã sinh viên: 20810510104
Lớp: D15DT&KTMT
Hà Nội 4/10/2024
Trang 2MỤC LỤC
CHƯƠNG I GII THIU 1
A Mô tả vấn đề: Giới thiệu về nhu cầu của trường học trong việc quản lý thư viện sách 1
B Mục tiêu của dự án: Mô tả mục tiêu và ưu điểm của ứng dụng quản lý thư viện sách 2
1 Mục tiêu của dự án: 2
2 Ưu điểm của ứng dụng quản lý thư viện sách: 3
CHƯƠNG II PHÂN TÍCH YÊU CẦU 4
A Yêu cầu chức năng: Liệt kê các chức năng cần thiết cho ứng dụng 4
1 Đăng ký sách mới: 4
2 Mượn/trả sách: 4
3 Tìm kiếm sách: 4
4 Quản lý thông tin người dùng: 4
5 Quản lý phiếu mượn/trả: 5
6 Thống kê và báo cáo: 5
7 Quản lý thể loại sách: 5
8 Quản lý thông tin sách: 5
9 Bảo mật và quản lý tài khoản: 6
B Yêu cầu phi chức năng: Xác định các yêu cầu về hiệu suất, bảo mật và giao diện người dùng 6
1 Hiệu suất: 6
2 Bảo mật: 6
Trang 33 Giao diện người dùng: 6
4 Độ tin cậy và khả năng mở rộng: 7
5 Dễ bảo trì và nâng cấp: 7
CHƯƠNG III THIẾT KẾ CƠ SỞ DỮ LIU 7
A Thiết kế lược đồ dữ liệu: 8
1 Bảng LOGIN: 8
2 Bảng DOCGIA: 8
3 Bảng SACH: 8
4 Bảng MUONTRA: 8
5 Bảng HISTORY: 9
B Mô tả các thực thể và quan hệ: 9
C Thiết kế các truy vấn SQL: 12
a.Tìm kiếm sách: 12
b.Đăng ký sách mới: 12
c.Quản lý mượn/trả sách: 12
CHƯƠNG IV THIẾT KẾ GIAO DIN NGƯỜI DÙNG 14
A.Thiết kế mô hình giao diện người dùng: 14
1 Trang Chủ: 14
2 Trang Tìm kiếm Sách: 15
3 Trang Chi tiết Sách: 15
4 Trang Đăng nhập/Đăng ký: 16
5 Trang Tài khoản Người dùng: 16
6 Trang Quản lý Thư viện (Cho quản trị viên): 16
B Mô tả các giao diện: 17
1 Giao diện Đăng ký Sách Mới: 17
2 Giao diện Tìm kiếm Sách: 18
Trang 43 Giao diện Quản lý Mượn/Trả Sách: 18
V KIỂM TRA VÀ KIỂM THỬ 19
A Triển khai ứng dụng: 19
B Kiểm thử hệ thống 21
1 Kế hoạch kiểm thử 21
a Kiểm thử chức năng 21
b Kiểm thử hiệu suất: 23
2 Kết quả kiểm thử: 23
a Kiểm thử chức năng: 23
b Kiểm thử hiệu suất: 23
3 Tổng kết: 23
CHƯƠNG VI KẾT LUẬN 24
A Tóm tắt 24
B Đề xuất phát triển tương lai 24
1 Giao diện Người dùng Cải tiến: 24
2 Tính năng Lưu trữ đám mây: 25
3 Tính năng Gợi ý Sách: 25
4 Tích hợp Hệ thống Thanh toán: 25
Trang 5CHƯƠNG I GI&I THIÊ'U
A Mô tả vấn đề: Giới thiệu về nhu cầu của trường học trong việc quản lý thư viện sách
Trong môi trường giáo dục, thư viện sách là một phần không thể thiếu để hỗ trợquá trình học tập và nâng cao kiến thức của học sinh và giáo viên Tuy nhiên,việc quản lý thư viện sách đôi khi có thể trở nên phức tạp và đòi hỏi sự tổ chứchiệu quả để đảm bảo rằng tài nguyên sách được quản lý và sử dụng một cáchhiệu quả nhất
1 Khó khăn trong quản lý thủ công: Trong quá trình quản lý thư viện sách theocách thủ công, việc ghi nhận thông tin về sách, mượn/trả sách và tìm kiếmthông tin có thể gặp phải nhiều khó khăn Hệ thống giấy tờ có thể dễ dàng bịmất hoặc phát sinh sai sót, dẫn đến việc rối loạn thông tin và thất thoát tàinguyên sách
2 Nhu cầu tăng cường hiệu suất: Trong một môi trường giáo dục đang pháttriển, nhu cầu tăng cường hiệu suất và tiết kiệm thời gian là điều cần thiết Việc
sử dụng một hệ thống quản lý thư viện sách tự động có thể giúp giảm thiểu thờigian và công sức cần thiết cho quản lý sách, từ việc đăng ký mới cho đến việctheo dõi mượn/trả sách
3 Sự cần thiết của công nghệ: Trong thời đại số hóa, việc sử dụng công nghệthông tin để quản lý thư viện sách không chỉ là một sự cần thiết mà còn là mộtlợi ích Việc áp dụng ứng dụng quản lý thư viện sách có thể tạo ra một môitrường hoạt động hiệu quả hơn, đồng thời cung cấp cho người quản lý một cáinhìn toàn diện về tình trạng và sử dụng sách
Trang 6Trong bối cảnh này, việc thiết kế và triển khai một ứng dụng quản lý thư việnsách dựa trên NetBeans IDE và SQL Server không chỉ giúp giải quyết các vấn
đề trên mà còn tạo ra một hệ thống linh hoạt và tiện lợi cho việc quản lý tàinguyên sách của trường học
B Mục tiêu của dự án: Mô tả mục tiêu và ưu điểm của ứng dụng quản lý thư viện sách
1 Mục tiêu của dự án:
a Tạo ra một hệ thống quản lý thư viện sách hiệu quả: Mục tiêu chính của dự
án là phát triển một ứng dụng quản lý thư viện sách đáp ứng được các yêu cầuchức năng và phi chức năng của trường học Ứng dụng sẽ cung cấp các tínhnăng như đăng ký sách mới, quản lý thông tin sách và người dùng, mượn/trảsách và tìm kiếm sách một cách nhanh chóng và hiệu quả
b Tối ưu hóa quy trình quản lý sách: Mục tiêu của dự án là giảm thiểu thờigian và công sức cần thiết cho quản lý sách thông qua việc tự động hóa các quytrình, từ việc nhập sách mới cho đến việc theo dõi mượn/trả sách
c Tăng cường tính linh hoạt và dễ dàng sử dụng: Ứng dụng quản lý thư việnsách sẽ được thiết kế với giao diện người dùng thân thiện và dễ sử dụng, giúpngười quản lý và người dùng cuối có trải nghiệm thuận tiện và linh hoạt
2 Ưu điểm của ứng dụng quản lý thư viện sách:
Trang 7a Tăng cường hiệu suất: Ứng dụng giúp giảm thiểu thời gian và công sức cầnthiết cho quản lý sách thông qua việc tự động hóa các quy trình, từ việc nhậpsách mới, quản lý thông tin sách, đến việc mượn/trả sách.
b Tăng cường tính toàn vẹn và chính xác: Bằng cách sử dụng một cơ sở dữliệu trung tâm, ứng dụng giúp đảm bảo tính toàn vẹn và chính xác của thông tinsách và người dùng, từ đó giảm thiểu sai sót và mất mát dữ liệu
c Cải thiện trải nghiệm người dùng: Ứng dụng được thiết kế với giao diệnngười dùng thân thiện và dễ sử dụng, giúp người quản lý và người dùng cuối cótrải nghiệm thuận tiện và linh hoạt khi tương tác với hệ thống
d Dễ dàng mở rộng và bảo trì: Ứng dụng được xây dựng trên nền tảng côngnghệ hiện đại, cho phép dễ dàng mở rộng tính năng và bảo trì hệ thống trongtương lai
e Tích hợp với các công nghệ phổ biến: Sử dụng NetBeans IDE và SQLServer giúp ứng dụng dễ dàng tích hợp với các công nghệ và hệ thống khác, tạođiều kiện thuận lợi cho việc mở rộng và tương tác với các ứng dụng khác trong
hệ thống của trường học
Mục tiêu và ưu điểm của dự án cung cấp một cái nhìn rõ ràng về những lợi ích
mà ứng dụng quản lý thư viện sách sẽ mang lại cho trường học và cộng đồngngười dùng
CHƯƠNG II PHÂN TÍCH YÊU CẦU
Trang 8A Yêu cầu chức năng: Liệt kê các chức năng cần thiết cho ứng dụng
1 Đăng ký sách mới:
- Cho phép người quản lý thư viện nhập thông tin về sách mới vào hệ thống
- Lưu trữ thông tin về tên sách, tác giả, năm xuất bản, thể loại, số lượng có sẵn, vv
- Tạo mã định danh (ID) duy nhất cho mỗi cuốn sách
2 Mượn/trả sách:
- Cho phép người dùng mượn sách từ thư viện
- Ghi nhận thông tin về người mượn, sách đã mượn, ngày mượn và ngày hạn trả
- Cập nhật thông tin khi sách được trả về thư viện
3 Tìm kiếm sách:
- Cung cấp chức năng tìm kiếm sách theo tên sách, tác giả, thể loại, hoặc mã định danh
- Hiển thị kết quả tìm kiếm dưới dạng danh sách sách phù hợp
4 Quản lý thông tin người dùng:
- Cho phép người quản lý thư viện thêm, sửa, xoá thông tin người dùng
- Lưu trữ thông tin cá nhân của người dùng như tên, địa chỉ, số điện thoại, vv
- Phân quyền truy cập dựa trên vai trò của người dùng (ví dụ: sinh viên, giáo viên, nhân viên thư viện)
Trang 95 Quản lý phiếu mượn/trả:
- Ghi nhận thông tin về các phiếu mượn sách, bao gồm thông tin về sách mượn, người mượn, ngày mượn và ngày hạn trả
- Tự động cập nhật trạng thái của sách sau khi được mượn hoặc trả
6 Thống kê và báo cáo:
- Cung cấp chức năng thống kê và tạo báo cáo về tình trạng sách, hoạt động mượn/trả, và thông tin người dùng
- Hiển thị thông tin dưới dạng biểu đồ hoặc bảng để dễ dàng theo dõi và phân tích
7 Quản lý thể loại sách:
- Cho phép người quản lý thêm, sửa, xoá thông tin về các thể loại sách
- Phân loại sách theo các thể loại khác nhau giúp người dùng dễ dàng tìm kiếm sách hơn
8 Quản lý thông tin sách:
- Cho phép người quản lý thêm, sửa, xoá thông tin về sách đã có trong thư viện
- Cập nhật thông tin về số lượng sách có sẵn sau mỗi lần mượn/trả sách
9 Bảo mật và quản lý tài khoản:
- Xác thực người dùng và đảm bảo chỉ có người dùng được phân quyền mới
có thể truy cập và thực hiện các chức năng cần thiết
- Quản lý tài khoản người dùng, bao gồm việc thêm, sửa, xoá và đặt lại mật khẩu
Trang 10Các chức năng trên cung cấp các tính năng cơ bản và cần thiết để quản lý một thư viện sách hiệu quả và dễ dàng sử dụng.
B Yêu cầu phi chức năng: Xác định các yêu cầu về hiệu suất, bảo mật và giao diện người dùng
- Xác thực và ủy quyền: Hệ thống cần cung cấp cơ chế xác thực đáng tin cậy
và phân quyền truy cập để đảm bảo rằng chỉ những người dùng được phép mới
có thể truy cập và thực hiện các chức năng cần thiết
- Bảo vệ dữ liệu: Dữ liệu về sách, người dùng và hoạt động trong thư viện cầnđược bảo vệ chặt chẽ để đảm bảo tính toàn vẹn và không bị truy cập trái phép
3 Giao diện người dùng:
- Thân thiện và dễ sử dụng: Giao diện người dùng cần được thiết kế sao cho
dễ sử dụng và thân thiện với người dùng cuối, bao gồm cả người quản lý thư viện và người dùng thông thường
- Đa nền tảng: Giao diện người dùng cần tương thích và hiển thị tốt trên các thiết bị khác nhau, bao gồm máy tính để bàn, máy tính xách tay và thiết bị di động
4 Độ tin cậy và khả năng mở rộng:
Trang 11- Sự ổn định: Hệ thống cần đảm bảo sự ổn định và tin cậy để người dùng có thể sử dụng một cách liên tục và không bị gián đoạn.
- Khả năng mở rộng: Ứng dụng cần được thiết kế để có khả năng mở rộng linhhoạt, có thể chịu được sự gia tăng về dữ liệu và số lượng người dùng mà không ảnh hưởng đến hiệu suất
dễ dàng bảo trì và nâng cấp trong tương lai
CHƯƠNG III THIẾT KẾ CƠ SỞ DỮ LIỆU
A Thiết kế lược đồ dữ liệu:
1 Bảng LOGIN:
- username (PRIMARY KEY): Lưu trữ tên người dùng
- password: Lưu trữ mật khẩu của người dùng
2 Bảng DOCGIA:
- MaDG (PRIMARY KEY): Mã số độc giả, duy nhất cho mỗi độc giả
- TenDG: Tên của độc giả
- DiaChiDG: Địa chỉ của độc giả
- SDT: Số điện thoại của độc giả
- EmailDG: Địa chỉ email của độc giả
Trang 123 Bảng SACH:
- MaSach (PRIMARY KEY): Mã số sách, duy nhất cho mỗi quyển sách
- TenSach: Tên của sách
- TacGia: Tác giả của sách
- TheLoai: Thể loại của sách
- SoLuong: Số lượng sách trong thư viện
- NgayMuon: Ngày mượn sách
- NgayTra: Ngày dự kiến trả sách
- TinhTrang: Trạng thái của giao dịch mượn trả (đã trả sách hay chưa)
5 Bảng HISTORY:
- MaHistory (PRIMARY KEY): Mã số lịch sử, duy nhất cho mỗi bản ghi lịch sử
- NoiDung: Nội dung thông báo lịch sử
- ThoiGian: Thời gian thông báo được tạo
Mối quan hệ giữa các bảng:
- Bảng DOCGIA và bảng LOGIN liên kết thông qua trường `username`,
`username` trong bảng LOGIN là khóa ngoại tham chiếu đến `MaDG` trong bảng DOCGIA
Trang 13- Bảng MUONTRA có hai khóa ngoại tham chiếu đến bảng DOCGIA (`MaDG`) và bảng SACH (`MaSach`), xác định người dùng mượn sách nào và sách nào được mượn.
- Tên sách (TenSach): Tên của cuốn sách
- Tác giả (TacGia): Tên tác giả của cuốn sách
- Thể loại (TheLoai): Thể loại của cuốn sách
- Số lượng (SoLuong): Số lượng cuốn sách có trong thư viện
- Tên độc giả (TenDG): Tên của độc giả
- Địa chỉ (DiaChiDG): Địa chỉ của độc giả
- Số điện thoại (SDT): Số điện thoại của độc giả
- Email (EmailDG): Địa chỉ email của độc giả
Trang 143 Phiếu mượn (Borrowing Receipt):
- Mô tả: Thực thể này đại diện cho quá trình mượn sách từ thưviện
- Mã sách (MaSach): Mã số sách được mượn
- Ngày mượn (NgayMuon): Ngày mượn sách
- Ngày dự kiến trả (NgayTra): Ngày dự kiến trả sách
- Tình trạng (TinhTrang): Trạng thái của giao dịch mượn trả (đã trả sách hay chưa)
2 Thông tin sách (Book Information):
- Mô tả: Quan hệ giữa sách và thông tin chi tiết về sách
- Mối quan hệ: Mỗi cuốn sách có một bộ thông tin chi tiết, và thông tin này liên kết trực tiếp với sách tương ứng
3 Thông báo lịch sử (Historical Notification):
Trang 15- Mô tả: Quan hệ giữa các thực thể và lịch sử các hoạt động trong hệ thống.
- Mối quan hệ: Các thông báo lịch sử được tạo ra dựa trên các hoạt động như mượn sách, trả sách, và các thay đổi thông tin
cá nhân của người dùng
Đây là cấu trúc cơ bản của các thực thể và quan hệ trong hệ thống quản lý thư viện Các quan hệ này giúp định rõ các tươngtác giữa người dùng và sách trong quá trình sử dụng dịch vụ thư viện
C Thiết kế các truy vấn SQL:
a.Tìm kiếm sách:
```sql
Tìm kiếm sách theo tên sách hoặc tác giả
SELECT * FROM SACH
WHERE TenSach LIKE '%keyword%' OR TacGia LIKE '%keyword%';
```
b.Đăng ký sách mới:
```sql
- Thêm sách mới vào hệ thống
INSERT INTO SACH (MaSach, TenSach, TacGia, TheLoai, SoLuong)VALUES ('new_book_id', 'Tên sách mới', 'Tác giả mới', 'Thể loại sách', so_luong);
```
Trang 16c.Quản lý mượn/trả sách:
Mượn sách:
```sql
Tạo phiếu mượn mới
INSERT INTO MUONTRA (MaMT, MaDG, MaSach, NgayMuon, NgayTra, TinhTrang)
VALUES ('new_borrow_id', 'user_id', 'book_id', 'ngay_muon',
- 'keyword': Từ khóa tìm kiếm cho tên sách hoặc tác giả
- 'new_book_id': Mã số duy nhất cho sách mới
- 'Tên sách mới': Tên của sách mới
- 'Tác giả mới': Tên tác giả của sách mới
- 'Thể loại sách': Thể loại của sách mới
- 'so_luong': Số lượng sách mới được thêm vào
- 'new_borrow_id': Mã số duy nhất cho phiếu mượn mới
- 'user_id': Mã số độc giả thực hiện mượn sách
Trang 17- 'book_id': Mã số sách được mượn.
- 'ngay_muon': Ngày mượn sách
- 'ngay_tra_du_kien': Ngày dự kiến trả sách
- 'borrow_id': Mã số phiếu mượn cần cập nhật trạng thái khi sách được trả
Những truy vấn này sẽ giúp bạn thực hiện các chức năng cơ bản như tìm kiếm sách, đăng ký sách mới, và quản lý mượn/trả sách trong hệ thống quản lý thư viện của bạn Đảm bảo rằng bạn đã thay thế các giá trị thích hợp cho các tham
số trong các truy vấn này
CHƯƠNG IV THIẾT KẾ GIAO DIỆN NGƯỜI DÙNG
A.Thiết kế mô hình giao diện người dùng:
1 Trang Chủ:
- Tìm kiếm sách: Cung cấp một ô tìm kiếm để người dùng có thể nhập từ khóa và tìm kiếm sách theo tên sách hoặc tác giả
Trang 18- Đăng nhập/Đăng ký: Nút hoặc liên kết để đăng nhập vào hệ thống nếu người dùng đã có tài khoản hoặc đăng ký nếu họ là người dùng mới.
- Danh mục sách phổ biến: Hiển thị danh sách các sách phổ biến hoặc mới nhất để người dùng có thể dễ dàng khám phá
Trang 19- Thông tin sách: Hiển thị thông tin chi tiết về cuốn sách bao gồm tên sách, tác giả, thể loại, mô tả và số lượng có sẵn.
- Nút Mượn sách: Nút hoặc liên kết để người dùng có thể thực hiện việc mượn sách trực tiếp từ trang này
4 Trang Đăng nhập/Đăng ký:
- Đăng nhập: Form đăng nhập cho phép người dùng nhập email
và mật khẩu để truy cập vào hệ thống
- Đăng ký: Form đăng ký mới cho phép người dùng nhập thông tin cá nhân và tạo tài khoản mới
5 Trang Mượn Trả:
- Thông tin người dùng: Hiển thị thông tin cá nhân của người dùng như tên, địa chỉ email, thông tin liên hệ, v.v
Trang 20- Lịch sử mượn/trả sách: Hiển thị lịch sử mượn/trả sách của người dùng và trạng thái hiện tại của các phiếu mượn.
6 Trang Chỉnh sửa thêm sách:
- Thêm sách mới: Form cho phép quản trị viên thêm sách mới vào hệ thống và cập nhật thông tin về sách
- Quản lý người dùng: Cho phép quản trị viên xem và quản lý thông tin của người dùng, bao gồm cả việc thêm, sửa và xóa người dùng