TỔNG QUAN VỀ DỰ ÁN
Lý do chọn đề tài
Thư viện đóng vai trò quan trọng trong việc hỗ trợ học tập và giảng dạy tại Trường Đại học Kinh tế TPHCM và các trường đại học khác Đây là nơi cung cấp tri thức hiệu quả cho giảng viên và sinh viên, với việc lưu trữ, bổ sung và cập nhật thông tin, giáo trình, tài liệu tham khảo và tư liệu điện tử Thư viện không chỉ phục vụ cho hoạt động tìm kiếm tài liệu và nghiên cứu khoa học của sinh viên mà còn mở rộng điều kiện học tập về không gian và thời gian.
Thư viện trường Đại học Kinh tế TPHCM (UEH) trước đây chủ yếu hoạt động thủ công, với các công việc do con người thực hiện, trong khi việc ứng dụng công nghệ thông tin vào quản lý thư viện còn ở giai đoạn đầu và hạ tầng công nghệ chưa đồng bộ Tuy nhiên, cùng với sự phát triển của thư viện, nhu cầu của bạn đọc ngày càng tăng, đặc biệt là nhu cầu tìm kiếm tài liệu nghiên cứu, luận văn, luận án của nghiên cứu sinh, tiến sĩ và học viên cao học tại UEH, dẫn đến sự gia tăng nhu cầu sử dụng các dịch vụ như mượn và trả sách cũng như phòng học.
Với sự phát triển không ngừng của công nghệ thông tin, việc ứng dụng tin học hóa vào quản lý thư viện trở nên cần thiết hơn bao giờ hết Chúng tôi xin giới thiệu đề tài “Phân tích thiết kế hệ thống quản lý thư viện Đại học Kinh tế TPHCM”, nhằm xây dựng một hệ thống đáp ứng đầy đủ các chức năng cơ bản như quản trị hệ thống, quản lý sách, quản lý bạn đọc, quản lý mượn trả sách và phòng, cùng với khả năng báo cáo thống kê và tìm kiếm thông tin hiệu quả.
Giới thiệu về hệ thống thư viện UEH
Thư viện UEH hỗ trợ Hiệu trưởng trong việc quản lý và phát triển nguồn lực thông tin, cung cấp dịch vụ thông tin phục vụ cho các hoạt động đào tạo và nghiên cứu của Trường.
Thư viện có nhiệm vụ bổ sung và phát triển nguồn lực thông tin trong nước và quốc tế để phục vụ giảng dạy, học tập và nghiên cứu khoa học Thư viện thu nhận, lưu trữ và phổ biến các tài liệu như đề tài nghiên cứu, chương trình đào tạo, giáo trình, khóa luận, luận văn thạc sĩ và luận án tiến sĩ thông qua các hình thức tặng, biếu và trao đổi Để đáp ứng nhu cầu thông tin của bạn đọc, thư viện biên mục các sách đã bổ sung, xây dựng hệ thống tra cứu tự động và tổ chức các phòng đọc, phòng mượn Thư viện cũng tổ chức lớp tập huấn để hướng dẫn bạn đọc khai thác hiệu quả các nguồn thông tin và sản phẩm dịch vụ hiện có, đồng thời quản lý cán bộ và tài sản theo phân cấp của Hiệu trưởng Ngoài ra, thư viện thực hiện bảo quản, kiểm kê định kỳ vốn sách và thanh lý các tài liệu lạc hậu theo quy định Thư viện không ngừng mở rộng nguồn tài nguyên và nâng cao chất lượng dịch vụ để phục vụ cộng đồng UEH.
Mục tiêu của dự án
Mục tiêu của đề tài là áp dụng Công nghệ thông tin vào quản lý thư viện trường, thay thế hệ thống cũ để nâng cao hiệu quả hoạt động Việc này không chỉ giúp thư viện hoạt động tốt hơn mà còn hỗ trợ trường hoàn thành nhiệm vụ chính trị - xã hội trong thời đại công nghệ và tri thức Do đó, xây dựng dự án công nghệ thông tin cho thư viện là một nhiệm vụ cấp bách và lâu dài, cần được thực hiện tuần tự và đưa vào vận hành ngay để đạt được hiệu quả.
Ngoài ra yêu cầu của phần mềm quản lý thư viện mới là:
- Giao diện: Phải thân thiện, dễ sử dụng, đẹp.
- Tốc độ xử lý: phải nhanh, không để người dùng chờ quá lâu
- Khi thay đổi 1 chức năng thì không làm ảnh hưởng đến các chức năng khác.
- Có khả năng sao lưu & phục hồi CSDL khi có sự cố.
- Khả năng thay đổi chức năng & giao diện dễ dàng.
Xác định phạm vi dự án
Nhóm chúng tôi sẽ phát triển phần mềm quản lý thư viện cho trường Đại Học Kinh Tế thành phố Hồ Chí Minh trong một khoảng thời gian có hạn.
Phạm vi khảo sát: trường Đại Học Kinh Tế thành phố Hồ Chí Minh
Người dùng: Nhân viên quản lý thư viện
Tài liệu: quy chế quản lý thư viện
Xác định yêu cầu
Khảo sát hệ thống
- Phỏng vấn: nhóm đã tiến hành phỏng vấn với một nhân viên của thư viện UEH là chị Đặng Châu Thanh Hiền – Assistant System Library UEH.
Nghiên cứu sách bao gồm việc tìm hiểu các quy chế quản lý của thư viện, cũng như hướng dẫn chi tiết về thủ tục mượn, trả và gia hạn sách Bên cạnh đó, bài viết cũng đề cập đến quy trình mượn và trả phòng họp tại thư viện, giúp người dùng nắm rõ cách thức sử dụng dịch vụ một cách hiệu quả.
- Quan sát: Qui trình mượn, trả và gia hạn sách của thư viện.
Nội dung phỏng vấn giới hạn về các vấn đề:
Tổng quan về quy trình nghiệp vụ của library
Các vấn đề còn hạn chế của hệ thống hiện tại
Các hướng dự định phát triển của hệ thống trong tương lai
Phân tích hiện trạng
2.2.1 Chức năng của thư viện
Thư viện trường Đại Học Kinh Tế thành phố Hồ Chí Minh đóng vai trò quan trọng trong việc hỗ trợ giảng dạy, học tập và nghiên cứu khoa học Thư viện cung cấp các tài liệu cần thiết để phục vụ cho hoạt động đào tạo và ứng dụng tiến bộ khoa học công nghệ, góp phần nâng cao chất lượng quản lý của nhà trường.
2.2.2 Nhiệm vụ của thư viện
Bổ sung và phát triển nguồn lực thông tin trong nước và quốc tế nhằm đáp ứng nhu cầu giảng dạy, học tập và nghiên cứu khoa học Đồng thời, thu nhận, lưu trữ và phổ biến các tài liệu của Trường để phục vụ tốt nhất cho người học và giảng viên.
Tham mưu cho lãnh đạo Nhà trường trong việc xây dựng quy hoạch và kế hoạch hoạt động dài hạn cũng như ngắn hạn của thư viện; đồng thời tổ chức và điều phối toàn bộ hệ thống thông tin, tư liệu và thư viện trong trường học.
Tổ chức và quản lý cán bộ, tài sản theo phân cấp của hiệu trưởng là nhiệm vụ quan trọng Cần bảo quản và kiểm kê định kỳ vốn tài liệu, cơ sở vật chất kỹ thuật, cũng như tài sản khác của thư viện Đồng thời, tiến hành thanh lọc các tài liệu lạc hậu, hư hỏng ra khỏi kho theo quy định để đảm bảo chất lượng tài liệu.
- Tổ chức hệ thống phòng đọc, phòng họp, môi trường học tập, cung cấp thông tin, tài liệu đáp ứng nhu cầu tin của bạn đọc trong toàn trường.
Nghiên cứu và ứng dụng các thành tựu khoa học công nghệ tiên tiến cùng với các tiêu chuẩn xử lý thông tin thư viện và tự động hóa là rất quan trọng trong công tác thư viện Việc áp dụng những công nghệ này không chỉ nâng cao hiệu quả quản lý thông tin mà còn cải thiện trải nghiệm của người dùng Từ đó, thư viện có thể phục vụ cộng đồng tốt hơn và đáp ứng nhanh chóng nhu cầu thông tin ngày càng tăng của độc giả.
Mở rộng hợp tác với các cơ quan và tổ chức trong nước và quốc tế trong lĩnh vực thông tin thư viện là cần thiết để thúc đẩy sự nghiệp thư viện Tham gia các hoạt động chuyên môn với hệ thống thư viện trên toàn quốc giúp nâng cao chất lượng dịch vụ Liên kết và hợp tác với các thư viện trong và ngoài nước sẽ tạo điều kiện thuận lợi cho việc bổ sung, trao đổi tài liệu và chia sẻ nguồn lực thông tin Đồng thời, tổ chức dịch vụ mượn liên thư viện và cung cấp thông tin qua mạng theo quy định pháp luật và quy định của Trường cũng là một phần quan trọng trong chiến lược phát triển này.
Đặc tả yêu cầu
2.3.1 Qui trình hoạt động của hệ thống.
Sau khi nhập sách về, thủ thư phải nhập lại các thông tin các đầu sách vào bảng tính Excel và cất giữ các chứng từ liên quan.
Thủ thư đánh mã cho từng cuốn sách và sắp xếp chúng vào vị trí lưu giữ 2.3.1.2 Quy trình mượn/trả/gia hạn sách.
Sinh viên, nghiên cứu sinh và học viên có thể mượn sách tại thư viện để đọc tại chỗ hoặc mang về Để mượn sách, học viên cần mang thẻ sinh viên đến quầy kiểm tra, tìm sách cần mượn và đưa sách ra quầy yêu cầu mượn Nhân viên thư viện sẽ yêu cầu thông tin cá nhân như mã số sinh viên và ghi chép vào bảng tính Excel trước khi trả lại sách và thẻ Giảng viên và cán bộ cũng có quyền mượn sách với quy trình tương tự, bao gồm việc ghi chép thông tin vào bảng tính Excel.
Tại thư viện, số lượng sách tối đa mà người dùng có thể mượn và thời gian mượn được quy định như sau: sinh viên, học viên cao học và nghiên cứu sinh có thể mượn tối đa 4 quyển sách trong thời gian 14 ngày Trong khi đó, giảng viên và cán bộ viên chức (CBVC) có quyền mượn tối đa 5 quyển sách với thời hạn 20 ngày.
Gia hạn sách trực tuyến:
Để gia hạn sách, bạn đọc cần mang sách đến quầy và cung cấp thông tin cá nhân Sau khi kiểm tra đầy đủ và đáp ứng các điều kiện, thủ thư sẽ trả lại sách cho bạn đọc.
Sau khi hoàn thành việc đọc sách, bạn đọc cần phải trả lại đúng sách đã mượn Thủ thư sẽ sử dụng thông tin cá nhân của bạn đọc, bao gồm Khoa, lớp, mã sinh viên đối với học viên và mã giảng viên đối với giảng viên, để ghi chép thông tin mượn và trả sách.
2.3.1.3 Quy định về việc sách mượn bị mất, rách:
Bạn đọc phải thanh toán ứng với giá tiền của sách.
2.3.1.4 Quy trình về việc đặt phòng họp Đối với sinh viên, nghiên cứu sinh, sau đại học,… gọi chung là học viên: học viên có thể mượn sách đọc tại chỗ hoặc mượn về Khi cần đặt phòng họp thì học viên mang thẻ sinh viên tại quầy kiểm tra của nhân viên thư viện, sau đó nhân viên thư viện kiểm tra tình trạng về phòng họp trên bảng tính Excel Nếu còn đủ thì tiến hành đặt phòng họp, sinh viên phải đưa thẻ cho nhân viên thư viện giữ và nhân viên thư viện cập nhật tình trạng sử dụng phòng vào Excel. Đối với giảng viên, cán bộ: Giảng viên, cán bộ cũng được đặt phòng họp riêng Khi đặt phòng thì thủ thư cũng giữ CMND hoặc thẻ giảng viên và ghi chép lại đầy đủ thông tin vào bảng tính Excel.
2.3.1.5 Quy trình về việc trả phòng họp
Sau khi sử dụng phòng họp, bạn đọc cần hoàn trả sách đã mượn Thủ thư sẽ sử dụng thông tin cá nhân của bạn đọc, bao gồm khoa, lớp, mã sinh viên cho học viên và mã giảng viên cho giảng viên.
Thủ thư tiến hành trả thẻ và cập nhật lại tình trạng sử dụng phòng họp.
2.3.1.6 Quy trình thống kê, báo cáo
Thư viện thực hiện thống kê theo định kỳ vào khoảng thời gian cố định Họ sử dụng bảng tính Excel để thống kê:
Thống kê sách nhập mới
Thống kê sách đang mượn đọc
Thống kê sách còn trong thư viện
Thống kê sách thanh lý
Thống kê bạn đọc vi phạm
2.3.1.7 Xử lý sách thanh lý
Các loại sách nhập về thường sẽ được thanh lý sau 5 năm Tuy nhiên, chỉ những cuốn sách hỏng nặng hoặc không còn được sử dụng mới được tiến hành thanh lý.
2.3.2 Ưu và nhược điểm của hệ thống hiện tại
Không tốn kém cho việc đầu tư cơ sở vật chất.
Nhân viên thư viện chỉ cần hiểu biết một ít về tin học cũng có thể làm được
Thông tin chủ yếu được ghi nhận trên bảng tính excel chưa có một phần mềm quản lý để ghi nhận các toàn bộ thông tin cần thiết.
Quá trình tìm kiếm sách để mượn trong thư viện hiện nay vẫn phải thực hiện thủ công, dẫn đến việc tốn nhiều thời gian Hơn nữa, vào những thời điểm cao điểm như mùa ôn thi, khả năng đáp ứng nhu cầu của độc giả rất thấp do số lượng sách có hạn, trong khi nhu cầu của bạn đọc lại tăng cao.
Nhân viên tốn nhiều công sức cho việc thống kê sách, dễ sai xót trong quá trình thống kê sách
Một số công việc quan trọng còn làm thủ công, còn lại chỉ làm việc với bảng tính đơn giản, điều này là thiếu khoa học.
1 Tính năng đăng nhập cần có tính bảo mật cao, khi điền đầy đủ thông tin thì hệ thống sẽ chấp nhận cho thủ thư đăng nhập và ngược lại nếu các thông tin không chính xác thì hệ thống sẽ báo lỗi và yêu cầu nhập lại.
2 Cung cấp cho người dùng là thủ thư và admin thông tin về các đầu sách của một bạn đọc đang mượn và hạn phải trả, và các cuốn sách còn đang được mượn
3 Báo cáo& Thống kê số sách đang được mượn, sách hiện còn trong thư viện, sách mới nhập và sách thanh lý theo các tiêu chí về thời gian mà người dùng muốn Báo cáo& thống kê về bạn đọc vi phạm theo các tiêu chí về thời gian Ngoài ra còn báo cáo& thống kê về số người đã mượn phòng.
4 Hỗ trợ người dùng cập nhật các thông tin về sách, bạn đọc và cả người dùng.
5 Tích hợp chức năng tìm kiếm vào chức năng quản lý Sách giúp người dùng dễ dàng tìm kiếm và xử lý Sách.
6 Hỗ trợ người dùng có thể quản lý các thông tin về người mượn sách, sử dụng phòng họp.
7 Hỗ trợ người dùng để xử lý các yêu cầu về mượn và trả phòng họp Ngoài ra hệ thống còn hỗ trợ người dùng có thể quản lý tình trạng sử dụng phòng họp
8 Hỗ trợ quản lý các thông tin về bạn đọc dựa trên thẻ bạn đọc, thông tin phiếu mượn
9 Hỗ trợ chức năng quản trị chung hệ thống, trong đó Admin(người quản trị chung) có thể thay đổi thông tin hoặc thêm bớt các thủ thư.
10 Hỗ trợ tùy chỉnh tự động tắt đèn, máy lạnh trong thư viện.
2.3.4 Yêu cầu phi chức năng
Bạn có thể tra cứu thông tin sách trên mạng nội bộ của thư viện, nhưng việc mượn và trả sách cần thực hiện trực tiếp tại thư viện Thủ thư sẽ sử dụng hệ thống để cập nhật và quản lý quá trình mượn, trả và gia hạn sách.
Thông tin thống kê cần đảm bảo độ chính xác và tính khách quan Các hình thức phạt đối với người mượn sách quá hạn sẽ được ghi nhận và thông báo đến người mượn.
2.3.5 Tính khả thi của dự án
Về mặt thời gian: Ràng buộc của hệ thống về thời gian hoàn thành là 2 tháng.
Nhóm triển khai dự án gồm 6 thành viên đã hoàn thành công việc trong thời gian quy định Chúng tôi tin tưởng rằng với chuyên môn hiện có, nhóm có thể phát triển phần mềm quản lý thư viện hiệu quả.
Phân tích và thiết kế hệ thống
Các yêu cầu chức năng
Các chức năng nghiệp vụ của thư viện được mô tả dưới Hình 1 sau:
Hình 1 Sơ đồ phân cấp chức năng nghiệp vụ của hệ thống quản lý thư viện.
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ư.
Hệ thống quản lý sách giúp quản lý toàn bộ sách trong thư viện, cung cấp cho người dùng các chức năng như thêm, xóa và chỉnh sửa thông tin sách một cách hiệu quả.
Quản lý bạn đọc: hệ thống cho phép quản lý thông tin cá nhân của từng bạn đọc, thêm, xóa, chỉnh sửa thông tin của bạn đọc.
Quản lí mượn-trả sách: hệ thống cho phép quản lý việc mượn trả sách của người đọc, gia hạn sách,…
Hệ thống báo cáo và thống kê của thư viện cung cấp thông tin chi tiết về số lượng sách đang được mượn, sách còn lại trong kho, sách mới nhập và sách đã thanh lý Nó cũng theo dõi các bạn đọc vi phạm và số lượng người đã mượn phòng trong một khoảng thời gian nhất định, giúp người quản lý nắm bắt tình hình hoạt động của thư viện một cách hiệu quả.
Quản lý mượn phòng: hệ thống cho phép quản lý tình trạng sử dụng phòng và xử lý các yêu cầu mượn, trả phòng
Tìm kiếm thông tin: hệ thống cho phép tìm kiếm các thông tin về sách, độc giả và các phiên mượn sách.
Phân tích yêu cầu
3.2.1 Mô hình hóa chức năng
3.2.1.1 Biểu đồ Use case tổng quát Danh sách actor của hệ thống
1 Admin Có quyền tương tác với hệ thống, có quyền điều khiển cũng như kiểm soát mọi hoạt động của hệ thống
Hệ thống thực hiện các chức năng quan trọng như quản lý tài liệu, quản lý bạn đọc, quản lý mượn và trả sách, báo cáo thống kê, quản lý mượn phòng và hỗ trợ tìm kiếm thông tin hiệu quả.
Bảng 1: Danh sách actor của hệ thống Biểu đồ Usecase tổng quát
Biểu đồ Use case tổng quát của hệ thống được trình bày ở Hình 2 dưới đây sau:
Hình 2 Biểu đồ Use case tổng quát
3.2.1.2 Use case đăng nhập Đặc tả Use case “Đăng nhập” được trình bày ở dưới bảng 2 sau:
Tên Use Case Đăng nhập
Tác nhân chính Thủ thư, Admin
Post-Condition Đã đăng nhập thành công
Kích hoạt Người dùng chọn lệnh đăng nhập ở giao diện chính của hệ thống
1 Người dùng kích hoạt chức năng Đăng nhập
2 Hệ thống hiển thị form để nhập tên Tài Đăng nhập và Mật Mã, đồng thời cũng hiển thị các chức danh.
3 Người dùng nhập thông tin Tài Đăng nhập, Mật Mã và chức danh của người dùng.
4 Hệ thống thông báo Đăng nhập thành công và hiển thị Menu chính.
4a Hệ thống xác thực thông tin không chính xác và hiển thị thông báo.
4a.1 Người dùng chọn lệnh hủy đăng nhập
4a.2 Người dùng nhập lại thông tin
Use case tiếp tục ở bước 3
Bảng 2 Đặc tả Use case Đăng nhập
3.2.1.3 Phân rã Use case “ Quản trị hệ thống”.
Tác nhân “người dùng” của Use Case quản trị hệ thống là: Admin Hình 3 dưới đây mô tả chức năng của Quản trị hệ thống.
Biểu đồ Use case “Quản trị hệ thống” mô tả các chức năng quản lý hệ thống, trong đó đặc tả Use case “Quản trị người dùng” được trình bày chi tiết trong bảng dưới đây.
Name Quản trị người dùng
Description Tác nhân sử dụng use case để thêm, sửa, xóa thông tin người dùng
Trigger Admin click chọn “Quản trị hệ thống”
Condition(s) Admin đăng nhập hệ thống với quyền admin
Nếu thành công: thông tin người dùng được thêm mới, sửa hoặc xóa khỏi hệ thống
Nếu thất bại: hệ thống thông báo lỗi, không thể thêm mới, sửa hoặc xóa người dùng.
Basic Flow 1 Admin chọn chức năng Quản trị hệ thống
2 Admin chọn thêm, sửa hoặc xóa người dùng
Người dùng có thể Hủy bất cứ lúc nào
Admin sửa thông tin người dùng trong khi người dùng đang đăng nhập hệ thống, hệ thống sẽ báo lỗi và yêu cầu người dùng thoát khỏi hệ thống.
Bảng 3 Đặc tả Use case Quản trị người dùng b) Đặc tả Use case “Thêm người dùng” được trình bày ở dưới bảng 4 sau:
Use Case Name Thêm người dùng
Description Tác nhân sử dụng use case để thêm thông tin về người dùng mới
Trigger Admin click chọn “Thêm người dùng”
Pre-Condition(s) Admin đăng nhập hệ thống với quyền admin
Sử dụng chức năng Quản trị hệ thống
Nếu thành công: thông tin người dùng được thêm vào hệ thống Nếu thất bại: hệ thống báo lỗi, thông tin không được nhập vào cơ sở dữ liệu
Basic Flow 1 Admin chọn chức năng Thêm người dùng
2 Hệ thống hiển thị form thêm người dùng
5 Hệ thống kiểm tra tính hợp lệ của thông tin
6 Hệ thống lưu thông tin vào cơ sở dữ liệu6a Hệ thống hiển thị thông tin nhập bị lỗi
Exception Flow Kết thúc Use case
6a1 Admin muốn sửa lại thông tin lỗi
Use case tiếp tục ở bước 3
Người dùng có thể Hủy bất cứ lúc nào
Bảng 4 Đặc tả Use case Thêm người dùng c) Đặc tả Use case “Sửa thông tin người dùng” được trình bày ở dưới bảng 5 sau:
Use Case Name Sửa thông tin người dùng
Description Tác nhân sử dụng use case để sửa thông tin người dùng
Trigger Admin click chọn “Sửa thông tin người dùng”
Admin đăng nhập hệ thống với quyền admin
Sử dụng chức năng Quản trị hệ thống
Khi thông tin người dùng được cập nhật thành công, hệ thống sẽ ghi nhận và lưu trữ dữ liệu mới Ngược lại, nếu quá trình cập nhật thất bại, hệ thống sẽ thông báo lỗi và không thực hiện việc cập nhật thông tin.
Basic Flow 1 Admin chọn chức năng Sửa thông tin người dùng
2 Hệ thống hiển thị form thông tin người dùng đã có
3 Admin chọn bản ghi cần sửa
5 Admin chọn lưu thông tin
6 Hệ thống kiểm tra tính hợp lệ của thông tin
7 Hệ thống lưu thông tin vào cơ sở dữ liệu
7a Hệ thống hiển thị thông tin nhập bị lỗi
7a1 Admin muốn sửa lại thông tin lỗi
Use case tiếp tục ở bước 4
Người dùng có thể Hủy bất cứ lúc nào
Bảng 5 Đặc tả Use case Sửa thông tin người dùng d) Đặc tả Use case “Xóa người dùng” được trình bày ở dưới bảng 6 sau:
Use Case Name Xóa người dùng
Description Tác nhân sử dụng use case để xóa người dùng khỏi hệ thống
Trigger Admin click chọn “Xóa người dùng”
Admin đăng nhập hệ thống với quyền admin
Sử dụng chức năng Quản trị hệ thống
Nếu thành công: người dùng bị xóa khỏi hệ thống Nếu thất bại: hệ thống trả về thông báo lỗi, người dùng không bị xóa khỏi hệ thống
Basic Flow 1 Admin chọn chức năng Xóa người dùng
2 Hệ thống hiển thị form chứa danh sách người dùng
3 Admin chọn người dùng cần xóa và click vào nút xóa
4 Hệ thống yêu cầu admin xác nhận lại
6 Hệ thống xác nhận và thực hiện xóa người dùng đó
Exception Flow 5a Admin chọn Không đồng ý
6a Hệ thống xác nhận không xóa người dùng đó
Người dùng có thể Hủy bất cứ lúc nào
6b Hệ thống hiển thị lỗi trong quá trình xử lý
Bảng 6 Đặc tả Use case Xóa người dùng e) Đặc tả Use case “Quản trị phân quyền” được trình bày ở dưới bảng
Use Case Name Quản trị phân quyền
Description Tác nhân sử dụng use case để phân quyền cho người dùng
Trigger Admin click chọn “Phân quyền người dùng”
Admin đăng nhập hệ thống với quyền admin
Sử dụng chức năng Quản trị hệ thống
Nếu thành công: thông tin về quyền hạn đối với người dùng đó được lưu vào hệ thống
Nếu thất bại: hệ thống thông báo lỗi
Basic Flow 1 Admin chọn chức năng Phân quyền người dùng
2 Hệ thống hiển thị form phân quyền
3 Admin chọn người dùng và phân quyền cho người dùng đó
4 Admin click vào Xác nhận
5 Hệ thống xác nhận tính hợp lệ và lưu thông tin
Exception Flow 5b Hệ thống hiển thị thông tin nhập bị lỗi
5b1 Admin muốn sửa lại thông tin lỗi
Use case tiếp tục ở bước 3
Người dùng có thể Hủy bất cứ lúc nào
Bảng 7 Đặc tả Use case Quản trị phân quyền
3.2.1.4 Phân rã Use case “Quản lý Sách”
Tác nhân “người dùng” của hệ thống là Thủ thư và Admin Hình 4 dưới đây mô tả chức năng nghiệp vụ của Use case “Quản lý Sách”
Hình 4 Biểu đồ Use case “Quản lý sách” Đặc tả Use case “Quản lý Sách” a) Đặc tả Use case “Sửa thông tin sách” được trình bày ở dưới bảng 8 sau:
Use Case Name Sửa thông tin sách
Post-Condition(s) Người dùng đã đăng nhập vào hệ thống
Pre-Condition(s) Sách đã được chỉnh sửa thành công
Trigger Người dùng chọn Sửa thông tin trên chức năng Quản lý sách
Basic Flow 1 Người dùng chọn Sửa thông tin sách
2 Hệ thống hiển thị thanh tìm kiếm hoặc danh sách của các loại sách ở dưới thanh tìm kiếm
3 Người dùng nhập mã sách hoặc các thông tin liên quan đến sách vào thanh tìm kiếm
4 Hệ thống hiện ra danh sách những tên sách có liên quan đến tên tìm kiếm.
6 Người dùng nhập thông tin cần chỉnh sửa của sách rồi chọn Cập Nhật.
7 Hệ thống kiểm tra thông tin và lưu vào CSDL.
8 Hệ thống thông báo chỉnh sửa thông tin thành công và hiển thị thông tin sách mới cập nhật.
3a Người dùng chọn một trong số những danh sách sách đã hiện ra
Use case tiếp tục bước 6.
8a Hệ thống báo thông tin nhập vào không hợp lệ 8a.1 Người dùng chọn hủy
8a.2 Người dùng chỉnh sửa sách
Use case quay lại bước 6
Bảng 8 Đặc tả Use case Sửa thông tin Sách b) Đặc tả Use case “Thêm Sách” được trình bày ở dưới bảng 9 sau:
Use Case Name Thêm Sách
Pre-Condition Người dùng đã đăng nhập vào hệ thống
Post-Condition Đã thêm được Sách
Trigger Người dùng chọn Thêm trên chức năng Quản lý Sách
Basic flow 1 Người dùng chọn Thêm Sách
2 Hệ thống hiển thị giao diện thêm Sách
3 Người dùng nhập thông tin Mã Sách, Tên Sách, Tên tác giả, Loại sách, Nhà xuất bản, Năm xuất bản, Số lượng(*), chọn dạng Sách và chọn Thêm
4 Hệ thống kiểm tra thông tin.
5 Hệ thống lưu vào cơ sở dữ liệu
6 Hệ thống thông báo Thêm sách thành công hiển thị thông tin sách ở danh sách Sách
Exception flow 6a Hệ thống thông báo Mã Sách bị trùng.
6a.1 Hệ thống yêu cầu nhập lại Mã Sách.
6a.2 Thủ thư nhập lại Mã sách
Use case tiếp tục ở bước 5
Bảng 9 Đặc tả Use case Thêm Sách c) Đặc tả Use case “Xóa Sách” được trình bày ở dưới bảng 10 sau:
Use Case Name Xóa Sách
Người dùng đã đăng nhập vào hệ thống
Post-Condition Đã xóa Sách
Kích hoạt Người dùng chọn Thêm trên chức năng Quản lý Sách
Basic Flow 1 Người dùng chọn Xóa Sách
2 Hệ thống hiển thị thanh tìm kiếm hoặc danh sách của các loại Sách ở dưới thanh tìm kiếm
3 Người dùng nhập Mã Sách muốn xóa
4 Hệ thống hiện ra Sách.
5 Người dùng chọn lệnh Xóa sách.
6 Hệ thống xác nhận và xóa sách đó ra khỏi hệ thống
Alternative flow 3.a Người dùng chọn một trong số những danh sách sách đã hiện ra.
Use case tiếp tục ở bước 5
Exception flow 4a Hệ thống thông báo không tìm thấy sách
4a.1 Người dùng thoát chọn lệnh hủy bỏ xóa sách
4a.2 Người dùng nhập lại Mã sách
Use case tiếp tục ở bước 4
Bảng 10 Đặc tả Use case Xóa Sách
3.2.1.5 Phân rã Use case “Quản lý bạn đọc”
Biểu đồ Use case “Quản lý bạn đọc” được mô tả chi tiết trong bảng 11 dưới đây.
Use Case Name Quản lý bạn đọc
Description Tác nhân sử dụng use case để thêm, sửa, xóa thông tin bạn đọc
Trigger Người dùng click chọn “Quản lý bạn đọc”
Người dùng đăng nhập hệ thống
Nếu thành công: thông tin bạn đọc được thêm mới, sửa hoặc xóa khỏi hệ thống
Nếu thất bại: hệ thống thông báo lỗi, không thể thêm mới, sửa hoặc xóa người dùng.
Basic Flow 1 Người dùng chọn chức năng Quản lý bạn đọc
2 Người dùng chọn thêm, sửa hoặc xóa bạn đọc
Exception Flow Người dùng có thể Hủy bất cứ lúc nào
Bảng 11 Đặc tả Use case Quản lý bạn đọc b) Đặc tả Use case “Thêm bạn đọc” được trình bày ở dưới bảng 12 sau:
Use Case Name Thêm bạn đọc
Description Tác nhân sử dụng use case để thêm thông tin về bạn đọc mới
Trigger Người dùng click chọn “Thêm bạn đọc”
Pre-Condition(s) Người dùng đăng nhập hệ thống
Sử dụng chức năng Quản lý bạn đọc Post-
Khi người dùng chọn chức năng Thêm bạn đọc, nếu thành công, thông tin sẽ được thêm vào hệ thống Ngược lại, nếu thất bại, hệ thống sẽ báo lỗi và thông tin sẽ không được nhập vào cơ sở dữ liệu.
2 Hệ thống hiển thị form thêm bạn đọc
3 Người dùng nhập thông tin
5 Hệ thống kiểm tra tính hợp lệ của thông tin
6 Hệ thống lưu thông tin vào cơ sở dữ liệu
6a Hệ thống hiển thị thông tin nhập bị lỗi
6b Người dùng muốn sửa lại thông tin lỗi
Use case tiếp tục ở bước 3
Người dùng có thể Hủy bất cứ lúc nào
Bảng 12 Đặc tả Use case Thêm bạn đọc c) Đặc tả Use case Sửa thông tin bạn đọc được trình bày ở dưới bảng 13 sau:
Use Case Name Sửa thông tin bạn đọc
Description Tác nhân sử dụng use case để sửa thông tin bạn đọc
Trigger Người dùng click chọn “Sửa thông tin bạn đọc”
Pre-Condition(s) Người dùng đăng nhập hệ thống
Sử dụng chức năng Quản lý bạn đọc Post-
Nếu thông tin được cập nhật thành công, hệ thống sẽ lưu lại dữ liệu bạn đã nhập Ngược lại, nếu có lỗi xảy ra, hệ thống sẽ thông báo rằng việc cập nhật thông tin không thành công.
Basic Flow 1 Người dùng chọn chức năng Sửa thông tin bạn đọc
2 Hệ thống hiển thị danh sách thông tin bạn đọc đã có
3 Người dùng chọn bản ghi cần sửa
4 Người dùng sửa thông tin
5 Người dùng chọn lưu thông tin
6 Hệ thống kiểm tra tính hợp lệ của thông tin
7 Hệ thống lưu thông tin vào cơ sở dữ liệu
7a Hệ thống hiển thị thông tin nhập bị lỗi
7b Người dùng muốn sửa lại thông tin lỗi
Use case tiếp tục ở bước 4
Người dùng có thể Hủy bất cứ lúc nào
Bảng 13 Đặc tả Use case Sửa thông tin bạn đọc
4 Đặc tả Use case “Xóa bạn đọc” được trình bày ở dưới bảng 14 sau:
Use Case Name Xóa bạn đọc
Description Tác nhân sử dụng use case để xóa bạn đọc khỏi hệ thống
Trigger Người dùng click chọn “Xóa bạn đọc”
Pre-Condition(s) Người dùng đăng nhập hệ thống
Sử dụng chức năng Quản lý bạn đọc Post-
Nếu thành công: bạn đọc bị xóa khỏi hệ thống Nếu thất bại: hệ thống trả về thông báo lỗi, bạn đọc không bị xóa khỏi hệ thống
Basic Flow 1 Người dùng chọn chức năng Xóa bạn đọc
2 Hệ thống hiển thị danh sách bạn đọc
3 Người dùng chọn bạn đọc cần xóa và click vào nút xóa
4 Hệ thống yêu cầu người dùng xác nhận lại
6 Hệ thống xác nhận và thực hiện xóa bạn đọc đó Exception Flow 5a Người dùng chọn Không đồng ý
6a Hệ thống xác nhận không xóa bạn đọc đó
6b Hệ thống hiển thị lỗi trong quá trình xử lý
Người dùng có thể Hủy bất cứ lúc nào
Bảng 14 Đặc tả Use case Xóa thông tin bạn đọc
3.2.1.6 Phân rã Use case “Quản lý mượn trả Sách”
Tác nhân “người dùng” của Use Case quản lý mượn trả sách là:Thủ thư và Admin.Hình 6 dưới đây mô tả chức năng của Quản trị hệ thống.
Biểu đồ Use case "Quản lý mượn trả sách" thể hiện quy trình quản lý việc mượn và trả sách Đặc tả Use case "Xử lý yêu cầu mượn" được mô tả chi tiết trong bảng 15 dưới đây.
Use Case Name Xử lý yêu cầu mượn
Description Thủ thư chọn chức năng Xử lý yêu cầu mượn sách khi nhận được yêu cầu mượn sách của độc giả
Trigger Thủ thư nhận được yêu cầu mượn sách của độc giả
Condition(s): Thủ thư đăng nhập thành công vào hệ thống
Thủ thư chọn chức năng Quản lý Mượn/Trả/Gia hạn sách
Condition(s): Lưu thành công thông tin Mượn trả sách của độc giả vào CSDL
Basic Flow 1 Thủ thư chọn Xử lý yêu cầu mượn
2 Hệ thống hiển thị giao diện gồm thông tin bạn đọc,thông tin sách, nút chọn Mượn, nút chọn Xem thông tin, nút chọn Hủy,
3 Thủ thư thực hiện nhập mã ID bạn đọc và chọn Xem thông tin
4 Hệ thống kiểm tra và hiển thị thông tin bạn đọc
5 Thủ thư nhập mã sách cần mượn và chọn Mượn
6 Hệ thống kiểm tra và hiển thị thông tin sách
7 Hệ thống tự động lưu thông tin sách, bạn đọc, ngày mượn, hạn trả vào Mượn trả sách và thông báo thành công
Exception Flow 4a Hệ thống truy xuất thông tin bạn đọc không thành công và gửi thông báo
6d Hệ thống không tìm ra thông tin sách và thông báo
Người dùng có thể Hủy bất cứ lúc nào
Bảng 15 Đặc tả Use case Xử lý yêu cầu mượn b) Đặc tả Usecase “Xử lý yêu cầu trả” được trình bày ở dưới bảng 16 sau:
Use Case Name Xử lý yêu cầu trả
Description Thủ thư chọn hoạt chức năng Xử lý yêu cầu trả khi nhận được yêu cầu trả sách của độc giả
Trigger Thủ thư nhận được yêu cầu trả sách của độc giả
Pre-Condition(s): Thủ thư đăng nhập thành công vào hệ thống
Thủ thư chọn chức năng Quản lý Mượn/Trả/Gia hạn sách
Post-Condition(s): Cập nhật thành công thông tin Mượn trả sách của độc giả vào
Basic Flow 1 Thủ thư chọn Xử lý yêu cầu trả sách
2 Hệ thống hiển thị giao diện gồm thông tin sách, phiên mượn sách, nút chọn Trả, nút chọn Hủy, nút chọn Tìm kiếm, nút chọn Báo cáo vi phạm
3 Thủ thư nhập mã ID bạn đọc và chọn Tìm kiếm
4 Hệ thống tự động truy xuất và hiển thị thông tin các phiên Mượn trả sách đang diễn ra của bạn đọc
5 Thủ thư chọn phiên Mượn trả sách cần trả
6 Thủ thư nhập ngày trả vào khung Ngày trả và chọn nút Trả
7 Hệ thống tự động cập nhật ngày trả vào Mượn trả sách, thực hiện đối chiếu thời gian trả và thông báo trả thành công
Flow 7b Hệ thống hiển thị thông báo thành công và thông tin trễ hạn
Thủ thư thực hiện việc chọn nút Báo cáo vi phạm, và hệ thống sẽ tự động lưu thông tin về các phiên mượn trễ hạn vào danh sách vi phạm, đồng thời thông báo rằng Báo cáo đã thành công.
Exception Flow 4a Hệ thống truy xuất thông tin không thành công và gửi thông báo
Người dùng có thể Hủy bất cứ lúc nào
Bảng 16 Đặc tả Use case Xử lý yêu cầu trả c) Đặc tả Usecase “Xử lý yêu cầu gia hạn” được trình bày ở dưới bảng 17 sau:
Use Case Name Xử lý yêu cầu gia hạn
Description Thủ thư chọn chức năng Xử lý yêu cầu gia hạn khi nhận được yêu cầu gia hạn sách của độc giả
Trigger Thủ thư nhận được yêu cầu gia hạn sách của độc giả
Condition(s): Thủ thư đăng nhập thành công vào hệ thống
Thủ thư chọn chức năng Quản lý Mượn/Trả/Gia hạn sách
Condition(s): Cập nhật thành công thông tin phiên mượn sách của độc giả vào
Basic Flow 1 Thủ thư chọn Xử lý yêu cầu gia hạn
2 Hệ thống hiển thị giao diện gồm thông tin Mượn trả sách, nút chọn Gia hạn, nút chọn Hủy, nút chọn Tìm kiếm
3 Thủ thư nhập mã ID bạn đọc và chọn Tìm kiếm
4 Hệ thống tự động truy xuất và hiển thị thông tin các phiên Mượn trả sách đang diễn ra của bạn đọc
5 Thủ thư chọn phiên Mượn trả sách cần gia hạn và kiểm tra thông tin hạn trả
6 Thủ thư nhập lại hạn trả vào khung Hạn trả và chọn nút Gia hạn
7 Hệ thống tự động cập nhật lại hạn trả vào phiên Mượn trả sách và thông báo trả thành công
Exception Flow 4a Hệ thống truy xuất thông tin không thành công và gửi thông báo
Người dùng có thể Hủy bất cứ lúc nào
Bảng 17 Đặc tả Use case Xử lý yêu cầu gia hạn
3.2.1.7 Phân rã Use case “Báo cáo& Thống kê”
Tác nhân “người dùng” của Use Case Báo cáo&Thống kê là:Thủ thư vàAdmin Hình 7 dưới đây mô tả chức năng của Báo cáo&Thống kê.
Biểu đồ Use case “Báo cáo & Thống kê” mô tả chi tiết về chức năng báo cáo và thống kê trong hệ thống Đặc biệt, Use case “Báo cáo & Thống kê Sách đang được mượn” được trình bày rõ ràng trong bảng 18, cung cấp cái nhìn tổng quan về thông tin sách mượn và các số liệu liên quan.
Use Case Name Báo cáo& Thống kê Sách đang được mượn
Pre- Condition Người dùng đã đăng nhập vào hệ thống
Post-Condition Hệ thống hiển thị danh sách Sách còn lại và số lượng còn lại của mỗi loại tương ứng
Trigger Người dùng muốn Thống kê số sách đang được mượn
Basic Flow 1 Người dùng chọn thống kê sách
2 Hệ thống hiển thị các hình thức thống kê
3 Người dùng chọn Thống kê số sách đang được mượn
4 Hệ thống hiện danh sách Sách còn lại và số lượng ứng với mỗi loại còn lại của thư viện.
Exception flow 4a Hệ thống xảy ra lỗi trong quá trình xử lý
4a.1 Hệ thống thông báo lỗi
Bảng 18 mô tả Use case cho Báo cáo và Thống kê Sách đang được mượn Đặc tả Use case “Báo cáo và Thống kê Số người đã mượn Phòng” sẽ được trình bày chi tiết trong bảng 19 dưới đây.
Use Case Name Báo cáo& Thống kê Số người đã mượn Phòng
Pre- Condition Người dùng đã đăng nhập vào hệ thống
Post-Condition Hệ thống hiển thị danh sách những người đã mượn phòng họp
Trigger Người dùng muốn Thống kê số người mượn phòng họp của thư viện
Basic Flow 1 Người dùng chọn chức năng Thống kê số người đã mượn phòng.
2 Hệ thống hiển thị giao diện các hình thức thống kê.
3 Người dùng chọn Thống kê số người mượn phòng họp của thư viện và theo tiêu chí thời gian khác nhau theo tháng, năm,…
4 Hệ thống hiện danh sách những người đã mượn phòng họp.
Exception flow 4a Hệ thống xảy ra lỗi trong quá trình xử lý
4a.1 Hệ thống thông báo lỗi
Bảng 19 trình bày đặc tả Use case cho báo cáo và thống kê số người đã mượn sách Phòng c) sẽ trình bày chi tiết về Use case “Báo cáo & Thống kê Bạn đọc đang mượn Sách” trong bảng 20 dưới đây.
Use Case Name Báo cáo& Thống kê Bạn đọc đang mượn Sách
Pre- Condition Người dùng đã đăng nhập vào hệ thống
Post-Condition Hệ thống hiển thị danh sách bạn đọc đang mượn Sách
Trigger Người dùng muốn Thống kê số lượng bạn đọc đang mượn
Basic Flow 1 Người dùng chọn chức năng thống kê bạn đọc
2 Hệ thống hiển thị các hình thức thống kê
3 Người dùng chọn Thống kê bạn đọc đang mượn Sách
4 Hệ thống hiện danh sách những người đang mượn Sách.
Exception flow 4a Hệ thống xảy ra lỗi trong quá trình xử lý
4a.1 Hệ thống thông báo lỗi
Bảng 20 trình bày đặc tả use case về báo cáo và thống kê bạn đọc đang mượn sách Đặc tả use case “Báo cáo & Thống kê Sách còn trong thư viện” sẽ được trình bày chi tiết trong bảng 21 sau đây.
Use Case Name Báo cáo&Thống kê Sách còn trong thư viện
Pre- Condition Người dùng đã đăng nhập vào hệ thống
Post-Condition Hệ thống hiển thị danh sách, số lượng ứng với từng loại sách hiện còn ở trong thư viện
Trigger Người dùng muốn Thống kê số lượng sách còn trong thư viện
Basic Flow 1 Người dùng chọn thống kê sách
2 Hệ thống hiển thị các hình thức thống kê
3 Người dùng chọn chức năng Thống kê sách còn trong thư viện
4 Hệ thống hiện danh sách Sách và số lượng ứng với từng loại sách hiện còn trong thư viện
Exception flow 4a Hệ thống xảy ra lỗi trong quá trình xử lý
4a.1 Hệ thống thông báo lỗi
Bảng 21 trình bày đặc tả use case cho chức năng Báo cáo và Thống kê về sách còn trong thư viện Đặc tả use case "Báo cáo & Thống kê bạn đọc vi phạm" sẽ được mô tả chi tiết trong bảng 22 dưới đây.
Use Case Name Báo cáo&Thống kê bạn đọc vi phạm
Pre- Condition Người dùng đã đăng nhập vào hệ thống
Post-Condition Hệ thống hiển thị danh sách bạn đọc vi phạm
Trigger Người dùng muốn Thống kê, báo cáo bạn đọc vi phạm
Basic Flow 1 Người dùng chọn chức năng thống kê bạn đọc
2 Hệ thống hiển thị giao diện thống kê bạn đọc
3 Người dùng chọn chức năng Thống kê bạn đọc vi phạm.
4 Hệ thống hiện danh ra các hình thức thống kê
5 Người dùng chọn hình thức thống kê ứng ứng với tiêu chí thời gian khác nhau tháng, năm,…
6 Hệ thống hiện danh sách bạn đọc vi phạm và số lần vi phạm của bạn đọc trong khoảng thời gian đã lựa chọn.
Exception flow 6a Hệ thống xảy ra lỗi trong quá trình xử lý
6a.1 Hệ thống thông báo lỗi
Bảng 22 trình bày đặc tả Use case cho việc báo cáo và thống kê các vi phạm của bạn đọc Đặc tả Use case “Báo cáo & Thống kê Sách thanh lý” sẽ được trình bày chi tiết trong bảng 23 sau đây.
Use Case Name Báo cáo& Thống kê Sách thanh lý
Pre- Condition Người dùng đã đăng nhập vào hệ thống
Post-Condition Hệ thống hiển thị danh sách sách thanh lý
Trigger Người dùng muốn Thống kê, báo cáo sách thanh lý
Basic Flow 1 Người dùng chọn thống kê sách
2 Hệ thống hiển thị giao diện thống kê sách
3 Người dùng chọn chức năng Thống kê sách thanh lý
4 Hệ thống hiện danh ra các hình thức thống kê
5 Người dùng chọn hình thức thống kê ứng ứng với tiêu chí thời gian khác nhau tháng, năm,…
6 Hệ thống hiện danh sách và số lượng sách đã thanh lý trong khoảng thời gian đã lựa chọn.
Exception flow 6a Hệ thống xảy ra lỗi trong quá trình xử lý
6a.1 Hệ thống thông báo lỗi
Bảng 23.Đặc tả Use case Báo cáo&Thống kê Sách thanh lý g) Đặc tả Use case “Báo cáo& Thống kê Sách mới nhập” được trình bày ở dưới bảng 24 sau:
Use Case Name Báo cáo& Thống kê Sách mới nhập
Pre- Condition Người dùng đã đăng nhập vào hệ thống
Post-Condition Hệ thống hiển thị danh sách sách mới nhập
Trigger Người dùng muốn Thống kê, báo cáo sách mới nhập
Basic Flow 1 Người dùng chọn thống kê sách
2 Hệ thống hiển thị giao diện thống kê sách
3 Người dùng chọn chức năng Thống kê sách mới nhập
4 Hệ thống hiện các hình thức thống kê
5 Người dùng chọn hình thức thống kê sách mới ứng ứng với tiêu chí thời gian khác nhau tháng, năm,…
6 Hệ thống hiện danh sách và số lượng sách mới nhập trong khoảng thời gian đã lựa chọn.
Exception flow 6a Hệ thống xảy ra lỗi trong quá trình xử lý
6a.1 Hệ thống thông báo lỗi
Bảng 24.Đặc tả Use case Báo cáo& Thống kê Sách mới nhập
3.2.1.8 Phân rã Use case “Quản lý mượn- trả phòng”
Tác nhân “người dùng” của Use Case Quản lý mượn trả phòng là:Thủ thư và Admin Hình 8 dưới đây mô tả chức năng Quản lý mượn trả phòng
Biểu đồ Use case quản lý mượn-trả phòng thể hiện quy trình xử lý yêu cầu mượn Đặc tả Use case "Xử lý Yêu cầu Mượn" được trình bày chi tiết trong bảng 25.
Use Case Name Xử lý YC Mượn
Thiết kế hệ thống
Sơ đồ Lớp mức thiết kế được trình bày ở hình 64 dưới đây sau:
Hình 65 Sơ đồ lớp mức thiết kế Diễn giải các danh sách các lớp ở mức thiết kế:
Lớp Người dùng (NguoiDung) được diễn giải dưới Bảng 40 sau:
MaNgDung: Mã người dùng để HienThiNguoiDung(): Hiển thị thông đăng nhập vào hệ thống
MatKhau: Mật khẩu đăng nhập vào hệ thống
SDT: Số điện thoại liên lạc
ChucVu: Vai trò của người dùng trong hệ thống (thủ thư, admin) tin người dùng
KTTTDangNhap(): Kiểm tra thông tin đăng nhập của người dùng
DoiPass(): Thay đổi mât khẩu người dùng
Bảng 40 Diễn giải lớp “NguoiDung”
Lớp Admin (Admin) được diễn giải dưới Bảng 41 sau:
Kế thừa các thuộc tính từ lớp Người dùng
PhanQuyenNgDung(): Phân quyền admin hay thủ thư cho người dùng
ThemNguoiDung(): Thêm người dùng vào hệ thống
SuaNguoiDung(): Sửa thông tin người dùng
KiemTraNgDung(): Kiểm tra sự tồn tại thông tin người dùng trong hệ thống
Bảng 41 Diễn giải lớp “Admin”
Lớp Thủ thư (ThuThu) được diễn giải dưới Bảng 42 sau:
Kế thừa các thuộc tính từ lớp Người dùng
Kế thừa các phương thức từ lớp Người dùng
Bảng 42 Diễn giải lớp “ThuThu”
Lớp Bạn đọc (BanDoc) được diễn giải dưới Bảng 43 sau:
NamSinh: Năm sinh bạn đọc
GioiTinh: Giới tính bạn đọc
DiaChi: Địa chỉ của bạn đọc
ThemBD(): Thêm bạn đọc vào CSDL
SuaTTBD(): Sửa thông tin bạn đọc
HienThiBD(): Hiển thị thông tin bạn đọc
KiemTraTTBD(): Kiểm tra sự tồn tại của bạn đọc trong CSDL
Bảng 43 Diễn giải lớp “BanDoc”
Lớp Học viên (HocVien) được diễn giải dưới Bảng 44 sau:
Kế thừa các thuộc tính từ lớp Bạn đọc
Lop: Lớp của học viên
Khoa: Khóa của học viên
Kế thừa các phương thức từ lớp Bạn đọc
Bảng 44 Diễn giải lớp “HocVien”
Lớp Giảng viên (GiangVien) được diễn giải dưới Bảng 45 sau:
Kế thừa các thuộc tính từ lớp BanDoc
HocVi: Học vị của Giảng viên
ChucDanh: Chức danh của giảng viên đó trong khoa
Kế thừa các phương thức từ lớp Bạn đọc
Bảng 45 Diễn giải lớp “GiangVien”
Lớp lớp (Lop) được diễn giải dưới Bảng 46 sau:
+ HienThiLop(): Hiển thị thông tin lớp của học viên
Bảng 46 Diễn giải lớp “Lop”
Lớp Ngành học (NganhHoc) được diễn giải dưới Bảng 47 sau:
+ HienThiNganh(): Hiển thị thông tin ngành học của lớp
Bảng 47 Diễn giải lớp “NganhHoc”
Lớp Khoa (Khoa) được diễn giải dưới Bảng 48 sau:
+ HienThiKhoa(): Hiển thị thông tin khoa
Bảng 48 Diễn giải lớp “Khoa”
Lớp Xử lý vi phạm (XuLyViPham) được diễn giải dưới Bảng 49 sau:
MaPhat: Mã phạt vi phạm
MaBanDoc: Mã bạn đọc vi phạm
LyDoViPham: Lý do vi phạm
ThemBanDocVP(): Thêm bạn đọc bị vi phạm vào danh sách vi phạm
SuathongtinBDVP(): Sửa thông tin của bạn đọc (trễ hạn trả hay mất sách)
NgayXuLy: Ngày xử lý vi phạm
HinhThucXuLy: Hình thức xử lý bạn đọc vi phạm
XoaBanDocVP(): Xóa bạn đọc ra khỏi danh sách vi phạm
HienThiDSBanDocVP(): Hiển thị danh sách bạn đọc vi phạm
Bảng 49 Diễn giải lớp “XuLyViPham”
Lớp Mượn trả sách (MuonTraSach) được diễn giải dưới Bảng 50 sau:
MaMuonSach: Mã phiên mượn sách của bạn đọc
MaBanDoc: Mã bạn đọc mượn sách
MaSach: Mã sách được mượn
NgayTra: Ngày bạn đọc trả sách
ThemYCMuon(): Thêm phiên mượn sách của bạn đọc
SuaYCMuon(): Sửa thông tin phiên mượn sách của bạn đọc
HienThiYCMuon(): Hiển thị danh sách các phiên đang mượn của bạn đọc
KTTreHan(): Kiểm tra đọc giả có trễ hạn trả không
HTdsSachMuonBD(): Hiển thị danh sách các đầu sách đang được mượn bởi các bạn đọc
HTdsNgMuonMS(): Hiển thị danh sách các bạn đọc đang mượn sách
HienThiPM(): Hiển thị danh sách các phiên mượn liên quan tới sách hoặc bạn đọc
Bảng 50 Diễn giải lớp “MuonTraSach”
Lớp Sách (Sach) được diễn giải dưới Bảng 51 sau:
MaSach: Mã sách trong thư viện
ThemSach(): Thêm sách vào CSDL
MaDauSach: Mã đầu sách đại diện cho các cuốn sách giống nhau
MaChuDe: Mã chủ đề của đầu sách
MaNhaXuatBan: Mã các nhà xuất bản sách
MaVitri: Mã vị trí đựng sách
SuaThongTinSach(): Sửa thông tin sách
HienThiTTSach(): Hiển thị thông tin sách
TimKiemSach(): Tìm kiếm và hiển thị danh sách các sách liên quan
Bảng 51 Diễn giải lớp “Sach”
Lớp Sách thanh lý (SachThanhLy) được diễn giải dưới Bảng 52 sau:
MaThanhLy: Mã thanh lý sách
MaSach: Mã sách được thanh lý
LyDoThanhLy: Lý do thanh lý sách
NgayThanhLy: Ngày thanh lý sách
HienThiDS(): Hiển thị danh sách các cuốn sách được thanh lý
Bảng 52 Diễn giải lớp “SachThanhLy”
Lớp Vị trí (ViTri) được diễn giải dưới Bảng 53 sau:
MaViTri: Mã vị trí chứa sách
TenViTri: Tên các vị trí chứa sách
TinhTrang: Tình trạng các vị trí
ThemVT(): Thêm vị trí chứa sách vào CSDL
SuaVT(): Sửa thông tin vị trí
HienThiVT(): Hiển thị vị trí chứa sách cần mượn
Bảng 53 Diễn giải lớp “ViTri”
Lớp Đầu sách (DauSach) được diễn giải dưới Bảng 54 sau:
MaDS: Mã đầu sách đại diện cho các cuốn sách giống nhau
SoLuong: Số lượng các đầu sách trong thư viện
ThemDSach(): Thêm đầu sách vào CSDL
SuaDSach(): Sửa thông tin đầu sách
HienThidsDSach(): Hiển thị danh sách các đầu sách
Bảng 54 Diễn giải lớp “DauSach”
Lớp Nhà xuất bản (NhaXuatBan) được diễn giải dưới Bảng 55 sau:
MaXNB: Mã các nhà xuất bản
TenNXB: Tên các nhà xuất bản
ThemNXB(): Thêm nhà xuất bản vào CSDL
SuaNXB(): Sửa thông tin nhà xuất bản
XoaNXB(): Xóa nhà xuất bản
HienThiNXB(): Hiển thị nhà xuất bản của sách
Bảng 55 Diễn giải lớp “NhaXuatBan”
Lớp Tác giả (TacGia) được diễn giải dưới Bảng 56 sau:
MaTG: Mã các tác giả
ThemTacGia(): Thêm tác giả vào CSDL
SuaTacGia(): Sửa thông tin tác giả
TenTG: Tên các tác giả
HienThiTacGia (): Hiển thị tác giả của sách
Bảng 56 Diễn giải lớp “TacGia”
Lớp Chủ đề (ChuDe) được diễn giải dưới Bảng 57 sau:
MaChuDe: Mã các chủ đề
ThemChuDe(): Thêm chủ đề vào CSDL
SuaChuDe(): Sửa thông tin chủ đề
HienThiChuDe(): Hiển thị chủ đề của sách
Bảng 57 Diễn giải lớp “ChuDe”
Lớp Phiếu nhập (PhieuNhap) được diễn giải dưới Bảng 58 sau:
MaPhieuNhap: Mã các phiếu nhập sách từ các nhà cung cấp
MaDauSach: Mã đầu sách nhập từ các nhà cung cấp
MaNhaCC: Mã nhà cung cấp sách
SoLuongNhap: Số lượng nhập của mỗi đầu sách
ThemPhieuNhap(): Thêm phiếu nhập mới sách vào CSDL
SuaPhieuNhap(): Sửa thông tin các phiếu nhập
HienThiDSPhieuNhap(): Hiển thị danh sách các phiếu nhập (nhằm mục đích thống kê)
Bảng 58 Diễn giải lớp “PhieuNhap”
Lớp Nhà cung cấp (NhaCungCap) được diễn giải dưới Bảng 59 sau:
MaNhaCC: Mã các nhà cung cấp
TenNhaCC: Tên các nhà cung cấp
DiaChi: Địa chỉ các nhà cung cấp
ThemNhaCC(): Thêm nhà cung cấp vào CSDL
SuaNhaCC(): Sửa thông tin nhà cung cấp
XoaNhaCC(): Xóa nhà cung cấp
HienThiNhaCC(): Hiển thị thông tin nhà cung cấp
Bảng 59 Diễn giải lớp “NhaCungCap”
Lớp Mượn trả phòng (MuonTraPhong) được diễn giải dưới Bảng 60 sau:
MaMP: Mã đặt mượn phòng của bạn đọc
MaBanDoc: Mã bạn đọc đặt mượn phòng
MaPh: Mã phòng được đặt mượn
GioTra: Giờ bạn đọc trả phòng
MaNgDung: Mã thủ thư duyệt yêu cầu đặt phòng
TrangThai: Trạng thái yêu cầu đặt mượn phòng (chờ duyệt, chờ nhận phòng, đã
ThemYCMuonPhong(): Thêm yêu cầu đặt phòng của bạn đọc
HienThiTTMuonPhong(): Hiển thị thông tin yêu cầu mượn phòng của bạn đọc
HienThiDSMuonPhong(): Hiển thị danh sách các yêu cầu đặt phòng đang chờ duyệt
CapNhatTrangThai(): Cập nhật trạng thái của yêu cầu mượn phòng
XoaLichDat(): Xóa lịch đặt phòng đã duyệt của bạn đọc
ThongKeTheoP(): Hiển thị danh sách các lịch đặt mượn của các bạn đọc theo phòng (nhằm mục đích thống kê mượn phòng)
KTLichSuMuon(): Hiển thị lịch sử mượn phòng của bạn đọc theo ngày (phục vụ cho việc duyệt yêu cầu đặt mượn) nhận, đã trả)
Bảng 60 Diễn giải lớp “MuonTraPhong”
Lớp Phòng (Phong) được diễn giải dưới Bảng 61 sau:
SucChua: Sức chứa của phòng họp
HienThiPhong(): Hiển thị thông tin phòng họp theo yêu cầu mượn
Bảng 61 Diễn giải lớp “Phong”
Lớp Loại phòng (LoaiPhong) được diễn giải dưới Bảng 62 sau:
MaLPhong: Mã loại phòng họp
TenLPhong: Tên loại phòng họp
HienThiLPhong(): Hiển thị thông tin loại phòng của phòng họp
Bảng 62 Diễn giải lớp “LoaiPhong”
3.3.2.1 Sơ đồ cơ sở dữ liệu mức vật lý
Sơ đồ cơ sở dữ liệu ở mức vật lý thể hiện các tệp dữ liệu và tệp chỉ mục sẽ được truy cập vào bộ nhớ máy tính, như được trình bày trong hình 66 dưới đây.
Hình 66 Mô hình cơ sở dữ liệu mức vật lý
3.3.2.2 Mô tả cơ sở dữ liệu
3.3.2.2.1 Mô tả các quan hệ
Quan hệ NguoiDung: Mỗi người dùng được xác định duy nhất bởi MaNguoiDung và bao gồm các thuộc tính: HovaTen, NgaySinh, GioiTinh, Email, SĐT, SoNha, Duong, Quan, MaQuyenHan
NguoiDung (MaNguoiDung, HovaTen, NgaySinh, GioiTinh, Email,SĐT, SoNha, Duong, Quan, MaQuyenHan)
Quan hệ QuyenHan: Mỗi một quyền hạn được xác định duy nhất bởi
MaQuyenHan và bao gồm cả thuộc tính TenQuyenHan.
Quan hệ DauSach: Mỗi một đầu sách được xác định duy nhất bởi MaDauSach, và bao gồm các thuộc tính: TenDauSach, TongSoLuong, SoLuongCon, MaNhaXB, MaChuDe.
DauSach(MaDauSach, TenDauSach, TongSoLuong, SoLuongCon, MaNhaXB,
Quan hệ NhaXuatBan: Mỗi một nhà xuất bản được xác định duy nhất bởi
MaNhaXB, và bao gồm cả thuộc tính TenNhaXB.
Quan hệ ChuDe: Mỗi một chủ đề được xác định duy nhất bởi MaChuDe, và bao gồm cả thuộc tính TenChuDe.
Quan hệ TacGia: Mỗi một tác giả được xác định duy nhất bởi MaTacGia, và bao gồm cả các thuộc tính TenTacGia và ghichu
Quan hệ Vitri: Mỗi một vị trí được xác định duy nhất bởi MaVitri, và bao gồm cả thuộc tính TenVitri.
Quan hệ NhaCungCap: Mỗi một nhà cung cấp được xác định duy nhất bởi
MaNhaCC, và bao gồm cả các thuộc tính: TenNhaCC, SĐT, Email ,So, Duong, Quan, Tinh.
NhaCungCap (MaNhaCC ,TenNhaCC, SĐT, Email ,So, Duong, Quan, Tinh)
Quan hệ Sach: Mỗi một cuốn sách được xác định duy nhất bởi MaSach, và bao gồm các thuộc tính: TenSach, MaDauSach, MaViTri.
Sach (MaSach, TenSach, MaDauSach, MaViTri)
Quan hệ SachThanhLy: Mỗi một cuốn sách bị thanh lý được xác định duy nhất bởi MaThanhLy, và bao gồm các thuộc tính: LyDoThanhLy ,NgayThanhLy,
SachThanhLy (MaThanhLy ,LyDoThanhLy ,NgayThanhLy, MaSachThanhLy)
Mỗi học viên trong hệ thống được xác định duy nhất bởi mã bạn đọc (MaBanDoc) và có các thuộc tính quan trọng như họ và tên (HovaTen), số điện thoại (SĐT), khoa (Khoa), giới tính (GioiTinh), ngày sinh (NgaySinh), email (Email), số nhà (SoNha), đường (Duong) và quận (Quan).
HocVien (MaBanDoc, HovaTen ,SĐT, Khoa,GioiTinh, NgaySinh ,Email ,SoNha, Duong, Quan)
Quan hệ GiangVien: Mỗi một giảng viên sẽ được xác định duy nhất bởi
MaBanDoc, và bao gồm các thuộc tính: HovaTen ,SĐT ,GioiTinh, NgaySinh, HocVi ,ChucDanh , Email , SoNha, Duong, Quan, MaKhoa.
GiangVien (MaBanDoc, HovaTen ,SĐT ,GioiTinh, NgaySinh, HocVi
,ChucDanh , Email , SoNha, Duong, Quan, MaKhoa).
Quan hệ Khoa: Mỗi Khoa sẽ được xác định duy nhất bởi MaKhoa, và bao gồm cả thuộc tính TenKhoa
Quan hệ ChuyenNganh: Mỗi một chuyên ngành sẽ được xác định duy nhất bởi MaChuyenNganh, và bao gồm cả các thuộc tính TenNganh, MaKhoa.
Quan hệ Lop: Mỗi lớp sẽ được xác định duy nhất bởi MaLop, và bao gồm các thuộc tính TenLop, MaChuyenNganh.
Quan hệ LoaiPhong: Mỗi một loại phòng trong thư viện sẽ được xác định duy nhất bởi một MaLoaiPhong, và bao gồm cả các thuộc tính TenPhong, SucChua.
Quan hệ QuyDinhThuVien: Quy định của thư viện đặt ra sẽ được xác định bằng MaQuyDinhThuVien, và bao gồm các thuộc tính TenQuyDinh, TGMuon.
Quan hệ Phong: Mỗi một phòng trong thư viện sẽ được xác định duy nhất bởi MaPhong, và bao gồm các thuộc tính: TenPhong, MaLoaiPhong
Quan hệ PhieuNhap: Mỗi một phiếu nhập sách sẽ được xác định bởi MaDauSach và MaNhaCC, bao gồm cả các thuộc tính: ngaynhap, soluongnhap
PhieuNhap (MaDauSach, MaNhaCC, ngaynhap, soluongnhap)
Quan hệ Sangtac: Mỗi một sáng tác sẽ được xác định bởi MaDauSach và
MaTacGia, bao gồm cả thuộc tính chuthich.
Quan hệ LopHocVien: lớp của mỗi bạn học viên sẽ được xác định bởi MaLop và MaBanDoc, bao gồm cả thuộc tính chuthich.
Quan hệ QLMuonSach: Mỗi một lần mượn sách của bạn đọc sẽ được xác định duy nhất bởi MaMuonSach, và bao gồm các thuộc tính:MaNguoiDung, MaBanDoc, ngaymuon, hantra.
QLMuonTraSach (MaMuonSach, MaNguoiDung, MaBanDoc, ngaymuon, hantra)
Quan hệ CTMuonTra mô tả chi tiết thông tin về việc bạn đọc mượn sách, bao gồm sách được mượn và tình trạng hiện tại của mỗi lượt mượn Mỗi giao dịch mượn sách được xác định bởi MaMuonSach cùng với các thuộc tính như MaSach, ngày trả và tình trạng sách.
CTMuonTra(MaMuonSach, MaSach, ngaytra, tinhtrang) (đang mượn =0, đã trả 1)
Quan hệ QLMuonPhong: Mỗi một lượt mượn phòng của bạn đọc sẽ được xác định duy nhất bởi MaMuonPhong, và bao gồm các thuộc tính: MaNguoiDung,
QLMuonTraPhong (MaMuonPhong,MaNguoiDung, MaPhong, ngaymuon, giomuonphong, hantraphong, giotraphong)
Quan hệ CTMuonTraPhong ghi lại thông tin chi tiết về việc mượn phòng của bạn đọc, bao gồm tình trạng của phòng trong mỗi lần mượn Mỗi lượt mượn phòng được xác định duy nhất bởi MaMuonPhong và có các thuộc tính như MaBanDoc và tinhtrangmuonphong.
CTMuonTraPhong (MaMuonPhong, MaBanDoc,tinhtrangmuonphong) (đang mượn =0, đã trả = 1)
Quan hệ CapNhapSach: Mỗi một lần cập nhập sách sẽ được xác định bởi
MaNguoDung và MaSach, bao gồm cả các thuộc tính: ngaycapnhat, hinhthuccapnhat.
CapNhatSach (MaNguoiDung, MaSach, ngaycapnhat, hinhthuccapnhat)
Quan hệ ViPham: Mỗi một lần bạn đọc vi phạm sẽ được xác định bởi MaBanDoc và MaQuiDinh, bao gồm cả các thuộc tính NgayViPham, HinhthucPhat.
ViPham (MaBanDoc, MaQuiDinh, NgayViPham, HinhthucPhat)
Cấu trúc dữ liệu bảng NguoiDung được thể hiện dưới bảng 63 sau:
Bảng 63 Cấu trúc bảng NguoiDung
Cấu trúc dữ liệu bảng QuyenHan được thể hiện dưới bảng 64 sau:
Bảng 64 Cấu trúc bảng QuyenHan
Cấu trúc dữ liệu bảng DauSach được thể hiện dưới bảng 66 sau:
Bảng 65 Cấu trúc bảng QuyenHan
Cấu trúc dữ liệu bảng NhaXuatBan được thể hiện dưới bảng 38 sau:
Bảng 66 Cấu trúc bảng NhaXuatBan
Cấu trúc dữ liệu bảng ChuDe được thể hiện dưới bảng 67 sau:
Bảng 67 Cấu trúc bảng ChuDe
Cấu trúc dữ liệu bảng TacGia được thể hiện dưới bảng 68 sau:
Bảng 68 Cấu trúc bảng TacGia
Cấu trúc dữ liệu bảng ViTri được thể hiện dưới bảng 69 sau:
Bảng 69 Cấu trúc bảng ViTri
Cấu trúc dữ liệu bảng NhaCungCap được thể hiện dưới bảng 70 sau:
Bảng 70 Cấu trúc bảng NhaCungCap
Cấu trúc dữ liệu bảng Sach được thể hiện dưới bảng 71 sau:
Bảng 71 Cấu trúc bảng Sach
Cấu trúc dữ liệu bảng SachThanhLy được thể hiện dưới bảng 72 sau:
Bảng 72 Cấu trúc bảng SachThanhLy
Cấu trúc dữ liệu bảng BanDoc được thể hiện dưới bảng 73 sau:
Bảng 73 Cấu trúc bảng BanDoc
Cấu trúc dữ liệu bảng GiangVien được thể hiện dưới bảng 74 sau:
Bảng 74 Cấu trúc bảng GiangVien
Cấu trúc dữ liệu bảng HocVien được thể hiện dưới bảng 75 sau:
Bảng 75 Cấu trúc bảng HocVien
Cấu trúc dữ liệu bảng Khoa được thể hiện dưới bảng 76 sau:
Bảng 76 Cấu trúc bảng Khoa
Cấu trúc dữ liệu bảng ChuyenNganh được thể hiện dưới bảng 77 sau:
Bảng 77 Cấu trúc bảng ChuyenNganh
Cấu trúc dữ liệu bảng Lop được thể hiện dưới bảng 78 sau:
Bảng 78 Cấu trúc bảng Lop
Cấu trúc dữ liệu bảng LoaiPhong được thể hiện dưới bảng 79 sau:
Bảng 79 Cấu trúc bảng LoaiPhong
Cấu trúc dữ liệu bảng Phong được thể hiện dưới bảng 80 sau:
Bảng 80 Cấu trúc bảng Phong
Cấu trúc dữ liệu bảng QuyDinhThuVien được thể hiện dưới bảng 81 sau:
Bảng 81 Cấu trúc bảng QuyDinhThuVien
Cấu trúc dữ liệu bảng Phong được thể hiện dưới bảng 82 sau:
Bảng 82 Cấu trúc bảng Phong
Cấu trúc dữ liệu bảng PhieuNhap được thể hiện dưới bảng 83 sau:
Bảng 83 Cấu trúc bảng PhieuNhap
Cấu trúc dữ liệu bảng SangTac được thể hiện dưới bảng 84 sau:
Bảng 84 Cấu trúc bảng SangTac
Cấu trúc dữ liệu bảng LopHocVien được thể hiện dưới bảng 85 sau:
Bảng 85 Cấu trúc bảng LopHocVien
Cấu trúc dữ liệu bảng QLMuonTraSach được thể hiện dưới bảng 86 sau:
Bảng 86 Cấu trúc bảng QLMuonTraSach
Cấu trúc dữ liệu bảng CTMuonTra được thể hiện dưới bảng 87 sau:
Bảng 87 Cấu trúc bảng CTMuonTraSach
Cấu trúc dữ liệu bảng QLMuonTraPhong được thể hiện dưới bảng 88 sau:
Bảng 88 Cấu trúc bảng QLMuonTraPhong
Cấu trúc dữ liệu bảng CTMuonTraPhong được thể hiện dưới bảng 89 sau:
Bảng 89 Cấu trúc bảng CTMuonTraPhong
Cấu trúc dữ liệu bảng CapNhatSach được thể hiện dưới bảng 90 sau:
Bảng 90 Cấu trúc bảng CapNhatSach
Cấu trúc dữ liệu bảng ViPham được thể hiện dưới bảng 91 sau:
Bảng 91 Cấu trúc bảng ViPham
3.3.2.3 Thiết kế và ràng buộc CSDL
1 Trên bối cảnh là 1 quan hệ
Ràng buộc trên quan hệ NguoiDung
R1: Ràng buộc miền giá trị: “GioiTinh phải thuộc vào 2 giá trị sau {GioiTinh= 0: Nam và GioiTinh= 1: Nữ}.”
Biểu diễn bằng đại số quan hệ
92 tầm ảnh hưởng của ràng buộc toàn vẹn R1 được thể hiện dưới Bảng 64 sau:
Quan hệ Thêm Xóa Sửa
Bảng 92.Bảng tầm ảnh hưởng ràng buộc toàn vẹn R1
R2: Ràng buộc miền giá trị: “NguoiDung phải nằm trong đoạn từ 20-50 tuổi.”
Biểu diễn bằng đại số quan hệ:
∀ n ∈ NguoiDung, n.Year(NgaySinh)> and n.Year(NgaySinh)