Untitled

mail@pastecode.io avatar
unknown
plain_text
a year ago
20 kB
1
Indexable
Never
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG 


BÀI TẬP LỚN MÔN HỌC 
CÔNG NGHỆ PHẦN MỀM 

Chủ đề: Hệ thống quản lý cửa hàng cho thuê truyện 


Giảng viên :  Đặng Ngọc Hùng 
Thành viên nhóm 15:  
Lê Ngọc Huyền - B20DCCN333
Phạm Trọng Tiến - B20DCCN597
Nguyễn Thế Qúy - B20DCCN561

Hà Nội


 Chủ đề: Hệ thống quản lý cửa hàng cho thuê truyện 
1. Modul: "Quản lí đầu truyện" (chỉ dành cho sinh viên quốc tế, nếu có) cho phép quản lí (QL) thực hiện thêm, sửa, xóa thông tin đầu truyện với mô tả chi tiết nghiệp vụ: QL chọn menu quản lí đầu truyện → trang quản lí hiện ra → QL chọn chức năng sửa thông tin đầu truyện → giao diện tìm đầu truyện theo tên hiện ra → QL nhập tên đầu truyện và click tìm kiếm → danh sách các đầu truyện có tên chứa từ khóa hiện ra → QL chọn sửa một đầu truyện → giao diện sửa đầu truyện hiện ra với các thông tin của đầu truyện đã chọn → QL nhập một số thông tin thay đổi và click cập nhật → hệ thống lưu thông tin vào CSDL và thông báo thành công. 
2. Modul :"Cho thuê truyện" với mô tả chi tiết nghiệp vụ: Sau khi chọn được các truyện để thuê mượn, khách hàng (KH) cầm đến quầy nhân viên (NV) thu ngân làm phiếu mượn. NV nhập tên KH và tìm kiếm → Hệ thống trả về danh sách các KH có tên vừa nhập → NV click chọn tên KH trong danh sách (nếu KH mượn lần đầu thì nhập mới) → Hệ thống hiện giao diện thêm truyện mượn vào phiếu: Với mỗi đầu truyện, NV click chọn tìm truyện theo tên → nhập tên truyện + click tìm → hệ thống hiện lên danh sách các đầu truyện có tên vừa nhập → NV click chọn dòng đúng với quyển truyện do KH chọn thuê → Hệ thống thêm 1 dòng tương ứng với đầu truyện đó vào phiếu thuê mượn như mô tả. Khi hết các đầu truyện do KH chọn thuê, NV click tạo phiếu mượn → Hệ thống lưu vào CSDL và hiển thị phiếu mượn lên màn hình → NV click in ra → Hệ thống in phiếu mượn ra cho KH. 
3. Modul :"Khách hàng trả truyện và thanh toán" với mô tả chi tiết nghiệp vụ: Khi KH đem truyện đến trả, NV chọn menu tìm danh sách truyện mượn theo tên KH → nhập tên KH+click tìm kiếm → hệ thống hiển thị danh sách các KH có tên vừa nhập → NV chọn tên KH đúng với thông tin KH hiện tại → hệ thống hiện lên danh sách các đầu truyện mà KH đó đang mượn, mỗi đầu truyện trên một dòng với đầy đủ thông tin về đầu truyện, ngày mượn, giá mượn, và số tiền thuê tính đến ngày đang trả, cột cuối cùng là ô tích chọn trả → NV click vào nút chọn trả cho các đầu truyện mà KH đem trả (có thể không trả hết 1 lần), nhập tình trạng sách và tiền phạt nếu có, cuối cùng click nút thanh toán → hệ thống hiện hóa đơn đầy đủ thông tin khách hàng + 1 bảng danh sách các đầu truyện trả như mô tả trên + dòng cuối là tổng số tiền trả → NV click xác nhận → hệ thống cập nhật vào CSDL. 
4. Modul :"Thống kê truyện được mượn nhiều" với mô tả chi tiết nghiệp vụ: QL chọn menu thống kê đầu truyện được mượn nhiều → Nhập khoảng thời gian (ngày bắt đầu – kết thúc) thống kê → Hệ thống hiển thị danh sách các đầu truyện được mượn nhiều theo dạng bảng, mỗi dòng tương ứng với một đầu truyện với đầy đủ thông tin: mã, tên, tác giả, NXB, năm XB, cột tổng số lượt được mượn, cột tổng số tiền thu được. Xếp theo thứ tự giảm dần của cột tổng số lượt mượn, tiếp theo là giảm dần của cột tổng số tiền thu được. QL click vào 1 dòng của 1 truyện → hệ thống hiện lên chi tiết hóa đơn có truyện đó đã mượn, mỗi hóa đơn trên 1 dòng: id, tên khách mượn, ngày giờ mượn, ngày giờ trả, tổng số tiền. 
5. Modul :"Thống kê doanh thu": QL chọn menu thống kê doanh thu theo thời gian (tháng, quý, năm) → hệ thống hiện ô chọn thống kê theo tháng, quý, hoặc năm → QL click chọn theo tháng → hệ thống hiện lên thống kê doanh thu theo tháng dưới dạng bảng, mỗi dòng tương ứng với 1 tháng (tương ứng là quý, năm): tên tháng, tổng doanh thu. Sắp xếp theo chiều thời gian tháng (tương ứng là quý, năm) gần nhất đến tháng (tương ứng là quý, năm) cũ nhất. QL click vào 1 dòng → hệ thống hiện lên chi tiết các hóa đơn trong khoảng thời gian của dòng đấy, mỗi hóa đơn trên 1 dòng: id, tên khách hàng, ngày mượn, tổng số truyện mượn, tổng số tiền của hóa đơn

 Công việc:
