Phần 1: Lời nói đầu Trên thế giới cũng như ở Việt Nam, công nghệ thông tin đã trở thành một công nghệ mũi nhọn, nó là ngành khoa học kỹ thuật không thể thiếu trong việc áp dụng vào các h
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC XÂY DỰNG HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN
ĐỒ ÁN MÔN HỌC MÔN HỌC
HỆ CƠ SỞ DỮ LIỆU
Đề tài : Quản lý thư viện
GVHD:Nguyễn Hồng Hạnh
Thành viên : Lê Viết Hưng -0215466
Vũ Trọng Phúc -0218166
HÀ NỘI , ngày 7 tháng 4 năm 2023
Trang 2Phần 1: Lời nói đầu
Trên thế giới cũng như ở Việt Nam, công nghệ thông tin đã trở thành một công nghệ mũi nhọn, nó là ngành khoa học kỹ thuật không thể thiếu trong việc áp dụng vào các hoạt động xã hội như: quản lý hệ thống thư viện sách, kinh tế, thông tin, kinh doanh, và mọi hoạt động trong lĩnh vực nghiên cứu… Ở nước ta hiện nay, việc áp dụng vi tính hóa trong quản lý tại các cơ quan, xí nghiệp, tổ chức đang rất phổ biến và trở nên cấp thiết, bởi ngành nghề nào cũng đòi hỏi con người phải xử lý khối lượng công việc khổng lồ, và những kiến thức, những suy nghĩ, những đào tạo chuyên sâu Một vấn đề cấp thiết đặt ra trong quản lý là làm thế nào để chuẩn hóa cách xử lý dữ liệu ở trường học, chính vì thế chúng em chọn đề tài “Phân tích thiết kế hệ thống quản lý thư viện sách” Mặc dù đã rất
cố gắng để hoàn thành công việc, nhưng do thời gian có hạn và thiếu kinh nghiệm cũng như kỹ năng chưa cao nên việc phân tích và thiết kế còn nhiều thiếu sót, kính mong quý thầy cô và các bạn góp ý, bổ sung để chúng em hoàn thiện cho bài tập tốt hơn nữa Chúng em xin chân thành cảm ơn!
Phần 2: Phát biểu bài toán
Đề tài: Quản lý thư viện về mượn sách và trả sách.
Đặt vấn đề: Bạn là người quản lý một thư viện nhỏ của trường đại học, bao gồm nhiều đầu sách Mỗi đầu sách có một số lượng bản sao nhất định được quản lý lưu trữ để phục vụ cho độc giả mượn Khối lượng đầu sách ngày một nhiều và các thế hệ độc giả ngày một đông Để phục vụ cho công việc quản lý thư viện bạn đang làm, bạn muốn xây dựng một ứng dụng nhằm quản lý độc giả và xử lý việc mượn sách của độc giả
Đối tượng người dùng hệ thống chính: Thủ thư
Yêu cầu cơ bản: Hệ thống cần đáp ứng được các chức năng sau:
Báo cáo thống kê sách, báo cáo thống kê tình trạng mượn/ trả sách trong thư viện
2.1 Hoạt động nghiệp vụ thư viện:
Các hoạt động nghiệp vụ của một thư viện sách thông thường có thể được tóm tắt như sau:
* Thư viện tạo các thẻ sách 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, tóm tắt nội dung 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 các 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ẻ sách 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
Trang 3* Sách bị trả trễ lịch hẹn hoặc hỏng sẽ bị phạt.
2.2 Yêu cầu hệ thống:
a) Hệ thống thư viện sách được xây dựng nhằm mục đích giải quyết các yêu cầu chức năng sau:
* 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 và hạn phải trả, và các cuốn sách còn đang được 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 1 năm, 2 năm, 3 năm
* Hỗ 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ư
b) 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
2.3 Sơ đồ phân cấp chức năng
Xác định các chức năng hệ thống :
Hình 1: Sơ đồ phân cấp chức năng
Trang 42.4 Các hồ sơ :
Biểu mẫu 1: thẻ độc giả thư viện
TRƯỜNG ĐẠI HỌC XÂY DỰNG HÀ NỘI
THẺ THƯ VIỆN 3x4 MSSV:………
Họ tên:
Ngày sinh:………Giới tính:…………
Địa chỉ:………
Lớp:………
Khóa học……….Có giá trị đến:……
Biểu mẫu 2:Phiếu mượn sách
THƯ VIỆN TRƯỜNG ĐẠI HỌC XÂY DỰNG HÀ NỘI
PHIẾU MƯỢN SÁCH MSSV:………
Họ tên:………
Lớp:………
Ngày…tháng…năm…
Ký tên
Biểu mẫu 3: Sổ theo dõi mượn
Trang 5Biểu mẫu 4: Phiếu thanh toán ( chỉ xuất phiếu khi đền bù )
THƯ VIỆN TRƯỜNG ĐẠI HỌC XÂY DỰNG HÀ NỘI
PHIẾU THANH TOÁN MSSV:………
Họ tên:………
Lớp:………
Ngày…tháng…năm…
Ký tên
2.5,Mô tả cách sử dụng quản lý mượn trả:
1,Mượn sách
- Sinh viên muốn đăng ký mượn sách thì tra cứu phích sách rồi ghi vào phiếu yêu cầu mượn Khi mượn sách sinh
viên và phiếu mượn đến quầy gặp trực tiếp người quản lý,người quản lý nhập thông tin độc giả đó và chương trình hiện thị thông tin liên quan về bạn đọc đó như: Họ tên, ngày sinh, địa chỉ, lớp, khóa học, địa chỉ Email nếu có và ngày hết hạn thẻ Nếu thẻ nào sắp hết hạn hay đã hết hạn thì chương trình cũng sẽ cảnh báo thẻ đó Ngoài ra, chương trình còn hiển thị thông tin về việc mượn trả sách của sinh viên bao gồm: tên sách, ngày trả, ngày đến hạn phải trả sách theo thứ tự sách nào mượn lâu nhất trước nhưng sách nào quá hạn mượn hay gần đến hạn sẽ được đánh dấu để làm nổi bật thông tin cho thủ thư biết
- Nếu tất cả thông tin về thẻ của sinh viên hợp lệ thì người quản lý sẽ cho mượn sách và đưa cho sinh viên phiếu mượn sách đồng thời người quản lý sẽ nhập thông tin vào sổ mượn như: mã phiếu mượn, tên sinh viên, tên sách… Sau đó chương trình sẽ xuất hiện thông tin về hạn trả Mỗi cuốn sách có thể được mượn theo ngày hoặc theo tháng
do người quản lý quy định
- Nếu sinh viên muốn mượn một cuốn sách, nhưng cuốn sách này bạn đọc khác đang mượn, thì người này có thể đăng ký và chờ Khi cuốn sách đó được trả về, thì người quản lý sẽ thông báo đến bạn đọc đăng ký trước nhất trong danh sách những bạn đọc đang chờ mượn sách đó Người quản lý tại một thời điểm bất kỳ, có thể xác định
có bao nhiêu cuốn ứng với một loại sách đang được mượn hay đang đăng ký
2.Trả sách
- Khi sách được trả, người quản lý nhập số phiếu mượn, thông tin liên quan tới sinh viên, sách đó hiển thị và ngày đến hạn trả sách xuất hiện trên màn hình
- Thủ thư kiểm tra tình trạng sách, nếu có hư hại, mất thì sinh viên nộp tiền phạt theo quy định Sau khi sinh viên trả sách việc trả sách được ghi nhận vào dòng ngày trả trên phiếu mượn, người quản lý sẽ cập nhật lại trạng thái của đầu sách và lưu lại phiếu mượn để theo dõi
nhở sinh viên đó trả sách
- Thống kê các thông tin sau:
Trang 6Phần 3:Phân tích
3.1,Quy trình hoạt động
Hình 2: Biểu đồ hoạt động cho ca sử dụng tạo thẻ độc giả
Trang 79 Hình 3: Biểu đồ hoạt động cho ca sử dụng nhập sách mới
Trang 8Hình 4: Biểu đồ hoạt động cho thu thư sử dụng mượn sách
Trang 103.1, Các thành phần và thuộc tính
Thuthu(mathuthu,ten,gioitinh,sdt,diachi)
Docgia(madocgia,hoten,diachi,khoahoc,thoihan,lop) Phieumuon(mamuon,hantra,ngaymuon)
Sach(masach,sobansao.tensach,tentacgia,nhaxuatban,ngonngu) Phieutra(matra,ngaytrathucte)
Phieuthanhtoan(mathanhtoan,giadenbu)
3.2 ,Sơ đồ ERD
Trang 11Phần 4,Thiết kế 4.1,Thiết kế cơ sở dữ liệu
Trang 124.2 Biểu đồ cơ sở dữ liệu quan hệ
Trang 134.3,Danh sách truy vấn
A Quản lí độc giả
1 Số độc giả đã mượn sách
SELECT DISTINCT PHIEUMUON.MADOCGIA DOCGIA TENDOCGIA , FROM PHIEUMUON JOIN DOCGIA ON PHIEUMUON.MADOCGIA=DOCGIA MADOCGIA
ORDER BY PHIEUMUON MADOCGIA ASC;
2 Số độc giả mượn sách trên 1 lần
SELECT DISTINCT PHIEUMUON.MADOCGIA,COUNT(*) AS SoLanMuon,
FROM PHIEUMUON
JOIN DOCGIA ON PHIEUMUON MADOCGIA DOCGIA = MADOCGIA
GROUP BY PHIEUMUON.MADOCGIA, DOCGIA.TENDOCGIA
HAVING COUNT(*) > 1;
3 Số độc giả mượn sách trong tháng 6
SELECT DISTINCT PHIEUMUON.MADOCGIA, DOCGIA.TENDOCGIA
FROM DOCGIA
WHERE DATEPART MONTH( , PHIEUMUON NGAYMUON) 6 =
ORDER BY PHIEUMUON.MADOCGIA ASC;
4 Số độc giả trả sách quá hạn
SELECT DISTINCT PHIEUTRA.MADOCGIA, DOCGIA.TENDOCGIA,
Trang 14FROM PHIEUTRA
JOIN DOCGIA ON PHIEUTRA MADOCGIA DOCGIA = MADOCGIA
WHERE PHIEUTRA.NGAYTRATHUCTE PHIEUMUON> HANTRA
ORDER BY PHIEUTRA MADOCGIA ASC;
5 Số độc giả làm hỏng sách
SELECT PHIEUTRA MADOCGIA DOCGIA TENDOCGIA , FROM PHIEUTRA JOIN DOCGIA ON PHIEUTRA.MADOCGIA=DOCGIA MADOCGIA
WHERE PHIEUTRA.TINHTRANG='HONG'
ORDER BY PHIEUTRA.MADOCGIA ASC;
B Quản lí mượn sách
1 Danh sách sách được mượn và số lần mượn
SELECT DISTINCT SACH.MASACH SACH.TENSACH COUNT, , (*)AS SoLanMuon FROM SACH
GROUP BY SACH.MASACH SACH.TENSACH,
ORDER BY COUNT(*) DESC;
2 Danh sách sách được mượn tháng 6
SELECT DISTINCT SACH.MASACH SACH.TENSACH,
Trang 15FROM SACH
WHERE MONTH(PHIEUMUON NGAYMUON ) 6=
ORDER BY SACH MASACH ASC;
3 Danh sách sách bị hỏng và độc giả làm hỏng
SELECT DISTINCT SACH.MASACH SACH.TENSACH DOCGIA.TENDOCGIA, , FROM SACH
JOIN PHIEUTRA ON SACH.MASACH= PHIEUTRA.MASACH
JOIN DOCGIA ON DOCGIA.MADOCGIA= PHIEUTRA.MADOCGIA WHERE PHIEUTRA.TINHTRANG='HONG';
4 Danh sách sách theo các ngôn ngữ
SELECT DISTINCT SACH.MASACH SACH.TENSACH SACH.NGONNGU, , FROM SACH
ORDER BY NGONNGU;
Trang 16C Quản lý trả sách
1 Danh sách sách trả đúng hạn
SELECT DISTINCT PHIEUTRA MASACH , SACH.TENSACH PHIEUTRA NGAYTRATHUCTE,,
JOIN PHIEUMUON ON PHIEUTRA.NGAYTRATHUCTE PHIEUMUON HANTRA=
JOIN DOCGIA ON PHIEUTRA.MADOCGIA=DOCGIA MADOCGIA ;
2 Danh sách sách quá hạn
SELECT DISTINCT PHIEUTRA MASACH , SACH.TENSACH PHIEUTRA NGAYTRATHUCTE,,
FROM PHIEUTRA
JOIN PHIEUMUON ON PHIEUTRA.NGAYTRATHUCTE PHIEUMUON HANTRA>
JOIN DOCGIA ON PHIEUTRA.MADOCGIA=DOCGIA MADOCGIA ;
3 Danh sách sách được trả trong tháng 6
SELECT DISTINCT SACH.MASACH SACH.TENSACH PHIEUTRA NGAYTRATHUCTE, , FROM SACH
JOIN PHIEUTRA ON SACH MASACH PHIEUTRA = MASACH
WHERE MONTH(PHIEUTRA NGAYTRATHUCTE ) 6=
Trang 17ORDER BY SACH MASACH ASC;