Phần mềm này tập trung vào 3 mục chính là chức năng quản lý người dùng, chức năngquản lý quyên góp và chức năng báo cáo thống kê, nhằm tối ưu hóa hoạt động và cung cấpgiải pháp toàn diện
Trang 1TRƯỜNG ĐẠI HỌC THĂNG LONG
KHOA TOÁN TIN
Trần Tô Hiệu – A35930 Doãn Đức Thiện – A31232
Trang 2Là sinh viên của Đại học Thăng Long, chúng em tự hào về khoa mà mình theo học,cũng như tất cả thầy cô và bạn bè tại Đại học Thăng Long.
Chúng em xin cam đoan đề tài “Xây Dựng Hệ Thống Quản Lý Quyên Góp, Bổ Sung Sách Cho Thư Viện” là một công trình nghiên cứu độc lập dưới sự hướng dẫn của
Ths Đinh Thị Thúy Ngoài ra, không có bất cứ sự sao chép của người khác Đề tài, nội dungbáo cáo là sản phẩm mà nhóm em đã nỗ lực nghiên cứu trong quá trình học tập tại trường.Các kết quả trình bày trong báo cáo là hoàn toàn trung thực và chúng em xin chịu hoàn toàntrách nhiệm kỷ luật của Bộ môn và nhà trường đề ra nếu như có vấn đề sảy ra
Một lần nữa, chúng em xin chân thành cảm ơn công lao dạy dỗ của quý thầy cô Kínhchúc quý thầy cô mạnh khỏe, tiếp tục đạt được nhiều thắng lợi trong nghiên cứu khoa học
Trang 3BẢNG PHÂN CÔNG CÔNG VIỆC
A35930 Trần Tô Hiệu Nhóm chức năng quản lý người dùngA31232 Doãn Đức Thiện Nhóm chức năng quản lý quyên gópA30861 Nguyễn Trọng Sơn Nhóm chức năng báo cáo thống kê
Trang 4LỜI GIỚI THIỆU
Phần mềm quản lý quyên góp bổ sung sách cho thư viện là một ứng dụng phần mềmđược thiết kế để giúp thư viện quản lý quy trình quyên góp và bổ sung sách mới vào bộ sưutập của mình Đây là một công cụ hữu ích để tổ chức và xử lý quyên góp sách từ cộng đồng
và các đối tác khác
Các chức năng chính của phần mềm quản lý quyên góp bổ sung sách cho thư viện:
1 Đăng ký và theo dõi thông tin quyên góp: Phần mềm cho phép người dùng đăng kýthông tin về quyên góp sách, bao gồm thông tin cá nhân của người dùng, thông tin vềsách, v.v Nó cũng theo dõi lịch sử quyên góp và các thông tin liên quan khác
2 Xác nhận và xử lý sách quyên góp: Khi có sách được quyên góp, phần mềm chophép nhân viên thư viện xác nhận và xử lý quyên góp này Điều này có thể bao gồmviệc xác minh thông tin sách, đánh giá tình trạng và giá trị của sách và quyết địnhxem sách có phù hợp để bổ sung vào bộ sưu tập hay không
3 Quản lý thông tin sách quyên góp: Phần mềm giúp thư viện lưu trữ và quản lý thôngtin về sách quyên góp Điều này bao gồm thông tin về tên sách, tác giả, ngày xuấtbản, danh mục chủ đề, tình trạng sách, v.v Nó cung cấp một cơ sở dữ liệu dễ sử dụng
để tra cứu và theo dõi sách quyên góp
4 Gửi thông báo và cảm ơn: Phần mềm cho phép tự động gửi thông báo và cảm ơn đếnngười dùng khi sách của họ được chấp nhận và bổ sung vào bộ sưu tập Điều nàygiúp tạo sự động viên và cảm giác biết ơn từ phía thư viện đối với sự đóng góp củangười dùng
5 Báo cáo và thống kê: Phần mềm cung cấp khả năng tạo báo cáo và thống kê về sáchquyên góp bao gồm số lượng sách, danh mục chủ đề, tác giả phổ biến, v.v Điều nàygiúp thư viện đánh giá hiệu quả của quyên góp sách và tạo ra thông tin thống kê hữuích
Phần mềm quản lý quyên góp bổ sung sách cho thư viện giúp tối ưu hóa quy trìnhquyên góp sách và tạo ra một hệ thống quản lý thông tin hiệu quả Nó giúp thư viện tăngcường tài nguyên và đáp ứng nhu cầu đa dạng của cộng đồng đọc giả
Trang 5MỤC LỤC
CHƯƠNG 1 TỔNG QUAN VỀ PHẦN MỀM QUẢN LÝ QUYÊN GÓP, BỔ SUNGCHO THƯ VIỆN 131.1 Mô tả bài toán 13
1.2 Yêu cầu bài toán 14
1.2.1 Yêu cầu chức năng: 14
1.2.2 Yêu cầu phi chức năng: 14
1.2.3 Mô tả nghiệp vụ 15
1.2.4 Sơ đồ quy trình nghiệp vụ 16
1.3 Sơ đồ Usecase các chức năng chính 17
1.3.1 Sơ đồ Usecase 17
1.3.2 Các tác nhân hệ thống 17
1.3.3 Các Use-case 17
1.3.4 Các ánh xạ yêu cầu nghiệp vụ với các use-case: 18
1.4 Sơ đồ chức năng của hệ thống 19
1.5 Bảng điều khiển luồng giao diện hệ thống 19
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 202.1 Cơ sở lý thuyết 20
2.1.1 Mô hình dữ liệu 20
2.1.2 Các mô hình thực thể quan hệ 20
2.1.3 Mô hình dữ liệu vật lý20
2.2 Database 21
2.2.1 Giới thiệu về micriosoft SQL server 2016 21
2.2.2 Cách hoạt động của SQL server: 22
2.2.3 Ưu điểm: 22
2.2.4 Nhược điểm: 22
CHƯƠNG 3 ĐẶC TẢ CÁC CHỨC NĂNG 233.1 UC1.1 Đăng kí 23
3.2 UC1.2 Đăng Nhập25
3.3 UC1.3 Đăng Xuất 29
Trang 63.4 UC1.4 Quản lý người dùng 30
3.5 UC1.5 Quản lý danh mục quyên góp 35
3.6 UC1.6 Quản lý đề xuất quyên góp sách 41
3.7 UC1.7 Quản lý xét duyệt đề xuất 48
3.8 UC1.8 Báo cáo và thống kê của người dùng 53
BÁO CÁO VÀ THỐNG KÊ CỦA NGƯỜI DÙNG 53
2.7 UC1.9 Báo cáo và thống kê của người quản lý 57
BÁO CÁO VÀ THỐNG KÊ CỦA QUẢN LÝ 57
4.3 Thực hành truy vấn cơ sở dữ liệu79
4.3.1 Truy vấn cơ sở dữ liệu 79
CHƯƠNG 5 KẾT LUẬN ……… 815.1 Kết quả 81
5.2 Hướng phát triển 81
TÀI LIỆU THAM KHẢO 82
Trang 7MỤC LỤC HÌN
YY
Hình 1.1 Sơ đồ nghiệp vụ 16
Hình 1.2 Sơ đồ Usecase 17
Hình 1.3 Sơ đồ chức năng của hệ thống 19
Hình 1.4 Biểu đồ luồng điều kiện sau khi đăng nhập của người quản lý 19
Hình 2.1 Kiến trúc của SQL Server 21
Hình 3.1 Giao diện đăng kí 24
Hình 3.2 Giao diện khi người dùng đăng kí thành công 24
Hình 3.3 Giao diện form đăng nhập của người dùng 26
Hình 3.4 Giao diện form đăng nhập của người quản lý 27
Hình 3.5 Giao diện sau khi đăng nhập của người dùng 27
Hình 3.6 Sơ đồ usecase sau khi đăng nhập của người quản lý 27
Hình 3.7 Sơ đồ usecase sau khi đăng nhập của người dùng 28
Hình 3.8 Sơ đồ lớp phân tích của chức năng đăng nhập 28
Hình 3.9 Sơ đồ trình tự của chức năng đăng nhập 28
Hình 3.10 Giao diện sau khi đăng xuất 29
Hình 3.11 Giao diện quản lý người dùng 31
Hình 3.12 Giao diện thêm mới người dùng 32
Hình 3.13 Giao diện xóa người dùng 32
Hình 3.14 Giao diện cập nhật người dùng 33
Hình 3.15 Sơ đồ lớp phân tích quản lý người dùng 33
Hình 3.16 Sơ đồ trình tự chức năng quản lý người dùng 34
Hình 3.17 Giao diện quản lý danh mục 37
Hình 3.18 Giao diện thêm mới danh mục 37
Hình 3.19 Giao diện xóa danh mục 38
Hình 3.20 Giao diện tìm kiếm danh mục 38
Hình 3.21 Biểu đồ usecase quản lý danh mục quyên góp 38
Hình 3.22 Sồ lớp phân tích quản lý danh mục quyên góp 39
Hình 3.23 Sơ đồ trình tự danh mục quản lý quyên góp 40
Hình 3.24 Giao diện quản lý đề xuất quyên góp 43
Trang 8Hình 3.25 Giao diện thêm mới đề xuất 44
Hình 3.26 Giao diện sửa đề xuất 45
Hình 3.27 Giao diện hủy bỏ đề xuất 45
Hình 3.28 Giao diện tìm kiếm đề xuất 45
Hình 3.29 Giao diện chi tiết đề xuất 46
Hình 3.30 Biểu đồ usecase quản lý đề xuất quyên góp 46
Hình 3.31 Sơ đồ lớp phân tích đề xuất quyên góp sách 46
Hình 3.32 Sơ đồ trình tự đề xuất quyên góp sách 47
Hình 3.33 Giao diện quản lý xét duyệt quyên góp 49
Hình 3.34 Giao diện chi tiết xét duyệt đề xuất quyên góp 50
Hình 3.35 Giao diện hoàn tất xét duyệt đề xuất 50
Hình 3.36 Biểu đồ usecase quản lý xét duyệt đề xuất 51
Hình 3.37 Sơ đồ phân tích quản lý đề xuất 51
Hình 3.38 Sơ đồ trình tự đề xuất quyên góp 52
Hình 3.39 Giao diện Báo cáo thống kê cho người dùng 54
Hình 3.40 Giao diện chi tiết đề xuất quyên góp 54
Hình 3.41 Giao diện thống kê quyên góp sách của người dùng 55
Hình 3.42 Sơ đồ lớp phân tích của báo cáo thống kê 55
Hình 3.43 Sơ đồ trình tự chức năng báo cáo và thống kê của người dùng 56
Hình 3.44 Giao diện báo cáo và thống kê của người quản lý 58
Hình 3.45 Giao diện chi tiết báo cáo quyên góp 59
Hình 3.46 Giao diện biểu đồ thống kê sách quyên góp 59
Hình 3.47 Biểu đồ thống kê số lượng người quyên góp 60
Hình 3.48 Giao diện báo cáo tình trạng xét duyệt đề xuất 60
Hình 3.49 Bảng chi tiết đề xuất quyên góp 61
Hình 3.50 Biểu đồ thống kê tỷ lệ tất cả tình trạng xét duyệt 61
Hình 3.51 Biểu đồ thống kê tỷ lệ tình trạng hoàn thành và từ chối đề xuất 62
Hình 3.52 Biểu đồ thống kê tỷ lệ đề xuất đã duyệt và hoàn thành 62
Hình 3.53 Sơ đồ lớp phân tích 63
Hình 3.54 Sơ đồ trình tự chức năng báo cáo và thống kê của người quản lý 63
Hình 3.55 Giao diện tin tức 65
Hình 3.56 Giao diện chi tiết tin tức 65
Trang 9Hình 3.57 Sơ đồ lớp phân tích tin tức 66
Hình 3.58 Sơ đồ trình tự chức năng tin tức 67
Hình 3.59 Giao diện xóa tin tức 69
Hình 3.60 Giao diện sửa tin tức 69
Hình 3.61 Giao diện thêm tin tức 70
Hình 3.62 Địa chỉ liên hệ 71
Hình 4.1 Biểu đồ ERD mối quan hệ Người dùng và Danh mục 72
Hình 4.2 Biểu đồ ERD mối quuan hệ Người dùng và Đề xuất 72
Hình 4.3 Biểu đồ ERD mối quan hệ Người dùng và Tin tức 73
Hình 4.4 Biểu đồ ERD mối quan hệ Người dùng và Quyên góp 73
Hình 4.5 Biểu đồ ERD mối quan hệ Đề Xuất và Sách 73
Hình 4.6 Biểu đồ ERD mối quan hệ Đề Xuất và Quyên góp 74
Hình 4.7 Biểu đồ ERD mối quan hệ Sách và Danh mục 74
Hình 4.8 Mô hình thực thể thừa kế của Sách 74
Hình 4.9 Mô hình dữ liệu vật lý PDM 75
Hình 4.10 Sơ đồ thiết kế cơ sở dữ liệu 76
Hình 4.11 Bảng truy vấn danh sách tin tức 79
Hình 4.12 Bảng truy vấn danh sách danh mục 79
Hình 4.13 Bảng truy vấn danh sách người dùng 80
Hình 4.14 Bảng truy vấn danh sách quyên góp 80
Hình 4.15 Chức năng cập nhật trạng thái quyên góp 80
DANH MỤC CÁC CHỮ VIẾT TẮT
Api Application Programming
Interface Giao diện lập trình ứng dụng
Trang 10JSON JavaScript Object Notation Ngôn ngữ ký hiệu đối
tượngJavaScript
XML eXtensible Markup Language Ngôn ngữ đánh dấu mở
rộngHTTP HyperText Transfer Protocol Giao thức truyền tải siêu
văn bảnURI Uniform Resource Identifier Định danh tài liệu thống
nhấtSQL Structured Query Language Ngôn ngữ truy vấn mang
Trang 11PHẦN MỞ ĐẦU
1.Lý do chọn đề tài
Trong bất kỳ xã hội phát triển nào, thư viện luôn đóng vai trò quan trọng trong việc tạo
cơ hội học tập, nghiên cứu và giải trí cho cộng đồng Tuy nhiên, để đảm bảo hoạt động hiệuquả và bền vững của thư viện, việc quản lý và duy trì nguồn sách đang trở thành một tháchthức đối với các cơ quan và tổ chức quản lý thư viện
Theo như khảo sát cá nhân của nhóm, chúng em nhận thấy việc xử lý sách sau mỗi kếtthúc kì học hoặc sau tốt nghiệp Số lượng sách, tài liệu cá nhân đa phần không được tậndụng và sử dụng một cách triệt để Các tài liệu đã qua sử dụng số lượng ít được các bạn sinhviên trao lại cho khóa sau, những bạn có nhu cầu sử dụng Bản thân chúng em cũng còn rấtnhiều sách vở, tài liệu cá nhân sau dư thừa sau khi sử dụng mà chưa rõ mục đích xử lý.Một năm, trường đại học Thăng Long tiếp nhận gần 3000 sinh viên nhập học Sốlượng sách, tài liệu chuyên ngành được sản xuất để đáp ứng nhu cầu sử dụng là khá lớn.Nhà trường cần phải đầu tư nguồn vốn để cải thiện, nâng cấp chất lượng cũng như số lượngsau mỗi kỳ
Những năm gần đây, các hoạt động thư viện chưa phát triển về mặt kết nối cộng đồngtrong trường Việc quyên góp sách là cơ hội lan tỏa hoạt đồng tình nguyện cho các sinh viêntrong trường Điều này đã khơi nguồn ý tưởng cho việc chọn đề tài xây dựng phần mềmquản lý quyên góp sách cho thư viện Phần mềm này hứa hẹn sẽ đóng vai trò quan trọngtrong việc khuyến khích hoạt động quyên góp, ủng hộ sách, tài liệu cho thư viện trường,cũng như thúc đẩy sự phát triển chất lượng thư viện
2.Ý nghĩa của đề tài nghiên cứu
Phần mềm quản lý quyên góp bổ sung sách cho thư viện có ý nghĩa quan trọng vàđáng kể trong việc quản lý và phát triển bộ sưu tập sách của thư viện
Quản lý và tối ưu hóa quy trình quyên góp sách: Phần mềm giúp thư viện tối ưu hóaquy trình quyên góp sách, từ việc ghi nhận thông tin quyên góp cho đến xác nhận,
xử lý và ghi nhận sách vào bộ sưu tập Nó giúp giảm thiểu công việc thủ công vàtăng cường tính chính xác và hiệu quả trong quy trình quyên góp sách
Thu hút và tạo động lực cho cộng đồng đóng góp: Phần mềm quản lý quyên gópsách cho thư viện tạo cơ hội thu hút và khuyến khích cộng đồng đóng góp sách vàtài liệu Nó giúp tạo một kênh liên lạc và tương tác tích cực với người dùng và tạođộng lực cho họ đóng góp và chia sẻ tài liệu cho thư viện
Nâng cao đa dạng và chất lượng của bộ sưu tập sách: Phần mềm quản lý quyên gópsách giúp thư viện mở rộng và nâng cao bộ sưu tập sách của mình Việc tiếp nhận
Trang 12quyên góp từ cộng đồng giúp tăng cường đa dạng chủ đề, tác giả và nguồn gốc củasách Điều này tạo ra một bộ sưu tập phong phú và phù hợp với nhu cầu đa dạngcủa người dùng.
Tăng cường tương tác và quan hệ với cộng đồng: Phần mềm giúp thư viện tạo mộtmôi trường tương tác tích cực với cộng đồng đọc giả Người dùng được tham gia vàđóng góp vào quy trình quyên góp sách, và thư viện có thể gửi thông báo và cảm ơnđến người dùng khi sách của họ được chấp nhận Điều này tạo sự động viên và tạodựng mối quan hệ tốt với cộng đồng
Tóm lại, phần mềm quản lý quyên góp bổ sung sách cho thư viện có ý nghĩa quantrọng trong việc tối ưu hóa quy trình quyên góp, thu hút đóng góp từ cộng đồng,nâng cao đa dạng và chất lượng của bộ sưu tập, tăng cường tương tác và quan hệvới cộng đồng và quản lý dữ liệu sách hiệu quả
3 Mục tiêu của đề tài
Mục tiêu của phần mềm quản lý quyên góp bổ sung sách cho thư viện bao gồm:
Tối ưu hóa quy trình quyên góp sách: Một mục tiêu quan trọng của phần mềm là tối
ưu hóa quy trình quyên góp sách, từ việc ghi nhận thông tin quyên góp cho đến xácnhận, xử lý và ghi nhận sách vào bộ sưu tập Mục tiêu này giúp giảm thiểu côngviệc thủ công, tăng cường tính chính xác và hiệu quả trong quy trình quyên gópsách
Tăng cường tương tác và đóng góp từ cộng đồng: Phần mềm hướng đến mục tiêutạo điều kiện thuận lợi để cộng đồng đóng góp sách và tài liệu cho thư viện Nócung cấp một phương tiện dễ dàng và tiện lợi cho người dùng để quyên góp sách vànhận thông báo và cảm ơn từ thư viện khi sách của họ được chấp nhận Mục tiêunày giúp thúc đẩy sự tương tác và đóng góp tích cực từ cộng đồng và tạo mối quan
hệ tốt với người dùng
Cung cấp báo cáo và thống kê: Mục tiêu cuối cùng của phần mềm là cung cấp cácbáo cáo và thống kê về quyên góp sách Nó giúp thư viện đánh giá hiệu quả củaquyên góp sách, tạo ra thông tin thống kê hữu ích và cung cấp thông tin quan trọngcho quyết định và kế hoạch phát triển trong tương lai
Tổng quan, mục tiêu của phần mềm quản lý quyên góp bổ sung sách cho thư viện làtối ưu hóa quy trình quyên góp sách, tăng cường tương tác và đóng góp từ cộng đồng, quản
lý và phát triển bộ sưu tập sách, tạo dựng môi trường tương tác tích cực với cộng đồng vàcung cấp báo cáo và thống kê
Trang 134 Phương pháp nghiên cứu
Phương pháp nghiên cứu phần mềm quản lý quyên góp bổ sung sách cho thư viện cóthể bao gồm các bước sau đây:
1 Nghiên cứu và phân tích yêu cầu: Bước đầu tiên là tìm hiểu và phân tích yêu cầu củathư viện về phần mềm quản lý quyên góp sách Điều này bao gồm việc nắm bắt cácquy trình hiện tại, yêu cầu chức năng và phi chức năng, và các mục tiêu cụ thể màphần mềm phải đáp ứng
2 Xây dựng thiết kế hệ thống: Sau khi hiểu rõ yêu cầu, tiếp theo là xây dựng thiết kế hệthống cho phần mềm Điều này bao gồm việc định nghĩa kiến trúc hệ thống, xác địnhcấu trúc dữ liệu, giao diện người dùng, và quy trình quyên góp sách Thiết kế cũngphải đảm bảo tính mở rộng, dễ bảo trì và bảo mật của hệ thống
3 Lựa chọn công nghệ và công cụ: Sau khi hoàn thiện thiết kế, tiếp theo là lựa chọn cáccông nghệ và công cụ phù hợp để triển khai phần mềm Các công nghệ bao gồmngôn ngữ lập trình, framework, hệ quản trị cơ sở dữ liệu, v.v Công cụ phát triển vàquản lý mã nguồn cũng cần được xác định
4 Triển khai và lập trình: Bước này liên quan đến việc triển khai phần mềm và lập trìnhcác chức năng theo thiết kế đã xác định Các tính năng chính của phần mềm, chẳnghạn như đăng ký quyên góp sách, xử lý yêu cầu, quản lý thông tin sách, và gửi thôngbáo, được triển khai và kiểm thử
5 Kiểm thử và đánh giá: Sau khi triển khai, phần mềm phải trải qua quá trình kiểm thử
và đánh giá để đảm bảo tính ổn định, chính xác và hiệu quả của nó Các ca kiểm thửcần được thiết kế để kiểm tra các chức năng, xử lý lỗi và đảm bảo tính tương thíchvới các môi trường và hệ thống khác nhau
6 Triển khai và đào tạo: Sau khi hoàn thiện quá trình kiểm thử, phần mềm được triểnkhai và đưa vào sử dụng thực tế Đồng thời, người dùng và nhân viên thư viện cầnđược đào tạo về cách sử dụng phần mềm và quy trình quyên góp sách
7 Đánh giá hiệu quả và điều chỉnh: Cuối cùng, phần mềm quản lý quyên góp sách cầnđược đánh giá về hiệu quả và hiệu suất Phản hồi từ người dùng và nhân viên thưviện giúp đánh giá xem phần mềm đã đáp ứng được yêu cầu và tạo ra lợi ích nhưmong đợi Dựa trên đánh giá này, có thể điều chỉnh và cải thiện phần mềm để đápứng tốt hơn nhu cầu và mục tiêu của thư viện
Qua các bước trên, phương pháp nghiên cứu phần mềm quản lý quyên góp sách chothư viện giúp xác định, phát triển và triển khai một hệ thống quản lý quyên góp sách hiệuquả và hữu ích cho thư viện
Trang 14CHƯƠNG 1 TỔNG QUAN VỀ PHẦN MỀM QUẢN LÝ QUYÊN GÓP, BỔ SUNG
CHO THƯ VIỆN 1.1 Mô tả bài toán
Đề tài "Xây dựng phần mềm quản lý quyên góp sách cho thư viện" là một nghiên
cứu quan trọng và cần thiết trong việc cải thiện quá trình quản lý tài liệu trong thư viện hiệnđại Phần mềm này tập trung vào 3 mục chính là chức năng quản lý người dùng, chức năngquản lý quyên góp và chức năng báo cáo thống kê, nhằm tối ưu hóa hoạt động và cung cấpgiải pháp toàn diện cho việc duy trì và phát triển nguồn sách của thư viện
Chức năng quản lý người dùng đảm bảo việc ghi nhận và lưu trữ thông tin cá nhân củatừng độc giả một cách cụ thể và an toàn Hệ thống sẽ giúp thư viện quản lý được các chứngnăng của người dùng với hệ thống Đồng thời, chức năng này còn tạo giao diện thân thiệt dễhiểu, dễ dành sử dụng
Chức năng quản lý quyên góp là một yếu tố quan trọng giúp thư viện nâng cao nguồnsách và bổ sung vào bộ sưu tập một cách linh hoạt và dễ dàng Phần mềm cho phép nhânviên thư viện ghi nhận và theo dõi thông tin sách quyên góp bao gồm tên sách, tác giả, thểloại và tình trạng sách Điều này giúp thư viện nhanh chóng xác định được sách quyên gópphù hợp với nhu cầu của cộng đồng và cập nhật vào hệ thống một cách chính xác và tiện lợi.Chức năng báo cáo thống kê là một công cụ hữu ích giúp thư viện đánh giá hiệu quảhoạt động và kết quả đạt được Phần mềm sẽ tổng hợp dữ liệu từ các hoạt động quản lýngười dùng và quản lý quyên góp để tạo ra các báo cáo thống kê chi tiết và trực quan Nhờ
đó, ban quản lý thư viện có thể dễ dàng đánh giá trạng thái và xu hướng phát triển của thưviện, từ đó đưa ra các quyết định chiến lược và các biện pháp cải tiến phù hợp
Với 3 mục chính này, phần mềm quản lý quyên góp sách cho thư viện sẽ đóng gópkhông nhỏ vào việc nâng cao hiệu quả hoạt động và trải nghiệm người dùng của thư viện.Đồng thời, việc phát triển phần mềm còn mang lại cơ hội nghiên cứu và ứng dụng côngnghệ mới để thúc đẩy sự phát triển bền vững của ngành thư viện trong tương lai
Ngoài ra, phần mềm còn cung cấp thêm bảng tin tức hoạt động liên quan đến hoạtđộng quyên góp, ủng hộ sách, các hoạt động thiện nguyện của thư viện trường Từ đấy lantỏa được năng lượng và lối sống tới các cá nhân trong trường về việc sử dụng sách, tài liệuhiệu quả
Trang 151.2 Yêu cầu bài toán
Yêu cầu bài toán cho phần mềm quản lý quyên góp bổ sung sách cho thư viện baogồm các yêu cầu chức năng và phi chức năng
1.2.1 Yêu cầu chức năng:
Đăng ký quyên góp sách: Người dùng có thể đăng ký và gửi yêu cầu quyên gópsách cho thư viện
Xác nhận và xem xét yêu cầu: Thư viện cần xác nhận và xem xét các yêu cầu quyêngóp sách trước khi chấp nhận
Quản lý thông tin sách: Phần mềm cần cung cấp giao diện để quản lý thông tin sáchquyên góp
Quản lý tình trạng sách: Phần mềm cần giúp thư viện quản lý tình trạng sách trongquyên góp, từ sách đang chờ xử lý đến sách đã nhập vào thư viện
Báo cáo và thống kê: Phần mềm cần cung cấp chức năng tạo báo cáo và thống kê về
số lượng và chất lượng thông qua việc quyên góp qua hệ thống phần mền đạt được
Quản lý người dùng: Phần mềm cần có tính năng quản lý người dùng, bao gồmđăng nhập, đăng ký, cập nhật thông tin, v.v
1.2.2 Yêu cầu phi chức năng:
Giao diện người dùng thân thiện: Giao diện phần mềm cần thân thiện, dễ sử dụng vàtrực quan cho người dùng
Bảo mật thông tin: Đảm bảo an ninh và bảo mật thông tin người dùng và sáchquyên góp
Tính mở rộng và dễ mở rộng: Phần mềm cần linh hoạt và dễ dàng mở rộng để cóthể thích nghi với sự phát triển của thư viện
Tính ổn định và đáng tin cậy: Phần mềm cần hoạt động ổn định và đáng tin cậy đểđảm bảo việc quản lý sách quyên góp diễn ra một cách suôn sẻ
Hỗ trợ kỹ thuật và bảo trì: Đảm bảo sẵn sàng hỗ trợ kỹ thuật và duy trì phần mềm
để giải quyết sự cố và cập nhật tính năng mới
Các yêu cầu bài toán có thể thay đổi tùy theo quy mô và phạm vi của dự án phần mềmquản lý quyên góp sách cho thư viện cụ thể
Trang 161.2.3 Mô tả nghiệp vụ
Nghiệp vụ của phần mềm quản lý quyên góp bổ sung sách cho thư viện bao gồm cáchoạt động và quy trình quan trọng để quản lý quyên góp sách từ cộng đồng và bổ sungchúng vào bộ sưu tập của thư viện Dưới đây là mô tả chi tiết về nghiệp vụ của phần mềm:
Đề xuất quyên góp sách:
Người dùng có thể truy cập vào phần mềm và đề xuất quyên góp sách
Yêu cầu đề xuất bao gồm thông tin về sách, như tên sách, tác giả, chủ đề, ngàyxuất bản, tình trạng sách, số lượng
Người dùng cần cung cấp thông tin liên hệ để thư viện có thể liên lạc và xác nhậnyêu cầu
Xét duyệt đề xuất:
Thư viện nhận được đề xuất quyên góp từ người dùng
Quản lý thư viện xem xét yêu cầu, kiểm tra thông tin sách và xác định xem liệusách có phù hợp và hợp lệ để được quyên góp vào thư viện trường hay không
Nếu yêu cầu được chấp nhận, người gửi sẽ nhận được thông báo về việc chấpnhận và hướng dẫn tiếp theo
Quản lý thông tin sách quyên góp:
Thông tin sách được quản lý trong hệ thống, bao gồm các trường thông tin nhưtên sách, tác giả, chủ đề, ngày xuất bản, nguồn gốc sách, v.v
Thư viện cần cập nhật và theo dõi thông tin sách quyên góp trong bộ sưu tập để
có thể tìm kiếm và truy cập dễ dàng
Quản lý tình trạng sách:
Hệ thống phần mềm giúp thư viện quản lý tình trạng sách trong quyên góp, baogồm sách đang chờ xử lý, sách đã được chấp nhận và sách đã nhập vào bộ sưutập
Thư viện cần theo dõi tình trạng sách để đảm bảo quy trình quyên góp và xử lýsách diễn ra một cách liên tục và hiệu quả
Báo cáo và thống kê:
Phần mềm cung cấp chức năng tạo báo cáo và thống kê về sách quyên góp, baogồm số lượng sách, chủ đề phổ biến, nguồn gốc sách, v.v
Báo cáo và thống kê này giúp thư viện đánh giá hiệu quả của quyên góp sách vàtạo ra thông tin quan trọng cho việc quản lý và kế hoạch phát triển
Trang 17Nghiệp vụ của phần mềm quản lý quyên góp bổ sung sách cho thư viện giúp quản lý
và điều phối quyên góp sách từ cộng đồng một cách hiệu quả, cung cấp thông tin đáng tincậy về sách quyên góp và hỗ trợ quy trình xử lý sách trong bộ sưu tập thư viện
1.2.4 Sơ đồ quy trình nghiệp vụ
Từ các quy trình nghiệp vụ trên, khi mô hình hóa ta có được sơ đồ sau:
Hình 1.1 Sơ đồ nghiệp vụ
Trang 181.3 Sơ đồ Usecase các chức năng chính
UC1.1 Đăng ký: Cho phép người dùng đăng ký tài khoản mới
UC1.2 Đăng nhập: Hệ thống cho phép các tác nhân (người dùng, người quản lý)đăng nhập vào hệ thống sau khi điền đủ thông tin tên đăng nhập và mật khẩu
UC1.3 Đăng xuất: Cho phép các tác nhân thoát ra khỏi hệ thống
UC1.4 Quản lý người dùng: Cho phép người quản lý có thể quản lý (tìm kiếm,thêm sửa, xóa) người dùng hệ thống
UC1.5 Quản lý danh mục quyên góp: Cho phép Người quản lý tạo mới và chỉnhsửa các danh mục liên quan nội dung quyên góp
UC1.6 Quản lý đề xuất quyên góp: Cho phép người dùng quản lý các quyên gópcủa cá nhân
Trang 19 UC1.7 Quản lý xét duyệt đề xuất: Cho phép người quản lý phê duyệt các đề xuấtquyên góp.
UC1.8 Báo cáo và thống kê của người dùng: Cho phép người dùng quản lý vàthống kê được các đề xuất quyên góp cho thư viện
UC1.9 Báo cáo và thống kê tình trạng của người quản lý : Cho phép người quản lý
có thể quản lý và thống kê dữ liệu (đề xuất quyên góp, số lượng sách, số lượngngười dùng, tình trạng đề xuất ) của thư viện
UC1.10 Tin tức: Cho phép người dùng có thể xem được các tin tức trong hệ thống
UC1.10 Quản lý tin tức: Cho phép người quản lý có thể quản lý (tìm kiếm, thêm,sửa, xóa) các tin tức trong hệ thống
UC1.11 Quản lý liên hệ: Cho phép người quản lý kiểm soát và quản lý thông tincủa người dùng
1.3.4 Các ánh xạ yêu cầu nghiệp vụ với các use-case:
BR1 Nhóm chức năng quản lý người dùng UC1.1
UC1.2UC1.3UC1.4
BR2 Nhóm chức năng quản lý quyên góp UC1.5
UC1.6UC1.7
UC1.9
UC1.11
Bảng 1.1 Các ánh xạ yêu cầu nghiệp vụ với các use-case
Trang 201.4 Sơ đồ chức năng của hệ thống
Hình 1.3 Sơ đồ chức năng của hệ thống
1.5 Bảng điều khiển luồng giao diện hệ thống
Hình 1.4 Biểu đồ luồng điều kiện sau khi đăng nhập của người quản lý
Trang 21CHƯƠNG 2 CƠ SỞ LÝ THUYẾT
2.1 Cơ sở lý thuyết
2.1.1 Mô hình dữ liệu
Thành phần cơ bản của mô hình dữ liệu là các thực thể, thuộc tính, mối quan hệ vàràng buộc
Thực thể: sự vật, sự việc, người, nơi chốn, thứ, … đang được dữ liệu mô tả
Thuộc tính: yếu tố tạo nên thực thể
Quan hệ: liên kết giữa các thực thể
Mô tả bằng sơ đồ quan hệ thực thể (Entity Relationship Diagram – ERD)
Bổ sung cho mô hình quan hệ
Mỗi bảng là 1 thực thể
Mỗi dòng là 1 trường thực thể
Mỗi cột là 1 thuộc tính thực thể
Các mối quan hệ là một liên kết giữa 2 thực thể
Có 3 loại kí hiệu: Chen, Crow’s foot và UML
2.1.3 Mô hình dữ liệu vật lý
PDM (Physical Data Model) là mô hình dữ liệu vật lý, thường được sử dụng khithiết kế trên database cụ thể
Trang 222.2 Database
Hệ thống sử dụng microsoft SQL server 2016 để quản lý cơ sở dữ liệu
2.2.1 Giới thiệu về micriosoft SQL server 2016
Giới thiệu:
SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ (Relational DatabaseManagement System (RDBMS) ) sử dụng câu lệnh SQL (Transact-SQL) để trao đổi dữ liệugiữa máy Client và máy cài SQL Server Một RDBMS bao gồm databases, database engine
và các ứng dụng dùng để quản lý dữ liệu và các bộ phận khác nhau trong RDBMS SQLServer được phát triển và tiếp thị bởi Microsoft
SQL Server hoạt động độc quyền trên môi trường Windows trong hơn 20 năm Năm
2016, Microsoft đã cung cấp phiên bản trên Linux SQL Server 2017 ra mắt vào tháng 10năm 2016 chạy trên cả Windows và Linux, SQL Server 2019 sẽ ra mắt trong năm 2019.SQL Server được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rất lớn (VeryLarge Database Environment) lên đến Tera-Byte và có thể phục vụ cùng lúc cho hàng ngànuser SQL Server có thể kết hợp “ăn ý” với các server khác như Microsoft InternetInformation Server (IIS), E-Commerce Server, Proxy Server…
Kiến trúc của SQL Server:
Hình 2.5 Kiến trúc của SQL Server
Trang 232.2.2 Cách hoạt động của SQL server:
SQL được viết bằng C và nó sử dụng nguyên tắc cây nhị phân (Binary-Tree) để tạo dữliệu đến lưu trữ trong các hàng và cột Trong cấu trúc cây nhị phân, các nhánh con tiếp tụctrỏ đến phần dữ liệu mới, cấu trúc cơ sở dữ liệu SQL cũng tương tự như vậy, trong đó dữ lữliệu được chuyển thành các bảng với các cột và hàng dữ liệu trỏ vào nhau
Trang 24công Đăng ký thành công
Lỗi Nhập lại thông tin
ĐẶC TẢ CHỨC NĂNG
Luồng sự kiện chính/Kịch bản chính
Chức năng bắt đầu khi người dùng muốn đăng ký tài khoản thư viện
Hệ thống yêu cầu người dùng cung cấp thông tin đăng ký bao gồm tên người dùng, mậtkhẩu, mã người dùng, số điện thoại, ngày sinh, chức vụ
Người dùng truy cập vào hệ thống ấn đăng kí tài khoản mới
Hệ thống sẽ hiển thị form cho người dùng nhập thông tin đăng ký:
+ Nếu đăng nhập thành công, mà hình hiển thị đăng ký thành công
+ Nếu đăng nhập thất bại, hệ thống sẽ hiện thông báo cho người dùng và yêu cầu đăng
ký lại
Luồng sự kiện phát sinh/Kịch bản phát sinh
Giao diện minh họa
Trang 25Hình 3.6 Giao diện đăng kí
Hình 3.7 Giao diện khi người dùng đăng kí thành công
Trang 263.2 UC1.2 Đăng Nhập
trung bình
Mô tả Cho phép Người dùng và Người quản lý có thể đăng nhập vào hệ thống để
bắt đầu sử dụng thư viện
Tác nhân
Người dùng, Người quản lý
Tiền điều kiện Có sẵn tài khoản để đăng nhập
Hậu
điều
kiện
Thành
công Đăng nhập vào hệ thống
Lỗi Đăng nhập lại
ĐẶC TẢ CHỨC NĂNG
Luồng sự kiện chính/Kịch bản chính
Chức năng bắt đầu khi người dùng muốn đăng nhập để sử dụng các chức năng của hệ thống
Usecase này bắt đầu khi tác nhân muốn đăng nhập vào hệ thống
Hệ thống yêu cầu người dùng cung cấp thông tin đăng nhập bao gồm tên đăng nhập vàmật khẩu
Người dùng nhập thông tin đăng nhập và ấn nút đăng nhập
Hệ thống sẽ kiểm tra lại thông tin đăng nhập:
+ Nếu đăng nhập thành công, người dùng sẽ vào màn hình trang chủ
+ Nếu đăng nhập thất bại, hệ thống sẽ hiện thông báo cho người dùng và yêu cầu đăngnhập lại
Sau khi người dùng đăng nhập thành công vào hệ thống, mỗi tài khoản sẽ tương ứng với mỗiquyền hạn khác nhau:
Quyền người dùng được phép thực hiện các chức năng như:
Thêm mới, chỉnh sửa, xóa bỏ, tìm kiếm, chi tiết đề xuất quyên góp
Truy cập tin tức
Báo cáo - thống kê của người dùng
Liên hệ
Quyền người quản lý được phép thực hiện tất cả các chức năng như:
Thêm mới, chỉnh sửa, xóa, tìm kiếm quản lý danh mục
Thêm mới, chỉnh sửa, xóa người dùng
Trang 27Hình 3.8 Giao diện form đăng nhập của người dùng
Chỉnh sửa, tìm kiếm, xét duyệt đề xuất
Thêm mới, chỉnh sửa, xóa, tìm kiếm tin tức
Báo cáo – thống kê số lượng quyên góp, báo cáo – thống kê tình trạng quyêngóp
Liên hệ
Luồng sự kiện phát sinh/Kịch bản phát sinh
Luồng A: Nhập sai tài khoản/mật khẩu đăng nhập
- Hệ thống hiển thị một thông báo lỗi
- Người dùng có thể chọn đăng nhập hoặc hủy bỏ đăng nhập, khi đó UC này sẽ kết thúc
Luồng A1: Nhập thông tin không hợp lệ
- Hệ thống hiển thị thông báo “thông tin không hợp lệ” và yêu cầu nhập lại thông tin
Luồng A2: Tài khoản không tồn tại
- Hệ thống hiển thị thông báo “tài khoản không tồn tại” và yêu cầu người dùng đăng ký
Giao diện minh họa
Trang 28Hình 3.9 Giao diện form đăng nhập của người quản lý
Hình 3.10 Giao diện sau khi đăng nhập của người dùng
Hình 3.11 Sơ đồ usecase sau khi đăng nhập của người quản lý
Trang 29Hình 3.12 Sơ đồ usecase sau khi đăng nhập của người dùng
Hình 3.13 Sơ đồ lớp phân tích của chức năng đăng nhập
Hình 3.14 Sơ đồ trình tự của chức năng đăng nhập
Trang 303.3 UC1.3 Đăng Xuất
trung bình
Mô tả Cho phép có thể đăng xuất khỏi hệ thống khi kết thúc phiên làm việc của
mình
Tác nhân
Người dùng, Người quản lý
Tiền điều kiện Người dùng, Người quản lý ở màn hình trang chủ
Chức năng này bắt đầu khi người dùng muốn rời khỏi hệ thống
Sau khi đã hoàn thành các thao tác, phải ở màn hình trang chủ, ấn nút đăng xuất đểthoát khỏi hệ thống
Khi ấn vào nút đăng xuất sẽ có thông báo hiện lên để lựa chọn:
Nếu chọn “Đăng xuất” thì hệ thống sẽ quay trở lại màn hình đăng nhập
Nếu chọn “Hủy” thì hệ thống sẽ quay trở lại màn hình trang chủ của hệ thống
Luồng sự kiện phát sinh/Kịch bản phát sinh
Không
Giao diện minh họa
Hình 3.15 Giao diện sau khi đăng xuất
3.4 UC1.4 Quản lý người dùng
trung bình
Trang 31tham gia hệ thống
Tiền điều kiện Người quản lý đăng nhập vào hệ thống
Người quản lý có thể chọn chức năng thêm mới, sửa, xóa người dùng
Chức năng thêm mới thông tin người dùng
Người quản lý chọn chức năng thêm mới thông tin người dùng
Hệ thống hiển thị form thêm mới có các thông tin chính như: Mã người dùng ,tên người dùng, mật khẩu, nhóm quyền Ở đây nhóm quyền sẽ được chọn, mãngười dùng, tên người dùng sẽ không được sửa, mật khẩu sẽ hiển thị mật khẩumặc định
Người quản lý chọn các nhóm quyền và ấn thêm mới
Hệ thống thêm mới dữ liệu người dùng vào cơ sở dữ liệu
Hệ thống thông báo thêm mới thành công và hiển thị ra danh sách người dùng
Chức năng sửa thông tin người dùng
- Người quản lý chọn chức năng sửa thông tin người dùng
- Người quản lý chọn người dùng cần chỉnh sửa thông tin
- Hệ thống hiển thị form thông tin của người dùng và yêu cầu sửa thông tin người
dùng đó
- Người quản lý chỉnh sửa thông tin cần thiết và chọn lưu
- Thông tin người dùng đó sẽ được hệ thống cập nhật vào trong cơ sở dữ liệu
- Hệ thống hiển thị danh sách người dùng
Chức năng xóa thông tin người dùng
- Người quản lý chọn chức năng xóa thông tin người dùng.
- Hệ thống sẽ hiển thị danh sách người dùng.
- Người quản lý sẽ chọn người dùng cần xóa và chọn “Xóa”.
Trang 32Hình 3.16 Giao diện quản lý người dùng
- Hệ thống sẽ hiển thị ra thông báo xác nhận việc xóa.
- Người quản lý xác nhận xóa và thông tin người dùng đó sẽ được xóa khỏi cơ sở
dữ liệu
- Hệ thống hiển thị danh sách người dùng
Luồng sự kiện phát sinh/Kịch bản phát sinh
Luồng A: Nhập sai điều kiện dữ liệu khi thực hiện
- Người quản lý nhập sai điều kiện dữ liệu, hệ thống thông báo lỗi tương ứng, yêu
cầu sửa lại và tiếp tục chức năng
Giao diện minh họa
Trang 33Hình 3.17 Giao diện thêm mới người dùng
Hình 3.18 Giao diện xóa người dùng
Trang 34Hình 3.19 Giao diện cập nhật người dùng
Hình 3.20 Sơ đồ lớp phân tích quản lý người dùng
Trang 35Hình 3.21 Sơ đồ trình tự chức năng quản lý người dùng
Trang 363.5 UC1.5 Quản lý danh mục quyên góp
Trung bình
Mô tả Cho phép Người quản lý tạo mới và chỉnh sửa các danh mục liên quan
nội dung quyên góp
Tiền điều kiện Người quản lý đăng nhập hệ thống và chọn sử dụng chức năng
Hậu điều
kiện
Thàn
h công
Thông tin danh mục được cập nhật vào hệ thống (nếu có)
Lỗi Trạng thái HT không thay đổi
Mã danh mục;
Tên danh mục
Chức năng thêm mới danh mục
Người quản lý chọn “Thêm mới”, HT hiển thị giao diện thêm mới danh mục
Người quản lý nhập thông tin danh mục theo yêu cầu như: Mã danh mục, Tên danhmục
Người quản lý chọn “thêm danh mục” để hoàn thành việc thêm mới
HT thêm mới dữ liệu danh mục vào cơ sở dữ liệu
HT thông báo thêm thành công và thông tin được cập nhật trên hệ thống
Chức năng chỉnh sửa danh muc
Người quản lý chọn chức năng sửa danh mục
Người quản lý chọn danh mục muốn chỉnh sửa có trong bảng danh sách danh mục
HT hiện thị các thông tin của danh mục
Người quản lý chỉnh sửa các thông tin cần thiết sau đó chọn cập nhật
Trang 37 Người quản lý chọn xác nhận cập nhật.
Thông tin danh mục được cập nhật trên hệ thống và thông báo chỉnh sửa thànhcông, hiện thị lại thông tin mới cập nhật
Chức năng xóa danh mục
Người quản lý chọn chức năng xóa danh mục
Hệ thống sẽ hiển thị danh sách danh mục
Người quản lý chọn danh mục muốn xóa vầ chọn ”Xóa”
Hệ thống hiển thị ra thông báo xác nhận việc xóa
Người quản lý xác nhận việc xóa danh mục và thông tin danh mục đó sẽ được xóakhỏi cơ sở dữ liệu
Hệ thống hiển thị danh sách danh mục
Chức năng tìm kiếm danh mục
Người quản lý có thể tìm kiếm theo Mã danh mục, Tên danh mục Nhập thông tin
và bấm chọn “Tìm kiếm”
HTt tìm các danh mục có thông tin khớp với thông tin nhập vào và hiển thị kết quảthành 1 danh sách
Luồng sự kiện phát sinh/Kịch bản phát sinh
Nhập sai điều kiện dữ liệu khi thực hiện sửa dữ liệu:
Hệ thống hiển thị lại chức năng với các cảnh báo ở dưới ô nhập dữ liệu tương ứng
Người dùng sửa lại dữ liệu và tiếp tục hệ thống
Giao diện minh họa
Trang 38Hình 3.22 Giao diện quản lý danh mục
Hình 3.23 Giao diện thêm mới danh mục
Trang 39Hình 3.24 Giao diện xóa danh mục
Hình 3.25 Giao diện tìm kiếm danh mục
Hình 3.26 Biểu đồ usecase quản lý danh mục quyên góp
Trang 40Hình 3.27 Sồ lớp phân tích quản lý danh mục quyên góp