1.Xác định yêu cầu
B1 :Xây dựng bảng thuật ngữ
B2 :Xác định mô hình nghiệp vụ (tác nhân tham gia use case+tên use case=>vẽ) mô tả tóm tắt-mô tả step by step
B3:Làm mịn(từ mô hình nghiệp vụ xác định yêu cầu chức năng sản 	phẩm phần mềm mục tiêu bằng cách cân nhắc phạm vi yêu cầu 	khách hàng)

2.Luồng công việc phân tích 
   B1:Trích rút ra các lớp thực thể
        1.1:mô hình hóa chức năng =>đưa ra các kịch bản 
        1.2:mô hình hóa lớp => biểu đồ lớp sử dụng phương pháp trích rút danh từ 
        1.3:mô hình hóa động=>biểu đồ trạng thái
   B2 :Trích rút lớp biên và lớp điều khiển khi có tên lớp biên và lớp 	điều khiển thực hiện mô hình hóa use case(biểu đồ tương tác hoặc biểu đồ tuần tự )









    
   
      




Phần 1: Luồng công việc yêu cầu
1:Modul quản lý đầu truyện và Modul cho thuê truyện:

Xây dựng sơ đồ use case tổng quan 
Xác định các actor có thể có của hệ thống: 
 Actor là người dùng trực tiếp: người quản lí cửa hàng (manager), nhân viên thu ngân
 Actor là người dùng gián tiếp: Khách hàng , mặc dù không trực tiếp sử dụng và thao tác trên phần mềm, nhưng một số chức năng phải có mặt khách hàng mới thực hiện được như : đặt mượn, checkin, checkout, thanh toán.
Các chức năng liên quan đến các actor: 
 Người quản lí cửa hàng (Manager): quản lí thông đầu truyện và cho thuê truyện, tạo, sửa ,xóa đầu truyện,…
 Nhân viên thu ngân: đáp ứng yêu cầu và giao dịch với khách hàng (Client) tại quầy thu ngân.
 Khách hàng (Client): có thể mượn sách/hủy mượn/đổi trả trực tiếp tại quầy với nhân viên ,Checkin, Checkout và thanh toán tại quầy với nhân viên lễ tân.
*xác định yêu cầu:
-bảng thuật ngữ:

Thuật ngữ 
Mô tả 
Quản lí đầu truyện


Modul cho phép quản lí thêm, sửa, xóa thông tin đầu truyện


Sinh viên quốc tế


Người dùng mà modul chỉ dành riêng cho họ


Menu quản lí đầu truyện


Đường dẫn đến trang quản lí đầu truyện


Trang quản lí


Giao diện hiển thị các chức năng của modul quản lí đầu truyện


Sửa thông tin đầu truyện


Chức năng cho phép sửa thông tin của một đầu truyện đã có trong CSDL


Giao diện tìm đầu truyện


