Đề tài Xây dựng website quản lý khách sạn

PHẦN MỞ ĐẦUI. LỜI GIỚI THIỆU1. GIỚI THIỆU VỀ CƠ QUAN THỰC TẬPa) Lời giới thiệu:· Công ty TNHH Tư vấn và Dịch vụ kỹ thuật Công nghệ xanh An Giang-AGITECH là một công ty có trách nhiệm và đầy nhiệt huyết trong việc giúp quý Khách hàng thiết kế các phần mềm chuyên nghiệp theo nhu cầu cụ thể của Khách hàng, xây dựng Hệ thống thông tin hoàn chỉnh trên nền tảng Internet, thiết kế trang web chất lượng cao, lập báo cáo đánh giá tác động môi trường cho các công ty xí nghiệp, khảo sát, đánh giá, lập báo cáo địa chất công trình. Công ty được thành lập vào ngày 29/09/2009 theo quyết định của Sở kế hoạch và đầu tư tỉnh An giang cấp. · Tên công ty bằng tiếng Việt: CÔNG TY TƯ VẤN DỊCH VỤ KĨ THUẬT CÔNG NGHỆ XANH AN GIANG. · Tên công ty bằng tiếng Anh: AN GIANG GREEN TECHNOLOGY LIMTED COMPANY. · Tên công ty viết tắt: AGITECH Co.,Ltd. b) Địa chỉ trụ sở chính:Số 30B Huỳnh Thị Hưởng, P. Mỹ Long,TP. Long Xuyên, tỉnh An giang. · Điện thoại: 076.3842658 Fax:/. · Email: admin@agitech.com.vn Website :www.agitech.com.vn. c) Ngành nghề kinh doanh:STT Tên ngành Mã ngành 1 Sản xuất phần mềm (7327-732700) 2 Mua bán máy tính, máy văn phòng, các dịch vụ về tin học, sửa chữa, bảo dưỡng máy tính, các thiết bị ngoại vi (51531-5153100) 3 Dịch vụ đào tạo để thành viên được cấp bằng chứng nhận về tin học, môi trường, thống kê ứng dụng (80321-8032100) 4 Mua bán, sản xuất chế biến, đóng gói và phân phối các loại chất thải, phế liệu và các phế phẩm từ chất thải, phế liệu công nghiệp, nông nghiệp và thủy sản. (514) 5 Dịch vụ đánh giá tác động và quan trắc / 6 Dịch vụ phân tích các chỉ tiêu nước cấp, nước thải và không khí / 7 Dịch vụ xử ly nước thải, nước cấp, không khí và chất thải rắn (92121-9212100) 8 Mua bán thiết bị Phòng thí nghiệm, thiết bị xử lý nước và môi trường / 9 Thăm dò địa chất / 10 Dịch vụ tổ chức hội nghị hội thảo /

