LỜI MỞ ĐẦU Đặc tả và kịch bản Khi khách hàng có nhu cầu sử dụng phần mềm để tra cứu , tìm kiếm nhà trọ và người quản lý cho thuê trọ cũng có thể kiểm tra , kiểm soát , chỉnh sửa được th
Trang 1TRƯỜNG ĐẠI HỌC MỞ HÀ NỘI KHOA ĐIỆN - ĐIỆN TỬ
BÁO CÁO MÔN: Lập Trình Ứng Dụng
Giảng viên hướng dẫn: Hoàng Anh Dũng
Đề tài : QUẢN LÝ NHÀ TRỌ
SINH VIÊN THỰC HIỆN Trần Quang Dũng MSV:21A120100051
Bùi Đức Huy MSV:21A120100133
Vũ Như Quỳnh MSV: 21A120100251
Lớp: K24-ĐT3
Trang 2LỜI CẢM ƠN
Lời đầu tiên, chúng em xin chân thành cảm ơn các thầy ,cô Trường Đại học
Mở Hà Nội đã tạo điều kiện thuận lợi cho chúng em thực hiện tiểu luận Đặc biệt chúng em xin chân thành cảm ơn thầy Hoàng Anh Dũng đã rất tận tình hướng dẫn, chỉ bảo chúng em trong suốt thời gian vừa qua.
Chúng em cũng xin chân thành cảm ơn tất cả các Thầy, các Cô trong Trường
đã tận tình giảng dạy, trang bị cho em những kiến thức cần thiết, quý báu để giúp em thực hiện được tiểu luận.
Mặc dù chúng em đã có cố gắng, nhưng với trình độ còn hạn chế, trong quá trình thực hiện đề tài không tránh khỏi những thiếu sót Chúng em hi vọng sẽ nhận được những ý kiến nhận xét, góp ý của các Thầy giáo, Cô giáo về những vấn đề triển khai trong tiểu luận.
Chúng em xin trân trọng cảm ơn!
Trang 3LỜI MỞ ĐẦU Đặc tả và kịch bản
Khi khách hàng có nhu cầu sử dụng phần mềm để tra cứu ,
tìm kiếm nhà trọ và người quản lý cho thuê trọ cũng có thể kiểm tra , kiểm soát , chỉnh sửa được thông tin phòng trọ cho thuê, nắm bắt thông tin của khách hàng trên hệ thống, phần mềm quản lý nhà trọ được xây dựng đơn giản và dễ dàng sử dụng cho cả người quản lý và khách hàng giúp tiết kiệm thời gian và đạt hiệu quả cao.
CHƯƠNG 1: TỔNG QUAN
1.1 Đặt vấn đề.
- Sự phát triển của phần mềm quản lý thuê nhà đóng vai trò quan trọng trong việccải thiện việc quản lý của các chủ trọ Sau đây là một số vấn đề liên quan tới phần mềmquản lý thuê nhà:
+ Tính bảo mật: Với việc lưu trữ thông tin cá nhân của khách hàng, phần mềm quản
lý thuê nhà cần có các biện pháp bảo mật mạnh mẽ để đảm bảo an toàn và bảo vệ quyềnriêng tư của khách hàng
+ Tính tương tác: Phần mềm quản lý thuê nhà cần phải có giao diện thân thiện và dễ
sử dụng để người dùng có thể dễ dàng sử dụng, tránh việc quá cầu kỳ dẫn đến việc ngườidùng khó thích nghi, từ đó gây ảnh hưởng xấu đến trải nghiệm
Trang 4+ Tính linh hoạt: Phần mềm quản lý thuê nhà cần có tính tùy chỉnh để phù hợp với
từng trường hợp phát sinh Điều này đảm bảo rằng phần mềm có thể được tùy chỉnh đểđáp ứng các nhu cầu cụ thể và thay đổi trong việc quản lý
+ Hỗ trợ và bảo trì: Sự phát triển của phần mềm quản lý thuê nhà cần được hỗ trợ và
bảo trì đều đặn để đảm bảo hoạt động ổn định và liên tục Các bản cập nhật và sửa lỗi cầnđược cung cấp để nâng cao tính năng và khắc phục các vấn đề kỹ thuật
1.2 Khảo sát
- Khách hàng đến trực tiếp gặp chủ nhà hoặc nhắn tin để trao đổi về vấn đề thuênhà
- Hai bên trao đổi và thỏa thuận
- Khách hàng cung cấp thông tin để chủ nhà đưa lên hệ thống quản lý
- Chủ nhà nhập thông tin, cập nhập lại phần mềm
Trang 5 Phát triển desktop app (Winform, WPF, UWP,WinUI, Mono, Uno,
MAUI,Blazor desktop )
Phát triển game 2D, 3D đa nền tảng ( Game engine: Unity, Monogame, Godot, Stride, CryEngine, Flax Engine, Evergine, NeoAxis, XNA )
b Giới thiệu về SQL server
- SQL Server chính là một hệ quản trị dữ liệu quan hệ sử dụng câu lệnh SQL để trao đổi
dữ liệu giữa máy cài SQL Server và máy Client Một Relational Database ManagementSystem – RDBMS gồm có: databases, datase engine và các chương trình ứng dụngdùng để quản lý các bộ phận trong RDBMS và những dữ liệu khác
c Tại sao nên sử dụng SQL Server
- SQL Server không phải là một hệ quản trị cơ sở dữ liệu độc lập mà nó chỉ là một thànhphần với vai trò ngôn ngữ là công cụ giao tiếp giữa hệ cơ sở dữ liệu và người dùng.Chính vì thế nó được sử dụng trong các dịch vụ thiết kế với chức năng giao tiếp vớingười dùng với các vai trò sau:
- SQL là một ngôn ngữ đòi hỏi có tính tương tác cao: Người dùng có thể dễ dàng traođổi với các tiện ích thông qua các câu lệnh của SQL đến cơ sở dữ liệu và nhận kết quả
từ cơ sở dữ liệu
- SQL là một ngôn ngữ lập trình cơ sở dữ liệu: Các lập trình viên có thể xây dựng cácchương trình ứng dụng giao tiếp với cơ sở dữ liệu bằng cách nhúng các câu lệnh SQLvào trong ngôn ngữ lập trình
- SQL là một ngôn ngữ lập trình quản trị cơ sở dữ liệu: Người quản trị cơ sở dữ liệu cóthề quản lý, định nghĩa và điều khiển truy cập cơ sở dữ liệu thông qua SQL
- SQL là một ngôn ngữ lập trình cho các hệ thống chủ khách: SQL được sử dụng như làmột công cụ giao tiếp với các trình ứng dụng trong hệ thống cơ sở dữ liệu khách chủ
- SQL là ngôn ngữ truy cập dữ liệu trên Internet: SQL được sử dụng với vai trò tươngtác với dữ liệu trong hầu hết các máy chủ web và máy chủ Internet
Trang 6- SQL là ngôn ngữ cơ sở dữ liệu phân tán: Với vai trò giao tiếp với các hệ thống trênmạng, gửi và nhận các yêu cầu truy xuất dữ liệu với nhau.
Nhìn chung SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ được sử dụng trongcác chức năng tương tác giữa người dùng và dữ liệu Chính vì thế, nó được sử dụng trongcác dịch vụ thiết kế web rẻ và chuyên nghiệp
d Visual Studio Code
Visual Studio Code (VS Code) là một trình soạn thảo mã nguồn mở gọn nhẹ nhưng có khả năng vận hành mạnh mẽ trên 3 nền tảng là Windows, Linux và macOS được phát triển bởi Microsoft Nó hỗ trợ cho
JavaScript, Node.js và TypeScript, cũng như cung cấp một hệ sinh thái mởrộng vô cùng phong phú cho nhiều ngôn ngữ lập trình khác
CHƯƠNG 2: NỘI DUNG NGHIÊN CỨU
Lược đồ ER
Trang 72.1 Xây dựng chức năng, nhiệm vụ “hoặc tính năng kỹ thuật”
2.1.1 Xây dựng chức năng hệ thống
- Thêm, sửa, xóa, tìm kiếm thông tin khách hàng
- Thêm, sửa, xóa, tìm kiếm thông tin phòng trọ
- Thêm, sửa, xóa, tìm kiếm thông tin hóa đơn
2.1.2 Mô tả chức năng hệ thống
a Thông qua các yêu cầu nghiệp vụ, phần mềm có các chức năng sau:
- Tìm kiếm: Chức năng này cho phép người quản lý có thể nhập từ khóa đểtìm kiếm mã khách hàng, họ tên khách hàng, tên khách hàng, với giá trịgần đúng và kết quả trả về tức thì
- Quản lý phòng
- Quản lý hóa đơn
b Yêu cầu phi chức năng
- Giao diện ngôn ngữ tiếng Việt
Trang 8- Tính bảo mật, độ tin cậy, hiệu năng, giao diện thân thiện.
2.2 Nội dung công việc nghiên cứu
Xây dựng biểu đồ UseCase tổng quát và biểu đồ cho từng chức năng
⮚ Actor và Use case của hệ thống
chú
1 Client Là người thực hiện thao tác đăng nhập,tìm
kiếm,xem thông tin nhà,
2 Admin Người quản lý, duy trì, điều hành toàn bộ
phần mềm Thực hiện các chức năng phân quyền, thêm sửa xóa phòng, khách hàng, hóa đơn,
Các actor của phần mềm.
2.2Chức Năng Đăng Nhập
Biểu đồ Use Case
Trang 9Hình 2.1 Mô tả chức năng đăng nhập.
Bước 1: Truy cập vào web quản trị
Bước 2: Nhập thông tin đăng nhập Chọn đăng nhập
Bước 3: Kiểm tra đã nhập đủ thông tin đăng nhập Nếu sai, luồng rẽ nhánh E-1 được thực hiện
Bước 4: Kiểm tra tài khoản có tồn tại và thỏa mãn điều kiện Không tìm thấy luồng rẽ nhánh E-2 được thực hiện
Bước 5: Hiển thị view tương ứng
Luồng rẽ
nhánh
E-1 Nhập thiếu tài khoản hoặc mật khẩu
Trang 10⮚ E-1.1 Quay về bước 1 và thông báo phải nhập đủ tài khoản hoặc mật khẩu.
E-2 Tài khoản hoặc mật khẩu không tồn tại
⮚ E-2.1 Quay về bước 1 và thông báo tài khoản không tồntại
2.2.1 Chức năng xem thông tin
Biểu đồ Use Case
Hình 2.2 Use Case chức năng xem thông tin.
Đặc tả Use Case
Tên Use Case Quản lý thông tin
Tác nhân chính Quản lý, người dùng
Luồng chính ⮚ Chọn khách hàng, nhà muốn xem
Trang 11⮚ Hiển thị thông tin tương ứng.
2.2.2Chức năng quản lý khách hàng
Biểu đồ Use Case
Hình 2.3 Use Case chức năng quản lý khách hàng.
Đặc tả Use Case
Tên Use Case Quản lý hồ sơ
Tác nhân chính Quản lý, người dùng
Trang 12Luồng chính ⮚ Nhập thông tin của khách hàng.
Luồng con A-1 Người dùng chọn thêm khách hàng:
⮚ A-1 Kiểm tra xem người dùng đã nhập đầy đủ thông tin chưa, nếu thiếu sẽ hiện thông báo
⮚ A-2 Thông báo thêm thành công
A-2 Người dùng chọn sửa thông tin khách hàng:
⮚ A-2.1 Chọn mục cần sửa
⮚ A-2.2 Điền thông tin cần sửa
Trang 13⮚ A-2.3 Chọn sửa thông tin.
A-3 Người dùng chọn xoá khách hàng:
⮚ A-3.1 kiểm tra người dùng đã chọn khách hàng nào chưa, nếu chưa, thông báo nhắc nhở
⮚ A-3.2 Thông báo xoá thành công
A-4 Người dùng chọn tìm kiếm
⮚ A-4.1 nếu để trống sẽ thực hiện hiển thị toàn bộ khách hàng
⮚ A-4.2 nếu mục tìm kiếm không trống, sẽ thực hiện tìmkiếm tên khách hàng trong mục tìm
Trang 142.2.3 Chức năng quản lý nhà
Biểu đồ Use Case
Hình 2.4 Use Case chức năng quản lý nhà
Đặc tả Use Case
Tên Use Case Quản lý nhà
Tác nhân chính Quản lý, người dùng
Luồng chính ⮚ Nhập thông tin của nhà.
⮚ Chọn chức năng:
Trang 15o Thêm nhà: Luồng con A-1 được thực hiện.
o Sửa nhà: Luồng con A-2 được thực hiện
o Xoá nhà: Luồng con A-3 được thực hiện
o Tìm kiếm nhà: Luồng con A-4 được thực hiện
Luồng con A-1 Người dùng chọn thêm nhà:
⮚ A-1.1 Kiểm tra xem thông tin nhà cần thêm có hợp lệ hay không? Nếu không luồng rẽ nhánh E-1 được thực hiện
⮚ A-1.3 Thông báo thêm thành công
A-2 Người dùng chọn sửa nhà:
⮚ A-2.1 Kiểm tra xem đã chọn nhà chưa
⮚ A-2.2 Chọn mục cần sửa
⮚ A-2.2 Điền thông tin cần sửa
⮚ A-2.3 Chọn sửa thông tin
A-3 Người dùng chọn xoá nhà:
Trang 16⮚ A-3.1 Thông báo xoá thành công.
A-4 Người dùng chọn tìm kiếm nhà
⮚ A-4.1 nếu để trống sẽ thực hiện hiển thị toàn bộ nhà
⮚ A-4.2 nếu mục tìm kiếm không trống, sẽ thực hiện tìmkiếm nhà trong mục tìm
Luồng rẽ nhánh E-1 Thông tin lớp thêm không hợp lệ.
⮚ E-2.1 Không thêm thông tin nhà và thông báo lỗi
2.3 Xây dựng biểu đồ
Trang 17Hình2.5 Biểu đồ tổng quát
2.3.1 Xây dựng biểu đồ hoạt động
Biểu đồ hoạt động chức năng đăng nhập
Trang 18Hình 2.6 Biểu đồ hoạt động chức năng đăng nhập
Trang 19Biểu đồ hoạt động chức năng quản lý khách hàng
Hình 2.7Biểu đồ hoạt động chức năng xóa thông tin khách hàng
Trang 20Biểu đồ hoạt động chức năng quản lý nhà
Hình 2.8 Biểu đồ hoạt động chức năng thêm thông tin nhà
Hình 2.9 Biểu đồ hoạt động chức năng xóa nhà
Trang 21Biểu đồ hoạt động chức năng hóa đơn
Hình 2.10 Biểu đồ hoạt động chức năng hóa đơn
Trang 22CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH
- Chức năng quản lý hóa đơn
3.2 Mô tả thiết kế giao diện
3.2.1 Giao diện đăng nhập
Trang 23Hình 3.0 Giao diện đăng nhập
- Người dùng nhập tên đăng nhập và mật khẩu đã được cấp vào form
- Chọn nút Đăng Nhập để thực hiện chuyển hướng tới form giao diện chính
- Nếu chọn hiển thị mật khẩu sẽ hiện mật khẩu dạng văn bản thay vì ký tự **
Trang 243.2.2 Giao diện người quản lý
Hình 3.1 Giao diện quản lý
3.2.3 Giao diện thông tin khách hàng
Hình 3.2 Giao diện quản lý khách hàng
Chức năng: Hiển thị tất cả thông tin các khách hàng đang thuê
Trang 25- Trên form có các chức năng:
+ Thêm: Khi nhập khách hàng, người dùng tiến hành nhập thông tin khách hàng vào phần nhập thông tin trên thanh công cụ rồi nhấm nút Thêm để thêm
+ Sưa: Để sửa thông tin của khách hàng người dùng chọn vào khách hàng cần sửa và chọn nút sửa, thông tin của khách hàng cần sửa sẽ được hiện lên phầnnhập thông tin sau đó sửa nội dung thông tin rồi chọn nút Sửa
+ Xóa: Để xóa một khách hàng thì người dùng chọn vào khách hàng muốn
xóa, sau đó chọn nút Xóa.
3.2.4 Giao diện quản lý phòng
Hình 3.3 Giao diện quản lý phòng
Chức năng: Hiển thị tất cả thông tin của phòng
- Trên form có các chức năng:
+ Thêm: Khi cần thêm nhà mới, người dùng tiến hành nhập thông tin nhà vào phần nhập thông tin trên thanh công cụ rồi nhấm nút Thêm để thêm
Trang 26+ Sửa: Để sửa thông tin của nhà người dùng chọn vào nhà cần sửa và chọn nútsửa, thông tin của nhà cần sửa sẽ được hiện lên phần nhập thông tin sau đó sửa nội dung thông tin rồi chọn nút Sửa.
+ Xóa: Để xóa một nhà khỏi danh sách thì người dùng chọn vào nhà muốn
xóa, sau đó chọn nút Xóa.
3.2.5 Giao diện hóa đơn tháng
Hình 3.4 Giao diện hóa đơn tháng
Trang 273.2.6 Giao diện tìm kiếm thông tin
Hình 3.5 Giao diện tìm kiếm thông tin
Trang 28KẾT LUẬN
1 Một số kết quả đạt được
Trong quá trình nghiên cứu và xây dựng đề tài, nhóm chúng em đã thu được những kết quả sau:
- Những chức năng cần có của một phần mềm thuê nhà cơ bản
Thiết kế giao diện chuyên nghiệp hơn
Tìm hiểu bảo mật cho hệ thống