Trang hiển thị danh sách đầu truyện để tìm kiếm


Tên đầu truyện


Thông tin để tìm kiếm và sửa thông tin của đầu truyện


Tìm kiếm


Chức năng tìm kiếm đầu truyện theo tên


Danh sách các đầu truyện


Danh sách hiển thị kết quả tìm kiếm theo tên đầu truyện


Từ khóa


Thông tin được tìm kiếm để phù hợp với tên đầu truyện





1.Modul quản lý đầu truyện
-mô hình nghiệp vụ:

Mô tả tóm tắt:
Cho phép người quản lí thực hiện thao tác thêm, sửa, xóa thông tin đầu truyện. Chức năng sửa thông tin đầu truyện cho phép người quản lí tìm kiếm đầu truyện theo tên, chọn đầu truyện cần sửa và cập nhật các thông tin mới. Sau khi cập nhật, hệ thống sẽ lưu thông tin vào CSDL và hiển thị thông báo thành công. Chức năng này giúp người quản lí quản lí và cập nhật thông tin đầu truyện một cách thuận tiện và nhanh chóng.


Mô tả từng bước:
Để sửa thông tin đầu truyện, quản lý chọn chức năng sửa trong menu quản lí đầu truyện, sau đó nhập tên đầu truyện cần sửa và click tìm kiếm. Danh sách các đầu truyện có tên chứa từ khóa sẽ hiển thị, quản lý có thể chọn đầu truyện cần sửa và nhập thông tin thay đổi. Sau khi cập nhật, hệ thống sẽ lưu thông tin vào CSDL và thông báo thành công .




Các use case
1.Thêm thông tin đầu truyện
2.Sửa thông tin đầu truyện
3.Xóa thông tin đầu truyện
4.Tìm kiếm đầu truyện
5.Hiển thị thông tin đầu truyện
6.Lưu thông tin đầu truyện
7.Thông báo thành công
Mô tả use case:
1)Thêm thông tin đầu truyện: Cho phép quản lí thêm thông tin mới của đầu truyện vào CSDL.
2)Sửa thông tin đầu truyện: Cho phép quản lí sửa thông tin của một đầu truyện đã tồn tại trong CSDL.
3)Xóa thông tin đầu truyện: Cho phép quản lí xóa thông tin của một đầu truyện đã tồn tại trong CSDL.
4)Tìm kiếm đầu truyện: Cho phép quản lí tìm kiếm thông tin của đầu truyện theo tên hoặc từ khóa khác.
5)Hiển thị thông tin đầu truyện: Cho phép quản lí xem chi tiết thông tin của một đầu truyện đã được chọn.
6)Lưu thông tin đầu truyện: Cho phép hệ thống lưu thông tin đầu truyện mới hoặc thông tin đã sửa vào CSDL.
7)Thông báo thành công: Cho phép hệ thống thông báo thành công sau khi quản lý thực hiện thành công một chức năng như thêm, sửa, hoặc xóa thông tin đầu truyện.








 2:Modul cho thuê truyện:
-mô hình nghiệp vụ:


Mô tả tóm tắt:
Cho phép khách hàng thuê truyện và tạo phiếu mượn thông qua nhân viên thu ngân bằng cách nhập tên khách hàng và tìm kiếm danh sách khách hàng, chọn tên khách hàng trong danh sách hoặc nhập thông tin khách hàng mới nếu khách hàng lần đầu tiên mượn. Sau đó, nhân viên tìm kiếm truyện theo tên và thêm truyện được chọn vào phiếu mượn. Khi phiếu mượn hoàn thành, nhân viên tạo phiếu mượn và lưu vào cơ sở dữ liệu, sau đó in phiếu mượn để khách hàng sử dụng.



Mô tả từng bước:
Để thuê truyện, khách hàng cần đến quầy thu ngân và cung cấp tên của mình.Quầy thu ngân sẽ nhập tên khách hàng vào hệ thống và tìm kiếm tên khách hàng trong danh sách.Sau đó, quầy thu ngân sẽ thêm các đầu truyện mà khách hàng muốn thuê vào phiếu mượn bằng cách tìm kiếm đầu truyện theo tên và chọn đúng đầu truyện.Khi đã thêm đủ các đầu truyện, quầy thu ngân sẽ tạo phiếu mượn và lưu vào CSDL. Hệ thống sẽ hiển thị phiếu mượn trên màn hình và cho phép in ra phiếu mượn cho khách hàng.