doc101 trang | Chia sẻ: tlsuongmuoi | Lượt xem: 2613 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Đề tài Xây dựng website quản lý khách sạn, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
hình hoạt động quan niệm trả Phòng Mô hình hoạt động quan niệm của Thống kê, báo cáo: Hình 15: Mô hình hoạt động quan niệm Thống kê,báo cáo Mô hình hoạt động quan niệm của Thống kê,báo cáo: Mô hình hoạt động quan niệm của Quản trị: Mô hình hoạt động quan niệm của quản trị Hình 16:Mô hình quan niệm hoạt động Quản trị Hệ thống Xây dựng mô hình quan niệm Hệ thống dùng Use case Từ mô hình hoạt động miêu tả quan niệm về hoạt động của hệ thống hiện tại, xây dựng mô hình Use case của hệ thống bằng cách gom nhóm các hoạt động gần gũi và hợp tác với nhau lại thành một hoạt động lớn mặc dù trước đây chúng bị chia nhỏ để biểu diễn hoạt động và cấu trúc vật lý. Với mỗi nhóm thành lập môt Use case, kết hợp với Activity ta xác định được actor cho các Use case này. Với hoạt động thuê phòng: Use case Kiểm tra phòngàKiểm tra trạng thái phòng trong hệ thống quyết định cho thuê, hay từ chối yêu cầu của Khách hàng. Use case Lập phiếu thuê phòngàLập phiếu thuê phòng, lập phiếu giao phòng. Use case Lưu thuê phòngàLưu thông tin thuê phòng. Use case Cập nhật phòngàCập nhật lại trạng thái phòng. Use case Kiểm tra dịch vụàKiểm tra thông tin yêu cầu sử dụng của Khách hàng.. Hình 17:Mô hình use case quan niệm thuê phòng Use case Lập phiếu sử dụngàLập phiếu sử dụng dịch của Khách hàng. Với hoạt động đặt phòng: Use case Kiểm tra phòngàKiểm tra trạng thái phòng trong hệ thống quyết định cho thuê, hay từ chối yêu cầu của Khách hàng. Use case Đặt phòngàLập phiếu đăng kí đặt phòng cho Khách hàng. Use case Lưu đặt phòngàLưu thông tin đặt phòng. Hình 18:Mô hình use case hoạt động đặt phòng Với hoạt động trả phòng Use case Kiểm tra phòngàKiểm tra trạng thái phòng trong hệ thống quyết định cho thuê, hay từ chối yêu cầu của Khách hàng. Use case Kiểm tra trả phòngàKiểm tra hạn trả phòng của Khách hàng. Use case Lập hóa đơnàLập hóa đơn thanh toán tiền phòng, tiền sử dụng dịch vụ cho Khách hàng. Use case Xử lý gia hạn sử dụng phòngàGia hạn sử dụng phòng cho Khách hàng. Use case Lưu hóa đơnàLưu hóa đơn thanh toán. Hình 19:Mô hình use case hoạt động trả phòng Use case Cập nhật phòngàCập nhật trạng thái phòng. Với hoạt động Thống kê, báo cáo: Use case Lập thống kêàLập các thống kê về doanh thu, công nơ, thuê phòng, trả phòng... Use case Lưu thống kêàLưu bản thống kê để use case khác khai thác. Use case Lập báo cáo àLập báo cáo dựa trên Use case thống kê. Use case Lập kế hoạch kinh doanhà Lập kế hoạch kinh doanh khai thác trên Use case báo cáo. Hình 20:Mô hình Use case hoạt động thống kê,báo cáo Use case Lưu báo cáoàLưu báo cáo để use case khác khai thác. Use case Lưu kế hoạch kinh doanh: Lưu kế hoạch kinh doanh. Với hoạt động Quản trị: Use case Phân quyền sử dụng chức năng hệ thốngàCấp quyền sử dụng hệ thống cho các Actor trong hệ thống, trong đó Actor Chủ tịch hội đồng quản trị là Actor có quyền hạn cao nhất, cấp quyền sử dụng cho các Actor còn lại. Use case Quản trị hoạt độngàQuản trị các hoạt động của Actor. Hình 21:Mô hình use case hoạt động quản trị Hệ thống Xây dựng mô hình quan niệm Hệ thống mới Trong phần này ta dựa vào hai nguồn thông tin là biểu diễn hoạt động quan niệm hiện tại và các yêu cầu của hệ thống mới để bổ sung, điều chỉnh hoặc loại bỏ các hoạt động thông tin cho phù hợp với hệ thống đang phát triển. Cuối cùng xác định lại các hoạt động nào sẽ được tự động hóa và hoạt động nào vẫn còn hoạt động thủ công trong hệ thống mới sẽ xây dựng, để mô hình Use case biểu diễn yêu cầu phần mềm hệ thống.Qui trình xây dựng được biểu diễn bởi sơ đồ sau: Yêu cầu của Hệ thống mới …………. ….. Điều chỉnh,bổ sung hoặc loại bỏ những hoạt động để tạo Hệ thống mới Xác định hoạt động nào sẽ được tự động hóa để xây dựng mô hình Use case đặc tả yêu cầu phần mềm Hệ thống mới Hình 22: Qui trình xây dựng mô hình quan niệm Hệ thống mới Hệ thống được tin học hóa và được phát triển mới hoàn toàn, vì vậy cần tự động hóa các nghiệp vụ hệ thống, loại bỏ các hoạt động thủ công trong các hoạt động quản lý của Khách sạn. Hình 23:Hoạt động đặt Phòng của Hệ thống mới sau khi điều chỉnh,bổ sung Đối với hoạt động đặt Phòng: Cho phép khách hàng đặt phòng trực tuyến Hình 25:Mô hình hoạt động của Quản trị Hệ thống của Hệ thống mới sau khi điều chỉnh,bổ sung Trong hoạt động Quản trị hệ thống, Hệ thống mới cần phân quyền sử dụng chức năng hệ thống. Đối với hệ thống mới Chủ tịch Hội đồng quản trị là người dùng cao cấp nhất tạo, xóa, điều chỉnh các tài khoản người dùng Khác cho Nhân viên các phòng ban, Giám đốc, Trưởng Phòng. Tạo phân cách trong mô hình hoạt động hệ thống. Các hoạt động được thủ công hoặc không còn phù hợp với công việc tự động hóa trong hệ thống mới sẽ được bao quanh bởi các đường biên hình đứt khúc, còn lại là các hoạt động tự động hóa Hình 26:Mô hình hoạt động thuê Phòngcủa Hệ thống mới giữa và thủ công tự động Hoạt động xử lý thuê Phòng giữa thủ công và tự động Hoạt động xử lý đặt Phòng giữa thủ công và tự động hóa Hình 27:Mô hình hoạt động đặt Phòng của Hệ thống mới giữa thủ công và tự động Hình 28:Mô hình hoạt động trả Phòng của Hệ thống mới giữa thủ công và tự động Hoạt động trả Phòng giữa thủ công và tự động Hoạt động Thống kê, báo cáo giữa thủ công và tự động Hình 29:Mô hình hoạt động Thống kê, báo cáo của Hệ thống mới giữa thủ công và tự đông Hoạt động Quản trị Hệ thống giữa thủ công và tự động Hình 30:Mô hình hoạt động của Quản trị Hệ thống của Hệ thống mới sau khi điều chỉnh,bổ sung Xây dựng mô hình Use case đặt tả yêu cầu phần mềm Hệ thống mới Xây dựng các Use case từ các hoạt động sẽ được tự động hóa. Thiết lập các actor: Actor được thiết lập ở mức này chính là các người dùng trực tiếp phần mềm hệ thống. Quyết định xem đối tượng môi trường có sử dụng hệ thống phần mềm không? Nếu không thì xác định xem đối tượng nào sử dụng hệ thống để làm việc với đối tượng môi trường đó, và đối tượng đó sẽ là actor. Ví dụ: Khách hàng là đối tượng môi trường, Khách hàng không trực tiếp sử dụng phần mềm hệ thống mà thông qua Nhân viên tiếp tân, do đó Nhân viên tiếp tân là Actor Nếu đúng, đối tượng môi trường đó chính là một actor. Ví dụ trong hoạt động đặt phòng, hệ thống cho phép đặt phòng onlineàKhách hàng là một actor hệ thống vì trực tiếp sử dụng phần mềm hệ thống. Đối với các đối tượng trong hệ thống (Nhân viên tiếp tân,Trưởng Phòng….), kiểm tra mô hình hoạt động xem các chức năng tự động hóa có được sử dụng bởi các đối tượng này không, nếu có các đối tượng này là actor. Hình 31:Mô hình Use case biểu diễn chức năng phần mềm hoạt động thuê Phòng Mô hình Use case phần mềm đặc tả thuê Phòng được xác định theo bảng sau: Use case chức năng phần mềm Hệ thống Hoạt động Actor(User) Kiểm tra Phòng Kiểm tra trạng thái Phòng Nhân viên tiếp tân Xử lý thuê Phòng Lập phiếu thuê Phòng, lưu phiếu thuê Phòng Nhân viên tiếp tân Xử lý sử dụng dịch vụ Lập phiếu sử dụng dịch vụ, lưu phiếu sử dụng dịch vụ Nhân viên tiếp tân Cập nhật Phòng Cập nhật trạng thái Phòng Nhân viên tiếp tân Tìm kiếm Tìm kiếm thông tin theo từng chức năng Người dùng Hệ thống Mô hình Use case phần mềm đặc tả đặt Phòng được xác định theo bảng sau: Hình 32: Mô hình Use case biểu diễn chức năng phần mềm hoạt động đặt Phòng Use case chức năng phần mềm Hệ thống Hoạt động Actor(User) Kiểm tra Phòng Kiểm tra trạng thái Phòng Nhân viên tiếp tân, Khách hàng Đặt Phòng online Đặt Phòng trực tuyến Nhân viên tiếp tân, Khách hàng Xử lý đặt Phòng Lập phiếu đặt Phòng, lưu phiếu đặt Phòng Nhân viên tiếp tân, Khách hàng Cập nhật Phòng Cập nhật trạng thái Phòng Nhân viên tiếp tân Tìm kiếm Tìm kiếm thông tin theo từng chức năng Nhân viên tiếp tân,Khách hàng Mô hình Use case phần mềm đặc tả trả Phòng được xác định theo bảng sau: Use case chức năng phần mềm Hệ thống Hoạt động Actor(User) Kiểm tra trả Phòng Kiểm tra hạn trả Phòng Nhân viên tiếp tân Lập hóa đơn Lập hóa đơn thanh toán, Lưu hóa đơn thanh toán, In hóa đơn Nhân viên tiếp tân Cập nhật Phòng Cập nhật trạng thái Phòng Nhân viên tiếp tân Xử lý gia hạn Xử lý gia hạn sử dụng Phòng Nhân viên tiếp tân Tìm kiếm Tìm kiếm thông tin theo từng chức năng Nhân viên tiếp tân, Khách hàng Hình 33:Mô hình Use case biểu diễn chức năng phần mềm hoạt động trả Phòng Xây dựng các Use case khai thác và sử dụng Hệ thống Gồm các Use case mô tả các khai thác dữ liệu Hệ thống(thống kê,báo cáo,tìm kiếm….). Use case chức năng phần mềm Hệ thống Hoạt động Actor(User) Lập thống kê Lập các Bản thống kê, Lưu thống kê, In thống kê Nhân viên kế toán, Nhân viên kinh doanh, Người Quản lý Lập báo cáo thống kê Lập bản báo cáo thống kê, Lưu bản báo cáo thống kê, In báo cáo thống kê Nhân viên kế toán, Nhân viên kinh doanh, Người Quản lý Lập kế hoạch kinh doanh Lập bản kế hoạch kinh doanh, Lưu, In kế hoạch kinh doanh Nhân viên kế toán, Nhân viên kinh doanh, Người Quản lý Hình 34:Mô hình use case biểu diễn chức năng phần mềm hoạt động thống kê,báo cáo Xây dựng Use case mô tả chức năng Quản trị Hệ thống: Gồm các chức năng quản trị an toàn hệ thống (đăng nhập, quyền sử dụng, nhóm người dùng….). Use case chức năng phần mềm Hệ thống Hoạt động Actor(User) Cấp tài khoản Cấp usename, password cho người dùng Quản trị Hệ thống (Chủ tịch Hội đồng quản trị, Giám đốc, Trưởng Phòng) Đăng nhập hệ thống Xử lý đăng nhập hệ thống Người dùng (Tất cả các đối tượng trong hệ thống, Khách hàng) Quản trị người dùng Quản trị người dùng Hệ thống Quản trị hệ thống Sử dụng hệ thống Ứng với từng usename, password sẽ được quyền sử dụng các chức năng hệ thống khác nhau Người dùng hệ thống Hình 35:Mô hình use case biểu diễn chức năng phần mềm hoạt động Quản trị Hệ thống Tinh chế các Use case. Hình 36:Mô hình use case Quản trị Hệ thống sau khi tinh chế Use case Quản trị Hệ thống được tinh chế Hình 37:Use case thuê Phòng được tinh chế Use case thuê phòng được tinh chế Hình 38:Use case đặt Phòng được tinh chế Use case thuê phòng được tinh chế Hình 39:Use case trả Phòng được tinh chế Use case trả Phòng được tinh chế Hình 40:Use case thống kê,báo cáo được tinh chế Use case thống kê,báo cáo được tinh chế MÔ HÌNH HÓA DỮ LIỆU Xác định đối tượng trong Hệ thống: Xác định đối tượng trong hệ thống theo phương pháp tiếp cận theo Use case, phương pháp này tiếp cận chi tiết các đối tượng của hệ thống rồi tích hợp thành mô hình chung biểu diễn toàn bộ đối tượng hệ thống, bao gồm các bước sau: Với từng use case trong sơ đồ Use case, áp dụng cách tiếp cận theo danh từ, cụm danh từ để xác định các class mà usecase đó tác động tới. Xác định mối kết hợp giữa các class trong use case để tạo ra sơ đồ class cho use case. Tích hợp các sơ đồ class của tất cả use case để tạo ra sơ đồ class của hệ thống theo những bước sau: + Tích hợp class: Các class trong sơ đồ class có cùng ngữ nghĩa (mặc dù tên có khác nhau) thì gôm lại thành một class chung có đặc trưng là đặc trưng chung cho tất cả class. + Tích hợp mối kết hợp: Duy trì tất cả mối kết hợp các class trong sơ đồ class vào sơ đồ class chung của hệ thống. Xây dựng các class tổng quát hóa, chuyên biệt hóa để biểu diễn tính kế thừa trong hệ thống. Hình 41:Sơ đồ phân tích đối tượng theo tiếp cận Use case Mối quan hệ giữa các đối tượng trong Hệ thống. Xây dựng sơ đồ class cho từng Use case áp dụng phương pháp tiếp cận danh từ,cụm danh từ ta có Use case thuê Phòng -Quá trình -Thông báo -Hệ thống -Ngày nhận -Ngày trả -Giờ nhận -Giờ trả -Cuối ngày -Ngày bị trể -Thông báo -Cuối ngày Trạng thái -Ba ngày Khởi tạo danh sách class ứng viên: -Phòng -Dịch vụ -Loại dịch vụ -Khách hàng -Khách quen -Khách thuê Phòng -Nhân viên tiếp tân -Nhân viên phục vụ -Loại -Loại Phòng -Kiểu -Kiểu Phòng -Giá -Chi tiết thuê Phòng Loại bỏ các class giả, không phù hợp -Quá trình -Lịch giao Phòng -Hệ thống -Ngày nhận -Ngày trả -Giờ nhận -Giờ trả -Cuối ngày -Ngày bị trể -Thông báo -Cuối ngày Trạng thái -Ba ngày -Ngày lập -Phòng -Dịch vụ -Loại dịch vụ -Khách hàng -Khách quen -Khách thuê Phòng -Nhân viên tiếp tân -Nhân viên phục vụ -Loại -Loại Phòng -Kiểu -Kiểu Phòng -Giá -Chi tiết thuê Phòng -Phiếu thuê Đồng nhất các class ứng viên trùng lắp: Đồng nhất lại danh sách class ứng viên tìm kiếm các danh từ, cụm danh từ trùng lắp về ngữ nghĩa mặc dù tên thể hiện có khác nhau, chọn lựa danh từ,cụm danh từ chứa nghĩa nghĩa và loại các danh từ, cụm danh từ khác. Khách hàng, Khách thuê Phòng, Khách quen = Khách hàng. Loại, Loại Phòng = Loại Phòng. Loại, Loại dịch vụ = Loại dịch vụ. Xác định các danh từ, cụm danh từ có thể là các thuộc tính Các danh từ, cụm danh từ là thuộc tính khi: Chỉ được sử dụng như giá trị. Không nhiều hơn một đặc trưng riêng, hoặc mô tả đặc trưng của đối tượng khác. Xem sét các danh từ, cụm danh từ có thể là thuộc tính của danh sách class trên ta có: Giá: Là một giá trị có thể là thuộc tính phòng. Ngày nhận, giờ nhận, ngày lập: Là một giá trị của phiếu thuê. -Quá trình -Lịch giao Phòng -Hệ thống -Ngày nhận -Ngày trả -Giờ nhận -Giờ trả -Cuối ngày -Ngày bị trể -Thông báo -Cuối ngày Trạng thái -Ba ngày -Ngày lập -Phòng -Dịch vụ -Loại dịch vụ -Khách hàng -Khách quen -Khách thuê Phòng -Nhân viên tiếp tân -Nhân viên phục vụ -Loại -Loại Phòng -Kiểu -Kiểu Phòng -Giá -Chi tiết thuê Phòng -Phiếu thuê Loại bỏ class ứng viên không có mục tiêu hoặc không thuộc phạm vi Hệ thống Trong hoạt động thuê phòng các class còn lại sẽ là: Phòng: Lưu thông tin phòng Loại Phòng: Là một class hình thức (trừu tượng hóa sự phân loại) dùng để phân lọai phòng. Kiểu Phòng: Là một class hình thức (trừu tượng hóa sự phân loại) dùng để phân lọai kiểu phòng. Trạng thái: Là một class hình thức (trừu tượng hóa sự phân loại) dùng để phân lọai trạng phòng. Dịch vụ: Lưu thông tin dịch vụ. Loại Dịch vụ: Là một class hình thức (trừu tượng hóa sự phân loại) dùng để phân lọai dịch vụ. Phiếu thuê Phòng: Mô tả mẫu thuê phòng Chi tiết thuê Phòng: Mô tả chi tiết phiếu thuê phòng. Khách hàng: Lưu trữ thông tin Khách hàng Nhân viên tiếp tân: Lưu trữ thông tin Nhân viên. Phiếu thuê Dịch vụ: Mô tả mẫu thuê dịch vụ Chi tiết phiếu thuê: Mô tả chi tiết phiếu thuê dịch vụ . Các danh từ, cụm danh từ không có mục đích: Thông báo Hệ thống Các danh từ, cụm danh từ không thuộc phạm vi hệ thống, hoặc chỉ có đối tượng trong quá trình sống của hệ thống Lịch giao phòng. Cuối ngày. Ngày bị trễ. Nhân viên phục vụ, Nhân viên tiếp tân. Kết quả quá trình chọn lựa gồm các class ứng viên sau: Phòng Kiểu Phòng Loại Phòng Trạng thái Dịch vụ Loại Dịch vụ Chi tiết thuê Phòng Khách hàng Chi tiết thuê Dịch vụ Phiếu thuê Phòng Phiếu thuê dịch vụ Use case thuê Phòng Phòng Chi tiết hóa đơn Khách hàng Hóa đơn Use case đặt Phòng Use case trả Phòng Phòng Chi tiết đặt Phòng Khách hàng Phiếu đặt Phòng Hóa đơn Chi tiết đặt Phòng Chi tiết thuê Phòng Thống kê Chi tiết thuê dịch vụ Use case thống kê, báo cáo Quản trị Hệ thống Nhân viên Tài khoản Hình 42: Các class đề nghị cho từng Use case Use case Quản trị Hệ thống Biểu diễn chi tiết các class trong các Use case Phòng Mã Phòng: Int Tên Phòng: String Mã loại: Int Mã kiểu: Int Mã trạng thái: Int Giá: Int Dịch vụ Mã dịch vụ: Int Tên dịch vụ: String Giá: Int Khách hàng Mã Khách hàng: Int CMDN: char Họ tên: String Địa chỉ: String Ngày sinh: Date Quốc tịch: String Phiếu Thuê Phòng Mã phiếu: Int Tên phiếu: String Ngày lập: Date Người lập: String Phiếu Thuê dịch vụ Mã phiếu: Int Tên phiếu: String Ngày lập: Date Người lập: String Use case thuê Phòng Khách hàng Mã Khách hàng: Int CMDN: Char Họ tên: String Địa chỉ: String Ngày sinh: Date Quốc tịch: String Phòng Mã Phòng: Int Tên Phòng: String Mã loại: Int Mã kiểu: Int Mã trạng thái: Int Giá: Int Phiếu đặt Phòng Mã phiếu: Int Tên phiếu: String Ngày lập: Date Người lập: String Use case đặt Phòng Khách hàng Mã Khách hàng: Int CMDN: Char Họ tên: String Địa chỉ: String Ngày sinh: Date Quốc tịch: String Phòng Mã Phòng: Int Tên Phòng: String Mã loại: Int Mã kiểu: Int Mã trạng thái: Int Giá: Int Phiếu Thuê Phòng Mã phiếu: Int Tên phiếu: String Ngày lập: Date Người lập: String Phiếu Thuê dịch vụ Mã phiếu: Int Tên phiếu: String Ngày lập: Date Người lập: String Hoá đơn Mã hóa đơn: Int Tên hóa đơn: String Ngày lập: Date Người lập: String Use case trả Phòng Phiếu Thuê Phòng Mã phiếu: Int Tên phiếu: String Ngày lập: Date Người lập: String Phiếu Thuê dịch vụ Mã phiếu: Int Tên phiếu: String Ngày lập: Date Người lập: String Hoá đơn Mã hóa đơn: Int Tên hóa đơn: String Ngày lập: Date Người lập: String Thống kê Mã thống kê: Int Tên thống kê: String Loại thống kê: Int Người lập: String Ngày lập: Date Hình 42:Biểu diễn chi tiết từng class cho từng Use case Use case thống kê,báo cáo Use case Quản trị Hệ thống: Ở use case này không thể hiện chi tiết của các class Nhân viên,Quản trị Hệ thống,Tài khoản,các class này sẽ được cài đặt vào Hệ thống ở mức vật lý. Xác định các mối kết hợp của các class trong từng Use case của liên quan Dịch vụ Mã dịch vụ: Int Tên dịch vụ: String Giá: Int Phiếu Thuê dịch vụ Mã phiếu: Int Tên phiếu: String Ngày lập: Date Người lập: String Phòng Mã Phòng: Int Tên Phòng: String Mã loại: Int Mã kiểu: Int Mã trạng thái: Int Giá: Int Khách hàng Mã Khách hàng: Int CMDN: Char Họ tên: String Địa chỉ: String Ngày sinh: Date Quốc tịch: String Phiếu Thuê Phòng Mã phiếu: Int Tên phiếu: String Ngày lập: Date Người lập: String của 1..* 0..* liên quan 0..* 1..* Chi tiết Thuê Phòng Số lượng Phòng: Int Ngày nhận: Date Ngày trả: Date Chi tiết Thuê dịch vụ Số lượng: Int Ngày thuê: Date 0..* 1..* 0..* 0..* Hình 43:Sơ đồ class của Use case thuê Phòng Sơ đồ Use case thuê Phòng Phòng Mã Phòng: Int Tên Phòng: String Mã loại: Int Mã kiểu: Int Mã trạng thái: Int Giá: Int Khách hàng Mã Khách hàng: Int CMDN: char Họ tên: String Địa chỉ: String Ngày sinh: Date Quốc tịch: String Phiếu đặt Phòng Mã phiếu: Int Tên phiếu: String Ngày lập: Date Người lập: String của 1..* 0..* liên quan 0..* 1..* Chi tiết đặt Phòng Số lượng Phòng: Int Ngày nhận: Date Ngày trả: Date Hình 44:Sơ đồ class của Use case đặt Phòng Sơ đồ Use case đặt Phòng Sơ đồ Use case trả Phòng Hình 45:Sơ đồ class của Use case trả Phòng 1..1 Khách hàng Mã Khách hàng: Int CMDN: Char Họ tên: String Địa chỉ: String Ngày sinh: Date Quốc tịch: String Phiếu Thuê Phòng Mã phiếu: Int Tên phiếu: String Ngày lập: Date Người lập: String Phiếu Thuê dịch vụ Mã phiếu: Int Tên phiếu: String Ngày lập: Date Người lập: String Hoá đơn Mã hóa đơn: Int Tên hóa đơn: String Ngày lập: Date Người lập: String 1..* liên quan 1..* 1..* 1..* liên quan của Chi tiết Hoá đơn Đã thanh toán: Int Tổng cộng: Int Ngày thanh toán 1..* Use case thống kê,báo cáo Hình 46:Sơ đồ class của Use case thống kê Phiếu Thuê Phòng Mã phiếu: Int Tên phiếu: String Ngày lập: Date Người lập: String Phiếu Thuê dịch vụ Mã phiếu: Int Tên phiếu: String Ngày lập: Date Người lập: String Hoá đơn Mã hóa đơn: Int Tên hóa đơn: String Ngày lập: Date Người lập: String Thống kê Mã thống kê: Int Tên thống kê: String Loại thống kê: Int Người lập: String Ngày lập: Date Phiếu đặt Phòng Mã phiếu: Int Tên phiếu: String Ngày lập: Date Người lập: String theo 1..* 0..* 0..* 1..* theo theo 1..* 1..* theo 1..* 1..* Bổ sung các thực thể tổng quát hoát,chuyên biệt hóa Phiếu Yêu cầu Mã phiếu: Int Tên phiếu: String Ngày lập: Date Người lập: String Phiếu đặt Phòng Ngày đến: Date Ngày trả: Date Phiếu Thuê dịch vụ Phiếu Thuê Phòng Ngày nhận: Date Ngày trả: Date Hình 47:Các class tổng quát hóa và chuyên biệt hóa Sơ đồ cuối cùng của Hệ thống Website Quản lý Khách sạn Hình 48:Sơ đồ class cho Hệ thống Website Quản Lý Khách sạn Khách hàng Phiếu yêu cầu Phòng Dịch vụ Thống kê Phiếu thuê Phòng Phiếu đặt Phòng Phiếu thuê dịch vụ của liên quan 0..* 1..* 0..* 1..* Hóa đơn 1..* 0..* của theo 1..* 0..* 0..* 1..* liên quan Chi tiết yêu cầu Chi tiết yêu cầu Chi tiết hóa đơn theo 0..* 1..* Phân tích dữ liệu Các thực thể: Các thực thể được xác định dựa theo các class đã được xác định và một số thực thể được bổ sung nhằm giảm sự trừu tượng của các class đồng thời làm giảm sự phức tạp cho giai đoạn thiết kế dữ liệu và code (các thực thể này sẽ là các bảng trong Cơ sở dữ liệu). Khách hàng(Mã KH,Họ tên KH,CMND,Quốc tịch,Giới tính,Ngày sinh,Địa chỉ,Điện thoại,Email). Phòng(Mã Phòng,Tên,Mã loại,Mã trạng thái,Giá,mô tả). Loại Phòng(Mã loại,Tên). Trạng thái(Mã trạng thái,Tên). Nhân viên(Mã nhân viên,Mã bộ phận,Họ tên,CMND,Giới tính,Địa chỉ,Quốc gia,Điện thoại,Email). Bộ phận(Mã bộ phận,Mã người quản lý,Tên). Người quản lý(Mã người quản lý,Mã chức vụ, Họ tên ,CMND,Giới tính, Quốc gia,Địa chỉ,Điện thoại,Email). Chức vụ(Mã chức vụ,Tên). Dịch vụ(Mã dịch vụ,Mã nhóm dịch vụ,tên dịch vụ,Giá). Nhóm dịch vụ(Mã nhóm dịch vụ,tên nhóm dịch vụ). Thuê Phòng(Mã thuê Phòng,Mã Phòng,Mã khách hàng,Số lượng Phòng,Ngày thuê,Ngày trả). Sử dụng dịch vụ(Mã sử dụng,Mã dịch vụ,Mã khách hàng,Ngày). Đặt Phòng(Mã đặt Phòng,Mã Phòng,Mã khách hàng,Số lượng Phòng,Số lượng người,Ngày đến,Ngày đi). Hủy đặt Phòng(Mã hủy đặt Phòng,Mã đặt Phòng,Mã nhân viên,Ngày hủy). Nhận Phòng(Mã nhận Phòng,Mã thuê Phòng,Mã nhân viên,Giờ nhận). Trả Phòng(Mã trả Phòng,Mã thuê Phòng,Mã nhân viên,Giò trả). Hóa đơn(Mã hóa đơn,Tên hóa đơn,Mã thuê Phòng,Mã sử dụng,Mã nhân viên,Ngày lập,Thành tiền). Thống kê(Mã thống kê,Tên,Mã nhân viên,Ngày lập,Mã TK hóa đơn,Mã TK thuê Phòng,Mã TK đặt Phòng,Mã TK sử dụng dịch vụ,Mã TK hủy đặt Phòng). Thống kê hóa đơn(Mã TK hóa đơn,Mã hóa đơn). Thống kê thuê Phòng(Mã TK thuê Phòng,Mã thuê Phòng). Thống kê đặt Phòng(Mã TK đặt Phòng,Mã đặt Phòng). Thống kê hủy đặt Phòng(Mã TK hủy đặt Phòng,Mã hủy đặt Phòng). Thống kê sử dụng dịch vụ(Mã TK sử dụng dịch vụ,Mã sử dụng dịch vụ). Mối quan hệ giữa các thực thể Mối quan hệ giữa Khách hàng, Phòng, Dịch vụ, Nhân viên Diễn tả: Khách hàng và Phòng có mối quan hệ nhiều-nhiều (n-n). Ý nghĩa: - Khách hàng có thể thuê nhiều phòng cùng một lúc, và có thể thuê nhiều lần, phòng có thể được thuê bởi một Khách hàng hoặc nhiều Khách hàng. - Khách hàng có sử dụng nhiều dịch vụ cùng một lúc, và có thể ử dụng nhiều lần, dịch vụ có thể được thuê bởi một Khách hàng hoặc nhiều Khách hàng. - Nhân viên sẽ lập các phiếu thuê phòng, đặt phòng, thuê dịch vụ, hóa đơn cho Khách hàng. Mô hình diễn tả mối quan hệcủa của của cho tại 1..* 1..* 1..* 1..* 1..* 1..1 Hình 49:Sơ đồ biểu diễn quan hệ giữa Khách hàng với Phòng,Dịch vụ và Nhân viên đặt Phòng thuê Phòng sử dụng thanh toán 1..* 1..* lập lập bởi 1..* 1..* Hình 49: Mối quan hệ giữa Khách hàng với Phòng,Dịch vụ,Nhân viên Mối quan hệ giữa Nhân viên với Bộ phận, Người quản lý. Diễn tả: - Nhân viên và bộ phận có mối quan hệ một nhiều(1-n). - Bộ phận và người quản lý có mối quan hệ nhiều-nhiều (n-n). - Người quản lý và chức vụ có mối quan hệ nhiều-nhiều (n-n). Ý nghĩa: Một bộ phận sẽ có nhiều Nhân viên, Nhân viên chỉ có thể làm việc tại một Bộ phận duy nhất. Bộ phận được quản lý bởi một hoặc nhiều người quản lý, một người quản lý cũng có thể quản lý một hoặc nhiều bộ phận khác nhau. Người quản lý sẽ có một hoặc nhiều chức vụ, chức vụ của một hoặc nhiều người quản lý. Mô hình biểu diễn quan hệ Hình 50:Sơ đồ biểu diễn quan hệ giữa Nhân viên, Bộ phận, Người quản lý, Chức vụ làm tại g làm tại gồm gồm quản lý có của 0..* 1..1 1..* 1..* 1..* 1..* Mối quan hệ giữa Phòng, Loại Phòng, Trạng thái. Diễn tả: - Phòng và loại phòng có mối quan hệ (1-4). - Phòng và trạng thái phòng có mối quan hệ(1-4). Ý nghĩa: - Phòng sẽ có 4 trạng thái: Còn trống, đã được thuê,đã đặt trước, chưa được sử dụng. - Phòng sẽ có 4 loại: Đặc biệt, sang, trung bình, thường Mô hình biểu diễn quan hệ Hình 51:Sơ đồ biểu diễn quan hệ giữa Phòng,Loại Phòng,Trạng thái Phòng của có 1..4 1..* 1..4 1..* có của Mối quan hệ giữa Nhân viên,Thống kê, Phòng, Dịch vụ. Diễn tả - Nhân viên có mối quan hệ với thống kê là một- nhiều (1-n). - Thống kê với phòng có quan hệ nhiều-nhiều (n-n). -Thống kê với dịch vụ có quan hệ nhiều-nhiều (n-n). Ý nghĩa - Nhân viên có thể thống kê một lần với nhiều loại thống kê khác nhau. Mỗi thống kê khác nhau chỉ được thống kê bởi một Nhân viên. - Thống kê theo phòng, một lần thống kê sẽ thống kê được thuê phòng, đặt phòng, hủy đặt phòng, hóa đơn và nhiều phòng sẽ được thống kê nhiều lần. - Thống kê theo dịch vụ, một lần thống kê sẽ thống kê được sử dụng dịch vụ và nhiều lần sử dụng dịch vụ sẽ được thống kê nhiều lân. lập 1..1 1..* 1..* 1..* 1..* 1..* 1..* 1..* 1..* 1..* 1..* theo theo theo theo theo Hình 52:Mối quan hệ giữa Nhân viên,Thống kê,Phòng,Dịch vụ Mô hình biểu diễn quan hệ Mối quan hệ giữa Dịch vụ và Nhóm dịch vụ Diễn tả: Dịch vụ và Nhóm dịch vụ có mối quan hệ nhiều- nhiều (1-n) Ý nghĩa: Nhóm dịch vụ chức một hoặc nhiều Dịch vụ, một dịch vụ hoặc nhiều dịch vụ sẽ thuộc một Nhóm dịch. Mô hình biểu diễn quan hệ thuộc Hình 53:Mô hình biểu diễn mối quan hệ giữa Dịch vụ và Nhóm dịch vụ 1..* 1.* Hình 54 :Sơ đồ thực thể kết hợp của các thực thể trong Hệ thống Sơ đồ thực thể kết hợp THIẾT KẾ THIẾT KẾ KIẾN TRÚC HỆ THỐNG Phân chia Hệ thống con Hệ thống Website Quản lý Khách sạn Phân hệ thuê Phòng Phân hệ đặt Phòng Phân hệ trả Phòng Phân hệ thống kê Hình 55:Phân hệ Hệ thống con trong Hệ thống Website Quản lý Khách sạn UI.Layer Business Layer Data Layer Browser Web Server Fire wall ASP.Net MVC Framework View Controller Model Business Rule Engine Security Engine Linq to SQL SQL Server 2005 Hình 56:Kiến trúc xây dựng Hệ thống Website Quản lý Khách sạn Kiến trúc Hệ thống THIẾT KẾ DỮ LIỆU HỆ THỐNG Thiết kế cơ sở dữ liệu: Thiết kế các Bảng cho Hệ thống Bảng Phòng(Room) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích RoomID Int Khóa chính Lưu trữ mã Phòng RoomName nvarchar 50 Lưu trữ tên Phòng StatusID Int Khóa ngoại Lưu trữ thông tin trạng thái Phòng KindID Int Khóa ngoại Lưu trữ thông tin trạng thái Phòng ImageID Int Khóa ngoại Lưu trữ thông tin về ảnh Price Int Lưu trữ thông tin về Giá Bảng Trạng thái Phòng (Status) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích StatusID Int Khóa chính Lưu trữ thông tin Mã trạng thái StatusName Nvarchar 50 Lưu trữ thông tin tên trạng thái Bảng Loại Phòng (Kind) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích KindID Int Khóa chính Lưu trữ thông tin Mã Loại Phòng KindName Nvarchar 50 Lưu trữ thông tin Tên loại Phòng Bảng Image Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích ImageID Int Khóa chính Lưu trữ thông tin Mã hình ảnh ImageName Nvarchar 50 Lưu trữ thông tin Tên hình Path Nvarchar MAX Lưu trữ thông tin đường dẫn đến file ảnh Bảng Nhân viên(Employee) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích EmployeeID Int Khóa chính Lưu trữ thông tin Mã Nhân viên EmployeeName Nvarchar 50 Lưu trữ thông tin Tên Nhân viên PartialID Int Khóa ngoại Lưu trữ thông tin Mã Bộ phận SexID Int Khóa ngoại Lưu trữ thông tin về giới tính IdCode Char 10 Lưu trữ thông tin về CMND Email Varchar 250 Lưu trữ thông tin về Email Bảng Bộ phận (Partial) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích PartialID Int Khóa chính Lưu trữ thông tin Mã Bộ phận PartialName Nvarchar 50 Lưu trữ thông tin Tên Bộ phận ManagerID Int Khóa ngoại Lưu trữ thông tin Mã người Quinn lee Bảng Người Quản lý(Manager) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích ManagerID Int Khóa chính Lưu trữ thông tin Mã người Quản lý ManagerName Nvarchar 50 Lưu trữ thông tin Tên người quản lý FunctionID Int Khóa ngoại Lưu trữ thông tin Mã chức vụ SexID Int Khóa ngoại Lưu trữ thông tin về giới tính Email Varchar 250 Lưu trữ thông tin về Email Bảng chức vụ (Function) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích FunctionID Int Khóa chính Lưu trữ thông tin Mã chức vụ FunctionName Nvarchar 50 Lưu trữ thông tin Tên chức vụ Bảng Khách hàng (Customer) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích CustomerID Int Khóa chính Lưu trữ thông tin Mã khách hàng CustomerName Nvarchar 50 Lưu trữ thông tin Tên khách hàng IdCode Char 10 Lưu trữ thông tin về CMND SexID Int Khóa ngoại Lưu trữ thông tin về giới tính Country Nvarchar 50 Lưu trữ thông tin về Quốc gia Address Nvarchar 250 Lưu trữ thông tin về Địa chỉ Mobile Char 11 Lưu trữ thông tin về Số điện thoại Email Varchar 250 Lưu trữ thông tin về Email Bảng Dịch vụ(Service) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích ServiceID Int Khóa chinh Lưu trữ thông tin về Mã dịch vụ ServiceName Nvarchar 50 Lưu trữ thông tin về Tên dịch vụ ServiceGroupID Int Khóa ngoại Lưu trữ thông tin về Mã Nhóm dịch vụ Unit Int Lưu trữ thông tin về Đơn giá Price Int Lưu trữ thông tin về Giá Bảng Nhóm dịch vụ(ServiceGroup) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích ServiceGroupID Int Khóa chính Lưu trữ thông tin về Mã Nhóm dịch vụ ServiceGroupName Nvarchar 50 Lưu trữ thông tin về Tên Nhóm dịch vụ Bảng đặt Phòng(OrdingRoom) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích OrdingID Int Khóa chính Lưu trữ thông tin về Mã đặt Phòng RoomID Int Khóa ngoại Lưu trữ thông tin về Mã Phòng CustomerID Int Khóa ngoại Lưu trữ thông tin về Mã Khách hàng AmountRoom Int Lưu trữ thông tin về Số lượng Phòng ArrivedDay DateTime Lưu trữ thông tin về Ngày đến LeftDay DataTime Lưu trữ thông tin về Ngày trả Phòng Bảng Hủy đặt Phòng(DeletingOrder) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích DeletingOrderID Int Khóa chính Lưu trữ thông tin về Mã hủy đặt Phòng OrdingID Int Khóa ngoại Lưu trữ thông tin về Mã đặt Phòng Employee Int Khóa ngoại Lưu trữ thông tin về Mã Nhân viên DeletingDate DateTime Lưu trữ thông tin về Ngày hủy Bảng Hóa đơn(Bill) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích BillID Int Khóa chính Lưu trữ thông tin về Mã Hóa đơn HiringID Int Khóa ngoại Lưu trữ thông tin về Mã Thuê Phòng UsingServiceID Int Khóa ngoại Lưu trữ thông tin về Mã sử dụng Dịch vụ EmployeeID Int Khóa ngoại Lưu trữ thông tin về Mã Nhân viên CreatedDay DateTime Lưu trữ thông tin về Ngày lập Total Int Lưu trữ thông tin về Thành tiền Bảng Thống kê theo Doanh thu(StatisticBill) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích StatisticBillID Int Khóa chính Lưu trữ thông tin về Mã Thống kê doanh thu BillID Int Khóa ngoại Lưu trữ thông tin về Hóa đơn Bảng thống kê theo số lượng đặt Phòng(StatisticHiring) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích StatisticOrdingID Int Khóa chính Lưu trữ thông tin về Mã TK đặt Phòng OrdingID Int Khóa ngoại Lưu trữ thông tin về Mã đặt Phòng Bảng thống kê theo số lượng thuê Phòng(StatisticOrding) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích StatisticHiringID Int Khóa chính Lưu trữ thông tin về Mã TK thuê Phòng HiringID Int Khóa ngoại Lưu trữ thông tin về Mã thuê Phòng Bảng thống kê theo số lượng hủy đặt Phòng(StatisticDeletingOrder) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích StatisticDeletingOrderID Int Khóa chính Lưu trữ thông tin về Mã TK Hủy thuê Phòng DeletingOrderId Int Khóa ngoại Lưu trữ thông tin về Mã hủy thuê Phòng Bảng thống kê theo số lượng sử dụng dịch vụ(StatisticUsingService) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích StatisticUsingServiceID Int Khóa chính Lưu trữ thông tin về Mã TK sử dụng dịch vụ cUsingServiceID Int Khóa ngoại Lưu trữ thông tin về Mã sử dụng dịch vụ Bảng Thống kê(Statistical) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích StatisticalID Int Khoác chính Lưu trữ thông tin về Mã Thống kê StatisticalName Nvarchar 50 Lưu trữ thông tin về Tên thống kê EmployeeID Int Khóa ngoại Lưu trữ thông tin về Mã Nhân viên CreatedDay DateTime Lưu trữ thông tin về Ngày Lập StatisticBillID Int Khóa ngoại StatisticBillID Mã TK doanh thu StatisticOrdingID Int Khóa ngoại Lưu trữ thông tin về Mã TK đặt Phòng StatisticHiringID Int Khóa ngoại Lưu trữ thông tin về Mã TK thuê Phòng StatisticDeletingOrderID Int Khóa ngoại Lưu trữ thông tin về Mã TK Hủy thuê Phòng StatisticUsingServiceID Int Khóa ngoại Lưu trữ thông tin về Mã TK sử dụng dịch vụ Bảng thuê Phòng(HiringRoom) Tên cột Kiểu dữ liệu Độ dài Ràng buộc Chú thích HiringID Int Khóa chính Lưu trữ thông tin về Mã thuê Phòng RoomID Int Khóa ngoại Lưu trữ thông tin về Mã Phòng CustomerID Int Khóa ngoại Lưu trữ thông tin về Mã Khách hàng AmountRoom Int Lưu trữ thông tin về Số lượng Phòng HiringDay DateTime Lưu trữ thông tin về Ngày thuê ReturnDay DataTime Lưu trữ thông tin về Ngày trả Phòng GetTime DateTime Lưu trữ thông tin về Giờ nhận Phòng ReturnTime DateTime Lưu trữ thông tin về Giờ trả Phòng Ràng buộc toàn vẹn Ràng buộc toàn vẹn miền giá trị *RB1 Bối cảnh: TRẠNG THÁI PHÒNG(Status) Mô tả:Trạng thái Phòng khởi động phải nằm trong các trường hợp sau:Còn trống,Đã được thuê,Đã được đặt trước,Đang sửa chữa. Biểu diễn: " status Î Status: statusÎ (Còn trống,Đã được thuê,Đã đặt trước,Đang sửa chữa) Bảng tầm ảnh hưởng: Tên Thêm Xóa Sửa Status + + -(StatusName) *RB2 Bối cảnh: LOẠI PHÒNG(Kind) Mô tả:Loại Phòng khởi động phải nằm trong các trường hợp sau: Đặc biệt,I,II,III Biểu diễn: " kind Î Kind: kindÎ ( Đặc biệt,I,II,III ) Bảng tầm ảnh hưởng: Tên Thêm Xóa Sửa Kind + + -(KindName) *RB3 Bối cảnh: KHÁCH HÀNG(Customer) Mô tả: CMND/Passport,Visa phải có đủ 9 kí tự hoặc 13 kí tự cho Passport Biểu diễn: " customer Î Customer: customer.Idcode=xxxxxxxxx Bảng tầm ảnh hưởng: Tên Thêm Xóa Sửa Customer + - -(Idcode) *RB4 Bối cảnh: DỊCH VỤ (Service) Mô tả: Giá của dịch vụ phải >=0 Biểu diễn: " service Î Service: service.Price=>0 Bảng tầm ảnh hưởng: Tên Thêm Xóa Sửa Service + - +(Price) Ràng buộc toàn vẹn liên thuộc tính –liên quan hệ *RB5 Bối cảnh: PHÒNG(ROOM),LOẠI PHÒNG(Kind) Mô tả:Phòng phải có giá nằm trong các trường hợp sau (350.000,280.000,260.000,230.000) Biểu diễn: " room Î Room: roomÎ ( (350.000,280.000,260.000,230.000)) ^$ kindÎKind: room.KindID=kind.KindID Bảng tầm ảnh hưởng: Tên Thêm Xóa Sửa Kind - + +(KindID) Room + - +KindID) *RB6 Bối cảnh: NHÂN VIÊN (Emloyee),PHÒNG BAN(Partial) Mô tả:Nhân viên phải thuộc một Bộ phận Biểu diễn: " employee Î Employee^$ partial Î Partial :employee.PartialID=partial.Partial Bảng tầm ảnh hưởng: Tên Thêm Xóa Sửa Employee + + +( PartialID) Partial - + +( PartialID) *RB7 Bối cảnh: BỘ PHẬN (Partial),NGƯỜI QUẢN LÝ (Manager) Mô tả:Bộ phận phải được quản lý bởi Người quản lý Biểu diễn: " manager Î Manager^$ partial Î Partial : manager.ManagerID= partial.ManagerID Bảng tầm ảnh hưởng: Tên Thêm Xóa Sửa Manager + - + (ManagerID) Partial - + +(ManagerID) *RB8 Bối cảnh: NGƯỜI QUẢN LÝ (Manager),CHỨC VỤ (Function) Mô tả:Người quản lý sẽ có các chức vụ khác nhau hoặc có thể có nhiều chức vụ Biểu diễn: "managerÎManager ^$ functionÎFunction: manager.FunctionID=function.FunctionID Bảng tầm ảnh hưởng: Tên Thêm Xóa Sửa Manager + - +( FunctionID) Function - + +( FunctionID) *RB9 Bối cảnh: Phòng(Room) ,Khách hàng(Customer), Thuê Phòng(HiringRoom) Mô tả:Khách hàng sẽ thuê Phòng thông qua Thuê Phòng Biểu diễn: "customerÎCustomer,room ÎRoom,hiringÎHiring: customer.CustomerID=hiring.CustomerID^hiring.RoomID=room.RoomID Bảng tầm ảnh hưởng: Tên Thêm Xóa Sửa HiringRoom + - +( RoomID) Room - +(*) +( RoomID) (*) Một số trường hợp xóa Phòng không làm ảnh hưởng đến Hệ thống,tuy nhiên một số trường hợp lại ảnh hưởng đến các lược đồ quan hệ khác. *RB10 Bối cảnh: Phòng(Room) ,Khách hàng(Customer), đặt Phòng(OrdingRoom) Mô tả:Khách hàng sẽ đặt Phòng thông qua Đặt Phòng Biểu diễn: "customerÎCustomer,room ÎRoom,ordingÎOrding: customer.CustomerID=ording.CustomerID^ording.RoomID=room.RoomID Bảng tầm ảnh hưởng: Tên Thêm Xóa Sửa OrdingRoom + - +( RoomID) Room - + +( RoomID) *RB11 Bối cảnh: Thuê Phòng(Room) ,Sử dụng dịch vụ(UsingService)Khách hàng(Customer), Hóa đơn(Bill) Mô tả:Khách hàng sẻ thanh toán tiền Phòng,tiền sử dụng dịch vụ cho Khách sạn bởi Nhân viên Biểu diễn: "customerÎCustomer,room ÎRoom,hiringÎHiring,usingÎ UsingService,employeeÎEmployee,billÎBill:bill.HiringID=hiring.HiringID^ bill.UsingServiceID=using.UsingServiceID^bill.EmployeeID=employee.EmployeeID Bảng tầm ảnh hưởng: Tên Thêm Xóa Sửa Bill - + +( HiringID, UsingServiceID, EmployeeID) HiringRoom - - -( HiringID) UsingService - - -( UsingServiceID) Employee - - -(EmployeeID) Ràng buộc toàn vẹn tham chiếu *RB12 Bối cảnh: PHÒNG(Room),LOẠI PHÒNG(Kind) Mô tả: Một phòng chỉ có một loại Phòng duy nhất Biểu diễn: " room Î Room,$ 1kindÎKind:room.KindID=1kind.KindID Bảng tầm ảnh hưởng: Tên Thêm Xóa Sửa Room + - +(KindID) Kind - + +(KindID) *RB13 Bối cảnh: PHÒNG(Room),TRẠNG THÁI(Status) Mô tả: Một phòng chỉ có một trạng thái Phòng duy nhất Biểu diễn: " room Î Room,$ 1statusÎStatus:room.StatusID=1status.StatusID Bảng tầm ảnh hưởng: Tên Thêm Xóa Sửa Room + - +( StatusID ) Kind - + +( StatusID ) RB14 Bối cảnh: DỊCH VỤ(Service),NHÓM DỊCH VỤ(ServiceGroup) Mô tả: Một dịch vụ phải thuộc vào Một nhóm dịch vụ Biểu diễn: " service Î Service, $ 1groupÎGroupService:service.ServiceGroupID=1group.ServiceGroupID Bảng tầm ảnh hưởng: Tên Thêm Xóa Sửa Service + - +( ServiceGroupID ) ServiceGroup - + +( ServiceGroupID ) RB15 Bối cảnh: NHÂN VIÊN (Customer),BỘ PHẬN(Partial) Mô tả: Nhân viên phải thuộc một Phòng ban Biểu diễn: " employee Î Employee , $ 1partialÎPartial:employee.PartialID=1part.PartialID Bảng tầm ảnh hưởng: Tên Thêm Xóa Sửa Employee + - +( PartialID ) Partial - + +( PartialID ) THIẾT KẾ CHỨC NĂNG HỆ THỐNG Các xử lý tự động hóa: Thuê Phòng. Chuyển phòng Đặt phòng Sử dụng Dịch vụ. Thanh tóan Lập hóa đơn thu. In hóa đơn thu. Lập danh mục Phòng. Lập danh mục Dịch vụ Tra cứu Phòng. Tra cứu Dịch vụ. Tra cứu Khách hàng. Chức năng hệ thống: Đăng nhập hệ thống. Tạo tài khỏan đăng nhập. Thay đổi thông tin đăng nhập. Báo cáo, thống kê: Báo cáo doanh thu thuê phòng. Báo cáo doanh thu sử dụng dịch vụ. Báo cáo mật độ sử dụng phòng. Báo cáo mật độ sử dụng dịch vụ. Thống kê doanh thu trong tháng. Thống kê doanh thu thuê phòng trong tháng. Thống kê doanh thu dịch vụ trong tháng. Thống kê danh sách khách hàng. Thống kê mật độ đặt Phòng Trợ giúp: Giới thiệu Website Trợ giúp Khách hàng sử dụng các dịch vụ của Website. THIẾT KẾ GIAO DIỆN NGƯỜI DÙNG Hiển thị Phòng theo loại Phòng Phân trang Thông tin Phòng Danh sách đặt Phòng Menu bar Đặt phòng Hình 57 :Một số hình ảnh tổng quan về Khách sạn Hòa bình II Quản trị Hệ thống Site chính của website Danh sách Phòng của Loại I Tìm kiếm theo trạng thái Phòng Hình 58:Hiển thị danh sách Phòng của Loại Phòng Hình 59:Tìm kiếm thông tin Phòng Menu bar chức năng quản lý Đăng nhập Trở lại site chính Chức năng quản lý Điền thông tin Khách hàng để đặt Phòng online Hình 61:Khách hàng điền thông tin để đặt Phòng Danh sách phòng đã chọn Xóa phòng Hiển thị nhanh thông tin đặt Phòng Hình 60:Thông tin đặt Phòng Online Hình 62:Đăng nhập thành công với tài khoản đã được cấp và phân quyền sử dụng Đăng nhập Hệ thống,với quyền sử dụng các chức năng Hệ thống Hình 62:Đăng nhập Hệ thống,với Hệ thống phân quyền sử dụng chức năng Hệ thống Hình 64:Quản lý Dịch vụ của Khách sạn Chỉnh sửa thông tin dịch vụ Quản lý Phòng Thêm Phòng Chỉnh sửa Hình 63:Quản lý Phòng:Thêm,xóa,sửa Phòng trong Hệ thống Hình 66: Quản lý Nhân sự của Khách sạn THIẾT KẾ MODULE CHO HỆ THỐNG IPO Chart (IPO: Input - Processing - Output): Là sơ đồ logic quan niệm các hoạt động đầu vào và đầu ra của thông tin. Lược đồ này cho ta cái nhìn logic về hoạt động sử lý của hệ thống và là các chức năng của hệ thống tương lai. IPO Chart Số: 1 Môđun: NHẬP THÔNG TIN KHÁCH HÀNG Hệ thống: WEBSITE QUẢN LÝ KHÁCH SẠN Mục tiêu: Nhập dữ liệu cho KHÁCH HÀNG Input: Thông tin khách hàng Xử lý: Nhập thông tin của khách hàng Tìm thông tin của khách hàng trong bảng KHÁCH HÀNG(Customer) If không tìm thấy Then Thêm thông tin khách hàng vào bảng KHACHHANG Else Cập nhật lại thông tin khách hàng đã có trong bảng KHÁCH HÀNG(Customer) End If Output: Thông tin khách hàng ghi vào bảng Customer IPO Chart Số: 2 Môđun: NHẬP THÔNG TIN ĐĂNG KÍ THUÊ PHÒNG Hệ thống: WEBSITE QUẢN LÝ KHÁCH SẠN Mục tiêu: Nhập dữ liệu Thuê Phòng (HiringRoom) Input: Thông tin thuê Phòng Xử lý: Nhập thông tin của đăng kí thuê Phòng Tìm thông tin của thuê Phòng trong bảng Thuê Phòng (HiringRoom) If không tìm thấy Then Thêm thông tin thuê Phòng trong bảng Thuê Phòng (HiringRoom) Else Cập nhật lại thông tin đăng ký thuê phòng đã có trong Thuê Phòng (HiringRoom) End If Output: Thông tin thuê Phòngghi vào bảng THUÊ PHÒNG (HiringRoom) IPO Chart Số: 3 Môđun: NHẬP THÔNG TIN ĐĂNG KÍ ĐẶT PHÒNG Hệ thống: WEBSITE QUẢN LÝ KHÁCH SẠN Mục tiêu: Nhập dữ liệu cho Đặt Phòng (OrdingRoom) Input: Thông tin đăng kí đặt phòng Xử lý: Nhập thông tin phòng Tìm thông tin phòng trong bảng ĐẶT PHÒNG If không tìm thấy Then Thêm thông tin đặt phòng trong bảng đặt phòng (OrdingRoom) Else Cập nhật lại thông tin đặt phòng đã có trong bảng đặt Phòng (OrdingRoom) End If Output: Thông tin nhận phòng ghi vào bảng ĐẶT PHÒNG (OrdingRoom) IPO Chart Số: 4 Môđun: NHẬP THÔNG TIN ĐĂNG KÍ ĐẶT PHÒNG Hệ thống: WEBSITE QUẢN LÝ KHÁCH SẠN Mục tiêu: Dữ liệu cho hủy đặt phòng(DeletingOrder) Input: Thông tin đăng kí đặt phòng Xử lý: Kiểm tra thông tin đặt phòng: ngày giờ nhận phòng(Ngày đến) If Ngày nhận phòng-ngày đặt phòng>=1 Then Hủy đặt Phòng Else Cập nhật lại thông tin đặt phòng đã có trong bảng đặt phòng (OrdingRoom) End If Output: Lưu thông tin hủy đặt phòng vào hủy đặt phòng(DeletingOrder) IPO Chart Số: 5 Môđun: NHẬP THÔNG TIN ĐĂNG KÍ SỬ DỤNG DỊCH VỤ Hệ thống: WEBSITE QUẢN LÝ KHÁCH SẠN Mục tiêu: Nhập dữ liệu cho Sử dụng dịch vụ(UsingService) Input: Thông tin sử dụng dịch vụ Xử lý: Nhập thông tin sử dụng dịch vụ Tìm thông tin sử dụng dịch vụ trong bảng dịch vụ(Service) If không tìm thấy Then Thêm thông tin thuê phòng trong bảng sử dụng dịch vụ(UsingService) Else Cập nhật lại thông tin Sử dụng dịch vụ(UsingService) End If Output: Thông tin thuê phòng ghi vào bảng THUÊ PHÒNG (HiringRoom) IPO Chart Số: 6 Môđun: NHẬP THÔNG TIN NHÂN VIÊN Hệ thống: WEBSITE QUẢN LÝ KHÁCH SẠN Mục tiêu: Nhập dữ liệu cho NHÂN VIÊN (Customer) Input: Thông tin Nhân viên Xử lý: Nhập thông tin của Nhân viên Tìm thông tin của Nhân viên trong bảng NHÂN VIÊN (Customer) If không tìm thấy Then Thêm thông tin Nhân viên vào bảng NHÂN VIÊN (Customer) Else Cập nhật lại thông Nhân viên đã có trong bảng NHÂN VIÊN (Customer) End If Output: Thông tin khách hàng ghi vào bảng Customer IPO Chart Số: 7 Môđun: NHẬP THÔNG TIN BỘ PHẬN Hệ thống: WEBSITE QUẢN LÝ KHÁCH SẠN Mục tiêu: Nhập dữ liệu cho BỘ PHẬN (Partial) Input: Thông tin Phòng ban Xử lý: Nhập thông tin của phòng ban Tìm thông tin của Phòng ban trong bảng BỘ PHẬN (Partial) If không tìm thấy Then Thêm thông tin phòng ban vào bảng BỘ PHẬN (Partial) Else Cập nhật lại thông phòng ban đã có trong bảng BỘ PHẬN (Partial) End If Output: Thông tin phòng ban ghi vào bảng Customer IPO Chart Số: 8 Môđun: NHẬP THÔNG TIN NGƯỜI QUẢN LÝ Hệ thống: WEBSITE QUẢN LÝ KHÁCH SẠN Mục tiêu: Nhập dữ liệu cho NGƯỜI QUẢN LÝ(Manager) Input: Thông tin Người quản lý Xử lý: Nhập thông tin của người quản lý Tìm thông tin của người quản lý trong bảng NGƯỜI QUẢN LÝ(Manager) If không tìm thấy Then Thêm thông tin người quản lý vào bảng NGƯỜI QUẢN LÝ(Manager) Else Cập nhật lại thông người quản lý đã có trong bảng NGƯỜI QUẢN LÝ(Manager) End If Output: Thông tin người quản lý ghi vào bảng NGƯỜI QUẢN LÝ(Manager) IPO Chart Số : 8 Môđun: NHẬP THÔNG PHIẾU THANH TOÁN Hệ thống: WEBSITE QUẢN LÝ KHÁCH SẠN Mục tiêu: Đưa ra phiếu thanh toán cho Khách hàng Input: Thông tin về Khách hàng, về tiền phòng, về tiền sử dụng dịch vụ Xử lý: Nhập thông tin cần thiết về Khách hàng, tiền phòng, tiền sử dụng dịch vụ Nhập phòng cần thanh toán tiền If phòng = phòng hết hạn sử dụng Then Tính tổng số tiền phải trả cho Khách hàng Số tiền khách thanh toán = Tổng số tiền các khoản dịch vụ trong những ngày khách đã thuê + tiền phòng trong các ngày lại. In ra phiếu thanh toán tiền cho khách Else If Nếu gia hạn sử dụng Then Kiểm tra trạng thái phòng If Phòng còn trống Cập nhật thông tin gia hạn vào bảng thuê phòng (HiringRoom) Không in ra phiếu thanh toán Else Từ chối gia hạn sử dụng In ra phiếu thanh toán tiền cho khách End If Else End If Output: In ra phiếu thanh toán cho khách IPO Chart Số: 9 Môđun: NHẬP THÔNG TIN THỐNG KÊ Hệ thống: WEBSITE QUẢN LÝ KHÁCH SẠN Mục tiêu: Nhập dữ liệu cho THỐNG KÊ (Statistical) Input: Thông tin Thống kê Xử lý: Nhập thông tin thống kê Tìm thông tin thống kê trong bảng THỐNG KÊ (Statistical) If không tìm thấy Then Thêm thông tin thống kê vào bảng THỐNG KÊ (Statistical) Else Cập nhật lại thông thống kê đã có trong bảng THỐNG KÊ (Statistical) End If Output: Thông tin thống kê ghi vào bảng THỐNG KÊ (Statistical) HIỆN THỰC HÓA PHÂN TÍCH VÀ THIẾT KẾ(CODING) LẬP KẾ HOẠCH CODE . Coding theo từng chức năng của hệ thống Hệ thống Website được phân chia thành hai thành phần: Site Admin và Publish Site. + Site Admin dùng cho chức năng Quản trị Hệ thống. Site Admin được sử dụng bởi các Actor hệ thống như Nhân viên tiếp tân, Nhân viên Kế toán, Nhân viên Kinh doanh, Giám đốc….. + Publish Site: Đây là site chính của hệ thống Web site bao gồm các danh mục về phòng, dịch vụ phục vụ cho phép Khách hàng có thể tham khảo và đặt phòng trực tuyến. + Xây dựng các file, module chương trình cho phù hợp. Coding theo IPO Chart Xác định các IPO cho từng giai đoạn, code theo và có thể tái sử dụng một số module đã được viết. TEST TỪNG CHỨC NĂNG MỘT(TRONG LÚC CODE) Sử dụng các công cụ, các extendtion có chức năng Test dữ liệu trong lúc code nhằm tạo ra Website có tính đúng đắn cao. Bẩy được nhiều lỗi hơn trong quá trình thực thi. Ngoài ra các công cụ hổ trợ cho phép kiểm thử trực tiếp trong chương trình nên rất tiện phát hiện các lỗi phát sinh. Việc phát hiện sớm các sai sót này rất quan trọng, vì khi đó ta có thể phân tích hoặc thiết kế lại hệ thống trước khi triển khai cho Khách hàng. Việc này làm giảm thời gian và chi phí kiểm thử Website khá nhiều. UnitTest trong Visual Studio 2008 là một công cụ cho phép kiểm thử chương trình rất tốt. KIỂM THỬ LẬP KẾ HOẠCH KIỂM THỬ Kế hoạch kiễm thử được thực hiện theo từng bước phát triển của hệ thống và được tiến hành trên tất cả các chức năng của hệ thống đảm bảo hệ thống hoạt động tốt. KIỂM THỬ VÀ ĐÁNH GIÁ KẾT QUẢ Module Kết quả kiểm thử Đánh giá Độ tin cậy Ghi chú Quản lý đặt Phòng Chạy tốt 2 chức năng đặt Phòng online, đặt Phòng offline. Cho phép khách hàng, Nhân viên tương tác với Website dễ dàng, chính xác. Đảm bảo yêu cầu đặt ra của Dự án 80% Quản lý Phòng Quản lý thông tin Phòng, tình trạng Phòng tương đối tốt Đảm bảo được yêu cầu của Dự án 80% Quản lý Dịch vụ Chạy tương đối tốt, quản lý được thông tin về dịch vụ phục vụ. Đạt yêu cầu 80 5 Quản lý thuê Phòng Quản lý được thông tin Phòng và Khách hàng thuê Phòng, Ngày trả Phòng và Hóa đơn thanh toán. Đạt yêu cầu 80% Quản lý Nhân viên Chức năng này chạy tốt, quản lý thông tin Nhân viên của từng Bộ phận. Đạt yêu cầu 80% Quản trị Hệ thống Chức năng quản trị hoạt động chính xác, an toàn, đảm bảo bảo mật cho Website Đạt yêu cầu 85% CÀI ĐẶT: Cài đặt trên localhost Trước tiên phải cài đặt .Net Framework 3.5,IIS 7, Visual Studio 2008, sau đó Acttack Database kèm theo đĩa CD vào SQL Server Managerment. Khởi động Visual Studio và chạy eHotelProject, tạo connect đến eHotelDB đã được Attack và Build lại Project. Chạy chương trình để Khách hàng kiểm thử và đánh giá. Cấu hình host trên Web Hosting Service. Giai đoạn này là giai đoạn bàn giao Website đến Khách hàng. Nhóm sẽ cấu hình trên host đã được đăng kí với nhà cung cấp Host cùng với tài liệu hướng dẫn quản trị Hệ thống cho Nhân viên của Khách sạn Hòa Bình. ĐÁNH GIÁ DỰ ÁN Trong thời gian nghiên cứu xây dựng chương trình chúng em đã cố gắng cùng với sự giúp đỡ tận tình của thấy cô và các bạn, Website đã đạt được những kết quả nhất định: Giao diện người dùng đơn giản dể sử dụng, tìm kiếm nhanh chóng, chính xác tiết kiệm thời gian giúp hạn chế được việc phải lưu quá nhiều sổ sách trong quản lý. Tuy nhiên một số chức năng cần phải năng cấp và tối ưu để đạt được kết qua thực thi tốt nhất cho các dự án công nghệ thông tin tiếp theo. Dự án hoàn thành đúng kế hoạch. TÀI LIỆU THAM KHẢO Sách về Phân tích thiết kế Hệ thống Giáo trình PHÂN TÍCH THIẾT KẾ HỆ THỐNG THÔNG TIN (Phần I) ThS: Phạm Nguyễn Cương (Đại học quốc gia TP HCM). The Object Primer, Third Edition Scott W. Ambler (Cambridge, United Kingdom). MasteringUML (Object Management Group, Inc.) ApplyingUML - Rob Pooley and Pauline Wilcox, August 2003. Sách về ngôn ngữ lập trình: Apress.Pro.ASP.NET.MVC.Framework.Apr.2009-Copyright © 2009 by teven Sanderson- ISBN-13 (pbk): 978-1-4302-1007-8. ASP.NET MVC in Action (2009)- ©2010 by Manning Publications Co. All rights reserved. ISBN 978-1-933988-62-7. Sams.ASP.NET.MVC.Framework.Unleashed.Dec.2009- Copyright © 2010 by Pearson Education,Inc. ISBN-13: 978-0-672-32998-2. Professional ASP.NET MVC 1.0- Copyright © 2009 by Wiley Publishing, Inc., Indianapolis, Indiana. LINQ in Action- ©2008 by Manning Publications Co. All rights reserved. Pro LINQ: Language Integrated Query in C# 2008 -Copyright © 2007 by Joseph C. Rattz, Jr. Các tài nguyên khác Một số demo, example của các blog, website. Tài liệu tham khảo của Giáo viên Đại học An Giang. Một số tài nguyên khác. Trao đổi học tập của Bạn bè.

Các file đính kèm theo tài liệu này:

  • docXây dựng website quản lý khách sạn.doc
Tài liệu liên quan