● Đối tượng phục vụ của ứng dụng: o Người quản lý thư viện: Cung cấp các công cụ để quản lý và tổ chức tài liệu trong thư viện, bao gồm việc thêm, sửa đổi và xóa tài liệu, xác định vị tr
Trang 1NHÓM 3
ĐẶC TẢ YÊU CẦU ỨNG DỤNG – V1.0
Trang 2NỘI DUNG
1 GIỚI THIỆU CHUNG 4
1.1 Mục đích 4
1.2 Phạm vi 4
1.3 Các định nghĩa, thuật ngữ, từ viết tắt 5
1.4 Tài liệu tham khảo 5
2 MÔ TẢ TỔNG QUAN ỨNG DỤNG 6
2.1 Mô hình Use case 6
2.2 Danh sách các tác nhân và mô tả 6
2.3 Danh sách Use case và mô tả 7
2.4 Các điều kiện phụ thuộc 8
3 ĐẶC TẢ CÁC YÊU CẦU CHỨC NĂNG (FUNCTIONAL) 10
1 Đăng ký người dùng mới 10
2 Đăng nhập 10
3 Đăng xuất 10
4 Thêm sách mới 10
5 Chỉnh sửa sách 10
6 Xóa sách 10
7 Tìm kiếm và mượn sách 11
8 Quản lý sách đã mượn 11
9 Gia hạn mượn sách 11
10 Tìm kiếm và kiểm tra tình trạng sách 11
11 Quản lý thông tin người dùng 11
12 Quản lý thông tin người dùng cho Admin 11
13 Báo cáo mượn sách 11
14 Thống kê số lượng sách 12
3.1 UC001_Đăng ký người dùng mới 12
3.1.1 Mô tả use case UC001 12
3.1.2 Biểu đồ 13
3.2 UC002_Đăng nhập 14
3.2.1 Mô tả use case UC002 14
3.2.2 Biểu đồ 15
3.3 UC003_Đăng xuất 15
3.3.1 Mô tả use case UC003 15
Trang 33.3.2 Biểu đồ 16
3.4 UC004_Thêm sách mới 17
3.4.1 Mô tả use case UC004 17
3.4.2 Biểu đồ 18
3.5 UC005_Chỉnh sửa sách 18
3.5.1 Mô tả use case UC005 18
3.5.2 Biểu đồ 20
3.6 UC006_Xóa sách 20
3.6.1 Mô tả use case UC006 20
3.6.2 Biểu đồ 21
3.7 UC007_Tìm kiếm và mượn sách 21
3.7.1 Mô tả use case UC_007 21
3.7.2 Biểu đồ 22
3.8 UC008_Quản lý sách đã mượn 22
3.8.1 Mô tả use case UC008 22
3.8.2 Biểu đồ 23
3.9 UC009_Gia hạn mượn sách 23
3.9.1 Mô tả use case UC009 23
3.9.2 Biểu đồ 24
3.10 UC010_Tìm kiếm và kiểm tra tình trạng sách 25
3.10.1 Mô tả use case UC010 25
3.10.2 Biểu đồ 25
3.11 UC011_Quản lý thông tin người dùng(User) 26
3.11.1 Mô tả use case UC011 26
3.11.2 Biểu đồ 27
3.12 UC012_Quản lý thông tin người dùng (Admin) 27
3.12.1 Mô tả use case UC012 27
3.12.2 Biểu đồ 28
3.13 UC013_Báo cáo mượn sách 28
3.13.1 Mô tả use case UC013 28
3.13.2 Biểu đồ 29
3.14 UC014_Thống kê số lượng sách 30
3.14.1 Mô tả use case Uc014 30
3.14.2 Biểu đồ 30
Trang 51 GIỚI THIỆU CHUNG
1.1 Mục đích
● Xác định yêu cầu chức năng: Tài liệu mô tả các yêu cầu chức năng của ứng dụng, bao gồm các chức năng cần thực hiện và các hành vi kỳ vọng của ứng dụng Ví dụ: Đăng nhập, tìm kiếm sách, thêm/sửa/xóa sách
● Định nghĩa yêu cầu phi chức năng: Tài liệu mô tả các yêu cầu không chức năng, không liênquan đến các chức năng cốt lõi của ứng dụng, nhưng quan trọng cho trải nghiệm sử dụng
và hiệu suất Ví dụ: Cấu hình máy tính sử dụng, các phần mềm kèm theo khi chạy ứng dụng,…
● Xác định các ràng buộc thiết kế: Tài liệu đặt ra các ràng buộc và hạn chế về thiết kế của ứng dụng Điều này bao gồm các hạn chế về nền tảng công nghệ, cấu trúc dữ liệu, giao diện người dùng, và các yêu cầu về quy trình phát triển và triển khai
● Tạo cơ sở cho thiết kế và phát triển: Tài liệu cung cấp một cơ sở chính xác và rõ ràng cho quá trình thiết kế và phát triển phần mềm Nó giúp các nhà phát triển hiểu rõ yêu cầu của khách hàng và xây dựng một kiến trúc hợp lý và thiết kế phần mềm tương ứng
● Đảm bảo sự hiểu và đồng thuận: Tài liệu là công cụ quan trọng để đảm bảo sự hiểu và đồng thuận giữa các bên liên quan, bao gồm khách hàng, nhà phát triển và nhóm dự án Nógiúp tất cả mọi người có cùng một hiểu biết về yêu cầu và mục tiêu của dự án
● Đánh giá và kiểm tra: Tài liệu cung cấp một cơ sở để đánh giá và kiểm tra sự hoàn thành của ứng dụng Nó tạo ra một tiêu chuẩn để so sánh và kiểm tra tính đầy đủ và đúng đắn củacác yêu cầu khi ứng dụng được phát triển
1.2 Phạm vi
● Phạm vi ứng dụng:
o Phần mềm quản lý thư viện được thiết kế để hỗ trợ quản lý và tổ chức các tài liệu trong một thư viện Nó có thể được sử dụng trong nhiều loại thư viện, bao gồm thư viện công cộng, thư viện trường học, thư viện đại học, thư viện doanh nghiệp và các
tổ chức có nhu cầu quản lý tài liệu
● Đối tượng phục vụ của ứng dụng:
o Người quản lý thư viện: Cung cấp các công cụ để quản lý và tổ chức tài liệu trong thư viện, bao gồm việc thêm, sửa đổi và xóa tài liệu, xác định vị trí lưu trữ, theo dõi mượn/trả sách, đặt sách, xử lý yêu cầu mượn sách, quản lý thông tin người dùng, theo dõi tình trạng tài liệu trong thư viện
o Người mượn/trả sách: Cung cấp giao diện để tìm kiếm, tra cứu và yêu cầu mượn sách, xem thông tin tài liệu, đặt sách và quản lý tài khoản cá nhân đã mượn những sách nào và những sách nào gần tới hạn phải trả
● Nhóm các hệ thống con:
Trang 6o Quản lý tài liệu: Gồm các chức năng để thêm, xóa, sửa đổi và tra cứu thông tin về các tài liệu trong thư viện, bao gồm sách, truyện, tạp chí, báo Chức năng này cung cấp khả năng theo dõi vị trí lưu trữ, thông tin mô tả, tác giả, danh mục, và thông tin khác liên quan đến tài liệu.
o Quản lý người dùng: Cho phép quản lý thông tin người dùng, bao gồm thông tin cá nhân, tài khoản mượn sách, lịch sử mượn/trả sách và yêu cầu đặt mượn sách
o Quản lý mượn sách: Hỗ trợ quản lý quá trình mượn và trả sách, bao gồm việc đăng
ký mượn sách, xác nhận trạng thái sách (đã mượn, đã trả) và quản lý các khoản phí phạt liên quan đến việc trả sách quá hạn
o Tra cứu và tìm kiếm: Cung cấp công cụ tìm kiếm nâng cao để người dùng có thể tìmkiếm và tra cứu thông tin về tài liệu trong thư viện dựa trên tiêu chí như tên sách, tácgiả, từ khóa, danh mục, v.v
o Thống kê và báo cáo: Cung cấp khả năng tạo ra các báo cáo và thống kê liên quan đến việc sử dụng tài liệu trong thư viện, bao gồm số lượt mượn, sách được yêu thích, tình trạng sách đang còn hay đã hết, v.v
1.3 Các định nghĩa, thuật ngữ, từ viết tắt
<Giải thích cho các thuật ngữ và từ viết tắt dùng trong tài liệu, các định nghĩa sử dụng trong tài liệu>.
Trang 72 MÔ TẢ TỔNG QUAN ỨNG DỤNG 2.1 Mô hình Use case
Trang 82.2 Danh sách các tác nhân và mô tả
Quản lý thư viện Người quản lý và điều hành hệ thống thư viện,
thực hiện các chức năng quản trị như quản lý sách, người dùng và báo cáo
Có mọi quyền sử dụng tất cả chức năng của ứngdụng
Người mượn/trả
sách
Cá nhân hoặc nhóm người sử dụng dịch vụ thư viện, thực hiện các thao tác mượn, trả sách và quản lý thông tin cá nhân
Có thể tìm kiếm, tra cứu
và yêu cầu mượn sách, xem thông tin tài liệu, đặt sách và quản lý tài khoản cá nhân đã mượn những sách nào và những sách nào gần tới hạn phải trả
2.3 Danh sách Use case và mô tả
ID Tên Use case Mô tả ngắn gọn Use case Chức năng Ghi chú
1 Đăng ký người
dùng mới
Người dùng mới đăng ký tàikhoản bằng cách cung cấpthông tin cá nhân
Tạo tài khoảnmới cho ngườidùng
2 Đăng nhập Người dùng hoặc admin cung
cấp tên đăng nhập và mật khẩu
để truy cập hệ thống
Người dùnghoặc admin đăngnhập vào hệthống
3 Đăng xuất Người dùng hoặc admin thoát
khỏi phiên làm việc hiện tại
Người dùnghoặc admin đăngxuất khỏi hệthống
4 Thêm sách Admin cung cấp thông tin về
sách mới để thêm vào thư viện
Admin thêmsách mới vào hệthống
5 Sửa sách Admin cập nhật thông tin của
sách trong hệ thống
Admin chỉnhsửa thông tinsách hiện có
6 Xóa sách Admin chọn và xóa sách không
cần thiết hoặc đã lỗi thời
Admin xóa sáchkhỏi hệ thống
Trang 97 Tìm kiếm và
mượn sách
Người dùng tìm kiếm sách vàyêu cầu mượn sách
Người dùng tìmkiếm và mượnsách từ thư viện
10 Tìm kiếm và
kiểm tra tìnhtrạng sách
Admin tìm kiếm sách và kiểmtra tình trạng hiện tại của sách
Admin tìm kiếm
và kiểm tra tìnhtrạng sách
13 Báo cáo mượn
sách
Admin tạo báo cáo chi tiết vềsách đã mượn, người mượn và
thời gian mượn
Admin tạo báocáo về tình trạngmượn sách
14 Thống kê số
lượng sách
Admin tạo thống kê chi tiết về
số lượng sách theo các tiêu chí
khác nhau
Admin thống kê
số lượng sáchtrong thư viện
2.4 Các điều kiện phụ thuộc
1 Cấu hình phần cứng:
● Máy tính với CPU tốt, ví dụ: Intel Core i5 hoặc tương đương
● RAM: Tối thiểu 4GB, được khuyến nghị 8GB hoặc cao hơn để đảm bảo hiệu suất tốt hơn
Trang 10● Dung lượng đĩa cứng: Tùy thuộc vào quy mô ứng dụng và số lượng tài liệu dự kiến, nhưng ít nhất 50GB để lưu trữ dữ liệu và các tệp tin.
● Độ phân giải màn hình: Độ phân giải tối thiểu 1280x800 hoặc cao hơn để hiển thị giao diện ứng dụng một cách rõ ràng
● HĐQT CSDL: Ví dụ: MySQL, PostgreSQL, Microsoft SQL Server Cần cài đặt và cấu hình HĐQT CSDL phù hợp để lưu trữ dữ liệu của ứng dụng quản lý thư viện
● Ngôn ngữ lập trình: Tùy thuộc vào lựa chọn công nghệ, ví dụ: Java, C#, Python, Ruby, vv
4 Công cụ phát triển:
● Môi trường phát triển tích hợp (Integrated Development Environment - IDE): Ví dụ:Eclipse, Visual Studio, IntelliJ IDEA IDE giúp phát triển và quản lý mã nguồn dễ dàng và hiệu quả
● Trình biên dịch và môi trường thực thi: Tùy thuộc vào ngôn ngữ lập trình được sử dụng, bạn cần cài đặt trình biên dịch hoặc môi trường thực thi tương ứng Ví dụ: JDK (Java Development Kit) cho Java, NET Framework cho C#, Python interpretercho Python
● Công cụ quản lý mã nguồn: Ví dụ: Git, SVN Công cụ này giúp quản lý và theo dõi
sự thay đổi trong mã nguồn ứng dụng
Trang 113 ĐẶC TẢ CÁC YÊU CẦU CHỨC NĂNG (FUNCTIONAL)
1 Đăng ký người dùng mới
o Hệ thống phải có giao diện đăng ký cho người dùng mới
o Hệ thống phải kiểm tra tính hợp lệ của thông tin nhập vào (ví dụ: định dạng email,
độ dài mật khẩu)
o Hệ thống phải lưu thông tin người dùng vào cơ sở dữ liệu
o Hệ thống phải thông báo kết quả đăng ký cho người dùng (thành công hoặc lỗi)
o Hệ thống phải có giao diện đăng nhập cho người dùng và admin
o Hệ thống phải kiểm tra thông tin đăng nhập (tên đăng nhập và mật khẩu)
o Hệ thống phải xác thực và cấp quyền truy cập cho người dùng hoặc admin
o Hệ thống phải thông báo kết quả đăng nhập (thành công hoặc lỗi)
3 Đăng xuất
o Hệ thống phải có nút hoặc liên kết để người dùng hoặc admin đăng xuất
o Hệ thống phải hủy phiên làm việc hiện tại
o Hệ thống phải chuyển người dùng hoặc admin về trang đăng nhập
o Hệ thống phải có giao diện cho phép admin nhập thông tin sách mới
o Hệ thống phải kiểm tra tính hợp lệ của thông tin nhập vào
o Hệ thống phải lưu thông tin sách mới vào cơ sở dữ liệu
o Hệ thống phải thông báo kết quả thêm sách (thành công hoặc lỗi)
5 Chỉnh sửa sách
o Hệ thống phải có giao diện cho phép admin chọn và chỉnh sửa thông tin sách
o Hệ thống phải kiểm tra tính hợp lệ của thông tin nhập vào
o Hệ thống phải lưu thông tin sách đã chỉnh sửa vào cơ sở dữ liệu
o Hệ thống phải thông báo kết quả chỉnh sửa sách (thành công hoặc lỗi)
6 Xóa sách
o Hệ thống phải có giao diện cho phép admin chọn và xóa sách
o Hệ thống phải kiểm tra xem sách có đang được mượn hay không
o Hệ thống phải xóa thông tin sách khỏi cơ sở dữ liệu
Trang 12o Hệ thống phải thông báo kết quả xóa sách (thành công hoặc lỗi).
7 Tìm kiếm và mượn sách
o Hệ thống phải có giao diện tìm kiếm sách cho người dùng
o Hệ thống phải hiển thị kết quả tìm kiếm dựa trên từ khóa
o Hệ thống phải cho phép người dùng chọn và yêu cầu mượn sách
o Hệ thống phải kiểm tra tính hợp lệ và cập nhật trạng thái mượn sách
o Hệ thống phải thông báo kết quả mượn sách (thành công hoặc lỗi)
8 Quản lý sách đã mượn
o Hệ thống phải có giao diện cho phép người dùng xem danh sách và thông tin sách
đã mượn
9 Gia hạn mượn sách
◦ Hệ thống phải có giao diện cho phép người dùng gia hạn mượn sách
◦ Hệ thống phải kiểm tra tính hợp lệ của yêu cầu gia hạn
◦ Hệ thống phải cập nhật thời gian mượn sách
◦ Hệ thống phải thông báo kết quả gia hạn (thành công hoặc lỗi)
10 Tìm kiếm và kiểm tra tình trạng sách
o Hệ thống phải có giao diện tìm kiếm sách cho người dùng
o Hệ thống phải hiển thị kết quả tìm kiếm và tình trạng sách hiện tại
11 Quản lý thông tin người dùng
o Hệ thống phải có giao diện cho phép người dùng xem và cập nhật thông tin cá nhân
o Hệ thống phải kiểm tra tính hợp lệ của thông tin cập nhật
o Hệ thống phải lưu thông tin cập nhật vào cơ sở dữ liệu
o Hệ thống phải thông báo kết quả cập nhật (thành công hoặc lỗi)
12 Quản lý thông tin người dùng cho Admin
o Hệ thống phải có giao diện cho phép admin xem, cập nhật hoặc xóa thông tin người dùng
o Hệ thống phải kiểm tra tính hợp lệ của thông tin cập nhật
o Hệ thống phải lưu thông tin cập nhật vào cơ sở dữ liệu
o Hệ thống phải thông báo kết quả cập nhật (thành công hoặc lỗi)
Trang 1313 Báo cáo mượn sách
o Hệ thống phải có giao diện cho phép admin tạo báo cáo mượn sách
o Hệ thống phải tổng hợp thông tin mượn sách
o Hệ thống phải tạo báo cáo chi tiết và hiển thị hoặc xuất báo cáo
o Hệ thống phải thông báo kết quả tạo báo cáo (thành công hoặc lỗi)
14 Thống kê số lượng sách
o Hệ thống phải có giao diện cho phép admin tạo thống kê số lượng sách
o Hệ thống phải tổng hợp số liệu theo tiêu chí đã chọn
o Hệ thống phải tạo thống kê chi tiết và hiển thị hoặc xuất thống kê
o Hệ thống phải thông báo kết quả tạo thống kê (thành công hoặc lỗi)
3.1 UC001_Đăng ký người dùng mới
3.1.1 Mô tả use case UC001
Use case: UC001-Đăng ký người dùng mới
Mục đích: Tạo tài khoản mới cho người dùng.
Mô tả: Người dùng mới đăng ký tài khoản bằng cách cung cấp thông tin cá
nhân.
Điều kiện trước: User vào giao diện của trang đăng ký người dùng mới
Điều kiện sau: Thông tin tài khoản mới được lưu trữ trong cơ sở dữ liệu
Luồng sự kiện chính
(Basic flows)
Người dùng truy cập trang đăng ký
Người dùng truy cập trang đăng ký
Người dùng nhập thông tin cá nhân
Người dùng truy cập trang đăng ký
Hệ thống kiểm tra tính hợp lệ của thông tin
Người dùng truy cập trang đăng ký
Hệ thống lưu thông tin đăng ký vào cơ sở dữ liệu
Người dùng truy cập trang đăng ký
Hệ thống hiển thị thông báo đăng ký thành công
Người dùng truy cập trang đăng ký
Luồng sự kiện phụ
(Alternative Flows):
Nếu thông tin không hợp lệ, hệ thống hiển thị thông báo lỗi và yêu cầu người dùng nhập lại thông tin
Trang 143.1.2 Biểu đồ
3.1.2.1 Biểu đồ hoạt động
Trang 153.2 UC002_Đăng nhập
3.2.1 Mô tả use case UC002
Use case: UC002-Đăng nhập
Mục đích: User hoặc admin đăng nhập vào hệ thống
Mô tả: User hoặc admin cung cấp tên đăng nhập và mật khẩu để truy cập hệ
thống.
Điều kiện trước: User, Admin vào giao diện của chức năng Đăng nhập
Điều kiện sau: Người dùng truy cập trang đăng ký Người dùng hoặc admin được cấp quyền truy cập vào hệ thống.Luồng sự kiện chính
(Basic flows)
Người dùng hoặc admin truy cập trang đăng nhập
Người dùng truy cập trang đăng ký
Người dùng hoặc admin nhập tên đăng nhập và mật khẩu
Người dùng truy cập trang đăng ký
Hệ thống kiểm tra thông tin đăng nhập
Người dùng truy cập trang đăng ký
Nếu đúng, hệ thống cấp quyền truy cập
Người dùng truy cập trang đăng ký
Hệ thống chuyển đến giao diện chính
Người dùng truy cập trang đăng ký
Luồng sự kiện phụ
(Alternative Flows):
Nếu thông tin không hợp lệ, hệ thống hiển thị thông báo lỗi,yêu cầu nhập lại thông tin đăng nhập.
Trang 163.2.2 Biểu đồ
3.2.2.1 Biểu đồ hoạt động
3.2.2.2 Biểu đồ tuần tự
Trang 173.3 UC003_Đăng xuất
3.3.1 Mô tả use case UC003
Use case: UC003_Đăng xuất
Mục đích: User hoặc admin đăng xuất khỏi hệ thống
Mô tả: User hoặc admin thoát khỏi phiên làm việc hiện tại
Điều kiện trước: User , Admin chọn chức năng đăng xuất
Điều kiện sau: User,Admin đăng xuất khỏi hệ thống thành công.
Luồng sự kiện chính Người dùng truy cập trang đăng ký Người dùng hoặc admin nhấn nút đăng xuất
Hệ thống hủy phiên làm việc hiện tại
Người dùng truy cập trang đăng ký
Hệ thống chuyển đến trang đăng nhập
Người dùng truy cập trang đăng ký
Luồng sự kiện phụ