Các use case:
1.Tạo phiếu mượn
2.Thêm đầu truyện vào phiếu mượn
3.Thêm khách hàng mới
4.Tìm kiếm khách hàng
5.Hiển thị phiếu mượn
6.In phiếu mượn

Mô tả use case:
1.Tìm kiếm khách hàng: Khách hàng đến quầy thu ngân để mượn truyện. Nhân viên thu ngân nhập tên khách hàng để tìm kiếm trong CSDL khách hàng. Hệ thống trả về danh sách các khách hàng có tên tương ứng và cho phép nhân viên thu ngân chọn khách hàng để thực hiện các chức năng khác.
2.Thêm khách hàng mới: Nếu khách hàng mới đến mượn lần đầu, nhân viên thu ngân sẽ nhập thông tin mới của khách hàng và lưu vào CSDL.
3.Thêm đầu truyện vào phiếu mượn: Nhân viên thu ngân chọn truyện cần mượn cho khách hàng bằng cách nhập tên truyện và tìm kiếm trong CSDL. Hệ thống trả về danh sách các đầu truyện có tên tương ứng và cho phép nhân viên thu ngân chọn đúng quyển truyện để thêm vào phiếu mượn. Hệ thống cập nhật thông tin phiếu mượn sau mỗi lần thêm đầu truyện.
4.Tạo phiếu mượn: Khi đã thêm đủ tất cả các đầu truyện cần mượn, nhân viên thu ngân tạo phiếu mượn và lưu vào CSDL.
5.Hiển thị phiếu mượn: Hệ thống cho phép nhân viên thu ngân xem thông tin chi tiết của phiếu mượn vừa tạo và hiển thị lên màn hình.
6.In phiếu mượn: Khi đã kiểm tra và chắc chắn thông tin phiếu mượn là chính xác, nhân viên thu ngân in ra phiếu mượn và trao cho khách hàng.



3. Modul "Khách hàng trả truyện và thanh toán"
Đối với nhân viên:
Chọn mô-đun "Trả sách và thanh toán của khách hàng" từ menu.
Tìm kiếm danh sách sách đã mượn bằng cách nhập tên khách hàng và nhấp vào nút tìm kiếm.
Hệ thống hiển thị danh sách khách hàng có tên đã nhập. Chọn khách hàng đúng từ danh sách.
Hệ thống hiển thị danh sách các cuốn sách đã mượn của khách hàng đã chọn, với thông tin chi tiết của từng cuốn sách như mã sách, tiêu đề, tác giả, nhà xuất bản, năm xuất bản, ngày mượn, phí thuê và tổng chi phí thuê tính đến ngày trả. Cột cuối cùng có ô chọn để chọn các sách đã trả.
Chọn ô để chọn các sách cần trả, nhập tình trạng của sách và số tiền phạt (nếu có).
Nhấp vào nút "Thanh toán" để tạo hóa đơn, bao gồm các thông tin khách hàng, danh sách sách đã trả như đã mô tả ở trên và tổng số tiền cần thanh toán.
Xem lại hóa đơn và nhấp vào nút "Xác nhận" để cập nhật cơ sở dữ liệu với các sách đã trả và thông tin thanh toán.

Các use case có thể có:
Search by customer name: 
Chức năng này cho phép nhân viên tìm kiếm thông tin các cuốn sách mượn theo tên khách hàng. Nhân viên sẽ nhập tên khách hàng vào hệ thống và hệ thống sẽ hiển thị danh sách các cuốn sách khách hàng này đã mượn.
Show borrowed books: 	
Sau khi chọn tên khách hàng, hệ thống sẽ hiển thị danh sách các cuốn sách khách hàng đã mượn, bao gồm đầy đủ thông tin của từng cuốn sách, chẳng hạn như tên sách, ngày mượn, giá mượn, và số tiền thuê tính đến ngày đang trả.
Select returned books from list: 
Chức năng này cho phép nhân viên chọn các cuốn sách mà khách hàng đem trả. Nhân viên có thể chọn một hoặc nhiều cuốn sách để trả, tùy thuộc vào số lượng sách khách hàng muốn trả.
Calculate payment amount: 
Sau khi chọn các cuốn sách trả, hệ thống sẽ tính toán tổng số tiền khách hàng cần trả dựa trên thông tin của các cuốn sách được chọn và các khoản phạt (nếu có).
Show payment invoice: 
Hệ thống sẽ hiển thị hóa đơn thanh toán cho khách hàng, bao gồm đầy đủ thông tin khách hàng và danh sách các cuốn sách khách hàng đã trả.
Confirm payment and update database: 
Khi khách hàng xác nhận thanh toán, hệ thống sẽ cập nhật vào cơ sở dữ liệu và cập nhật trạng thái các cuốn sách đã được trả.


