I.Lấy yêu cầuUser : Quản lý có chức năng quản lý thông tin phòng, chốt số điện nước và lên hoáđơn hàng tháng, xem thống kê phòng theo doanh thu Đề xuất các actor của hệ thống : Quản lý,
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA AN TOÀN THÔNG TIN
- -Bài tập 2 : Pha thiết kế
Hệ thống quản lý nhà trọ
Chức năng module: -Quản lý thông tin phòng
-Chốt số điện nước và lên hoá đơn hàng tháng -Xem thống kê phòng theo doanh thu
Sinh viên thực hiện : Phạm Anh Tuấn
Mã sinh viên : B21DCAT212
Nhóm bài tập : 18
Danh sách thành viên: -Phạm Anh Tuấn – B21DCAT212
-Lê Văn Tuấn – B21DCAT208 -Nguyễn Tùng Sơn – B19DCAT154 Nhóm lớp : 07
Môn : Phân tích thiết kế và hệ thống thông tin
Giảng viên hướng dẫn : Nguyễn Mạnh Hùng
Hà Nội, 2024
Trang 2I.Lấy yêu cầu
User : Quản lý có chức năng quản lý thông tin phòng, chốt số điện nước và lên hoáđơn hàng tháng, xem thống kê phòng theo doanh thu
Đề xuất các actor của hệ thống : Quản lý, có chức năng giống thành viên nên kế thừa từ thành viên
Thành viên: Đăng nhập, đổi mật khẩu, thông tin tài khoản
Quản lý: quản lý thông tin phòng ( tìm kiếm ), lên hoá đơn, xem thống kê phòng
Biểu đồ UC tổng quát:
Hình 1 : Sơ đồ usecase tổng quan
- Sơ đồ usecase tổng quan như hình 1 trên, mô tả các usecase như sau:
+Quản lý thông tin phòng : UC này cho phép quản lý vào hệ thống tìm kiếm phòng và xem được thông tin phòng mong muốn
+Lên hoá đơn: UC này cho phép quản lý vào hệ thống lên hoá đơn , chốt số điẹn nước và xác nhận lên hoá đơn cho các phòng
+Xem thống kê: UC này cho phép quản lý vào hệ thống xem thống kê
phòng, xem thống kê các phòng theo doanh thu trong tháng
Trang 3Biểu đồ UC chi tiết cho từng chức năng:
- Chức năng quản lý thông tin phòng của actor QuanLy:
Quản lý đăng nhập trên giao diện đăng nhập -> đề xuất UC đăng nhập
Nếu thành công -> giao diện chính quản lí có lựa chọn tìm kiếm thông tin phòng (đề xuất UC xem giao diện chính quản lý )
Nếu không thành công -> Báo lỗi -> giao diện đăng nhập lại
Quản lí chọn tìm kiếm thông tin phòng từ giao diện chính quản lí -> giao diện tìm kiếm phòng hiện ra ( đề xuất UC xem giao diện tìm kiếm phòng )
Quản lí nhập mã phòng vào thanh tìm kiếm và ấn tìm kiếm -> đề xuất UC nhập
mã phòng, UC ấn tìm kiếm
Danh sách phòng với từ khoá tìm kiếm hiện ra
Quản lí chọn xem 1 phòng -> giao diện chi tiết phòng hiện ra ( đề xuất UC chọnphòng, UC xem chi tiết phòng)
Hình 2 : UC chi tiết cho chức năng quản lý thông tin phòng
Trang 4Như vậy, biểu đồ UC chi tiết cho chức năng quản lý thông tin phòng được trình bày trong Hình 2 Các UC được mô tả như sau:
+Xem giao diện tìm kiếm phòng :UC này cho phép quản lý xem được giao diệntìm kiếm phòng
+Xem giao diện chi tiết phòng: UC này cho phép quản lý xem chi tiết phòng chọn
- Chức năng chốt số điện nước và lên hoá đơn của actor QuanLy:
Quản lí đăng nhập trên giao diện đăng nhập
Nếu thành công -> giao diện chính quản lí có lựa chọn lên hoá đơn
Nếu không thành công -> Báo lỗi -> giao diện đăng nhập lại
Quản lí chọn lên hoá đơn từ giao diện chính quản lí -> giao diện lên hoá đơn hiện ra ( đề xuất UC xem giao diện lên hoá đơn )
Quản lí chọn chốt số của 1 phòng từ giao diện lên hoá đơn -> giao diện chốt số điện nước hiện ra (đề xuất UC xem giao diện chốt số )
Quản lí nhập số điện nước cho từng phòng
Quản lí chọn xác nhận lên hoá đơn
Đề xuất UC xác nhận lên hoá đơn
Nếu thàng công -> Quay lại giao diện lên hoá đơn
Nếu không thành công -> Báo lỗi -> giao diện chốt số điện nước
Trang 5Hình 3 : UC chi tiết cho chức năng lên hoá đơn
Như vậy, biểu đồ UC chi tiết cho chức năng lên hoá đơn được trình bày trong Hình 3 Các UC được mô tả như sau:
+ Xem giao diện lên hoá đơn: UC này giúp quản lý xem được giao diện lên hoá đơn
+ Xem giao diện chốt số điện nước : UC này giúp quản lý xem được giao diện chốt số điện nước
+ Xác nhận lên hoá đơn: UC này giúp quản lý xác nhận lên hoá đơn
- Chức năng xem thống kê phòng theo doanh thu của actor QuanLy:
Quản lí đăng nhập trên giao diện đăng nhập
Nếu thành công -> giao diện chính quản lí có lựa chọn xem thống kê
Nếu không thành công -> Báo lỗi -> giao diện đăng nhập lại
Quản lí chọn xem thống kê từ giao diện chính quản lí -> giao diện thống kê hiệnra
Trang 6Đề xuất UC xem giao diện thống kê
Quản lí chọn xem 1 phòng giao diện xem chi tiết thống kê phòng đó hiện ra
Đề xuất UC xem chi tiết thống kê
Hình 4: UC chi tiết cho chức năng xem thống kê
Như vậy, biểu đồ UC chi tiết cho chức năng xem thống kê được trình bày trong Hình 4 Các UC được mô tả như sau:
+Xem giao diện thống kê : UC này giúp quản lý xem được giao diện thống kê+Xem chi tiết thống kê : UC này giúp quản lý xem chi tiết thống kê doanh thu của 1 phòng
Trang 7II.Phân tích
1.Kịch bản:
Kịch bản cho chức năng quản lý thông tin phòng :
Scenario Quản lý tìm kiếm thông tin phòng
2.Hệ thống hiện giao diện chính của quản lý, có lựa chọn tìm kiếm thông tin phòng
3.Quản lý chọn tìm kiếm thông tin phòng4.Hệ thống hiện giao diện chính của tìm kiếm thông tin phòng: (nút tìm kiếm, thanh tìm kiếm)
5.Quản lý nhập “20” vào thanh tìm kiếm và ấn nút tìm kiếm6.Hệ thống hiện ra các phòng có chứa từ khoá “20” trong mã:
7.Quản lý ấn vào nút xem của phòng 2028.Hệ thống hiện ra giao diện chi tiết của phòng 202:
(Mã phòng, Trạng thái, Diện tích, Giá phòng, Khách hàng)
Trang 89.Quản lý ấn OK10.Hệ thống quay lại giao diện tìm kiếm thông tin phòng11.Quản lý lặp lại các bước từ 5 đến 10 đến khi tìm kiếm được hết thông tin phòng mong muốn
Exception 1.1.Quản lý không đăng nhập được do sai username, password
5.1.Quản lý để trống và ấn nút tìm kiếm6.1.Không có phòng nào có chứa từ khoá khách hàng tìm kiếm
Kịch bản cho chức năng chốt số điện nước và lên hoá đơn :
Scenario Quản lý chốt số điện nước và lên hoá đơn
2.Hệ thống hiện giao diện chính của quản lý, có lựa chọn lên hoáđơn
3.Quản lý chọn lên hoá đơn4.Hệ thống hiện ra giao diện lên hoá đơn cho các phòng đang thuê:
(STT, mã phòng , nút chốt số )
Trang 95.Quản lí bấm chốt số của phòng 101
6.Hệ thống hiện ra giao diện chốt số điện nước cho phòng 101(Gồm các thông tin như khách hàng, số điện cũ, số nước cũ, nút xác nhận, nút cancel )
Trang 107.Quản lí nhập số điện, số nước, tiền dịch vụ và ngày tạo hoá đơn cho phòng 101 sau đó ấn nút xác nhận
8.Hệ thống hiển thị giao diện xác nhận lên hoá đơn:
( có thông tin khách hàng, phòng, hoá đơn theo số đã nhập vào, quản lý, ngày tạo và nút xác nhận, nút cancel )
Trang 11hết các phòngException 1.1.Quản lý không đăng nhập được do sai username, password
4.1 Chưa có phòng nào được thuê, không có phòng nào hiện ra7.1 Quản lý để trống không nhập số điện, nước và ấn nút xác nhận
7.2 Quản lý nhập thông tin không hợp lệ ( có chứa chữ cái, ký
tự đặc biệt, không phải số dương ) và ấn xác nhận
Kịch bản cho chức năng thống kê phòng theo doanh thu :
Scenario Quản lý thống kê phòng theo doanh thu
2.Hệ thống hiện giao diện chính của quản lý, có lựa chọn xem thống kê phòng
3.Quản lý chọn xem thống kê phòng4.Hệ thống hiện giao diện chính của xem thống kê :( chỗ chọn thời gian thống kê và nút thống kê )
5.Quản lý chọn thời gian và ấn nút thống kê
6.Giao diện hiện ra bảng thống kê các phòng theo doanh thu trong thời gian mà quản lý đã chọn: (stt, mã phòng, doanh thu,
Trang 12nút xem)
7.Quản lý chọn xem chi tiết phòng 1018.Hệ thống hiện ra giao diện xem chi tiết hoá đơn của phòng 101: (thông tin hoá đơn, nút OK )
9.Quản lý nhấn OK10.Hệ thống quay lại giao diện thống kê11.Lặp lại các bước từ 5 đến 10 cho đến khi quản lý xem xong thống kê trong các khoảng thời gian mong muốn
Exception 1.1.Quản lý không đăng nhập được do sai username, password
4.1 Chưa có phòng nào được thuê, không có phòng nào hiện ra
2.Biểu đồ trạng thái:
Quản lý thông tin phòng:
1.Từ giao diện đăng nhập quản lý đăng nhập vào hệ thống:
-nếu thành công thì chuyển sang giao diện chính quản lý
-nếu không thì hiện thông báo đăng nhập lại, quản lý ấn OK thì quay lại giao diện đăng nhập
Trang 132.Từ giao diện chính quản lý chọn tìm kiếm thông tin phòng, chuyển sang giao diện tìm kiếm thông tin phòng
3.Từ giao diện tìm kiếm, nếu chức năng tìm kiếm được thực hiện thì cập nhật trên giao diện tìm kiếm
4.Từ giao diện tìm kiếm, quản lý chọn Xem thì chuyển sang giao diện xem chi tiết phòng
5.Tại giao diện xem chi tiết phòng,sau khi xem xong quản lý ấn OK quay lại giao diện tìm kiếm thông tin phòng
Hình 5: Biểu đồ trạng thái cho chức năng quản lý thông tin phòng
Trang 14Chốt số điện nước và lên hoá đơn phòng:
1 Từ giao diện chính quản lý sau khi đăng nhập ,quản lý chọn lên hoá đơn thì chuyển sang giao diện lên hoá đơn
2.Từ giao diện lên hoá đơn, chọn chốt số thì chuyển sang giao diện chốt số3.Từ giao diện chốt số, quản lý điền thông tin, sau đó ấn xác nhận:
-nếu đúng, thì chuyển sang giao diện xác nhận
-nếu lỗi, thì hiện thông báo lỗi quay lại giao diện chốt số
4.Từ giao diện xác nhận, quản lý ấn xác nhận , quay lại giao diện lên hoá đơn
Trang 15Hình 6: Biểu đồ trạng thái cho chức năng chốt số điện nước và lên hoá đơn
Trang 16Thống kê phòng theo doanh thu:
1 Từ giao diện chính quản lý sau khi đăng nhập,quản lý chọn xem thống kê phòng thì hiện lên giao diện xem thống kê
2 Quản lý chọn chức năng xem thống kê phòng thì hiện ra giao diện thống kê
3 Quản lý chọn thời gian và thống kê thì giao diện thống kê cập nhật
4 Quản lý chọn xem 1 phòng, giao diện xem chi tiết hoá đơn hiện ra
Hình 7: Biểu đồ trạng thái cho chức năng xem thống kê phòng theo doanh thu
3.Biểu đồ lớp thực thể :
Trang 17Mô tả Module :
Hệ thống quản lý nhà trọ , quản lý có thể tìm kiếm và xem thông tin phòng với đầy đủ thông tin như mã phòng, trạng thái, diện tích, khách thuê, giá phòng, quản lý còn có thể chốt số điện, số nước của các phòng vào cuối tháng và lên hoá đơn với đầy đủ thông tin như số điện, số nước, tiền điện, tiền nước, giá phòng, tiền dịch vụ, mã phòng, tổng tiền, quản lý còn có thể xem thống kê phòng theo doanh thu với thông tin như mã phòng, doanh thu
Trích và đánh giá danh từ :
-hệ thống ( chung chung, trừu tượng ) -> loại
-nhà trọ -> Lớp NhaTro (tên, địa chỉ, mô tả)
-đề xuất lớp ThanhVien (username, password, vai trò , tên, ngày sinh, giới tính, số điện thoại ) (trừu tượng)
-quản lý -> Lớp QuanLy kế thừa ThanhVien
-khách hàng -> Lớp KhachThue kế thừa ThanhVien
-phòng -> lớp Phong (mã phòng, diện tích, loại phòng, giá phòng)
-đề xuất lớp HopDong chứa thông tin của KhachHang và Phong (ngày ký, ngày hếthạn)
-mã phòng -> thuộc tính
-trạng thái, diện tích, giá phòng -> thuộc tính
-số điện, số nước -> thuộc tính
-hoá đơn -> Lớp HoaDon ( số điện cũ, số nước cũ, số điện mới, số nước mới, tiền điện, tiền nước,giá phòng, dịch vụ chung , tổng tiền, luỹ tiến điện các bậc, luỹ tiến nước các bậc )
-đề xuất lớp ThongKePTDT (doanh thu) kế thừa từ Phòng
Xác định quan hệ số lượng giữa các lớp thực thể :
- Quản lý có thể lên nhiều hoá đơn: QuanLy – HoaDon : 1 – n
-1 phòng có nhiều hợp đồng : Phong – HopDong : 1 – n
-1 khách hàng có nhiều hợp đồng : KhachHang – HopDong : 1 – n
Trang 18-1 phòng có nhiều hoá đơn : Phong – HoaDon : 1 – n
Xác định quan hệ đối tượng giữa các lớp thực thể :
-Thông tin địa chỉ nằm trong thông tin của thành viên và nhà trọ
-Thông tin phòng, khách hàng có trong thông tin của hợp đồng
-Thông tin của hợp đồng, quản lý , phòng có trong thông tin của hoá đơn
Hình 8: Biểu đồ lớp thực thể cho hệ thống quản lý nhà trọ
4.Biểu đồ lớp đầy đủ
-Quản lý thông tin phòng:
Giao diện chính đăng nhập -> Đề xuất thành GDDangnhap , cần các thành phần:+Nhập username: Kiểu input
+Nhập password: Kiểu input
+Chọn đăng nhập : Kiểu submit
Giao diện chính quản lý -> Đề xuất thành GDChinhQL, cần các thành phần:+Chọn tìm kiếm : Kiểu submit
Để hiện lên giao diện chính quản lý phải xử lí bên dưới hệ thống:
Trang 19+Kiểm tra đăng nhập
+input: username, password ( ThanhVien )
+output : Boolean
+đề xuất phương thức checkDangnhap(), gán vào lớp ThanhVien
Giao diện chính tìm kiếm -> Đề xuất thành GDTimkiem, cần các thành phần:+Nhập mã phòng: kiểu input
+Chọn tìm kiếm: kiểu submit
+Bảng danh sách các phòng: kiểu output, submit
Để hiện ra danh sách phòng sau khi ấn tìm kiếm ở trên, phải xử lí bên dưới hệ thống:
+Lấy danh sách phòng theo mã phòng nhập vào
+input: mã phòng
+output: danh sách Phong
+đề xuất phương thức getPhong(), gán vào lớp Phong
Giao diện xem chi tiết phòng -> Đề xuất thành GDChitiet, cần các thành phần:+Bảng thông tin chi tiết phòng : output
+Chọn OK để quay lại : submit
Để hiện ra bảng thông tin chi tiết phòng , cần xử lí dưới hệ thống:
+Lấy thông tin chi tiết phòng
Trang 20Hình 9 : Biểu đồ lớp đầy đủ cho chức năng quản lý thông tin phòng
Trang 21-Chốt số điện nước và lên hoá đơn:
Giao diện chính đăng nhập -> Đề xuất thành GDDangnhap , cần các thành phần:+Nhập username: Kiểu input
+Nhập password: Kiểu input
+Chọn đăng nhập : Kiểu submit
Giao diện chính quản lý -> Đề xuất thành GDChinhQL, cần các thành phần:+Chọn lên hoá đơn: Kiểu submit
Để hiện lên giao diện chính quản lý phải xử lí bên dưới hệ thống:
+Kiểm tra đăng nhập
+input: username, password ( ThanhVien )
+output : Boolean
+đề xuất phương thức checkDangnhap(), gán vào lớp ThanhVien
Giao diện chính lên hoá đơn -> Đề xuất thành GDLenhoadon, cần các thành phần+Bảng danh sách các phòng : Kiểu output, submit
Để hiện ra danh sách các phòng , cần xử lí dưới hệ thống:
+Lấy danh sách các phòng đang thuê
+input: trạng thái phòng
+output: danh sách Phong
+đề xuất phương thức getPhong () , gán vào lớp Phong
Giao diện chốt số điện nước -> Đề xuất thành GDChotso , cần các thành phần:+thông tin hoá đơn cũ : kiểu output
+nhập ngày tạo: kiểu input
+nhập số điện: kiểu input
+nhập số nước: kiểu input
+nhập tiền dịch vụ : kiểu input
Trang 22+chọn xác nhận : kiểu submit
+chọn cancel : kiểu submit
Để hiện ra giao diện chốt số điện nước , cần xử lí dưới hệ thống:
+lấy ra thông tin hoá đơn cũ của phòng cần chốt số
+input : mã phòng
+output: thông tin về số điện cũ, số nước cũ (HoaDon)
+đề xuất phương thức getHoaDon(), gán vào lớp HoaDon
Để chuyển đến GDXacnhan thì phải kiểm tra thông tin nhập vào có hợp lệ không, cần xử lí dưới hệ thống:
+kiểm tra thông tin số điện nước nhập vào
+input: số điện, số nước, ngày , tiền dịch vụ
+output: boolean
+đề xuất phương thức checkHoaDon(), gán vào lớp HoaDon
Giao diện xác nhận lên hoá đơn -> Đề xuất thành GDXacnhan, cần các thành phần:-thông tin hoá đơn : kiểu output
-chọn cancel : kiểu submit
+output: thông tin về hoá đơn (HoaDon)
+đề xuất phương thức createHoaDon(), gán vào lớp HoaDon
Để thông tin các hoá đơn được lưu lại thì cần xử lí dưới hệ thống:
+lưu thông tin hoá đơn
+input: thông tin về hoá đơn (HoaDon)
Trang 23+output: boolean
+đề xuất phương thức saveHoaDon(), gán vào lớp HoaDon
Hình 10 : Biểu đồ lớp đầy đủ cho chức năng chốt số điện nước và lên hoá đơn
Trang 24-Xem thống kê phòng theo doanh thu:
Giao diện chính đăng nhập -> Đề xuất thành GDDangnhap , cần các thành phần:+Nhập username: Kiểu input
+Nhập password: Kiểu input
+Chọn đăng nhập : Kiểu submit
Giao diện chính quản lý -> Đề xuất thành GDChinhQL, cần các thành phần:+Chọn xem thống kê: Kiểu submit
Để hiện lên giao diện chính quản lý phải xử lí bên dưới hệ thống:
+Kiểm tra đăng nhập
+input: username, password ( ThanhVien )
+output : Boolean
+Đề xuất phương thức checkDangnhap(), gán vào lớp ThanhVien
Giao diện xem thống kê -> Đề xuất thành GDThongke, cần các thành phần:+Bảng danh sách các phòng đang thuê theo tổng doanh thu : kiểu output, kiểu submit
+Nhập thời gian : kiểu input
+Nút thống kê : kiểu submit
Để hiện ra danh sách các phòng theo doanh thu, cần xử lí dưới hệ thống:
+Lấy danh sách thống kê các phòng theo doanh thu trong thời gian đó
+input : thời gian
+output: danh sách thống kê các phòng đang thuê theo doanh thu
+Đề xuất phương thức getThongke() , gán cho lớp HoaDon
Giao diện xem chi tiết hoá đơn -> GDChitietHoaDon, cần các thành phần :+thông tin hoá đơn : kiểu output
+nút OK : kiểu submit
Để hiện ra thông tin chi tiết hoá đơn , cần xử lí dưới hệ thống:
Trang 25+Lấy thông tin chi tiết hoá đơn
+input : mã phòng, thời gian
+output : thông tin chi tiết hoá đơn phòng trong thời gian đó ( HoaDon )
+đề xuất phương thức getChitietHoaDon() gán vào lớp HoaDon
Hình 11 : Biểu đồ lớp đầy đủ cho chức năng xem thống kê phòng theo doanh thu
Trang 265.Biểu đồ cộng tác ( kịch bản chuẩn v.2 và biểu đồ tương ứng ) -Chức năng quản lý thông tin phòng:
Kịch bản chuẩn v.2:
1.Tại giao diện chính đăng nhập, quản lý đăng nhập
2.Lớp GDDangnhap gọi đến lớp ThanhVien yêu cầu kiểm tra đăng nhập
3 Lớp ThanhVien kiểm tra đăng nhập
4 Lớp ThanhVien trả kết quả lại cho GDDangnhap
5 GDDang nhập gọi đến lớp GDChinhQL yêu cầu hiển thị
6.GDChinhQL hiển thị cho quản lý
7.Quản lý chọn tìm kiếm thông tin phòng
8.GDChinhQL gọi đến lớp GDTimkiem
9.GDTimkiem hiển thị cho quản lý
10.Quản lý chọn tìm kiếm
11.GDTimkiem gọi đến lớp Phong yêu cầu lấy danh sách phòng
12.Lớp Phong lấy danh sách phòng
13.Lớp Phong trả kết quả lại cho GDTimkiem
14.GDTimkiem hiển thị cho quản lý
15.Quản lý chọn xem
16.GDTimkiem gọi đến lớp GDChitiet
17.GDChitiet gọi đến lớp HopDong yêu cầu lấy thông tin phòng
18.Lớp HopDong lấy thông tin phòng
19.Lớp HopDong trả kết quả lại cho GDChitiet
20.GDChitiet hiển thị cho quản lý
21.Quản lý chọn OK
22.GDChitiet gọi đến GDTimkiem
Trang 2723.GDTimkiem hiển thị cho quản lý ( lặp lại các bước từ 7 đến 21 cho đến khi quản lý xem hết được thông tin phòng mà mình mong muốn )
Biểu đồ cộng tác:
Hình 12 : Biểu đồ cộng tác cho chức năng quản lý thông tin phòng