II. PHÂN TíCH THIếT Kế Hệ TH ống
2. Sơ đồ phân rã chức năng
Ban quản lý
Hệ thống quản lý khách sạn
Quản lý khách sạn Quản lý đặt phòng qua mạng
Quản lý tài nguyênQuản lý khách vàoQuản lý đặt phòng
Hình 2: Sơ đồ phân rã chức năng
2.1 Quản lý tài nguyên:
Khách sạn Hilton Hà Nội có các tàI nguyên cần phải quản lý: phòng, loại phòng, tiện nghi. Trong đó mỗi phòng thuộc loại phòng và mỗi phòng đợc trang bị những tiện nghi khác nhau.
Thông tin về phòng cần phảI đợc quản lý để phục vụ cho quy trình đặt phòng, khách vào, khách ra. Thông tin về phòng bao gồm: số phòng, loại phòng, các
tiện nghi, giá phòng…sẽ đợc lu vào kho dữ liệu “danh sách phòng”. Thông tin về phòng cũng phảI đợc cập nhật thờng xuyên trạng tháI của phòng: trống, rỗi, đợc đặt.
Các tiện nghi đợc trang bị cho các phòng cũng đợc phân loại và cập nhật vào danh sách các tiện nghi. Các tiện nghi này sẽ đợc quản lý theo từng phòng và do nhân viên phục vụ buồng kiểm soát tình trạng phòng khi dọn dẹp trong thời gian khách ở. Thông tin về tiện nghi bao gồm: tên tiện nghi, giá tiện nghi, mô tả tiên nghi
Quản lý tài nguyên cho phép quản lý dịch vụ mà khách sạn cung cấp. Thông tin về dịch vụ bao gồm: tên dịch vụ, giá tiền.
Chức năng quản lý tài nguyên:
2.2 Quản lý đặt phòng:
Chức năng quản lý đặt phòng cho phép quản lý thông tin về các cuộc đặt phòng của khách. Thông tin về cuộc đặt phòng bao gồm:
Thông tin về khách: tên khách, giới tính, địa chỉ, thông tin định danh, số điện thoại, số fax,..
Quản lý tài nguyên
Thông tin về cuộc đặt phòng bao gồm: số phòng, ngày đến, giờ đến, ngày đi,..
Chức năng quản lý đặt phòng;
2.3 Quản lý khách vào:
Khách có đặt trớc:
Khách đa ra thông tin liên quan đến cuộc đặt phòng. Nhân viên lễ tân tra cu thông tin cuộc đạt phòng trên máy tính, xác nhận lại các thông tin thuê phòng và lu vào cơ sở dữ liệu. Thông về Quản lý khách vào bao gồm: thông tin về khách và thông tin phòng khách thuê.
Khách không đặt trớc:
Nhân viên lễ tân sẽ đa ra các thông tin về các phòng trống trong khách sạn cho khách thông qua việc truy vấn vào máy tính vào kho dữ liệu danh sách phòng. Khách xác nhận thuê phòng, nhân viên sẽ lu các thông tin vào cơ sở dữ liệu
Chức năng quản lý khách vào:
Quản lý đặt phòng
Khách Cuộc đặt phòng
Quản lý khách vào
2.4 Quản lý sử dụng dịch vụ:
Thông tin khách sử dụng các dịch vụ của khách sạn sẽ đợc lu trữ vào cơ sở dữ liệu và đực tính toán tự động số tiền khách trả. Khách có thể thanh toán theo hóa đơn riêng lẻ của từng dịch vụ.
Chức năng quảnlý sử dụng dịch vụ;
2.5 Quản lý khách ra:
Khách nhận đợc hóa đơn từ nhân viên thu ngân lễ tân và thanh toán tiền. Nhân viên xác nhận việc thanh toán vào cơ sở dữ liệu. Nhân viên thu ngân đặt phòng khách thuê thành trống.
Chức năng quản lý khách ra:
Quản lý sử dụng dịch vụ
Ăn uống điện thoại Giặt là …..
Quản lý khách ra
2.6 Báo cáo;
Hệ thống báo cáo có thể lọc theo thời gian hoặc theo một số tiêu chí khác Báo cáo về tình trạng phòng: số phòng rỗi, phòng bận
Báo cáo về khách: số khách ra, số khách vào, .. Báo cáo về Phòng đặt
Báo cáo về doanh thu phòng Báo cáo về doanh thu dịch vụ
2.7 Thông tin về khách sạn:
Chức năng thông tin về khách sạn nhằm giới thiệu và quảng cáo về khách sạn: lịch sử khách sạn, vị trí địa lý, địa chỉ khách sạn, diện tích khuôn viên khách sạn…
Thông tin về khách sạn đa ra các dịch vụ mà khách sạn cung cấp .… Khách hàng có thể truy vấn trên mạng về thông tin của khách sạn.
2.8 Đặt phòng qua mạng:
Sauk hi truy vấn trên mạng, khách hàng có thể lựa chọn việc đặt phòng tại khách sạn thông qua mạng. Để có thể đặt phòng, khách hàng sẽ cung cấp một tàI khoản với email của khách hàng đã có
Việc đặt phòng sẽ đợc tiến hành nh sau: khách sẽ đa ra thông tin liên quan đến việc đặt phòng: số lợng phòng đặt, số khách đến thuê phòng, số lợng phòng đôi, số lợng phòng đơn, ngày đến, ngày đi . Yêu cầu với cuộc đặt phòng là ngày đặt phòng sẽ trớc ngày thuê phòng hai ngày. Các thông tin sẽ đợc gửi tới hệ thống. Khi đó hệ thống sẽ tự truy vấn để kiểm tra các thông tin khách nhập có thỏa mãn không. Sau đó hệ thống sẽ kiểm tra số lợng phòng có thể đáp ứng cho khách. Nếu nh thoả mãn thì sẽ xác nhận lại thông tin đặt phòng và đặt phòng cho khách. Nếu không thỏa mãn thì gửi thông tin từ chối khách.
3 Biểu đồ luồng dữ liệu hệ thống
3.1 Biểu đồ luồng dữ liệu mức 0
DS phòng
Thông tin phòng Thông tin phòng
Yêu cầu đặt phòng
Thông tin đặt phòng trả lời yêu cầu đặt phòng
DS phòng đặt
Yêu cầu thuê phòng
Thông Trả lời yêu cầu thuê phòng tin
khách Yêu cầu dịch vụ DS Khách
Trả lời yêu cầu dịch vụ thông tin sử dụng d vụ
Dịch vụ
Yêu cầu trả phòng Thông tin phòng
Hóa đơn
DS phòng hóa đơn
DS phòng Dịch vụ
Thông tin phòng Hoá đơn thông tin dịch vụ thông tin phòng
Thông tin đặt phòng Thông tin khách
DSKhách DS phòng đặt
y/c Báo
y/c cập nhật thông tin tài nguyên báo cáo
cáo
Thông tin tiện nghi
Tiện nghi
Thông tin tiện nghi
1.0 Quản lý đặt phòng 2.0 Quản lý khách vào Khách 5.0 Quản lý tài nguyên
3.2 Biểu đồ luồng dữ liệu mức 1:
3.2.1 Biểu đồ luồng dữ liệu mức 1 chức năng Quản lý đặt phòng:
3.0 Quản lý sử dụng dịch vụ 4.0 Quản lý khách ra 6.0 Lập báo cáo Ban quản lý Yêu cầu phòng cần đặt Thôngtin phòng
Trả lời yêu thông tin
cầu phòng đặt phòng DS phòng cần đặt DS phòng đặt Thông tin đặt phòng thông tin khách DS Khách Khách 1.1 Tra cứu thông tin 1.2 Đặt phòng
3.2.2 Biểu đồ luồng dữ liệu mức 1 chức năng Quản lý khách vào Đối với khách đặt trớc: Yêu cầu nhận phòng Thông tin DS phòng nhận phòng thông tin phòng
thông tin đặt phòng thông tin đặt phòng
DS phòng đặt
Khách 2.1.1
Tra cứu thông tin đặt phòng 2.1.2
Đối với khách không đặt trớc:
3.2.3 Biểu đồ luồng dữ liệu mức 1 của chức năng Quản lý sử dụng dịch vụ
Yêu cầu thuê phòng Phòng rỗi Thông tin DS khách nhận thông tin phòng ktra vào phòng rỗi thông tin khách DS phòng thông tin phòng bận 2.2.1 Tra cứu thông tin 2.2.2 Thuê phòng Khách Yêu cầu sử dụng dịch vụ
Trả lời yêu cầu sử dụng dịch vụ
Thông tin về dịch vụ
Dịch vụ
Khách 3.1
Quản lý dử dụng dịch vụ
3.2.4 Biểu đồ luồng dữ liệu mức 1 của chức năng Quản lý khách ra
3.2.5 Biểu đồ luồng dữ liệu mức 1 của chức năng Quản lý tài nguyên
Yêu cầu trả phòng
Thông tin khách SDDVu Tiền Hóa
thanh đơn
toán thông tin về khách sử dụng thông tin dịch vụ Dịch vụ phòng tt đúng DS phòng Thông tin phòng
Thông tin phòng rỗi
Khách 4.1
Tra cứu thuê phòng 4.3 Thanh toán 4.2 Trả phòng DS phòng Loại phòng
Thông tin phòng Thông tin loại phòng
Yêu cầu cập nhật Yêu cầu cập nhật thông tin phòng thông tin loại phòng
Yêu cầu cập nhật thông Yêu cầu cập nhật tin tiện nghi thông tin dịch vụ
Thông tin tiện nghi Thông tin dịch vụ
Tiện nghi Dịch vụ 5.1 Quản lý phòng 5.3 Quản lý tiện nghi 5.2 Quản lý loại phòng 5.4 Quản lý dịch vụ Ban quản lý
3.2.6 Biểu đồ luồng dữ liệu mức 1 chức năng Báo cáo
Dịch vụ
Thông tin Yêu cầu báo cáo dịch vụ
Thông tin tiện nghi Tiện nghi Thông tin phòng
DS phòng
Danh sách các báo cáo
Doanh thu
Hóa đơn
Thông tin thông tin khách DS khách
Reservation Thông tin loại phòng
DS phòng đặt Loại phòng Ban quản lý 6.0 Lập báo cáo
4 Mô hình dữ liệu quan hệ :
4.1 Các khái niệm cơ bản
Thực thể (Entity): là một kháI niệm để chỉ một lớp các đối tợng cụ thể hay các kháI niệm có cùng đặc trng chung mà ta quan tâm. Nó đợc kí hiệu:
Thuộc tính: là các đặc trng của thực thể.
Các liên kết: là các mối quan hệ gắn kết các thực thể trong mô hình thực thể liên kết E-R. Các thực thể có thể tham gia với số khác nhau trong mối liên kết với các thực thể khác. Kí hiệu:
Kí hiệu: 0 là 1 là nhiều là
Tên thực thể
Tên liên kết
4.2 Các thực thể và thuộc tính trong hệ thống
Phòng:
STT Nội dung Ghi chú
1 Số phòng Thuộc tính khóa 2. Loại phòng 3. Giá 4. Mã khách hàng 5. Trạng thái Rỗi, bận.. Bảng 1: thông tin về phòng Loại phòng
STT Nội dung Ghi chú
1. Mã loại phòng Thuộc tính khóa 2. Tên loại phòng
3. Giá 4. Mô tả
Bảng 2: thông tin về loại phòng
Tiện nghi
STT Nội dung Ghi chú
1. Mã tiện nghi Thuộc tính khóa đợc thêm vào 2. Tên tiện nghi
3. Mô tả Mô tả thông tin về loại tiện nghi Bảng 3: thông tin về loại tiện nghi
Khách
STT Nội dung Ghi chú
1. Mã khách Thuộc tính khóa đợc thêm vào 2. Tên khách
3. Giới tính
4. Thông tin định danh
Là loại giấy tờ định danh khách hàng: CMT, visa,.. 5. Địa chỉ liên lạc 6. Số điện thoại 7. Số fax 8. Nớc Bảng 4: thông tin khách hàng Dịch vụ
STT Nội dung Ghi chú
1. Mã dịch vụ Thuộc tính khóa đợc thêm vào 2. Tên dịch vụ
3. Đơn giá 4. Mô tả
Bảng 5: thông tin về dịch vụ
4.3 Mô hình quan hệ thực thể E-R của hệ thống
Loại phòng phòng Tiện nghi Thuộ c Trang bị Khách dịch vụ Sự đặt Phòng trớc có dụngSử Thuê đặt Ngày thuê Ngày sử dụng Tr ả Ngày trả
4.4 Mô hình quan hệ
Chuyển các thực thể và các liên kết thành các quan hệ ta có mô hình quan hệ sau:
Xét khách đặt phòng nhng cha tới nhận phòng là “khách đặt”. Khách đến nhận phòng là “khách”. Khi đó ta sẽ có “khách đặt “ có thể đặt phòng cho một hoặc nhiều “khách” đến nhận phòng. Còn “khách” có thể là “khách đặt” hoặc cũng có thể là “khách” đơn lẻ không đặt phòng trớc nhng tới ở trực tiếp.
Khách hàng sử dụng dịch vụ, thuê phòng. Tiền sử dụng dịch vụ và thuê phòng sẽ đợc tính vào trong hóa đơn
Tiện nghi # Mã tiện nghi Trang bị # Mã tiện nghi # Số phòng Loại phòng # Mã loại phòng Phòng # Số phòng # Mã loại phòng Sự đặt phòng trớc # Mã đặt phòng # Số phòng # Mã khách đặt Hóa đơn # Số hóa đơn # Mã trả phòng # Mã dịch vụ
5. Một số giao diện chính của chơng trình và đoạn mã xử lý: Form đăng nhập: Khách đặt # Mã khách đặt Thuê phòng # Mã thuê phòng # Số phòng # Mã khách Khách # Mã khách dịch vụ # Mã dịch vụ Sd dịch vụ # Mã dịch vụ # Mã khách Trả phòng # Mã trả phòng # Mã thuê phòng
Private Sub cmdlogin_Click()
Dim kt As Boolean, ktht As Boolean, intAnswer kt = False
ktht = False
MsgBox Txtuser.Text & "_" & txtpass.Text Do Until dedqlks.rscmduser.EOF
If dedqlks.rscmduser.Fields("username") = Txtuser.Text And dedqlks.rscmduser.Fields("password") = txtpass.Text Then
If dedqlks.rscmduser.Fields("quyentruynhap") = "admin" Then ktht = True Else kt = True End If Exit Do End If dedqlks.rscmduser.MoveNext
Loop If kt Then Me.Hide MDImainform.muhethong.Visible = False MDImainform.capnhatdanhmuc.Visible = True MDImainform.dangki.Visible = True MDImainform.mubaocao.Visible = True MDImainform.trogiup.Visible = True MDImainform.Show Else If ktht Then Me.Hide MDImainform.muhethong.Visible = True MDImainform.capnhatdanhmuc.Visible = True MDImainform.dangki.Visible = True MDImainform.mubaocao.Visible = True MDImainform.trogiup.Visible = True MDImainform.Show Else
intAnswer = MsgBox("Bạn đăng nhập sai , hãy đăng nhập lại", vbOKOnly + vbExclamation, "Thông báo")
cnt = cnt + 1 Txtuser.Text = "" txtpass.Text = "" Txtuser.SetFocus End If End If If cnt >= 3 Then End End Sub
Form chính:
Xem bản ghi cuối cùng:
Private Sub cmdcuoi_Click() dedqlks.rscmdphong.MoveLast txtsophong.Text = dtgphong.Columns(0) dtcloaiphong.Text = dtgphong.Columns(1) txttel.Text = dtgphong.Columns(2) dtcmanvpv.Text = dtgphong.Columns(3) txttiennghi.Text = dtgphong.Columns(4) End Sub
Xem bản ghi đầu tiên
Private Sub cmddau_Click() dedqlks.rscmdphong.MoveFirst
txtsophong.Text = dtgphong.Columns(0) dtcloaiphong.Text = dtgphong.Columns(1)
txttel.Text = dtgphong.Columns(2) dtcmanvpv.Text = dtgphong.Columns(3) txttiennghi.Text = dtgphong.Columns(4) End Sub
Ghi lại:
Private Sub cmdghilai_Click() dedqlks.rscmdphong.Update MsgBox "Da ghi!"
End Sub
Xem bản ghi tiếp theo
Private Sub cmdsau_Click() On Error GoTo loi
dedqlks.rscmdphong.MoveNext thoat: Exit Sub
loi: MsgBox "Da ve ban ghi cuoi" Resume thoat
End Sub
Sửa thông tin:
Private Sub cmdsua_Click()
If txtsophong.Text = dtgphong.Columns(0).Text Or Len(txtsophong.Text) = 0 Then
i = MsgBox("ban co that su muon sua khong", vbQuestion + vbYesNo, "sua") If i = vbYes Then If Len(dtcloaiphong.Text) <> 0 Then dedqlks.rscmdphong.Fields("loaiphong") = dtcloaiphong.Text End If If Len(txttel.Text) <> 0 Then dedqlks.rscmdphong.Fields("tel") = txttel.Text
End If If Len(dtcmanvpv.Text) <> 0 Then dedqlks.rscmdphong.Fields("manvpv") = dtcmanvpv.Text End If If Len(txttiennghi.Text) <> 0 Then dedqlks.rscmdphong.Fields("tiennghi") = txttiennghi.Text End If dedqlks.rscmdphong.MovePrevious dedqlks.rscmdphong.MoveNext End If Else
dk1 = "[sophong]='" & dtgphong.Columns(0).Text & "'" dk = "[sophong]='" & txtsophong.Text & "'"
dedqlks.rscmdphong.MoveFirst dedqlks.rscmdphong.Find dk
If Not dedqlks.rscmdphong.EOF Then MsgBox "So phong nay da co" txtsophong.SetFocus
Else
i = MsgBox("ban co that su muon sua khong", vbQuestion + vbYesNo, "sua") If i = vbYes Then dedqlks.rscmdphong.MoveFirst dedqlks.rscmdphong.Find dk1 dedqlks.rscmdphong.Fields("sophong") = txtsophong.Text If Len(dtcloaiphong.Text) <> 0 Then dedqlks.rscmdphong.Fields("loaiphong")=dtcloaiphong.Text End If If Len(txttel.Text) <> 0 Then
dedqlks.rscmdphong.Fields("tel") = txttel.Text End If If Len(dtcmanvpv.Text) <> 0 Then dedqlks.rscmdphong.Fields("manvpv") = dtcmanvpv.Text End If If Len(txttiennghi.Text) <> 0 Then dedqlks.rscmdphong.Fields("tiennghi") = txttiennghi.Text End If dedqlks.rscmdphong.MovePrevious dedqlks.rscmdphong.MoveNext End If End If End If End Sub Nhập mới
Private Sub cmdthem_Click() dedqlks.rscmdphong.AddNew End Sub
Thoát
Private Sub cmdthoat_Click() Unload Me
End Sub
Tìm kiếm:
Private Sub cmdtim_Click() ftimphong.Show
End Sub
Xem bản ghi trớc:
Private Sub cmdtruoc_Click() On Error GoTo loi
dedqlks.rscmdphong.MovePrevious thoat: Exit Sub
loi: MsgBox "Da ve ban ghi dau" Resume thoat
End Sub
Xóa
Private Sub cmdxoa_Click() dedqlks.rscmdphong.Delete MsgBox "Da xoa!"
End Sub
Form tìm kiếm:
Đoạn mã:
If txtdktim.Text = "" Then
MsgBox "Ban chua nhap dieu kien tim kiem", vbInformation, "Thong bao" Else
dedqlks.rscmdkhach.MoveFirst If otkten.Value = True Then
dedqlks.rscmdkhach.Find "hotenkhach='" & txtdktim.Text & "'" Else
If otkttdd.Value = True Then
dedqlks.rscmdkhach.Find "ttdinhdanh='" & txtdktim.Text & "'" Else
If otkmakhach.Value = True Then
dedqlks.rscmdkhach.Find "masokhach='" & txtdktim.Text & "'" End If
End If End If
If dedqlks.rscmdkhach.EOF Then
MsgBox "Khong tim thay ten ma ban can tim", vbInformation, "Thong bao" Else Unload Me End If End If End Sub
Tài liệu tham khảo:
1.Phân tích thiết kế hệ thống thông tin hiện đại – Nguyễn Văn Vỵ 2.Programming Visual Basic 6.0 – Microsoft Press