4. Modul "Thống kê truyện được mượn nhiều"
Người quản lý thống kê số lần mượn của mỗi đầu truyện trong khoảng thời gian cụ thể: 
Quản lý chọn menu "Thống kê đầu truyện được mượn nhiều".
Nhập khoảng thời gian (ngày bắt đầu - kết thúc) cần thống kê.
Hệ thống hiển thị danh sách các đầu truyện được mượn nhiều theo dạng bảng, với thông tin chi tiết của mỗi đầu truyện: mã, tên, tác giả, NXB, năm XB, số lần được mượn và tổng số tiền thu được. Danh sách được sắp xếp theo thứ tự giảm dần của cột tổng số lượt mượn, tiếp theo là giảm dần của cột tổng số tiền thu được.
Người quản lý có thể click vào 1 dòng của 1 đầu truyện để xem chi tiết các hóa đơn mượn có chứa đầu truyện đó. Hệ thống sẽ hiển thị mỗi hóa đơn trên 1 dòng, với thông tin chi tiết bao gồm: id hóa đơn, tên khách mượn, ngày giờ mượn, ngày giờ trả và tổng số tiền.
Từ đó, người quản lý có thể dựa vào kết quả thống kê để đưa ra các quyết định về việc mua sắm và phân phối sách, tăng cường các dịch vụ cho đầu truyện được mượn nhiều và thu hút độc giả.
Các use case có thể có:
Add new customer: 
Tạo mới khách hàng trong cơ sở dữ liệu của hệ thống.
Add new book: 
Thêm mới một cuốn sách vào cơ sở dữ liệu của hệ thống.
Borrow book: 
Cho phép khách hàng mượn sách từ thư viện. Nhân viên nhập thông tin khách hàng và cuốn sách muốn mượn vào hệ thống.
Return book: 
Cho phép khách hàng trả sách đã mượn. Nhân viên nhập thông tin khách hàng và các cuốn sách muốn trả vào hệ thống.
Report borrowed books by popularity: 
Hiển thị danh sách các cuốn sách được mượn nhiều nhất trong khoảng thời gian đã nhập, theo thứ tự giảm dần của số lượt mượn và tổng doanh thu. Nhân viên có thể xem chi tiết hóa đơn cho từng cuốn sách trong danh sách.




5.Modul “Thống kê doanh thu”
Actor :
	- người quản lý : Chọn menu thống kê doanh thu theo thời gian( tháng, quý, năm ), chọn tiêu chí thống kê doanh thu, xuất 	báo cáo
Usecase:
- Thống kê doanh thu : cho phép người dùng thống kê toàn bộ 	doanh thu theo thời gian 
	- Chọn tiêu chí thống kê: Chọn khoảng thời gian thống kê, có thể 	thêm,sửa,xóa 
- Xuất báo cáo  : xem báo cáo và in bản báo cáo thống kê .


Mô tả ngắn gọn
Người dùng truy cập vào giao diện chứa tiêu chí thống kê (theo thời gian ), sau đó lựa chọn tùy vào mục đích của người dùng . Thống kê được hiển thị người dùng có thể xem xét chi tiết và xuất báo cáo


Mô tả từng bước
B1: Chọn tiêu chí thống kê (theo thời gian )
B2: Thực hiện thống kê
B3: Xuất báo cáo






Phần 2: Luồng công việc phân tích
1: Các lớp thực thể ( phương pháp trích rút danh từ )
	- Lớp đầu truyện 
	- Lớp nhân viên 
	- Lớp khách hàng 
	- Lớp Phiếu mượn 
	- Lớp hóa đơn
2:Biểu đồ lớp :