Hệ thống sẽ thêm một bản ghi mới vào bảng SINHVIEN sau đó lấy thông tin về các sinh viên gồm mã sinh viên, tên sinh viên, ngày sinh, giới tính, địa chỉ, số điện thoại, email từ bảng SINH
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN
BÀI TẬP LỚN
MÔN HỌC: LẬP TRÌNH JAVA
ĐỀ TÀI: QUẢN LÍ THƯ VIỆN
Giáo viên hướng dẫn: TS Đào Nhóm: x
Lớp: KTPM - Khóa: 1x Thành viên: Tuấn Anh
Chính
Hà Nội-2021
Trang 2TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN
BÀI TẬP LỚN
MÔN HỌC: LẬP TRÌNH JAVA
ĐỀ TÀI: QUẢN LÍ THƯ VIỆN
Giáo viên hướng dẫn: TS Hà Nhóm: x
Lớp: KTPM - Khóa: 1x Thành viên: Anh
Hà Nội-2021
Trang 3LỜI NÓI ĐẦU
Hiện nay, công nghệ thông tin là một ngành khoa học đang phát triển mạnh
và ứng dụng rộng rãi trên nhiều lĩnh vực Cùng với xu hướng phát triển của các phương tiện truyền thông như TV, Radio, báo giấy, thì việc sử dụng Internet ngày càng phổ biến Truy cập Internet, chúng ta có được một kho thông tin khổng
lồ phục vụ mọi nhu cầu, mục đích của chúng ta chỉ bằng một cái nhấp chuột
Nhận thức được nhu cầu tìm hiểu thông tin, giải trí của xã hội, là sự ra đời của hàng loạt website cho các mục đích thương mại, giải trí, tin tức, Để đáp ứng với việc cập nhật thông tin hàng ngày, tình hình xã hội, chính trị, thời sự, và sức khỏe thì website tin tức ra đời là một nhu cầu tất yếu
Java là một trong những ngôn ngữ phổ biến với nhiều phiên bản khác nhau Mỗi phiên bản đều có những tính năng mới riêng hỗ trợ cho người lập trình rất nhiều các chức năng Do đó em muốn vận dụng các kiến thức đã học và tìm hiểu xây dựng hệ thống quản lí thư viện Trong quá trình làm bài còn rất nhiều thiếu sót nhầm lần, em hi vọng được Thầy và các bạn chỉnh sửa bổ sung để có thể phát triển kĩ năng của bản thân
Nhóm sinh viên thực hiện!
Trang 4DANH MỤC HÌNH ẢNH
Hình 13: Màn hình đăng nhập
Hình 14 : Màn hình chính
Trang 5Hình 15 : Màn hình quản lý sinh viên
Hình 16 : Màn hình quản lý lớp
Trang 6Hình 17 : Màn hình quản lý sách
Hình 18 : Màn hình quản lý thể loại sách
Trang 7Hình 19 : Màn hình quản lý tác giả
Hình 20 : Màn hình quản lý nhà xuất bản
Trang 8Hình 21 : Màn hình quản lý vi phạm
Hình 22 : Màn hình quản lý phiếu mượn
Trang 9CHƯƠNG 1: TỔNG QUAN BÀI TOÁN QUẢN LÍ THƯ VIỆN
1.1 Hoạt động nghiệp vụ thư viện
Các hoạt động nghiệp vụ của thư viện:
- Thư viện tạo ra các thẻ gồm các thông tin: Mã số sách, tên tác giả, tên nhà xuất bản, năm xuất bản, số trang, giá tiền Các đầu sách có thể được phân theo chuyên ngành hoặc tài liệu
- Mỗi độc giả được cấp một thẻ độc giả, gồm thông tin: tên, tuổi, địa chỉ, số chứng minh thư
- Độc giả muốn mượn sách thì tra cứu các thẻ rồi ghi vào phiếu mượn
- Sau khi kiểm tra đầy đủ thông tin phiếu mượn, thủ thư kiểm tra điều kiện mượn của độc giả và xác nhận cho phép mượn sách, thu tiền đặt cọc của độc giả Một số thông tin trong phiếu mượn được lưu lại để quản lí, phiếu mượn sẽ được gài vào chỗ sách được lấy đi, sách được giao cho độc giả
- Khi độc giả trả sách: xác nhận thẻ độc giả, xác định phiếu mượn, việc trả sách được ghi nhận vào dòng ngày trả và tình trạng Phiếu mượn được lưu lại để quản lí và theo dõi
- Sách trả muộn so với lịch hẹn hoặc hỏng sẽ bị phạt
1.2 Yêu cầu hệ thống
1.2.1 Yêu cầu chức năng
Giúp độc giả tra cứu sách theo loại sách, theo tên sách, theo tác giả, theo ngôn ngữ, … trên các máy tính trạm
Cung cấp cho thủ thư thông tin về các đầu sách một độc giả đang mượn, hạn phải trả và các cuốn sách còn đang mượn
Thống kê hàng tháng số sách cho mượn theo các chủ đề, tác giả, … Thống
kê các đầu sách không có người mượn trên một năm
Trang 10Hỗ trợ thủ thư cập nhật thông tin sách, xác nhận cho mượn sách và nhận lại sách khi độc giả trả sách
Hỗ trợ quản lý các thông tin về độc giả dựa trên thẻ độc giả, thông tin phiếu mượn
Hỗ trợ chức năng quản trị chung hệ thống trong đó người quản trị chung có thể thay đổi thông tin hoặc thêm bớt các thủ thư
1.2.2 Yêu cầu phi chức năng
Độc giả có thể tra cứu thông tin sách trên môi trường mạng nội bộ của thư viện Tuy nhiên, việc mượn và trả sách phải thực hiện trực tiếp trên thư viện Thủ thư sử dụng hệ thống để cập nhật và quản lý quá trình mượn trả sách
Thông tin thống kê phải đảm bảo tính chính xác, khách quan Các hình thức phạt đối với độc giả quá hạn sẽ được lưu lại và thông báo cho độc giả biết
1.3 Sơ đồ phân cấp chức năng
Quản lí thư viện
Quản lí hệ thống Quản lí kho sách Quản lí độc giả Quản lí mượn trả Quản lí thống kê
Thông tin độc giả
Tìm kiếm tài khoản
Cập nhật danh sách độc giả
Thống kê sách trễ hạn
Hình 1: sơ đồ phân cấp chức năng
Trang 11Mô tả chức năng hệ thống:
- Quản trị hệ thống: admin sử dụng chức năng quản trị hệ thống để quản lí
thông tin người dùng và phân quyền sử dụng cho thủ thư, thủ kho, …
- Quản lí kho: hệ thống cho phép quản lí toàn bộ thông tin của tất cả sách của
thư viện, cho phép thêm, xóa, thay đổi thông tin của sách
- Quản lí độc giả: hệ thống cho phép quản lí thông tin cá nhân của từng độc
giả, thêm, xóa, sửa thông tin độc giả
- Quản lí trả mượn: hệ thống cho phép quản lí việc mượn trả sách của độc
giả, hỗ trợ tạo phiếu mượn, gia hạn sách, …
- Thống kê: hệ thống cho phép thống kê số lượng sách đã được mượn, số sách chưa được mượn trong 1 năm, … giúp người quản lí thư viện nắm rõ tình hình hoạt động trả mượn sách của thư viện
Trang 12CHƯƠNG 2: MÔ HÌNH HÓA CHỨC NĂNG 2.1 Biểu đồ use case tổng quát
Hình 2.1 Biểu đồ use case tổng quát SinhVien
Tim kiem sach
Cap nhat thong tin ca nhan
CSDL
Trang 132.2 Mô tả chi tiết các use case
2.2.1 Mô tả use case Tìm kiếm sách
Use case này cho phép sinh viên nhập từ khóa để tìm kiếm sách mong muốn
• Các yêu cầu đặc biệt:
Không có
• Tiền điều kiện:
Sinh viên phải có tài khoản đăng nhập
• Hậu điều kiện:
Trang 14Use case này cho phép sinh viên mượn sách mong muốn
• Các yêu cầu đặc biệt:
Không có
• Tiền điều kiện:
Sinh viên phải có tài khoản đăng nhập
• Hậu điều kiện:
Trang 15Use case này cho phép sinh viên cập nhật thông tin cá nhân trên hệ thống quản lí thư viện
• Luồng sự kiện:
o Luồng cơ bản:
1) Use case này bắt đầu khi sinh viên kích vào nút “Cập nhật thông tin
cá nhân” trên thanh công cụ Hệ thống sẽ lấy thông tin sách từ bảng SINHVIEN và hiển thị lên màn hình
2) Sinh viên nhập thông tin như họ tên, giới tính, ngày sinh, địa chỉ, số điện thoại, email cần sửa Sau đó, kích nút “cập nhật” và hệ thống sẽ cập nhật thông tin vào bảng SINHVIEN
• Các yêu cầu đặc biệt:
Không có
• Tiền điều kiện:
Sinh viên phải có tài khoản đăng nhập
• Hậu điều kiện:
Không có
• Điểm mở rộng:
Không có
Trang 162.2.4 Mô tả use case Quản lí sinh viên
Use case này cho phép người quản trị quản lí sinh viên trong hệ thống quản lí thư viện
2) Thêm sinh viên mới
a) Người quản trị nhập thông tin cho sinh viên mới và kích vào nút
“Lưu” Hệ thống sẽ thêm một bản ghi mới vào bảng SINHVIEN sau
đó lấy thông tin về các sinh viên gồm mã sinh viên, tên sinh viên, ngày sinh, giới tính, địa chỉ, số điện thoại, email từ bảng SINHVIEN
và hiển thị lên màn hình
3) Sửa sinh viên
a) Người quản trị kích vào một dòng thông tin sinh viên trong danh sách các sinh viên Hệ thống lấy mã sinh viên, tên sinh viên, ngày sinh, giới tính, địa chỉ, số điện thoại, email cũ của sinh viên được chọn từ bảng SINHVIEN và hiển thị lên màn hình trong hộp textbox
b) Người quản trị sửa tên của sinh viên sau đó kích vào nút “Sửa” Hệ thống cập nhật thông tin sinh viên vào bảng SINHVIEN sau đó lấy thông tin về các sinh viên gồm mã sinh viên, tên sinh viên, ngày sinh, giới tính, địa chỉ, số điện thoại, email từ bảng SINHVIEN và hiển thị lên màn hình
Trang 174) Xóa sinh viên
a) Người quản trị kích vào một dòng sinh viên trong danh sách các sinh viên Hệ thống hiển thị một màn hình yêu cầu xác nhận xóa b) Người quản trị kích vào nút “Yes” Hệ thống xóa sinh viên được chọn khỏi bảng SINHVIEN sau đó lấy thông tin về các sinh viên gồm mã sinh viên, tên sinh viên, ngày sinh, giới tính, địa chỉ, số điện thoại, email từ bảng SINHVIEN và hiển thị lên màn hình Use case kết thúc
3) Tại bước 2a và 3b trong luồng cơ bản khi người quản trị nhập thông tin sinh viên không hợp lệ, hệ thống sẽ hiển thị một thông báo lỗi yêu cầu nhập lại Người quản trị có thể nhập lại để tiếp tục hoặc kích vào nút hủy bỏ để kết thúc
4) Tại bước 4b trong luồng cơ bản nếu không thể xóa được sinh viên hệ thống sẽ hiển thị một thông báo lỗi và use case kết thúc
• Các yêu cầu đặc biệt:
Cần kiểm soát quyền thực hiện use case này để đảm bảo tính an toàn và bảo mật
• Tiền điều kiện:
Người quản trị cần đăng nhập với quyền quản trị trước khi thực hiện use case
• Hậu điều kiện:
Trang 18Sau khi use case kết thúc thành công thì các thông tin về sinh viên cần được cập nhật vào bảng SINHVIEN
• Điểm mở rộng:
Không có
2.2.5 Mô tả use case Quản lí sách
Use case này cho phép người quản trị quản lí sách trong hệ thống quản lí thư viện
• Luồng sự kiện:
o Luồng cơ bản:
1) Use case này bắt đầu khi người quản trị kích vào mục “Quản lí sách” trên thanh menu Hệ thống sẽ lấy thông tin các sách gồm mã sách, tên sách, số lượng, NXB, ngày nhập, tác giả, nội dung từ bảng SACH và hiển thị lên màn hình
2) Thêm sách mới
a) Người quản trị nhập thông tin cho sách mới gồm mã sách, tên sách, số lượng, NXB, ngày nhập, tác giả, nội dung và kích vào nút “Thêm” Hệ thống sẽ thêm một bản ghi mới vào bảng SACH sau đó lấy thông tin về các sách gồm mã sách, tên sách, số lượng, NXB, ngày nhập, tác giả, nội dung từ bảng SACH và hiển thị lên màn hình
3) Sửa sách
a) Người quản trị kích vào một dòng thông tin sách trong danh sách các sách Hệ thống lấy mã sách, tên sách, số lượng, NXB, ngày nhập, tác giả, nội dung cũ của sách được chọn từ bảng SACH và hiển thị lên màn hình trong hộp textbox
b) Người quản trị sửa tên của Sách sau đó kích vào nút “Sửa” Hệ thống cập nhật thông tin sách vào bảng SACH sau đó lấy thông tin về các sách
Trang 19gồm mã sách, tên sách, số lượng, NXB, ngày nhập, tác giả, nội dung từ bảng SACH và hiển thị lên màn hình
3) Tại bước 2a và 3b trong luồng cơ bản khi người quản trị nhập thông tin sách không hợp lệ, hệ thống sẽ hiển thị một thông báo lỗi yêu cầu nhập lại Người quản trị có thể nhập lại để tiếp tục hoặc kích vào nút hủy bỏ để kết thúc
4) Tại bước 4b trong luồng cơ bản nếu không thể xóa được sách hệ thống sẽ hiển thị một thông báo lỗi và use case kết thúc
• Các yêu cầu đặc biệt:
Cần kiểm soát quyền thực hiện use case này để đảm bảo tính an toàn và bảo mật
• Tiền điều kiện:
Trang 20Người quản trị cần đăng nhập với quyền quản trị trước khi thực hiện use case
• Hậu điều kiện:
Sau khi use case kết thúc thành công thì các thông tin về sách cần được cập nhật vào bảng SACH
• Điểm mở rộng:
Không có
2.2.6 Mô tả use case Quản lí lớp
Use case này cho phép người quản trị quản lí lớp trong hệ thống quản lí thư viện
• Luồng sự kiện:
o Luồng cơ bản:
1) Use case này bắt đầu khi người quản trị kích vào mục “Quản lí lớp” trên thanh menu Hệ thống sẽ lấy thông tin các sách gồm mã lớp, tên lớp từ bảng LOP và hiển thị lên màn hình
2) Thêm lớp mới
Người quản trị nhập thông tin cho lớp mới gồm mã lớp, tên lớp và kích vào nút “Lưu” Hệ thống sẽ thêm một bản ghi mới vào bảng LOP sau đó lấy thông tin về các lớp gồm mã lớp, tên lớp từ bảng LOP và hiển thị lên màn hình
3) Sửa lớp
a) Người quản trị kích vào một dòng thông tin lớp trong danh sách các lớp Hệ thống lấy mã lớp, tên lớp cũ của lớp được chọn từ bảng LOP và hiển thị lên màn hình trong hộp textbox
b) Người quản trị sửa tên của lớp sau đó kích vào nút “Sửa” Hệ thống cập nhật thông tin lớp vào bảng LOP sau đó lấy thông tin về các lớp gồm
mã lớp, tên lớp từ bảng LOP và hiển thị lên màn hình
Trang 213) Tại bước 2 và 3b trong luồng cơ bản khi người quản trị nhập thông tin lớp không hợp lệ, hệ thống sẽ hiển thị một thông báo lỗi yêu cầu nhập lại Người quản trị có thể nhập lại để tiếp tục hoặc kích vào nút hủy bỏ để kết thúc
4) Tại bước 4b trong luồng cơ bản nếu không thể xóa được lớp hệ thống
sẽ hiển thị một thông báo lỗi và use case kết thúc
• Các yêu cầu đặc biệt:
Cần kiểm soát quyền thực hiện use case này để đảm bảo tính an toàn và bảo mật
• Tiền điều kiện:
Người quản trị cần đăng nhập với quyền quản trị trước khi thực hiện use case
• Hậu điều kiện:
Trang 22Sau khi use case kết thúc thành công thì các thông tin về lớp cần được cập nhật vào bảng LOP
• Điểm mở rộng:
Không có
2.2.7 Mô tả use case Quản lí thể loại
Use case này cho phép người quản trị quản lí thể loại trong hệ thống quản
2) Thêm thể loại mới
Người quản trị nhập thông tin cho thể loại mới gồm mã thể loại, tên thể loại, vị trí và kích vào nút “Lưu” Hệ thống sẽ thêm một bản ghi mới vào bảng THELOAI sau đó lấy thông tin về các thể loại gồm mã thể loại, tên thể loại, vị trí từ bảng THELOAI và hiển thị lên màn hình
3) Sửa thể loại
a) Người quản trị kích vào một dòng thông tin thể loại trong danh sách các thể loại Hệ thống lấy mã thể loại, tên thể loại, vị trí cũ của thể loại được chọn từ bảng THELOAI và hiển thị lên màn hình trong hộp textbox b) Người quản trị sửa tên của thể loại sau đó kích vào nút “Sửa” Hệ thống cập nhật thông tin thể loại vào bảng THELOAI sau đó lấy thông tin về các thể loại gồm mã thể loại, tên thể loại, vị trí từ bảng THELOAI
và hiển thị lên màn hình
Trang 234) Tại bước 4b trong luồng cơ bản nếu không thể xóa được lớp hệ thống
sẽ hiển thị một thông báo lỗi và use case kết thúc
• Các yêu cầu đặc biệt:
Cần kiểm soát quyền thực hiện use case này để đảm bảo tính an toàn và bảo mật
• Tiền điều kiện:
Người quản trị cần đăng nhập với quyền quản trị trước khi thực hiện use case
• Hậu điều kiện:
Trang 24Sau khi use case kết thúc thành công thì các thông tin về thể loại cần được cập nhật vào bảng THELOAI
• Điểm mở rộng:
Không có
2.2.8 Mô tả use case Quản lí tác giả
Use case này cho phép người quản trị quản lí tác giả trong hệ thống quản lí thư viện
• Luồng sự kiện:
o Luồng cơ bản:
1) Use case này bắt đầu khi người quản trị kích vào mục “Quản lí tác giả” trên thanh menu Hệ thống sẽ lấy thông tin các tác giả gồm mã tác giả, tên tác giả, ngày sinh, địa chỉ, email từ bảng TACGIA và hiển thị lên màn hình
2) Thêm tác giả mới
Người quản trị nhập thông tin cho tác giả mới gồm mã tác giả, tên tác giả, ngày sinh, địa chỉ, email và kích vào nút “Lưu” Hệ thống sẽ thêm một bản ghi mới vào bảng TACGIA sau đó lấy thông tin về các tác giả gồm mã tác giả, tên tác giả, ngày sinh, địa chỉ, email từ bảng TACGIA
Trang 25b) Người quản trị sửa tên của tác giả sau đó kích vào nút “Sửa” Hệ thống cập nhật thông tin tác giả vào bảng TACGIA sau đó lấy thông tin
về các tác giả gồm mã tác giả, tên tác giả, ngày sinh, địa chỉ, email từ bảng TACGIA và hiển thị lên màn hình
4) Xóa tác giả
a) Người quản trị kích vào một dòng tác giả trong danh sách các tác giả
Hệ thống hiển thị một màn hình yêu cầu xác nhận xóa
b) Người quản trị kích vào nút “Yes” Hệ thống xóa tác giả được chọn khỏi bảng TACGIA sau đó lấy thông tin về các tác giả gồm mã tác giả, tên tác giả, ngày sinh, địa chỉ, email từ bảng TACGIA và hiển thị lên màn hình
4) Tại bước 4b trong luồng cơ bản nếu không thể xóa được lớp hệ thống
sẽ hiển thị một thông báo lỗi và use case kết thúc
• Các yêu cầu đặc biệt:
Trang 26Cần kiểm soát quyền thực hiện use case này để đảm bảo tính an toàn và bảo mật
• Tiền điều kiện:
Người quản trị cần đăng nhập với quyền quản trị trước khi thực hiện use case
• Hậu điều kiện:
Sau khi use case kết thúc thành công thì các thông tin về tác giả cần được cập nhật vào bảng TACGIA
• Điểm mở rộng:
Không có
2.2.9 Mô tả use case Quản lí nhà xuất bản
Use case này cho phép người quản trị quản lí nhà xuất bản trong hệ thống quản lí thư viện
• Luồng sự kiện:
o Luồng cơ bản:
1) Use case này bắt đầu khi người quản trị kích vào mục “Quản lí NXB” trên thanh menu Hệ thống sẽ lấy thông tin các tác giả gồm mã nhà xuất bản, tên nhà xuất bản, địa chỉ, email từ bảng NXB và hiển thị lên màn hình
2) Thêm nhà xuất bản mới
Người quản trị nhập thông tin cho nhà xuất bản mới gồm mã nhà xuất bản, tên nhà xuất bản, địa chỉ, email và kích vào nút “Lưu” Hệ thống sẽ thêm một bản ghi mới vào bảng NXB sau đó lấy thông tin về các nhà xuất bản gồm mã nhà xuất bản, tên nhà xuất bản, địa chỉ, email từ bảng NXB và hiển thị lên màn hình
3) Sửa nhà xuất bản