4. Chức năng của hệ thống
1.4. Sơ đồ lớp (Class diagram)
1.5. Workflow
Báo cáo môn Công nghệ phần mềm
Báo cáo môn Công nghệ phần mềm
Chương 2
THIẾT KẾ CƠ SỞ DỮ LIỆU 2.1. Mơ hình thực thể quan hệ (ERD)
2.2. Lược đồ quan hệ
KHACHHANG (MA_KH, HOTEN_KH, GIOITINH_KH, TINHTRANG,
DIACHI_KH, SDT_KH, CMND)
PHIEUTHUEPHONG (MA_PTP, MA_PDP, SONGUOI)
CTPHIEUTHUE (MA_PTP, MA_PHONG, HOTEN_KH, CMND, NGAYNHAN,
NGAYTRA_DK, NGAYTRA_TT)
NHANVIEN (TENDANGNHAP, MATKHAU, HOTEN, DIACHI, SDT, EMAIL,
PHANQUYEN)
PHONG (MA_PHONG, TEN, GIA, TINHTRANG, SONGUOITOIDA, PHONG_KM, MOTA)
CTPHIEUDAT (MA_PDP, MA_PHONG, Ngay_DK, Ngay_Nhan, TienCoc) DICHVU (MA_DV, TEN, GIA)
HOADONDV (MA_HOADONDV, MA_PTP, TONGTIEN)
CHITIETDV (MA_HOADONDV, MA_DV, SOLUONGSUDUNG, THANHTIEN) GIAMGIA (MA_KM, TEN_KM, DISCOUNT, NGAY_BD, NGAY_KT)
HOADON (MA_HOADON, TENDANGNHAP, MA_KH, TONGTIEN, MA_PTP,
NGAYLAP)
CTHOADON (MA_HOADON. MA_PHONG, SONGAYTHUE, TIENTHUE,
TIENDV, GIAMGIA_KH)
2.3. Chi tiết các bảng
Bảng 2.1. Bảng NHANVIEN
STT Tên thuộc tính Kiểu dữ liệu Kích thước Mơ tả
1 TENDANGNHAP varchar 20 Tên đăng nhập 2 MATKHAU varchar 20 Mật khẩu đăng nhập 3 HOTEN nvarchar 50 Họ & tên nhân viên 4 DIACHI nvarchar 100 Địa chỉ nhân viên 5 SDT varchar 10 Số điện thoại nhân viên 6 EMAIL varchar 50 Email của nhân viên
7 PHANQUYEN nvarchar 10 Xem tài khoản là Admin hay Users
Bảng 2.2. Bảng KHACHHANG
STT Tên thuộc tính Kiểu dữ liệu Kích thước Mơ tả
1 MA_KH varchar 10 Mã khách hàng 2 HOTEN_KH nvarchar 50 Họ tên khách hàng 3 DIACHI_KH nvarchar 100 Địa chỉ khách hàng 4 SDT_KH varchar 10 Số điện thoai khách hàng 5 EMAIL_KH varchar 50 Email của khách hàng 6 CMND_KH varchar 13 CMND của khách hàng 7 GIOITINH_KH nvarchar 6 Khách hàng là nam hay nữ
Bảng 2.3. Bảng PHONG
Báo cáo môn Công nghệ phần mềm
1 MA_PHONG varchar 10 Mã phòng 2 TEN nvarchar 50 Tên phòng
3 GIA int Mã loại phòng
4 TINHTRANG nvarchar 10 Cịn trống hay khơng? 5 SONGUOITOIDA int Số người tối đa
6 PHONG_KM nvarchar 10 Có phải là phịng khuyến mãi hay không
7 MOTA nvarchar max Một số thơng tin về phịng
Bảng 2.4. PHIEUDATPHONG
STT Tên thuộc tính Kiểu dữ liệu Kích thước Mơ tả
1 MA_PDP varchar 10 Mã đặt phòng 2 MA_KH nvarchar 50 Mã khách hàng 3 SONGUOI int Số người đăng ký ở
Bảng 2.5. Bảng CTPHIEUDAT
STT Tên thuộc tính Kiểu dữ liệu Kích thước Mơ tả
1 MA_PDP varchar 10 Mã đặt phòng 2 MA_PHONG varchar 10 Mã phòng 3 Ngay_DK datetime Ngày đăng ký ở 4 Ngay_Nhan datetime Ngày bắt đầu ở 5 TienCoc int Tiền đặt cọc
Bảng 2.6. Bảng PHIEUTHUEPHONG
STT Tên thuộc tính Kiểu dữ liệu Kích thước Mơ tả
1 MA_PTP varchar 10 Mã phiếu thuê phòng 2 MA_PDP varchar 10 Mã phiếu đặt phòng 3 MA_KH varchar 10 Mã khách hàng
Bảng 2.7. Bảng CTPHIEUTHUE
STT Tên thuộc tính Kiểu dữ liệu Kích thước Mơ tả
1 MA_PTP varchar 10 Mã th phịng 2 MA_PHONG varchar 10 Mã phòng
3 HOTEN_KH nvarchar 50 Họ tên khách hàng 4 NGAYNHAN datetime Ngày bắt đầu ở
5 NGAYTRA_DK datetime Ngày dự kiến trả phòng 6 NGAYTRA_TT datetime Ngày trả phòng thực tế
Bảng 2.8. Bảng DICHVU
STT Tên thuộc tính Kiểu dữ liệu Kích thước Mơ tả
1 MA_DV varchar 10 Mã dịch vụ 2 TEN nvarchar 50 Tên dịch vụ
3 GIA int Gía
Bảng 2.9. Bảng HOADONDV
STT Tên thuộc tính Kiểu dữ liệu Kích thước Mơ tả
1 MA_HOADONDV varchar 10 Mã hóa đơn dịch vụ 2 MA_PTP varchar 10 Mã phiếu thuê phòng 3 TONGTIEN int Tổng tiền cho hóa đơn
Bảng 2.10. Bảng CHITIETDV
STT Tên thuộc tính Kiểu dữ liệu Kích thước Mơ tả
1 MA_HOADONDV varchar 10 Mã hóa đơn dịch vụ 2 MA_DV varchar 10 Mã dịch vụ
3 THANHTIEN int Thành tiền 4 SOLUONGSUDUNG int Số lượng dùng
Bảng 2.11. Bảng HOADON
STT Tên thuộc tính Kiểu dữ liệu Kích thước Mơ tả
1 MA_HOADON varchar 10 Mã hóa đơn
2 TENDANGNHAP varchar 20 Tên nhân viên lập đơn 3 MA_KH varchar 10 Mã khách hàng
4 TONGTIEN int Tổng tiền thanh toán 5 MA_PTP varchar 10 Mã phiếu thuê phòng
Bảng 2.12. Bảng CHITIETHD
STT Tên thuộc tính Kiểu dữ liệu Kích thước Mơ tả
1 MA_HOADON varchar 10 Mã hóa đơn 2 MA_HOADONDV varchar 10 Mã dịch vụ 3 MA_PHONG varchar 10 Mã phịng
Báo cáo mơn Cơng nghệ phần mềm
4 SONGAYTHUE int Số ngày th phịng
5 TIENTHUE int Tiền thuê
6 TIENDV int Tiền sử dụng dịch vụ 7 GIAMGIA_KH int Giảm giá
Bảng 2.13. Bảng GIAMGIA
STT Tên thuộc tính Kiểu dữ liệu Kích thước Mơ tả
1 MA_KM varchar 10 Mã khuyến mãi 2 TEN_KM nvarchar 100 Tên khuyến mãi 3 DISCOUNT varchar Phần tram giảm giá 4 NGAY_BD datetime Ngày bắt đầu 5 NGAY_KT datetime Ngày kết thúc
Báo cáo môn Công nghệ phần mềm
Chương 3
CÀI ĐẶT CHƯƠNG TRÌNH
3.1. Mơi trường cài đặt và công nghệ sử dụng
3.1.1. Môi trường cài đặt
Trong đề tài lần này, nhóm chúng em quyết định chọn mơi trường Visual studio 2017 để cài đặt chương trình vì những ưu điểm nổi bật như sau:
- Hỗ trợ viết mã nguồn nhanh chóng. - Công cụ debug mạnh mẽ.
- Go To Definition to class và function.
- Cài đặt thư viện nhanh chóng thơng qua Nuget.
3.1.2. Cơng nghệ sử dụng
Với mục tiêu ban đầu là xây dựng một hệ thống quản lý khách sạn sử dụng dữ liệu được kết nối từ SQL server thì nhóm em quyết định chọn cơng nghệ ADO.NET viết bằng ngơn ngữ C# bởi vì những tính năng tối ưu sau:
- Đáp ứng mơ hình lập trình mới trên nền .NET. - Hỗ trợ rất tốt SQL server.
- Hỗ trợ kiến trúc 3 lớp cái mà chúng em đã vận dụng vào cài đặt chương trình giúp code rõ ràng, dễ hiểu và dễ phục hồi khi có sự cố xảy ra.
3.2. Tổ chức các lớp trong chương trình
3.2.1. Lớp giao diện
Lớp này có nhiệm vụ chính giao tiếp với người dùn. Nó gồm các thành phần giao diện winform và thực hiện công việc như nhập dữ liệu, hiển thị dữ liệu và kiểm tra tính đúng đắn của dữ liệu trước khi gọi các lớp trong tầng nghiệp vụ.
Mô tả chi tiết các lớp:
FrmDangNhap.cs: Đăng nhập
FrmDichVu.cs: Dịch vụ
FrmDoanhThu.cs: Doanh thu
FrmDoanhThuDV.cs: Doanh thu dịch vụ
FrmDoiMatKhau.cs: Đổi mật khẩu
FrmHoaDon.cs: Hóa đơn
FrmKhachHang.cs: Khách hàng
FrmMain.cs: Lớp chính
FrmNhanVien.cs: Nhân viên (Người dùng)
FrmPhieuDatPhong.cs: Phiếu đặt phịng
FrmPhong.cs: Phịng
FrmPhongDaThue.cs: Phịng đã có người th
FrmPhongTrong.cs: Phịng trống
3.2.2. Tầng nghiệp vụ
Đây là nơi đáp ứng các yêu cầu thao tác dữ liệu của các lớp giao diênnj, xử lý chính nguồn dữ liệu từ Presentation Layer trước khi truyền xuống Data Access Layer và lưu xuống hệ quản trị CSDL.
Báo cáo môn Công nghệ phần mềm
Đây còn là nơi kiểm tra các ràng buộc, tính tồn vẹn và hợp lệ dữ liệu, thực hiện tính tốn và xử lý các yêu cầu nghiệp vụ, trước khi trả kết quả về lớp Presentation.
3.2.3. Tầng dữ liệu
Tầng này có chức năng giao tiếp với hệ quản trị CSDL như thực hiện các công việc liên quan đến lưu trữ và truy vấn dữ liệu ( tìm kiếm, thêm, xóa, sửa,…)
3.3. Danh sách giao diện của hệ thống
3.3.2. Giao diện chính
Báo cáo mơn Cơng nghệ phần mềm
3.3.4. Giao diện quản lý người dùng
3.3.5. Giao diện quản lý phòng
3.3.7. Giao diện quản lý khách hàng
Báo cáo môn Công nghệ phần mềm
3.3.10. Giao diện phịng chưa có người ở
Báo cáo mơn Cơng nghệ phần mềm
3.3.12. Giao diện sử dụng dịch vụ
3.3.14. Giao diện hóa đơn
Báo cáo môn Công nghệ phần mềm
KẾT LUẬN 1. Những ưu điểm đạt được
Qua q trình học tập và nghiên cứu mơn cơng nghệ phần mềm nhóm chúng em đã áp dụng thành cơng những kiến thức đã học trong việc xây thành công hệ thống “Quản lý khách sạn” theo một quy trình cơng nghệ phần mềm và đạt được một số ưu điểm sao:
- Biết phân tích thiết kế các mơ hình UML theo hướng đối tượng - Nắm vững một quy trình cơng nghệ phần mềm
- Áp dụng liên thông các kiến thức đã học trong việc xẩy dựng hệ thống trong các mơn như: Lập trình hướng đối tượng, Lập trình windows, Hệ quản trị cơ sở dữ liệu, …
2. Những mặt hạn chế
Tuy nhiên do thời gian có hạn và kiến thức cịn nhiều hạn chế, chúng em gặp phải một số khó khăn trong q trình thực hiện và một số chức năng chưa đạt như mong muốn.
3. Hướng phát triển trong tương lai
Trong tương lai, nếu có điều kiện và thời gian, nhóm chúng em muốn phát triển phần mềm thân thiện hơn với người dùng và xử lý nhanh chóng hơn.
TÀI LIỆU THAM KHẢO
[1] Dương Thành Phết, Slide Bài giảng môn Công nghệ phần mềm, trường đại học hutech.
[2] ThS. Nguyễn Đình Phương Loan, Phân tích hướng đối tượng với UML, trường đại học Cơng nghệ thông tin, năm 2015.