Luận văn Xây dựng website đặt phòng cho khách sạn

Tài liệu Luận văn Xây dựng website đặt phòng cho khách sạn: KH OA C NT T – Đ H KH TN TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN MẠNG MÁY TÍNH & VIỄN THÔNG TÔN ANH TUẤN – TRẦN HOÀNG KHANH XÂY DỰNG WEBSITE ĐẶT PHÒNG CHO KHÁCH SẠN LUẬN VĂN CỬ NHÂN TIN HỌC TP. HCM, 2004 KH OA C NT T – Đ H KH TN TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN MẠNG MÁY TÍNH & VIỄN THÔNG TÔN ANH TUẤN - 0012184 TRẦN HOÀNG KHANH - 0012571 XÂY DỰNG WEBSITE ĐẶT PHÒNG CHO KHÁCH SẠN LUẬN VĂN CỬ NHÂN TIN HỌC GIÁO VIÊN HƯỚNG DẪN ThS. MAI VĂN CƯỜNG NIÊN KHÓA 2000 – 2004 KH OA C NT T – Đ H KH TN NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ...................................................................................................................... ...................................................................................................................... ............................................................................................................

pdf190 trang | Chia sẻ: hunglv | Lượt xem: 1647 | Lượt tải: 1download
Bạn đang xem trước 20 trang mẫu tài liệu Luận văn Xây dựng website đặt phòng cho khách sạn, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
KH OA C NT T – Đ H KH TN TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN MẠNG MÁY TÍNH & VIỄN THÔNG TÔN ANH TUẤN – TRẦN HOÀNG KHANH XÂY DỰNG WEBSITE ĐẶT PHÒNG CHO KHÁCH SẠN LUẬN VĂN CỬ NHÂN TIN HỌC TP. HCM, 2004 KH OA C NT T – Đ H KH TN TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN MẠNG MÁY TÍNH & VIỄN THÔNG TÔN ANH TUẤN - 0012184 TRẦN HOÀNG KHANH - 0012571 XÂY DỰNG WEBSITE ĐẶT PHÒNG CHO KHÁCH SẠN LUẬN VĂN CỬ NHÂN TIN HỌC GIÁO VIÊN HƯỚNG DẪN ThS. MAI VĂN CƯỜNG NIÊN KHÓA 2000 – 2004 KH OA C NT T – Đ H KH TN NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... KH OA C NT T – Đ H KH TN NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... ...................................................................................................................... KH OA C NT T – Đ H KH TN LỜI CÁM ƠN Chúng em sẽ không thể hoàn thành luận văn này nếu không có sự hướng dẫn và chỉ bảo tận tình của Thầy Mai Văn Cường. Chúng em xin chân thành cảm ơn sự chỉ bảo của Thầy. Chúng em xin trân trọng cám ơn quý Thầy cô trong khoa Công nghệ thông tin trường Đại học Khoa học Tự nhiên Tp. Hồ Chí Minh đã tận tình giảng dạy, truyền đạt những kiến thức quý báo và tạo điều kiện cho chúng em thực hiện luận văn này. Xin chân thành cảm ơn sự giúp đỡ, động viên và chỉ bảo rất tận tình của tất cả các bạn cũng như các anh chị đi trước trong quá trình thực hiện luận văn. Mặc dù đã cố gắng nổ lực hết mình, song luận văn chắc chắn còn nhiều thiếu sót. Chúng em rất mong nhận được sự thông cảm và chỉ bảo tận tình của quý Thầy cô và các bạn. Tp. HCM, 7/2004 Nhóm sinh viên thực hiện Tôn Anh Tuấn – Trần Hoàng Khanh KH OA C NT T – Đ H KH TN LỜI NÓI ĐẦU Sự phát triển của công nghệ thông tin cũng như World Wide Web trong những năm vừa qua ở Việt Nam và trên thế giới đem đến một khả năng tiềm tàng có thể được ứng dụng để xây dựng nên một hệ thống thương mại điện tử (đang còn đi những bước đầu tiên ở Việt Nam). Từ những dự án lớn mang tầm cỡ quốc gia cho đến những dự án nhỏ cho từng công ty, xí nghiệp đều nhằm các mục đích như: quảng bá thông tin về các sản phẩm và dịch vụ, tạo sự thuận lợi cho khách hàng trong việc tiếp cận và mua sản phẩm… với mục đích cuối cùng là lợi nhuận. Trong bối cảnh hội nhập kinh tế thế giới, nhu cầu hợp tác kinh tế, trao đổi và giao lưu văn hóa ngày càng nhiều thì việc đi lại, ăn ở của khách nước ngoài khi đến Việt Nam, cũng như khách trong nước cũng tăng lên. Một thực tế cho thấy là có những khó khăn, trở ngại đối với người nước ngoài (bao gồm cả Việt kiều ở các nước) khi có ý định đến Việt Nam là vấn đề chỗ ở, họ rất băn khoăn trong việc tìm kiếm và đặt chỗ trong một khách sạn mà có thể đáp ứng được nhu cầu của mình, trong khi đó thì hệ thống các khách sạn ở nướ ta ngày càng lớn, hiện đại và tiện nghi. Với mong muốn có thể tạo được một hệ thống website cho phép người dùng tìm kiếm thông tin về các khách sạn ở Việt Nam, đồng thời hỗ trợ việc đặt phòng trước qua mạng, chúng em đã tập trung tìm hiểu và thực hiện đề tài “XÂY DỰNG WEBSITE ĐẶT PHÒNG CHO KHÁCH SẠN - BOOKING GATEWAY”. Mặc dù đây không hẳn là một nội dung mới mẻ (vì đã có rất nhiều trang web hỗ trợ các dịch vụ này như: nhưng nó là một đề tài có thể đem đến nhiều lợi ích thiết thực: củng cố và phát huy những kiến thức đã học vào ứng dụng thực tế, khả năng làm việc độc lập với một đề án thực sự, và nếu thành công nó có thể góp mặt vào hệ thống các website hỗ trợ dịch vụ khách sạn (và có thể mở rộng KH OA C NT T – Đ H KH TN sang các lĩnh vực khác như đặt vé máy bay, thuê xe đi lại...), đồng thời cho khách hàng thêm một sự lựa chọn tin cậy. Luận văn bao gồm các nội dung như sau: Chương 1: Mở đầu. Giới thiệu chung về đề tài, ý nghĩa và các mục tiêu của đề tài; các đề án và hệ thống tương tự trong và ngoài nước. Chương 2: Tổng quan về hệ thống Booking Gateway. Giới thiệu tổng quan về hệ thống sẽ xây dựng, các nhiệm vụ mà hệ thống sẽ thực hiện, và các giải pháp liên quan. Chương 3: Phân tích. Bao gồm các tài liệu liên quan đến quá trình phân tích hệ thống như: phân tích các yêu cầu chức năng và phi chức năng, các mô hình use case và đặc tả use case, các mô hình lớp và lưu đồ hoạt động. Chương 4: Thiết kế. Bao gồm các tài liệu liên quan đến quá trình thiết kế hệ thống như: thiết kế dữ liệu, thiết kế kiến trúc, thiết kế chức năng, thiết kế giao diện. Chương 5: Cài đặt và triển khai. Trình bày các vấn đề liên quan đến cài đặt và triển khai hệ thống như: lựa chọn môi trường cài đặt, các công nghệ mới được sử dụng, các bước cài đặt chính và việc triển khai hệ thống trên môi trường Windows. Chương 6: Kết luận. Trình bày tóm tắt các kết quả đạt được và đề xuất các hướng mở rộng, phát triển trong tương lai. KH OA C NT T – Đ H KH TN MỤC LỤC Chương 1. TỔNG QUAN VỀ HỆ THỐNG BOOKING GATEWAY.................................. 1 1.1 Phát biểu bài toán:........................................................................................................ 1 1.2 Các đối tượng phục vụ của hệ thống: .......................................................................... 1 1.2.1 Các khách sạn: ..................................................................................................... 1 1.2.2 Khách viếng, những người có nhu cầu tìm khách sạn: ........................................ 1 1.2.3 Người quản trị website:........................................................................................ 2 1.3 Các yêu cầu chính mà hệ thống phải thực hiện: .......................................................... 2 1.4 Các công cụ hỗ trợ lập trình:........................................................................................ 3 Chương 2. PHÂN TÍCH ........................................................................................................ 4 2.1 Phân tích yêu cầu hệ thống: ......................................................................................... 4 2.1.1 Các yêu cầu chức năng: ....................................................................................... 4 2.1.2 Các yêu cầu phi chức năng: ................................................................................. 5 2.2 Bảng chú giải: .............................................................................................................. 6 2.2.1 Giới thiệu: ............................................................................................................ 6 2.2.2 Các định nghĩa: .................................................................................................... 6 2.3 ặc tả bổ sung:........................................................................................................... 10 2.3.1 Mục tiêu: ............................................................................................................ 10 2.3.2 Phạm vi: ............................................................................................................. 10 2.3.3 Tài liệu tham khảo: ............................................................................................ 10 2.3.4 Chức năng: ......................................................................................................... 10 2.3.5 Tính khả dụng: ................................................................................................... 10 2.3.6 Tính ổn định:...................................................................................................... 10 2.3.7 Hiệu suất: ........................................................................................................... 11 2.3.8 Sự hỗ trợ: ........................................................................................................... 11 2.3.9 Tính bảo mật: ..................................................................................................... 11 2.3.10 Các ràng buộc thiết kế: .................................................................................. 11 2.4 Các sơ đồ Use Case:................................................................................................... 12 2.4.1 Mô hình các trường hợp sử dụng của Admin: ................................................... 12 2.4.2 Mô hình các trường hợp sử dụng của Airplane: ................................................ 13 2.4.3 Mô hình các trường hợp sử dụng của Hotel: ..................................................... 14 2.4.4 Mô hình các trường hợp sử dụng của Visitor: ................................................... 15 2.5 Đặc tả Use Case: ........................................................................................................ 15 2.5.1 Đăng nhập vào hệ thống: ................................................................................... 15 2.5.2 Quản lý các Khách sạn:...................................................................................... 17 2.5.3 Quản lý các Hãng hàng không:.......................................................................... 19 2.5.4 Quản lý Khách viếng: ........................................................................................ 21 2.5.5 Quản lý người dùng khác:.................................................................................. 22 2.5.6 Quản lý các thông tin của Khách sạn:................................................................ 24 2.5.7 Quản lý các thông tin của Hãng hàng không: .................................................... 26 2.5.8 Đăng ký nhà cung cấp dịch vụ mới: .................................................................. 28 2.5.9 Đăng ký thành viên mới:.................................................................................... 30 2.5.10 Đăng ký phòng khách sạn:............................................................................. 31 2.5.11 Tìm kiếm Khách sạn, Hãng hàng không: ...................................................... 33 KH OA C NT T – Đ H KH TN 2.5.12 Nhập mô tả cho Hãng hàng không:................................................................ 34 2.5.13 Nhập mô tả Khách sạn: .................................................................................. 36 2.5.14 Cập nhật mô tả Hãng hàng không:................................................................. 37 2.5.15 Cập nhật mô tả Khách sạn: ............................................................................ 39 2.5.16 Trao đổi thông tin: ......................................................................................... 40 2.6 Sơ đồ lớp:................................................................................................................... 43 2.6.1 Admin Login Class: ........................................................................................... 43 2.6.2 Airplane Description Class: ............................................................................... 44 2.6.3 Hotel Description Class: .................................................................................... 45 2.6.4 Exchange Info Class: ......................................................................................... 45 2.6.5 Manage Airplane Class:..................................................................................... 46 2.6.6 Manage Hotel Class: .......................................................................................... 47 2.6.7 Manage Airplane Info Class: ............................................................................. 48 2.6.8 Manage Hotel Info Class: .................................................................................. 49 2.6.9 Manage User Class: ........................................................................................... 50 2.6.10 Manage Visitor Class:.................................................................................... 50 2.6.11 Register Member Class:................................................................................. 51 2.6.12 Register Service Class: .................................................................................. 51 2.6.13 Register Supplier Class:................................................................................. 52 2.7 Các lưu đồ hoạt động: ................................................................................................ 53 2.7.1 Đăng nhập hệ thống: .......................................................................................... 53 2.7.2 Khách viếng đăng ký làm thành viên:................................................................ 55 2.7.3 Khách sạn đăng ký làm nhà cung cấp dịch vụ khách sạn: ................................. 57 2.7.4 Khách viếng đặt phòng ở khách sạn: ................................................................. 59 2.7.5 Nhập thông tin mô tả cho Hãng hàng không: .................................................... 61 2.7.6 Nhập thông tin mô tả cho Khách sạn:................................................................ 63 2.7.7 Soạn và gửi các thông điệp: ............................................................................... 65 2.7.8 Xem các thông điệp: .......................................................................................... 67 2.7.9 Xem các thông tin chung của Hãng hàng không: .............................................. 69 2.7.10 Cập nhật các thông tin chung của Khách sạn: ............................................... 71 2.7.11 Cập nhật các thông tin mô tả của Khách sạn: ................................................ 73 2.7.12 Tìm kiếm Khách sạn: ..................................................................................... 75 2.7.13 Thêm người sử dụng mới (với vai trò Admin): ............................................. 77 2.7.14 Xem danh sách người sử dụng (với vai trò Admin): ..................................... 79 2.7.15 Xem thông tin người sử dụng (với vai trò Admin):....................................... 81 2.7.16 Xóa thông tin người sử dụng (với vai trò Admin): ........................................ 83 2.7.17 Xem danh sách các Khách sạn:...................................................................... 85 2.7.18 Xem thông tin chi tiết một Khách sạn: .......................................................... 87 2.7.19 Xóa một Khách sạn:....................................................................................... 89 2.7.20 Xem danh sách khách viếng: ......................................................................... 91 2.7.21 Xem thông tin một khách viếng:.................................................................... 93 2.7.22 Xóa một khách viếng: .................................................................................... 95 Chương 3. THIẾT KẾ.......................................................................................................... 97 3.1 Thiết kế dữ liệu: ......................................................................................................... 97 3.1.1 Mô hình dữ liệu logic ở dạng sơ đồ: .................................................................. 98 3.1.2 Danh sách các bảng dữ liệu: .............................................................................. 99 KH OA C NT T – Đ H KH TN 3.1.3 Danh sách các thành phần của lược đồ dữ liệu:............................................... 104 3.1.4 Danh sách các thuộc tính của từng thành phần:............................................... 106 3.1.5 Danh sách các ràng buộc toàn vẹn:.................................................................. 119 3.2 Thiết kế kiến trúc: .................................................................................................... 124 3.3 Thiết kế chức năng:.................................................................................................. 127 3.3.1 Bảng mô tả các hàm và thủ tục: ....................................................................... 127 3.3.2 Bảng mô tả module: ......................................................................................... 129 3.4 Thiết kế giao diện: ................................................................................................... 130 Chương 4. CÀI ĐẶT VÀ TRIỂN KHAI........................................................................... 139 4.1 Cài đặt: ..................................................................................................................... 139 4.1.1 Lựa chọn môi trường cài đặt:........................................................................... 139 4.1.2 Lựa chọn mô hình cài đặt: ............................................................................... 139 4.1.3 Xây dựng các lớp xử lý chính:......................................................................... 141 4.1.4 Cài đặt các hàm xử lý chủ yếu: ........................................................................ 147 4.1.5 Tiếp cận với công nghệ lập trình Web mới – ASP.NET: ................................ 153 4.2 Triển khai và thử nghiệm chương trình: .................................................................. 166 4.2.1 Triển khai và thử nghiệm ứng dụng:................................................................ 166 Chương 5. TỔNG KẾT...................................................................................................... 173 5.1 Kết luận:................................................................................................................... 173 5.2 Hướng phát triển: ..................................................................................................... 175 5.2.1 Xây dựng bổ sung thêm các nhà cung cấp dịch vu khác: ................................ 175 5.2.2 Liên kết với các hệ thống ngân hàng: .............................................................. 176 5.2.3 Liên kết với các đối tác là nhà cung cấp dịch vụ để thực hiện quá trình đăng ký và thanh toán tự động: .................................................................................................... 176 5.2.4 Đưa vào triển khai ứng dụng trên thực tế: ....................................................... 176 KH OA C NT T – Đ H KH TN DANH SÁCH HÌNH Hình 2-1: Mô hình use-case của Admin .................................................................................... 12 Hình 2-2: Mô hình use-case của Airplane ................................................................................. 13 Hình 2-3: Mô hình use-case của Hotel ...................................................................................... 14 Hình 2-4: Mô hình use-case của Visitor .................................................................................... 15 Hình 2-5: Class Diagram: Đăng nhập hệ thống......................................................................... 43 Hình 2-6: Class Diagram: Mô tả hãng hàng không ................................................................... 44 Hình 2-7: Class Diagram: Mô tả khách sạn ............................................................................... 45 Hình 2-8: Class Diagram: Trao đổi thông tin ............................................................................ 45 Hình 2-9: Class Diagram: Quản lý Hãng hàng không ............................................................... 46 Hình 2-10: Class Diagram: Quản lý khách sạn.......................................................................... 47 Hình 2-11: Class Diagram: Quản lý thông tin Hãng hàng không.............................................. 48 Hình 2-12: Class Diagram: Quản lý thông tin khách sạn .......................................................... 49 Hình 2-13: Class Diagram: Quản trị người dùng....................................................................... 50 Hình 2-14: Class Diagram: Quản trị khách viếng...................................................................... 50 Hình 2-15: Class Diagram: Đăng ký thành viên........................................................................ 51 Hình 2-16: Class Diagram: Đăng ký dịch vụ............................................................................. 51 Hình 2-17: Class Diagram: Đăng ký nhà cung cấp dịch vụ....................................................... 52 Hình 2-18: Sequence Diagram: Đăng nhập hệ thống ................................................................ 53 Hình 2-19: Collaboration Diagram: Đăng nhập hệ thống.......................................................... 54 Hình 2-20: Sequence Diagram: Đăng ký thành viên ................................................................. 55 Hình 2-21: Collaboration Diagram: Đăng ký thành viên........................................................... 56 Hình 2-22: Sequence Diagram: Đăng ký nhà cung cấp dịch vụ ................................................ 57 Hình 2-23: Collaboration Diagram: Đăng ký nhà cung cấp dịch vụ ......................................... 58 Hình 2-24: Sequence Diagram: Đặt phòng khách sạn ............................................................... 59 Hình 2-25: Collaboration Diagram: Đặt phòng khách sạn ........................................................ 60 Hình 2-26: Sequence Diagram: Nhập thông tin mô tả Hãng hàng không ................................. 61 Hình 2-27: Collaboration Diagram: Nhập thông tin mô tả cho ................................................. 62 Hình 2-28: Sequence Diagram: Nhập thông tin mô tả cho khách sạn ....................................... 63 Hình 2-29: Collaboration Diagram: Nhập thông tin mô tả cho khách sạn ................................ 64 Hình 2-30: Sequence Diagram: Gửi thông điệp ........................................................................ 65 Hình 2-31: Collaboration Diagram: Gửi thông điệp.................................................................. 66 Hình 2-32: Sequence Diagram: Xem thông điệp....................................................................... 67 Hình 2-33: Collaboration Diagram: Xem thông điệp ................................................................ 68 Hình 2-34: Sequence Diagram: Xem thông tin nhà cung cấp dịch vụ....................................... 69 Hình 2-35: Collaboration Diagram: Xem thông tin nhà cung cấp dịch vụ ................................ 70 Hình 2-36: Sequence Diagram: Cập nhật thông tin nhà cung cấp dịch vụ ................................ 71 Hình 2-37: Collaboration Diagram: Cập nhật thông tin ............................................................ 72 Hình 2-38: Sequence Diagram: Cậpnhật thông tin mô tả của nhà cung cấp dịch vụ ................ 73 Hình 2-39: Collaboration Diagram: Cập nhật thông tin mô tả của nhà cung cấp dịch vụ......... 74 Hình 2-40: Sequence Diagram: Tìm kiếm khách sạn ................................................................ 75 Hình 2-41: Sequence Diagram: Tìm kiếm khách sạn ................................................................ 76 Hình 2-42: Sequence Diagram: Thêm mới người sử dụng........................................................ 77 KH OA C NT T – Đ H KH TN Hình 2-43: Collaboration Diagram: Thêm mới người sử dụng ................................................. 78 Hình 2-44: Sequence Diagram: Xem danh sách người sử dụng................................................ 79 Hình 2-45: Collaboration Diagram: Xem danh sách người sử dụng ......................................... 80 Hình 2-46: Sequence Diagram: Xem thông tin người sử dụng ................................................. 81 Hình 2-47: Collaboration Diagram: Xem thông tin của người sử dụng .................................... 82 Hình 2-48: Sequence Diagram: Xóa người sử dụng.................................................................. 83 Hình 2-49: Collaboration Diagram: Xóa người sử dụng ........................................................... 84 Hình 2-50: Sequence Diagram: Xem danh sách khách sạn ....................................................... 85 Hình 2-51: Collaboration Diagram: Xem danh khách sạn......................................................... 86 Hình 2-52: Sequence Diagram: Xem thông tin chi tiết của khách sạn ...................................... 87 Hình 2-53: Collaboration Diagram: Xem thông tin chi tiết của khách sạn ............................... 88 Hình 2-54: Sequence Diagram: Xóa một khách sạn.................................................................. 89 Hình 2-55: Collaboration Diagram: Xóa một khách sạn ........................................................... 90 Hình 2-56: Sequence Diagram: Xem danh sách khách viếng.................................................... 91 Hình 2-57: Collaboration Diagram: Xem danh sách khách viếng............................................. 92 Hình 2-58: Sequence Diagram: Xem thông tin khách viếng ..................................................... 93 Hình 2-59: Collaboration Diagram: Xem thông tin khách viếng .............................................. 94 Hình 2-60: Sequence Diagram: Xóa một khách viếng .............................................................. 95 Hình 2-61: Collaboration Diagram: Xóa một khách viếng........................................................ 96 Hình 3-1: Sơ đồ mô hình dữ liệu ............................................................................................... 98 Hình 3-2: Cấu trúc cây phân nhóm - Cấp 1 ............................................................................. 124 Hình 3-3: Cấu trúc cây phân nhóm - Cấp 2: Admin ................................................................ 125 Hình 3-4: Cấu trúc cây phân nhóm - Cấp 2: Hãng hàng không............................................... 125 Hình 3-5: Cấu trúc cây phân nhóm - Cấp 2: Khách sạn .......................................................... 125 Hình 3-6: Cấu trúc cây phân nhóm - Cấp 2: Khách viếng....................................................... 126 Hình 3-7: Trang chủ................................................................................................................. 131 Hình 3-8: Đăng ký thành viên.................................................................................................. 132 Hình 3-9: Đăng nhập................................................................................................................ 133 Hình 3-10: Mô tả khách sạn..................................................................................................... 134 Hình 3-11: Mô tả hãng hàng không ......................................................................................... 135 Hình 3-12: Xem danh sách khách viếng .................................................................................. 136 Hình 3-13: Thêm người dùng .................................................................................................. 137 Hình 3-14: Quản lý .................................................................................................................. 138 Hình 4-1: Kiến trúc n-tier ........................................................................................................ 140 Hình 4-2: ASP.NET Architecture ............................................................................................ 159 Hình 4-3: SQL Server Enterprise Manager ............................................................................. 167 Hình 4-4: Tạo cơ sở dữ liệu Booking ...................................................................................... 168 Hình 4-5: Chọn chức năng Restore Database .......................................................................... 169 Hình 4-6: Chuẩn bị Restore cơ sở dữ liệu................................................................................ 170 Hình 4-7: Ghi đè lên tập tin cơ sở dữ liệu................................................................................ 171 Hình 4-8: Danh sách đối tượng cơ sở dữ liệu .......................................................................... 172 KH OA C NT T – Đ H KH TN DANH SÁCH BẢNG Bảng 3-1: Danh sách các thành phần của lược đồ dữ liệu ....................................................... 106 Bảng 3-2: Bảng dữ liệu tblHotels ............................................................................................ 107 Bảng 3-3: Bảng dữ liệu tblAirplanes ....................................................................................... 108 Bảng 3-4: Bảng dữ liệu tblVisitors .......................................................................................... 109 Bảng 3-5: Bảng dữ liệu tblAdmin............................................................................................ 110 Bảng 3-6: Bảng dữ liệu tblRoomInfo ...................................................................................... 111 Bảng 3-7: Bảng dữ liệu tblFlightInfo....................................................................................... 111 Bảng 3-8: Bảng dữ liệu tblBookInfo ....................................................................................... 112 Bảng 3-9: Bảng dữ liệu tblBookDetail .................................................................................... 112 Bảng 3-10: Bảng dữ liệu tblBookResult .................................................................................. 113 Bảng 3-11: Bảng dữ liệu tblBookTicket .................................................................................. 113 Bảng 3-12: Bảng dữ liệu tblPassenger..................................................................................... 114 Bảng 3-13: Bảng dữ liệu FlightResutl ..................................................................................... 114 Bảng 3-14: Bảng dữ liệu tblComments ................................................................................... 114 Bảng 3-15: Bảng dữ liệu tblHotelInbox................................................................................... 115 Bảng 3-16: Bảng dữ liệu tblAirplaneInbox ............................................................................. 115 Bảng 3-17: Bảng dữ liệu tblVisitorInbox ................................................................................ 116 Bảng 3-18: Bảng dữ liệu tblAdminInbox ................................................................................ 116 Bảng 3-19: Bảng dữ liệu tblCountries .................................................................................... 116 Bảng 3-20: Bảng dữ liệu tblProvinces ..................................................................................... 117 Bảng 3-21: Bảng dữ liệu tblRegions........................................................................................ 117 Bảng 3-22: Bảng dữ liệu tblContinents ................................................................................... 117 Bảng 3-23: Bảng dữ liệu tblCities ........................................................................................... 117 Bảng 3-24: Bảng dữ liệu tblErrorMsg ..................................................................................... 118 Bảng 3-25: Bảng dữ liệu tblCommonMsg............................................................................... 118 Bảng 3-26: Bảng dữ liệu tblPayments ..................................................................................... 118 Bảng 3-27: Bảng dữ liệu tblCurrencies ................................................................................... 118 Bảng 3-28: Bảng dữ liệu tblQuestions..................................................................................... 119 Bảng 3-29: Bảng tổng hợp nhóm............................................................................................. 127 Bảng 3-30: Bảng mô tả Module............................................................................................... 130 Bảng 4-1: Danh sách các lớp xử lý chính ................................................................................ 146 Bảng 4-2: Danh sách các lớp đối tượng dữ liệu....................................................................... 147 KH OA C NT T – Đ H KH TN Chương 1. Tổng quan về hệ thống Booking Gateway Chương 1. TỔNG QUAN VỀ HỆ THỐNG BOOKING GATEWAY 1.1 Phát biểu bài toán: Khách nước ngoài và Việt kiều ở hải ngoại khi dự định về Việt Nam họ có mong muốn rằng có thể tìm kiếm một khách sạn đảm bảo cho họ một chỗ ở thích hợp, tiện nghi với giá cả hợp lý. Nếu có thể họ muốn đăng ký chỗ ở trước khi đến ở (bằng các hình thức thanh toán trả tước và trả sau). Ngày nay công cụ nhanh nhất và hiệu quả để có thể thực hiện được điều đó chính là Internet. Bài toán trên đặt ra là làm sao có thể xây dựng một website cho phép khách hàng (kể cả trong và ngoài nước) có thể tìm kiếm thông tin của các khách sạn trong nước với các nội dung cụ thể như: Tên khách sạn, địa chỉ, chuẩn khách sạn, số phòng, giá từng loại phòng… Ngoài ra, nếu tìm được khách sạn mong muốn họ có thể đặt phòng trực tiếp qua mạng (thanh toán bằng các hình thức trả trước và trả sau). 1.2 Các đối tượng phục vụ của hệ thống: 1.2.1 Các khách sạn: Các khách sạn sẽ đăng ký với website để trở thành một nhà cung cấp dịch vụ cho thuê phòng và các dịch vụ khác của khách sạn. Họ có nhiệm vụ cung cấp các thông tin về khách sạn, về loại khách sạn, tổng số phòng, cung cách phục vụ, giá cả, các dịch vụ bổ sung… Những thông tin này sẽ được cập nhật vào những thời điểm thích hợp để đảm bảo thông tin chính xác. 1.2.2 Khách viếng, những người có nhu cầu tìm khách sạn: Đối tượng này có thể: đăng ký với website để trở thành thành viên (thông tin được lưu trữ và họ có thể đăng nhập), tìm kiếm các khách sạn 1 KH OA C NT T – Đ H KH TN Chương 1. Tổng quan về hệ thống Booking Gateway thích hợp, đặt phòng trực tuyến qua mạng. Hệ thống sẽ thực hiện việc thanh toán cho họ. 1.2.3 Người quản trị website: Nhà quản trị có thể đăng nhập để quản trị website ở bất cứ nơi đâu. Họ có quyền kiểm soát tất cả các hoạt động của website, cụ thể như: xem các danh sách đăng ký (nhà cung cấp dịch vụ, thành viên), thêm, xóa, cập nhật thông tin… và chịu trách nhiệm liên hệ với các khách sạn khi có một yêu cầu đăng ký phòng (do hiện tại chưa thể thực hiện mọi việc tự động nên khi có một người tìm phòng khách sạn thì người quản trị sẽ thực hiện các công việc thủ công như sau: kiểm tra thông tin khách hàng, liên hệ với khách sạn để xác định xem có phòng đáp ứng yêu cầu của khách hàng hay không, nếu có thì thực hiện việc đăng ký phòng cho khách hàng, trả lời kết quả đăng ký cho khách, thực hiện thanh toán). Đồng thời hệ thống sẽ thực hiện việc cập nhật thông tin vào cơ sở dữ liệu. 1.3 Các yêu cầu chính mà hệ thống phải thực hiện: ¾ Từng đối tượng người dùng sẽ có các chức năng được xử lý độc lập. ¾ Người quản trị có thể thực hiện được các chức năng quản lý toàn bộ hệ thống như: quản lý khách viếng, quản lý khách sạn, quản lý người dùng, quản lý các thông tin đăng ký… ¾ Khách viếng có thể đăng ký để trở thành thành viên, đăng nhập vào hệ thống, đặt phòng khách sạn, tìm kiếm khách sạn, hiệu chỉnh thông tin cá nhân, trao đổi thông tin với phía quản trị (điều này là quan trọng vì hiện tại yêu cầu của đề tài là khi nhận được thông tin đăng ký của khách viếng thì phía quản trị website mới liên lạc với phía khách sạn để 2 KH OA C NT T – Đ H KH TN Chương 1. Tổng quan về hệ thống Booking Gateway tiến hành đăng ký, sau khi đăng ký xong mới thông báo kết quả cho khách viếng là việc đặt phòng có thành công hay không). ¾ Khách sạn có thể đăng ký để trở thành nhà cung cấp dịch vụ cho thuê phòng, đăng nhập vào hệ thống, nhập các thông tin mô tả cho khách sạn của mình, hiệu chỉnh các thông tin đăng ký và trao đổi với phía quản trị. ¾ Hệ thống phải đảm bảo tính bảo mật trong các thông tin đăng ký, đăng nhập, quản trị,… 1.4 Các công cụ hỗ trợ lập trình: Ngày nay có rất nhiều công cụ hỗ trợ cho việc lập trình các ứng dụng thương mại điện tử như: ¾ ASP với các ngôn ngữ script là VBScript và JScript. ¾ ASP.NET: Một công nghệ lập trình ứng dụng mạng mới dựa trên nền .NET framework của Microsoft. ¾ Macromedia Dreamweaver MX. ¾ Microsoft ASP.NET Web Maxtrix. ¾ JBuilder X. ¾ Về cơ sở dữ liệu có: SQL Server 2000, Oracle, MySQL… ¾ v.v… Việc lựa chọn một môi trường lập trình thích hợp cũng góp phần vào thành công của việc xây dựng website. 3 KH OA C NT T – Đ H KH TN Chương 2. Phân tích Chương 2. PHÂN TÍCH 2.1 Phân tích yêu cầu hệ thống: 2.1.1 Các yêu cầu chức năng: 2.1.1.1 Yêu cầu chức năng nghiệp vụ: ¾ Cho phép người dùng đăng ký với hệ thống với vai trò khách sạn, khách viếng, hãng hàng không. ¾ Lưu trữ thông tin của tất cả các đối tượng. ¾ Lưu trữ thông tin đăng ký sử dụng dịch vụ của khách viếng (đăng ký phòng khách sạn). ¾ Cho phép khách viếng đặt phòng khách sạn qua web. ¾ Cho phép khách viếng đặt vé máy bay qua web. ¾ Cho phép khách viếng tìm kiếm thông tin khách sạn theo các tiêu chí khác nhau. ¾ Cho phép các nhà cung cấp dịch vụ nhập thông tin mô tả về dịch vụ của mình và có thể hiệu chỉnh bất cứ lúc nào. ¾ Cho phép các loại người dùng khác nhau hiệu chỉnh thông tin cá nhân khi cần thiết. ¾ Hỗ trợ cho người quản trị trong việc quản lý hệ thống bao gồm: quản lý thông tin của tất cả các đối tượng (khách viếng, khách sạn, hãng hàng không, người dùng quyền quản trị), được quyền thêm và xóa các đối tượng này; quản lý các thông tin đặt phòng, đặt vé máy bay và các thông tin liên quan. ¾ Hỗ trợ việc trao đổi thông tin lẫn nhau của các đối tượng. 4 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.1.1.2 Yêu cầu chức năng hệ thống: ¾ Cho phép người dùng đăng nhập vào hệ thống với các vai trò khác nhau ứng với từng đối tượng. ¾ Đảm bảo tính bảo mật của các thông tin đăng nhập của người dùng ở xa. ¾ Đảm bảo tính bảo mật của các thông tin đăng ký dịch vụ của khách viếng (như các mã số của thẻ tín dụng…). ¾ Phân cấp quyền hạn của từng đối tượng người dùng trong việc truy cập vào các tài nguyên của hệ thống. 2.1.2 Các yêu cầu phi chức năng: 2.1.2.1 Nhằm lợi ích của các đối tượng người dùng: ¾ Tính tiện dụng: Giao diện thân thiện, dễ sử dụng đối với những người dùng Windows. ¾ Tính hiệu quả: Đảm bảo việc truy xuất nhanh đến các trang và khả năng kiểm soát lỗi tốt. ¾ Tính tương thích: Hỗ trợ tốt trên các trình duyệt từ IE5.1 trở lên và các trình duyệt tương thích khác như Netscape, Opera, Mozilla… ¾ Tính tiến hóa. 2.1.2.2 Nhằm lợi ích của việc phát triển dự án: ¾ Thiết kế theo mô hình three-tiers. ¾ Tính module hóa. ¾ Các tham số của hệ thống được thiết kế động, dễ điều chỉnh. ¾ Tính dùng lại của code. 5 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.2 Bảng chú giải: 2.2.1 Giới thiệu: Bảng chú giải này được dùng để định nghĩa các thuật ngữ đặc thù trong lĩnh vực của bài toán, giải thích các từ ngữ có thể không quen thuộc đối với người đọc trong các mô tả use case hoặc các tài liệu khác của đề tài. Thường thì tài liệu này có thể được dùng như một từ điển dữ liệu không chính thức, ghi lại các định nghĩa dữ liệu để các mô tả use case và các tài liệu khác có thể tập trung vào những gì hệ thống phải thực hiện. 2.2.2 Các định nghĩa: Bảng chú giải này bao gồm các định nghĩa cho các thuật ngữ được sử dụng trong mô hình use case và trong các tài liệu khác của hệ thống Đăng ký phòng khách sạn qua mạng (Booking Gateway). 2.2.2.1 Admin (Người quản trị hệ thống): Admin là người quản trị hệ thống website, chịu trách nhiệm quản lý tất cả các thông tin người dùng thuộc các đối tượng khác nhau. Ngoài ra, nhiệm vụ quan trọng của phía quản trị trang web là làm cầu nối liên hệ giữa bên cung cấp dịch vụ (khách sạn, hãng hàng không) và bên sử dụng dịch vụ (khách viếng). 2.2.2.2 Airplanes (Hãng hàng không): Airplanes là chỉ các hãng hàng không, phía cung cấp dịch vụ cho phép đặt vé máy bay trực tuyến. Hãng hàng không phải đăng ký với website để trở thành nhà cung cấp dịch vụ chính thức của website. Sau khi đăng ký hãng hàng không phải cung cấp các thông tin mô tả về dịch vụ mà mình cung cấp cho website. Các thông tin này được sử dụng trong quá trình tìm kiếm. 6 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.2.2.3 Hotels (Khách sạn): Hotels là chỉ các khách sạn, phía cung cấp dịch vụ cho phép khách viếng có thể đăng ký phòng trực tuyến qua mạng. Khách sạn phải đăng ký với website để trở thành nhà cung cấp dịch vụ chính thức của website. Sau khi đăng ký khách sạn phải cung cấp các thông tin mô tả về dịch vụ mà mình cung cấp cho website. Các thông tin này được sử dụng trong quá trình tìm kiếm. 2.2.2.4 Visitors (Khách viếng): Khách viếng là đối tượng phục vụ chủ yếu của hệ thống. Khách viếng là những người có nhu cầu sử dụng các dịch vụ như đăng ký phòng khách sạn, đặt vé máy bay. Mỗi khách viếng sau khi đăng ký sẽ có một tài khoản riêng. Mỗi khi cần đăng ký một dịch vụ nào đó (đăng ký phòng chẳng hạn) thì họ chỉ cần đăng nhập vào hệ thống và chọn dịch vụ cần đăng ký. 2.2.2.5 Manage Hotels (Quản lý khách sạn): Quản lý thông tin các khách sạn là ám chỉ công việc của người quản trị hệ thống website. Người quản trị chịu trách nhiệm quản lý các thông tin liên quan đến các khách sạn như: chấp nhận đăng ký của một khách sạn mới làm nhà cung cấp dịch vụ, liên hệ với khách sạn khi có một khách đăng ký phòng, xóa bỏ một khách sạn khỏi cơ sở dữ liệu khi cần thiết… 2.2.2.6 Manage Airplanes (Quản lý hãng hàng không): Quản lý thông tin các hãng hàng không là ám chỉ công việc của người quản trị hệ thống website. Người quản trị chịu trách nhiệm quản lý các thông tin liên quan đến các hãng hàng không như: chấp nhận đăng ký của một hãng hàng không mới làm nhà cung cấp dịch vụ, liên hệ với hãng hàng không khi 7 KH OA C NT T – Đ H KH TN Chương 2. Phân tích có một khách đặt vé máy bay, xóa bỏ một hãng hàng không khỏi cơ sở dữ liệu khi cần thiết… 2.2.2.7 Manage Users (Quản lý người dùng): Việc quản trị một hệ thống website có thể đòi hỏi nhiều người thực hiện, do đó hệ thống cũng hỗ trợ việc quản lý các người dùng với vai trò này. Một người quản trị có thể thêm, xóa và xem các thông tin của những người khác theo quyền hạn và chức năng của mình. 2.2.2.8 Manage Visitors (Quản lý khách viếng): Quản lý khách viếng là công việc của người quản trị website. Người quản trị có thể chấp nhận yêu cầu đăng ký làm thành viên (với vai trò Visitor) của khách viếng, xóa một khách viếng và xem thông tin của một khách viếng. 2.2.2.9 Exchange Info (Trao đổi thông tin): Trao đổi thông tin là việc người quản trị website có nhu cầu gửi thông báo đến cho các đối tượng khác và ngược lại. 2.2.2.10 Login (Đăng nhập vào hệ thống): Hệ thống này phục vụ các đối tượng chủ yếu sau: người quản trị hệ thống (Admin), các khách sạn (Hotels), khách viếng (Visitors), ngoài ra còn có các hãng hàng không (Airplanes). Mỗi loại đối tượng trên khi đăng ký với hệ thống website sẽ được cấp một account. Họ sẽ dùng account này để đăng nhập vào hệ thống. 2.2.2.11 Register New Supplier (Đăng ký nhà cung cấp dịch vụ mới): Mỗi khách sạn hay hãng hàng không muốn trở thành một thành viên để cung cấp dịch vụ cho website phải đăng ký với hệ thống. Đây là một use case thể hiện quá trình đăng ký này. 8 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.2.2.12 Register Member (Đăng ký thành viên): Đây là một quá trình mà một khách viếng phải thực hiện khi muốn trở thành một thành viên của hệ thống với vai trò Visitor. Đây cũng là quá trình mà khách viếng phải thực hiện trước khi có thể đăng ký sử dụng một dịch vụ nào đó. 2.2.2.13 Register Service (Đăng ký dịch vụ): Đây là quá trình mà khách viếng thực hiện khi đăng ký sử dụng một dịch vụ nào đó (chẳng hạn đăng ký phòng khách sạn). 2.2.2.14 Search (Tìm kiếm): Tìm kiếm là một cơ chế cho phép khách viếng có thể tìm kiếm thông tin của các khách sạn hay hãng hàng không theo một hay một số tiêu chí nào đó. 2.2.2.15 Airplane Info (Thông tin hãng hàng không): Đây là những thông tin chung về hãng hàng không như: tên hãng hàng không, địa chỉ, điện thoại,… 2.2.2.16 Airplane Description: Đây là những thông tin mô tả về hãng hàng không như: lịch bay, giá vé, các tuyến bay… 2.2.2.17 Hotel Info: Đây là những thông tin chung về khách sạn như: tên khách sạn, địa chỉ, điện thoại,… 2.2.2.18 Hotel Description: Đây là những thông tin mô tả về khách sạn như: loại khách sạn, loại phòng, giá tiền, các dịch vụ bổ sung khác,… 9 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.3 Đặc tả bổ sung: 2.3.1 Mục tiêu: Mục tiêu của tài liệu này là để định nghĩa các yêu cầu của Hệ thống đăng ký phòng trực tuyến qua mạng (Booking Gateway). Đặc tả bổ sung này liệt kê các yêu cầu chưa được thể hiện trong các use case. Đặc tả bổ sung cùng với các use case trong mô hình use case thể hiện đầy đủ các yêu cầu trong hệ thống. 2.3.2 Phạm vi: Đặc tả bổ sung áp dụng cho Hệ thống đăng ký phòng trực tuyến qua mạng (Booking Gateway) được phát triển bởi nhóm thực hiện đề tài này. Đặc tả này vạch rõ các yêu cầu phi chức năng của hệ thống, như là tính ổn định, tính khả dụng, và tính hỗ trợ cũng như các yêu cầu chức năng chung của một số use case. 2.3.3 Tài liệu tham khảo: Không có. 2.3.4 Chức năng: ¾ Hỗ trợ nhiều người dùng làm làm việc đồng thời. ¾ Phải thông báo kết quả đăng ký cho khách viếng trong thời gian nhanh nhất. 2.3.5 Tính khả dụng: ¾ Giao diện của website thân thiện, dễ sử dụng. 2.3.6 Tính ổn định: ¾ Hệ thống phải hoạt động liên tục 24 giờ một ngày, 7 ngày mỗi tuần, với thời gian ngưng hoạt động không quá 5 phút. 10 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.3.7 Hiệu suất: ¾ Hệ thống phải hỗ trợ hàng ngàn người cùng truy cập đến cơ sở dữ liệu trung tâm đồng thời bất kỳ lúc nào. 2.3.8 Sự hỗ trợ: ¾ Không có. 2.3.9 Tính bảo mật: ¾ Vai trò của từng đối tượng phải được thể hiện rõ ràng. ¾ Chỉ có người quản trị mới có quyền quyết định thêm hay xóa các đối tượng khác. ¾ Các thông tin chung của mỗi đối tượng do đối tượng đó quản lý. 2.3.10 Các ràng buộc thiết kế: ¾ Hệ thống phải hỗ trợ tốt trên hầu hết các trình duyệt của Windows như: Internet Explorer, Netscape, Opera, Mozilla… 11 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.4 Các sơ đồ Use Case: 2.4.1 Mô hình các trường hợp sử dụng của Admin: Hình 2-1: Mô hình use-case của Admin 12 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.4.2 Mô hình các trường hợp sử dụng của Airplane: Hình 2-2: Mô hình use-case của Airplane 13 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.4.3 Mô hình các trường hợp sử dụng của Hotel: Hình 2-3: Mô hình use-case của Hotel 14 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.4.4 Mô hình các trường hợp sử dụng của Visitor: Hình 2-4: Mô hình use-case của Visitor 2.5 Đặc tả Use Case: 2.5.1 Đăng nhập vào hệ thống: 2.5.1.1 Tên Use Case: ¾ Login 2.5.1.2 Mô tả: ¾ Use case này mô tả cách người dùng đăng nhập vào hệ thống với các vai trò khác nhau (Người quản trị website, Khách sạn, Hãng hàng không, Khách viếng). 15 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.5.1.3 Dòng sự kiện: ¾ Dòng sự kiện chính: Use case này bắt đầu khi một actor muốn đăng nhập vào hệ thống. Các bước thực hiện như sau: 1. Người dùng chọn chức năng đăng nhập. 2. Hệ thống mở trang đăng nhập. 3. Người dùng nhập thông tin đăng nhập (username, password). 4. Người dùng chọn đăng nhập. 5. Hệ thống kiểm tra thông tin đăng nhập và quyết định có cho phép người dùng đăng nhập hay không. ¾ Dòng sự kiện khác: ‰ Tên và/hoặc mật khẩu bị sai: ‰ Nếu trong dòng sự kiện chính, actor nhập sai tên hoặc mật khẩu, hệ thống sẽ hiển thị một thông báo lỗi. Actor có thể chọn để trở về đầu của dòng sự kiện chính hoặc hủy bỏ việc đăng nhập, lúc này use case kết thúc. 2.5.1.4 Yêu cầu đặc biệt: ¾ Không có. 2.5.1.5 Điều kiện tiên quyết: ¾ Không có. 2.5.1.6 Post-Condition: ¾ Nếu use case thành công, actor lúc này đăng nhập vào hệ thống. Nếu không trạng thái hệ thống không đổi. 16 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.5.1.7 Điểm mở rộng: ¾ Không có. 2.5.2 Quản lý các Khách sạn: 2.5.2.1 Tên Use Case: ¾ Manage Hotels 2.5.2.2 Mô tả: ¾ Người quản trị website thường xuyên phải kiểm tra thông tin của các khách sạn để đảm bảo tính chính xác và thông tin được cập nhật thường xuyên. Use case này cho phép người quản trị có thể xem danh sách các khách sạn, xem thông tin mô tả chi tiết của các khách sạn, và xóa một khách sạn khỏi cơ sở dữ liệu. 2.5.2.3 Dòng sự kiện: ¾ Dòng sự kiện chính: Use case này bắt đầu khi người quản trị (Admin) website chọn chức năng ‘Xem danh sách khách sạn’ trên Menu. Ứng với từng khách sạn trong danh sách có thể chọn các chức năng như: Xem thông tin mô tả chi tiết khách sạn hay là xóa hẳn khách sạn đó khỏi cơ sở dữ liệu. 1. Người quản trị đăng nhập vào hệ thống. 2. Nếu đăng nhập thành công, người quản trị chọn chức năng ‘Xem danh sách khách sạn’ (List Hotels) trên menu. 3. Hệ thống truy xuất cơ sở dữ liệu để trả về danh sách các khách sạn. 4. Hệ thống mở một trang web và hiển thị danh sách khách sạn trên trang web đó. 17 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 5. Người quản trị chọn một khách sạn trong danh sách. 6. Người quản trị chọn các chức năng: ‘Xem thông tin chi tiết’ hay ‘Xóa’ một khách sạn. 7. Nếu chọn chức năng ‘Xem thông tin chi tiết’ thì hệ thống sẽ thực hiện việc truy xuất dữ liệu và mở một trang web để hiển thị các thông tin mô tả chi tiết cho khách sạn đã chọn. 8. Nếu chọn chức năng ‘Xóa” thì hệ thống sẽ truy xuất vào cơ sở dữ liệu và xóa các thông tin liên quan đến khách sạn này khỏi cơ sở dữ liệu hệ thống. ¾ Dòng sự kiện khác: Quá trình truy xuất dữ liệu thất bại hoặc xóa khách sạn không thành công: Nếu trong quá trình thực hiện, việc truy xuất dữ liệu thất bại hoặc thao tác xóa không thành công thì trạng thái của hệ thống trở lại ban đầu. 2.5.2.4 Yêu cầu đặc biệt: ¾ Không có. 2.5.2.5 Điều kiện tiên quyết: ¾ Người quản trị website phải đăng nhập vào hệ thống để thực hiện use case này. 2.5.2.6 Post-Condition: ¾ Nếu use case này thành công trong việc xem danh sách các khách sạn thì một trang web hiển danh sách sẽ được mở. Nếu việc xóa một khách sạn thành công thì cơ sở dữ liệu khách sạn sẽ được cập nhật. Ngược lại tất cả các trường hợp trên thì trạng thái của hệ thống vẫn không đổi. 18 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.5.2.7 Điểm mở rộng: ¾ Không có. 2.5.3 Quản lý các Hãng hàng không: 2.5.3.1 Tên Use Case: ¾ Manage Airplanes 2.5.3.2 Mô tả: ¾ Use case này cho phép người quản trị website có thể xem danh sách các hãng hàng không, xem thông tin chi tiết về một hãng hàng không, thậm chí là xóa bỏ một hãng hàng không khỏi cơ sở dữ liệu của hệ thống. 2.5.3.3 Dòng sự kiện: ¾ Dòng sự kiện chính: Use case này được bắt đầu sau khi người quản trị đã đăng nhập vào hệ thống và chọn chức năng ‘Hiển thị danh sách hãng hàng không’ trên menu. 1. Người quản trị đăng nhập vào hệ thống. 2. Người quản trị chọn chức năng ‘Xem danh sách hãng hàng không’ (List Airplanes) trên menu. 3. Hệ thống truy xuất cơ sở dữ liệu trên server và trả về danh sách các hãng hàng không. 4. Hệ thống mở một trang web để hiển thị danh sách các hãng hàng không này. 5. Người quản trị chọn một hãng hàng không trong danh sách. 6. Người quản trị chọn chức năng: ‘Xem thông tin chi tiết” hoặc “Xóa” một hãng hàng không khỏi cơ sở dữ liệu. 19 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 7. Nếu chọn chức năng ‘Xem thông tin chi tiết’ thì hệ thống sẽ truy xuất cơ sở dữ liệu để lấy về các thông tin mô tả chi tiết về hãng hàng không đó và mở một trang web để hiển thị các thông tin này. 8. Nếu chọn chức năng ‘Xóa’ một hãng hàng không thì hệ thống sẽ vào cơ sở dữ liệu vào xóa các thông tin liên quan đến hãng hàng không đó. Sau đó cập nhật lại danh sách đang hiển thị. ¾ Dòng sự kiện khác: Nếu trong quá trình thực hiện người quản trị hủy bỏ thao tác ‘Xóa’ hoặc việc truy xuất dữ liệu thất bại thì trạng thái của hệ thống không thay đổi. 2.5.3.4 Yêu cầu đặc biệt: ¾ Không có. 2.5.3.5 Điều kiện tiên quyết: ¾ Người quản trị phải đăng nhập vào hệ thống trước khi có thể thực hiện được use case này. 2.5.3.6 Post-Condition: ¾ Nếu use case này thành công trong việc ‘Xem danh sách hãng hàng không’ thì một trang web được mở để hiện hiển thị danh sách này. Nếu việc xóa một hãng hàng không thành công thì cơ sở dữ liệu của hệ thống sẽ được cập nhật. Ngược lại với các trường hợp trên thì trạng thái của hệ thống không thay đổi. 2.5.3.7 Điểm mở rộng: ¾ Không có. 20 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.5.4 Quản lý Khách viếng: 2.5.4.1 Tên Use Case: ¾ Manage Visitors 2.5.4.2 Mô tả: ¾ Use case này cho phép người quản trị website có thể vào xem danh sách của các khách viếng, xem thông tin chi tiết của một khách viếng nào đó và xóa một khách viếng khỏi cơ sở dữ liệu. 2.5.4.3 Dòng sự kiện: ¾ Dòng sự kiện chính: Use case này bắt đầu sau khi người quản trị đã đăng nhập vào hệ thống và chọn chức năng ‘Xem danh sách khách viếng’ (List Visitors) trên menu. 1. Người quản trị đăng nhập vào hệ thống. 2. Người quản trị chọn chức năng ‘Xem danh sách Khách viếng’ (List Visitors) trên menu. 3. Hệ thống truy xuất cơ sở dữ liệu trên server và trả về danh sách các khách viếng. 4. Hệ thống mở một trang web để hiển thị danh sách khách viếng. 5. Người quản trị chọn một khách viếng trong danh sách. 6. Người quản trị chọn chức năng ‘Xem thông tin chi tiết’ hoặc ‘Xóa’ khách viếng khỏi cơ sở dữ liệu. 7. Nếu chọn chức năng ‘Xem thông tin chi tiết’ thì hệ thống sẽ truy xuất cơ sở dữ liệu và mở một trang web để hiển thị thông tin chi tiết của khách viếng đó. 21 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 8. Nếu chọn chức năng ‘Xóa’ thì hệ thống sẽ truy xuất dữ liệu và xóa các thông tin liên quan đến khách viếng đó, đồng thời cập nhật lại danh sách khách viếng. ¾ Dòng sự kiện khác: Nếu trong quá trình thực hiện use case, người quản trị quyết định hủy bỏ thao tác ‘Xóa’ hoặc quá trình truy xuất dữ liệu thất bại thì trạng thái của hệ thống không thay đổi. 2.5.4.4 Yêu cầu đặc biệt: ¾ Không có. 2.5.4.5 Điều kiện tiên quyết: ¾ Người quản trị phải đăng nhập vào hệ thống trước khi có thể thực hiện được use case này. 2.5.4.6 Post-Condition: ¾ Nếu use case này thành công trong việc xem danh sách hoặc các thông tin liên quan đến khách viếng thì hệ thống sẽ mở một trang web để thể hiện các thông tin đó. Nếu xóa thành công một khách viếng thì cơ sở dữ liệu của hệ thống sẽ được cập nhật. Ngược lại các trường hợp trên thì trạng thái của hệ thống không đổi. 2.5.4.7 Điểm mở rộng: ¾ Không có. 2.5.5 Quản lý người dùng khác: 2.5.5.1 Tên Use Case: ¾ Manage Users 22 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.5.5.2 Mô tả: ¾ Use case này cho phép người quản trị trang web có thể xem danh sách của những người dùng khác (cũng với vai trò quản trị), hiển thị thông tin chi tiết và xóa một người dùng khỏi cơ sở dữ liệu. 2.5.5.3 Dòng sự kiện: ¾ Dòng sự kiện chính: Use case này bắt đầu khi người quản trị có nhu cầu xem các thông tin của những người dùng khác (cùng vai trò quản trị) và chọn chức năng quản lý người dùng (Manage Users) trên menu. 1. Người dùng đăng nhập vào hệ thống với vai trò quản trị. 2. Nếu đăng nhập thành công hệ thống vào trang Admin. 3. Người quản trị chọn chức năng quản lý người dùng. 4. Hệ thống truy xuất cơ sở dữ liệu và mở một trang web để hiển thị danh sách các người dùng. 5. Người quản trị chọn một người dùng trong danh sách. 6. Người quản trị chọn chức năng thực hiện: hoặc là xem thông tin chi tiết hoặc xóa người dùng. 7. Nếu chọn chức năng xem thông tin chi tiết thì hệ thống sẽ truy xuất cơ sở dữ liệu và mở một trang web để hiển thị thông tin của người dùng đó. 8. Nếu chọn chức năng ‘Xóa’ thì hệ thống sẽ truy xuất cơ sở dữ liệu và xóa các thông tin liên quan đến người dùng đó, đồng thời cập nhật lại danh sách người dùng đang hiển thị. ¾ Dòng sự kiện khác: 23 KH OA C NT T – Đ H KH TN Chương 2. Phân tích Nếu trong quá trình thực hiện use case, người quản trị quyết định hủy bỏ thao tác ‘Xóa’ hoặc quá trình truy xuất dữ liệu thất bại thì trạng thái của hệ thống không thay đổi. 2.5.5.4 Yêu cầu đặc biệt: ¾ Không có. 2.5.5.5 Điều kiện tiên quyết: ¾ Người quản trị phải đăng nhập vào hệ thống trước khi có thể thực hiện các chức năng của use case này. 2.5.5.6 Post-Condition: ¾ Nếu use case này thành công trong việc xóa một người dùng thì cơ sở dữ liệu của hệ thống sẽ được cập nhật. Ngược lại, tình trạng của hệ thống không thay đổi. 2.5.5.7 Điểm mở rộng: ¾ Không có. 2.5.6 Quản lý các thông tin của Khách sạn: 2.5.6.1 Tên Use Case: ¾ Manage Hotel Info 2.5.6.2 Mô tả: ¾ Use case này cho phép những người dùng là phía Khách sạn có thể quản lý các thông tin chung của mình như: xem thông tin chung, cập nhật các thông tin chung… 2.5.6.3 Dòng sự kiện: ¾ Dòng sự kiện chính: 24 KH OA C NT T – Đ H KH TN Chương 2. Phân tích Use case này bắt đầu khi phía khách sạn có ý định xem các thông tin đăng ký của mình và/hoặc muốn cập nhật các thông tin đó. Người dùng chọn chức năng quản lý thông tin trên menu. 1. Người dùng đăng nhập vào hệ thống với vai trò khách sạn. 2. Nếu đăng nhập thành công thì hệ thống sẽ mở trang web cho đối tượng khách sạn. 3. Người dùng chọn chức năng quản lý thông tin trên menu. 4. Hệ thống truy xuất dữ liệu khách sạn và mở mở một trang web để hiển thị thông tin của khách sạn đó. 5. Người dùng có thể chọn chức năng cập nhật một thông tin nào đó trên trang web. 6. Hệ thống hiển thị ô nhập liệu để người dùng có thể nhập thông tin cập nhật vào đó. 7. Người dùng nhập thông tin cập nhật vào và chọn cập nhật. 8. Hệ thống kiểm tra tính hợp lệ của thông tin nhập vào và thực hiện cập nhật vào cơ sở dữ liệu. 9. Use case kết thúc. ¾ Dòng sự kiện khác: Nếu trong quá trình cập nhật thông tin, người dùng quyết định hủy bỏ quá trình cập nhật thì hệ thống sẽ trở lại trạng thái ban đầu và hiển thị lại trang thông tin khách sạn. 2.5.6.4 Yêu cầu đặc biệt: ¾ Không có. 25 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.5.6.5 Điều kiện tiên quyết: ¾ Người dùng phải đăng nhập vào hệ thống với vai trò Khách sạn để có thể thực hiện được các chức năng trong use case này. 2.5.6.6 Post-Condition: ¾ Nếu use case này thành công trong việc cập nhật các thông tin chung thì cơ sở dữ liệu của hệ thống sẽ được cập nhật. Ngược lại, trạng thái của hệ thống không thay đổi. 2.5.6.7 Điểm mở rộng: ¾ Không có. 2.5.7 Quản lý các thông tin của Hãng hàng không: 2.5.7.1 Tên Use Case: ¾ Manage Airplane Info 2.5.7.2 Mô tả: ¾ Use case này cho phép các hãng hàng không có thể quản lý các thông tin của mình như: xem thông tin chung của mình, cập nhật các thông tin chung... 2.5.7.3 Dòng sự kiện: ¾ Dòng sự kiện chính: Use case này bắt đầu khi phía hãng hàng không có ý định xem các thông tin đăng ký của mình và/hoặc muốn cập nhật các thông tin đó. Người dùng chọn chức năng quản lý thông tin trên menu. 1. Người dùng đăng nhập vào hệ thống với vai trò hãng hàng không. 2. Nếu đăng nhập thành công thì hệ thống sẽ mở trang web cho đối tượng hãng hàng không. 26 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 3. Người dùng chọn chức năng quản lý thông tin trên menu. 4. Hệ thống truy xuất dữ liệu hãng hàng không và mở một web form để hiển thị thông tin của hãng hàng không đó. 5. Người dùng có thể chọn chức năng cập nhật một thông tin nào đó trên web form. 6. Hệ thống hiển thị ô nhập liệu để người dùng có thể nhập thông tin cập nhật vào đó. 7. Người dùng nhập thông tin cập nhật vào và chọn cập nhật. 8. Hệ thống kiểm tra tính hợp lệ của thông tin nhập vào và thực hiện cập nhật vào cơ sở dữ liệu. 9. Use case kết thúc. ¾ Dòng sự kiện khác: Nếu trong quá trình cập nhật thông tin, người dùng quyết định hủy bỏ quá trình cập nhật thì hệ thống sẽ trở lại trạng thái ban đầu và hiển thị lại trang thông tin hãng hàng không. 2.5.7.4 Yêu cầu đặc biệt: ¾ Không có. 2.5.7.5 Điều kiện tiên quyết: ¾ Người dùng phải đăng nhập vào hệ thống với vai trò Hãng hàng không để có thể thực hiện được các chức năng trong use case này. 2.5.7.6 Post-Condition: ¾ Nếu use case này thành công thì các thông tin cập nhật sẽ được lưu vào trong cơ sở dữ liệu của hệ thống. Ngược lại trạng thái của hệ thống không thay đổi. 27 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.5.7.7 Điểm mở rộng: ¾ Không có. 2.5.8 Đăng ký nhà cung cấp dịch vụ mới: 2.5.8.1 Tên Use Case: ¾ Register New Supplier 2.5.8.2 Mô tả: ¾ Use case này cho phép một khách sạn hay một hãng hàng không đăng ký với website để trở thành một nhà cung cấp dịch vụ (cho thuê phòng khách sạn, cho đặt vé máy bay). 2.5.8.3 Dòng sự kiện: ¾ Dòng sự kiện chính: Use case này bắt đầu khi một người dùng vào website và chọn đăng ký làm nhà cung cấp dịch vụ (khách sạn hay hãng hàng không). 1. Người dùng vào hệ thống website. 2. Người dùng chọn vào trang Khách sạn (Hotel) hoặc Hãng hàng không (Airplane). 3. Nếu chọn vào trang Hotel thì hệ thống sẽ mở trang Hotel và người dùng chọn chức năng đăng ký (Register). Hệ thống mở một web form cho phép người dùng nhập các thông tin đăng ký. Người dùng nhập thông tin đăng ký và chọn đăng ký. Hệ thống sẽ kiểm tra tính hợp lệ của các thông tin nhập và lưu vào cơ sở dữ liệu khách sạn. 4. Nếu chọn vào trang Airplane thì hệ thống sẽ mở trang Airplane và người dùng chọn chức năng đăng ký (Register). Hệ thống mở một web form cho phép người dùng nhập các thông tin đăng ký. 28 KH OA C NT T – Đ H KH TN Chương 2. Phân tích Người dùng nhập thông tin đăng ký và chọn đăng ký. Hệ thống sẽ kiểm tra tính hợp lệ của các thông tin nhập và lưu vào cơ sở dữ liệu hãng hàng không. 5. Người quản trị chịu trách nhiệm liên hệ với các khách sạn hay hãng hàng không để xác nhận thông tin đăng ký. 6. Nếu thông tin đăng ký được xác nhận thì account sẽ được kích hoạt. ¾ Dòng sự kiện khác: 1. Nếu trong quá trình đăng ký người dùng chọn hủy bỏ đăng ký thì dòng sự kiện chính sẽ bắt đầu lại từ đầu và trạng thái của hệ thống không thay đổi. 2. Nếu quá trình xác nhận thông tin đăng ký của người quản trị có vấn đề thì các thông tin đăng ký trước đó sẽ bị loại bỏ khỏi cơ sở dữ liệu của hệ thống. 2.5.8.4 Yêu cầu đặc biệt: ¾ Không có. 2.5.8.5 Điều kiện tiên quyết: ¾ Không có. 2.5.8.6 Post-Condition: ¾ Nếu use case này thành công thì thông tin đăng ký của một khách sạn hoặc một hãng hàng không sẽ được lưu vào trong cơ sở dữ liệu của hệ thống. Ngược lại, trạng thái của hệ thống thay đổi. 2.5.8.7 Điểm mở rộng: ¾ Không có. 29 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.5.9 Đăng ký thành viên mới: 2.5.9.1 Tên Use Case: ¾ Register Member 2.5.9.2 Mô tả: ¾ Use case này cho phép người sử dụng đăng ký với trang web để trở thành thành viên với vai trò Visitor. Với tài khoản này, sau đó người dùng có thể đăng nhập vào hệ thống (với vai trò Visitor) và đăng ký các dịch vụ như: đăng ký phòng khách sạn và đặt vé máy bay. 2.5.9.3 Dòng sự kiện: ¾ Dòng sự kiện chính: Use case này bắt đầu khi một khách viếng có nhu cầu đăng ký làm thành viên của hệ thống hoặc khi người dùng chọn đăng ký sử dụng dịch vụ mà chưa có account đăng ký. 1. Người dùng chọn chức năng đăng ký thành viên trên menu. 2. Hệ thống hiển thị một web form cho phép người dùng nhập các thông tin đăng ký vào. 3. Người dùng nhập thông tin đăng ký vào web form và chọn đăng ký (Register). 4. Hệ thống kiểm tra tính hợp lệ của các thông tin nhập vào và thực hiện việc lưu vào cơ sở dữ liệu của hệ thống. 5. Quá trình đăng ký kết thúc. ¾ Dòng sự kiện khác: 1. Nếu trong quá trình đăng ký người dùng quyết định hủy bỏ các thông tin đăng ký thì use case sẽ kết thúc và trạng thái của hệ thống không thay đổi. 30 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2. Nếu quá trình kiểm tra thông tin nhập phát hiện không hợp lệ thì hệ thống sẽ trở về trạng thái trước đó (mở trang nhập liệu với các thông tin nhập trước đó vẫn còn để người dùng có thể chỉnh sửa). 2.5.9.4 Yêu cầu đặc biệt: ¾ Không có. 2.5.9.5 Điều kiện tiên quyết: ¾ Không có. 2.5.9.6 Post-Condition: ¾ Nếu use case này thành công thì thông tin đăng ký của một khách viếng sẽ được lưu vào cơ sở dữ liệu của hệ thống. Ngược lại, trạng thái của hệ thống không thay đổi. 2.5.9.7 Điểm mở rộng: ¾ Không có. 2.5.10 Đăng ký phòng khách sạn: 2.5.10.1 Tên Use Case: ¾ Register Service 2.5.10.2 Mô tả: ¾ Use case này cho phép người dùng có thể đăng ký phòng khách sạn trực tiếp trên mạng. 2.5.10.3 Dòng sự kiện: ¾ Dòng sự kiện chính: Use case này bắt đầu khi một khách viếng chọn đăng ký phòng. 1. Người dùng chọn chức năng đăng ký phòng khách sạn. 31 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2. Hệ thống hiển thị một web form cho phép người dùng nhập vào các thông tin đăng ký. 3. Người dùng xác nhận các thông tin đăng ký. 4. Hệ thống kiểm tra tính hợp lệ của các thông tin đăng ký. 5. Hệ thống lưu trữ thông tin đăng ký vào cơ sở dữ liệu của hệ thống. 6. Hệ thống hiển thị thời gian thông báo kết quả đăng ký cho khách viếng. 7. Nếu quá trình đăng ký với phía khách sạn thành công thì người quản trị sẽ gửi thông báo đến cho khách viếng và yêu cầu thanh toán trong trường hợp trả trước. 8. Nếu quá trình đăng ký với phía khách sạn không thành công thì người quản trị sẽ gửi thông báo đến cho khách viếng và đề nghị đăng ký lại. Use case sẽ bắt đầu lại. ¾ Dòng sự kiện khác: ‰ Người dùng hủy bỏ quá trình đăng ký: Trạng thái của hệ thống không thay đổi và use case kết thúc. 2.5.10.4 Yêu cầu đặc biệt: ¾ Người dùng phải hoặc đã có đăng ký thành viên với trang web với vai trò Visitor, hoặc phải thực hiện việc đăng ký thành viên (để nhập các thông tin cá nhân) trước khi có thể thực hiện use case này. 2.5.10.5 Điều kiện tiên quyết: ¾ Người dùng phải đăng nhập với vai trò Visitor để có thể thực hiện use case này. 32 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.5.10.6 Post-Condition: ¾ Nếu use case này thành công thì thông tin đăng ký dịch vụ của khách viếng sẽ được lưu vào cơ sở dữ liệu và người quản trị trang web phải chịu trách nhiệm liên hệ với phía cung cấp dịch vụ để thực hiện việc đăng ký cho khách. Sau khi liên hệ với phía cung cấp dịch vụ xong thì người quản trị trang web phải thông báo kết quả đăng ký cho khách viếng và tiến hành thanh toán các chi phí. 2.5.10.7 Điểm mở rộng: ¾ Không có. 2.5.11 Tìm kiếm Khách sạn, Hãng hàng không: 2.5.11.1 Tên Use Case: ¾ Search 2.5.11.2 Mô tả: ¾ Use case này cho phép người dùng tìm kiếm các khách sạn hay hãng hàng không thỏa một nhu cầu nào đó. 2.5.11.3 Dòng sự kiện: ¾ Dòng sự kiện chính: Use case này bắt đầu khi một khách viếng chọn chức năng tìm kiếm thông tin của các khách sạn hay hãng hàng không trên menu. 1. Người dùng chọn chức năng tìm kiếm (Search) trên menu. 2. Hệ thống hiển thị trang tìm kiếm cho phép người dùng nhập từ khóa tìm kiếm. 3. Người dùng nhập vào từ khóa tìm kiếm. 4. Hệ thống sử dụng cơ chế tìm kiếm để tìm kiếm trong cơ sở dữ liệu của hệ thống. 33 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 5. Kết quả tìm kiếm được thể hiện trên trang Kết quả tìm kiếm (Search Result). 6. Người dùng có thể chọn xem thông tin chi tiết của từng khách sạn hay hãng hàng không trên trang kết quả hay chọn đặt phòng khách sạn hoặc đặt vé máy bay. ¾ Dòng sự kiện khác: Quá trình tìm kiếm thất bại: hệ thống yêu cầu người dùng nhập lại từ khóa hay hủy bỏ thao tác tìm kiếm. 2.5.11.4 Yêu cầu đặc biệt: ¾ Không có. 2.5.11.5 Điều kiện tiên quyết: ¾ Không có. 2.5.11.6 Post-Condition: ¾ Nếu use case này thành công thì sẽ cho ra kết quả tìm kiếm trên trang kết quả tìm kiếm. Ngược lại, hiển thị trang thông báo kết quả tìm kiếm thất bại. 2.5.11.7 Điểm mở rộng: ¾ Không có. 2.5.12 Nhập mô tả cho Hãng hàng không: 2.5.12.1 Tên Use Case: ¾ Enter Airplane Description 2.5.12.2 Mô tả: ¾ Use case này cho phép những người dùng với vai trò Hãng hàng không nhập các thông tin mô tả cho hãng hàng không của mình. 34 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.5.12.3 Dòng sự kiện: ¾ Dòng sự kiện chính: Use case này bắt đầu sau khi hãng hàng không đã đăng ký thành công với hệ thống và dự định nhập các thông tin mô tả cho hãng hàng không. Các bước thực hiện của use case này như sau: 1. Người dùng đăng nhập vào hệ thống với vai trò hãng hàng không. 2. Người dùng chọn chức năng nhập thông tin mô tả. 3. Hệ thống truy xuất và hiển thị các thông tin mô tả của hãng hàng không (nếu có) dưới dạng web form để người dùng có thể nhập thêm các thông tin mô tả. 4. Người dùng chọn chức năng xác nhận các thông tin đã nhập. 5. Hệ thống kiểm tra tính hợp lệ và lưu trữ các thông tin trên vào cơ sở dữ liệu của hệ thống. 6. Use case kết thúc. ¾ Dòng sự kiện khác: 1. Nếu quá trình kiểm tra tính hợp lệ phát hiện có lỗi thì hệ thống sẽ trả lại web form nhập liệu để người dùng có thể chỉnh sửa. Trạng thái của hệ thống lúc này vẫn chưa thay đổi. 2. Nếu người dùng quyết định hủy bỏ thao tác nhập liệu trên thì trạng thái của hệ thống vẫn không thay đổi và dòng sự kiện chính được bắt đầu lại. 2.5.12.4 Yêu cầu đặc biệt: ¾ Không có. 35 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.5.12.5 Điều kiện tiên quyết: ¾ Người dùng phải đăng nhập vào hệ thống với vai trò Hãng hàng không để có thể thực hiện use case này. 2.5.12.6 Post-Condition: ¾ Nếu use case này thành công thì thông tin mô tả của một hãng hàng không sẽ được cập nhật vào cơ sở dữ liệu của hệ thống. Ngược lại, trạng thái của hệ thống không thay đổi. 2.5.12.7 Điểm mở rộng: ¾ Không có. 2.5.13 Nhập mô tả Khách sạn: 2.5.13.1 Tên Use Case: ¾ Enter Hotel Description 2.5.13.2 Mô tả: ¾ Use case này cho phép người dùng với vai trò là các Khách sạn có thể nhập vào các thông tin mô tả về khách sạn của mình. 2.5.13.3 Dòng sự kiện: ¾ Dòng sự kiện chính: Use case này bắt đầu sau khi khách sạn đã đăng ký thành công với hệ thống và dự định nhập các thông tin mô tả cho khách sạn. Các bước thực hiện của use case này như sau: 1. Người dùng đăng nhập vào hệ thống với vai trò khách sạn. 2. Người dùng chọn chức năng nhập thông tin mô tả. 3. Hệ thống truy xuất và hiển thị các thông tin mô tả của khách sạn (nếu có) dưới dạng web form để người dùng có thể nhập thêm các thông tin mô tả. 36 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 4. Người dùng chọn chức năng xác nhận các thông tin đã nhập. 5. Hệ thống kiểm tra tính hợp lệ và lưu trữ các thông tin trên vào cơ sở dữ liệu của hệ thống. 6. Use case kết thúc. ¾ Dòng sự kiện khác: 1. Nếu quá trình kiểm tra tính hợp lệ phát hiện có lỗi thì hệ thống sẽ trở lại web form nhập liệu để người dùng có thể chỉnh sửa. Trạng thái của hệ thống lúc này vẫn chưa thay đổi. 2. Nếu người dùng quyết định hủy bỏ thao tác nhập liệu trên thì trạng thái của hệ thống vẫn không thay đổi và dòng sự kiện chính được bắt đầu lại. 2.5.13.4 Yêu cầu đặc biệt: ¾ Không có. 2.5.13.5 Điều kiện tiên quyết: ¾ Người dùng phải đăng nhập vào hệ thống với vai trò Khách sạn để có thể thực hiện được use case này. 2.5.13.6 Post-Condition: ¾ Nếu use case này thành công thì thông tin mô tả của một khách sạn sẽ được cập nhật vào cơ sở dữ liệu của hệ thống. Ngược lại, trạng thái của hệ thống không thay đổi. 2.5.13.7 Điểm mở rộng: ¾ Không có. 2.5.14 Cập nhật mô tả Hãng hàng không: 2.5.14.1 Tên Use Case: ¾ Update Airplane Description 37 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.5.14.2 Mô tả: ¾ Use case này cho phép các hãng hàng không có thể cập nhật lại các thông tin mô tả của mình. 2.5.14.3 Dòng sự kiện: ¾ Dòng sự kiện chính: Use case này bắt đầu khi một hãng hàng không có ý định cập nhật lại các thông tin mô tả. Các bước thực hiện như sau: 1. Người dùng đăng nhập vào hệ thống với vai trò hãng hàng không. 2. Người dùng chọn chức năng cập nhật thông tin mô tả. 3. Hệ thống truy xuất và hiển thị thông tin mô tả của khách sạn này dưới dạng cho phép có thể cập nhật được. 4. Người dùng nhập vào các thông tin mô tả cần cập nhật. 5. Người dùng chọn ‘Cập nhật’. 6. Hệ thống cập nhật lại các thông tin vào trong cơ sở dữ liệu của hệ thống. 7. Use case kết thúc. ¾ Dòng sự kiện khác: Người dùng quyết định hủy bỏ quá trình cập nhật: Trong trường hợp này, trạng thái của hệ thống sẽ không thay đổi và dòng sự kiện chính được bắt đầu lại từ đầu. 2.5.14.4 Yêu cầu đặc biệt: ¾ Không có. 38 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.5.14.5 Điều kiện tiên quyết: ¾ Người dùng phải đăng nhập vào hệ thống với vai trò Hãng hàng không (Airplane) để có thể thực hiện use case này. 2.5.14.6 Post-Condition: ¾ Nếu use case này thành công thì các thông tin mô tả của hãng hàng không sẽ được cập nhật vào cơ sở dữ liệu. Ngược lại, trạng thái của hệ thống không thay đổi. 2.5.14.7 Điểm mở rộng: ¾ Không có. 2.5.15 Cập nhật mô tả Khách sạn: 2.5.15.1 Tên Use Case: ¾ Update Hotel Description 2.5.15.2 Mô tả: ¾ Use case này cho phép các khách sạn có thể cập nhật các thông tin mô tả cho khách sạn của mình. 2.5.15.3 Dòng sự kiện: Use case này bắt đầu khi một khách sạn có ý định cập nhật lại các thông tin mô tả. Các bước thực hiện như sau: 1. Người dùng đăng nhập vào hệ thống với vai trò khách sạn. 2. Người dùng chọn chức năng cập nhật thông tin mô tả. 3. Hệ thống truy xuất và hiển thị thông tin mô tả của khách sạn dưới dạng cho phép người dùng có thể nhập vào các thông tin mô tả cho khách sạn. 4. Người dùng nhập vào các thông tin mô tả cần cập nhật. 5. Người dùng chọn ‘Cập nhật’. 39 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 6. Hệ thống cập nhật lại các thông tin vào trong cơ sở dữ liệu của hệ thống. 7. Use case kết thúc. ¾ Dòng sự kiện khác: Người dùng quyết định hủy bỏ quá trình cập nhật: Trong trường hợp này, trạng thái của hệ thống sẽ không thay đổi và dòng sự kiện chính được bắt đầu lại từ đầu. 2.5.15.4 Yêu cầu đặc biệt: ¾ Không có. 2.5.15.5 Điều kiện tiên quyết: ¾ Người dùng phải đăng nhập vào hệ thống với vai trò khách sạn (Hotel) để có thể thực hiện được use case này. 2.5.15.6 Post-Condition: ¾ Nếu use case này thành công thì thông tin mô tả cập nhật cho khách sạn sẽ được lưu vào cơ sở dữ liệu của hệ thống. Ngược lại, trạng thái của hệ thống sẽ không thay đổi. 2.5.15.7 Điểm mở rộng: ¾ Không có. 2.5.16 Trao đổi thông tin: 2.5.16.1 Tên Use Case: ¾ Exchange Info 2.5.16.2 Mô tả: ¾ Use case này cho phép các người dùng với từng vai trò khác nhau có thể xem nội dung các thông điệp và gửi các thông điệp lẫn nhau (giữa người quản trị trang web với các đối tượng khác và ngược lại). 40 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.5.16.3 Dòng sự kiện: ¾ Dòng sự kiện chính: Use case này được bắt đầu khi một người dùng đăng nhập vào hệ thống và chọn chức năng ‘Messages’ trên menu. 1. Người dùng đăng nhập vào hệ thống. 2. Người dùng chọn chức năng ‘Messages’ trên menu. 3. Hệ thống mở trang web Messages. 4. Người dùng chọn chức năng ‘Xem danh sách các thông điệp’ (List Messages) hay ‘Gửi thông điệp’ (Send Message). 5. Nếu người dùng chọn chức năng ‘Xem danh sách các thông điệp’ thì hệ thống sẽ truy xuất cơ sở dữ liệu và hiển thị danh sách các thông điệp trên một trang web mới. Từ đây người dùng có thể chọn chức năng ‘Xem nội dung thông điệp’ hay ‘Xóa thông điệp’: 6. Nếu người dùng chọn chức năng ‘Xem nội dung thông điệp’ thì hệ thống sẽ truy xuất cơ sở dữ liệu tìm nội dung của thông điệp tương ứng và mở một trang web mới để hiển thị nội dung này. 7. Nếu người dùng chọn chức năng ‘Xóa’ thông điệp thì hệ thống sẽ truy xuất đến cơ sở dữ liệu để xóa nội dung của thông điệp này. Đồng thời cập nhật lại danh sách các thông điệp đang hiển thị. 8. Nếu người dùng chọn chức năng ‘Gửi thông điệp’ (Send Message) thì hệ thống sẽ mở một web form cho phép người dùng có thể nhập nội dung của thông điệp. Khi người dùng chọn chức 41 KH OA C NT T – Đ H KH TN Chương 2. Phân tích năng ‘Send’ thì hệ thống sẽ lưu thông điệp đó vào Inbox của người nhận. Sau đó quay trở về trang Messages. ¾ Dòng sự kiện khác: Người dùng hủy bỏ việc gửi thông điệp: Nếu trong quá trình gửi thông điệp người dùng quyết định thôi không gửi thông điệp nữa thì hệ thống sẽ không thay đổi trạng thái và hệ thống quay trở lại trang Messages. 2.5.16.4 Yêu cầu đặc biệt: ¾ Không có. 2.5.16.5 Điều kiện tiên quyết: ¾ Tùy theo các đối tượng người dùng phải đăng nhập vào hệ thống để thực hiện các chức năng của use case này. 2.5.16.6 Post-Condition: ¾ Tùy theo chức năng mà người dùng chọn, nếu use case thực hiện thành công thì hệ thống hoặc sẽ hiển thị nội dung của thông điệp (show message) hoặc gửi thông điệp (lưu thông điệp vào inbox của người nhận). Hệ thống sẽ không cập nhật nếu không thực hiện chức năng gửi thông điệp hoặc gửi không thành công. 2.5.16.7 Điểm mở rộng: ¾ Không có. 42 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.6 Sơ đồ lớp: 2.6.1 Admin Login Class: Hình 2-5: Class Diagram: Đăng nhập hệ thống 43 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.6.2 Airplane Description Class: Hình 2-6: Class Diagram: Mô tả hãng hàng không 44 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.6.3 Hotel Description Class: Hình 2-7: Class Diagram: Mô tả khách sạn 2.6.4 Exchange Info Class: Hình 2-8: Class Diagram: Trao đổi thông tin 45 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.6.5 Manage Airplane Class: Hình 2-9: Class Diagram: Quản lý Hãng hàng không 46 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.6.6 Manage Hotel Class: Hình 2-10: Class Diagram: Quản lý khách sạn 47 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.6.7 Manage Airplane Info Class: Hình 2-11: Class Diagram: Quản lý thông tin Hãng hàng không 48 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.6.8 Manage Hotel Info Class: Hình 2-12: Class Diagram: Quản lý thông tin khách sạn 49 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.6.9 Manage User Class: Hình 2-13: Class Diagram: Quản trị người dùng 2.6.10 Manage Visitor Class: Hình 2-14: Class Diagram: Quản trị khách viếng 50 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.6.11 Register Member Class: Hình 2-15: Class Diagram: Đăng ký thành viên 2.6.12 Register Service Class: Hình 2-16: Class Diagram: Đăng ký dịch vụ 51 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.6.13 Register Supplier Class: Hình 2-17: Class Diagram: Đăng ký nhà cung cấp dịch vụ 52 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7 Các lưu đồ hoạt động: 2.7.1 Đăng nhập hệ thống: ¾ Tên lược đồ: Login ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-18: Sequence Diagram: Đăng nhập hệ thống 53 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-19: Collaboration Diagram: Đăng nhập hệ thống 54 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.2 Khách viếng đăng ký làm thành viên: ¾ Tên lược đồ: Register Member ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-20: Sequence Diagram: Đăng ký thành viên 55 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-21: Collaboration Diagram: Đăng ký thành viên 56 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.3 Khách sạn đăng ký làm nhà cung cấp dịch vụ khách sạn: ¾ Tên lược đồ: Hotel Register ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-22: Sequence Diagram: Đăng ký nhà cung cấp dịch vụ 57 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-23: Collaboration Diagram: Đăng ký nhà cung cấp dịch vụ 58 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.4 Khách viếng đặt phòng ở khách sạn: ¾ Tên lược đồ: Book Room ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-24: Sequence Diagram: Đặt phòng khách sạn 59 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-25: Collaboration Diagram: Đặt phòng khách sạn 60 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.5 Nhập thông tin mô tả cho Hãng hàng không: ¾ Tên lược đồ: Enter Airplane Description ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-26: Sequence Diagram: Nhập thông tin mô tả Hãng hàng không 61 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-27: Collaboration Diagram: Nhập thông tin mô tả cho Hãng hàng không 62 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.6 Nhập thông tin mô tả cho Khách sạn: ¾ Tên lược đồ: Enter Hotel Description ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-28: Sequence Diagram: Nhập thông tin mô tả cho khách sạn 63 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-29: Collaboration Diagram: Nhập thông tin mô tả cho khách sạn 64 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.7 Soạn và gửi các thông điệp: ¾ Tên lược đồ: Send Message ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-30: Sequence Diagram: Gửi thông điệp 65 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-31: Collaboration Diagram: Gửi thông điệp 66 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.8 Xem các thông điệp: ¾ Tên lược đồ: Show Message ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-32: Sequence Diagram: Xem thông điệp 67 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-33: Collaboration Diagram: Xem thông điệp 68 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.9 Xem các thông tin chung của Hãng hàng không: ¾ Tên lược đồ: Airplane Info ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-34: Sequence Diagram: Xem thông tin nhà cung cấp dịch vụ 69 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-35: Collaboration Diagram: Xem thông tin nhà cung cấp dịch vụ 70 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.10 Cập nhật các thông tin chung của Khách sạn: ¾ Tên lược đồ: Update Hotel Info ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-36: Sequence Diagram: Cập nhật thông tin nhà cung cấp dịch vụ 71 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-37: Collaboration Diagram: Cập nhật thông tin Nhà cung cấp dịch vụ 72 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.11 Cập nhật các thông tin mô tả của Khách sạn: ¾ Tên lược đồ: Update Hotel Description ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-38: Sequence Diagram: Cậpnhật thông tin mô tả của nhà cung cấp dịch vụ ¾ Lược đồ cộng tác (Collaboration Diagram): 73 KH OA C NT T – Đ H KH TN Chương 2. Phân tích Hình 2-39: Collaboration Diagram: Cập nhật thông tin mô tả của nhà cung cấp dịch vụ 74 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.12 Tìm kiếm Khách sạn: ¾ Tên lược đồ: Search Hotels ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-40: Sequence Diagram: Tìm kiếm khách sạn 75 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-41: Sequence Diagram: Tìm kiếm khách sạn 76 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.13 Thêm người sử dụng mới (với vai trò Admin): ¾ Tên lược đồ: Add New User ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-42: Sequence Diagram: Thêm mới người sử dụng 77 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-43: Collaboration Diagram: Thêm mới người sử dụng 78 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.14 Xem danh sách người sử dụng (với vai trò Admin): ¾ Tên lược đồ: Show List Users ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-44: Sequence Diagram: Xem danh sách người sử dụng 79 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-45: Collaboration Diagram: Xem danh sách người sử dụng 80 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.15 Xem thông tin người sử dụng (với vai trò Admin): ¾ Tên lược đồ: Show User Info ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-46: Sequence Diagram: Xem thông tin người sử dụng 81 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-47: Collaboration Diagram: Xem thông tin của người sử dụng 82 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.16 Xóa thông tin người sử dụng (với vai trò Admin): ¾ Tên lược đồ: Remove User ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-48: Sequence Diagram: Xóa người sử dụng 83 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-49: Collaboration Diagram: Xóa người sử dụng 84 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.17 Xem danh sách các Khách sạn: ¾ Tên lược đồ: Show List Hotels ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-50: Sequence Diagram: Xem danh sách khách sạn 85 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-51: Collaboration Diagram: Xem danh khách sạn 86 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.18 Xem thông tin chi tiết một Khách sạn: ¾ Tên lược đồ: Show Hotel Description ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-52: Sequence Diagram: Xem thông tin chi tiết của khách sạn 87 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-53: Collaboration Diagram: Xem thông tin chi tiết của khách sạn 88 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.19 Xóa một Khách sạn: ¾ Tên lược đồ: Remove Hotel ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-54: Sequence Diagram: Xóa một khách sạn 89 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-55: Collaboration Diagram: Xóa một khách sạn 90 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.20 Xem danh sách khách viếng: ¾ Tên lược đồ: Show List Visitors ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-56: Sequence Diagram: Xem danh sách khách viếng 91 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-57: Collaboration Diagram: Xem danh sách khách viếng 92 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.21 Xem thông tin một khách viếng: ¾ Tên lược đồ: Show Visitor Info ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-58: Sequence Diagram: Xem thông tin khách viếng 93 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-59: Collaboration Diagram: Xem thông tin khách viếng 94 KH OA C NT T – Đ H KH TN Chương 2. Phân tích 2.7.22 Xóa một khách viếng: ¾ Tên lược đồ: Remove Visitor ¾ Lược đồ tuần tự (Sequence Diagram): Hình 2-60: Sequence Diagram: Xóa một khách viếng 95 KH OA C NT T – Đ H KH TN Chương 2. Phân tích ¾ Lược đồ cộng tác (Collaboration Diagram): Hình 2-61: Collaboration Diagram: Xóa một khách viếng 96 KH OA C NT T – Đ H KH TN Chương 3. Thiết kế Chương 3. THIẾT KẾ 3.1 Thiết kế dữ liệu: Mặc dù trong phần phân tích chúng em đã sử dụng mô hình hướng đối tượng để thực hiện nhưng do điều kiện khách quan không thể triển khai được cài đặt theo mô hình này trong thực tế. Do đó, quá trình chuyển tiếp từ phân tích hướng đối tượng sang thiết kế hướng đối tượng sẽ được thay thế bằng thiết kế theo mô hình quan hệ tương ứng với cơ sở dữ liệu quan hệ (SQL Server). 97 KH OA C NT T – Đ H KH TN Chương 3. Thiết kế 3.1.1 Mô hình dữ liệu logic ở dạng sơ đồ: Hình 3-1: Sơ đồ mô hình dữ liệu 98 KH OA C NT T – Đ H KH TN Chương 3. Thiết kế 3.1.2 Danh sách các bảng dữ liệu: 3.1.2.1 tblHotels: ¾ Mô tả: Lưu trữ thông tin đăng ký của các khách sạn. ¾ Các thành phần lưu trữ: HotelID, LoginID, LoginPwd, QuestionID, Answer, HotelName, ContactName, ContactTitle, Address, City, Province, CountryID, PostalCode, Phone, Mobile, Fax, HomePage, Email, Standard, DateReg, LastLogin, NumOfLogin, NumOfRooms, Active. Khóa chính là HotelID. 3.1.2.2 tblAirplanes: ¾ Mô tả: Lưu trữ thông tin đăng ký của các hãng hàng không. ¾ Các thành phần lưu trữ: AirplaneID, LoginID, LoginPwd, QuestionID, Answer, AirplaneName, ContactName, ContactTitle, Address, City, Province, CountryID, PostalCode, Phone, Mobile, Fax, HomePage, Email, DateReg, LastLogin, NumOfLogin, Active. Khóa chính là AirplaneID. 3.1.2.3 tblVisitors: ¾ Mô tả: Lưu trữ thông tin đăng ký của khách viếng. ¾ Các thành phần lưu trữ: VisitorID, LoginID, LoginPwd, QuestionID, Answer, Dear, FirstName, LastName, Address, City, Province, CountryID, PostalCode, Phone, Mobile, Fax, Email, DateReg, LastLogin, NumOfLogin, Active. Khóa chính là VisitorID. 3.1.2.4 tblAdmin: ¾ Mô tả: Lưu trữ thông tin của người quản trị Website. 99 KH OA C NT T – Đ H KH TN Chương 3. Thiết kế ¾ Các thành phần lưu trữ: AdminID, LoginID, LoginPwd, QuestionID, Answer, Dear, FirstName, LastName, Address, Phone, Mobile, Fax, Email, DateReg, LastLogin, NumOfLogin, Active, UserType. Khóa chính là AdminID. 3.1.2.5 tblRoomInfo: ¾ Mô tả: Lưu trữ thông tin các loại phòng của các khách sạn. ¾ Các thành phần lưu trữ: HotelID, RoomType, NumOfRooms, SingleRoom, DoubleRoom, AddGuest, ExtraBed, Currency, Breakfast, Smoking, OtherNotes. Khóa chính bao gồm HotelID, RoomTypeID. 3.1.2.6 tblFlightInfo: ¾ Mô tả: Lưu trữ thông tin các tuyến bay của các hãng hàng không. ¾ Các thành phần lưu trữ: AirplaneID, FlightName, TakeofTime, Departure, Destination, Description, SpendTime, Oneway, Roundtrip, Currency, Notes. Khóa chính bao gồm AirplaneID, FlightName, TakeoffTime. 3.1.2.7 tblBookInfo: ¾ Mô tả: Lưu trữ thông tin đặt phòng của khách viếng. ¾ Các thành phần lưu trữ: BookingID, VisitorID, HotelType, CheckInDate, CheckOutDate, CountryID, Province, City, GuestName, NumOfGuest, Status. Khóa chính là BookingID. 3.1.2.8 tblBookDetail: ¾ Mô tả: Lưu trữ thông tin chi tiết đặt phòng của khách viếng. ¾ Các thành phần lưu trữ: BookingID, RoomTypeID, NumOfRoom. Khóa chính là BookingID. 100 KH OA C NT T – Đ H KH TN Chương 3. Thiết kế 3.1.2.9 tblBookResult: ¾ Mô tả: Lưu trữ kết quả đặt phòng của khách viếng. ¾ Các thành phần lưu trữ: BookingID, HotelID, TotalCost, PaymentID, Status. Khóa chính là BookingID. 3.1.2.10 tblBookTicket: ¾ Mô tả: Lưu trữ thông tin đặt vé máy bay của khách hàng. ¾ Các thành phần lưu trữ: BookTicketID, VisitorID, Departure, Destination, TicketType, Roundtrip, DateTakeoff, DateReturn, Passengers, Delivery, SpecialRequest, Statur. Khóa chính là BookTicketID. 3.1.2.11 tblPassenger: ¾ Mô tả: Lưu trữ thông tin các hành khách đặt vé máy bay. ¾ Các thành phần lưu trữ: BookTicketID, PassengerID, PassengerType, PassengerName. Khóa chính bao gồm BookTicketID, PassengerID. 3.1.2.12 tblFlightResult: ¾ Mô tả: Lưu trữ kết quả đặt vé máy bay của khách hàng. ¾ Các thành phần lưu trữ: BookTicketID, AirplaneID, FlightName, TakeoffTime, TotalCost, PaymentID, Status. Khóa chính là BookTicketID. 3.1.2.13 tblComments: ¾ Mô tả: Lưu trữ các lời phê bình, đề nghị của các khách viếng Website. Đây là các thông tin góp ý về Website. ¾ Các thành phần lưu trữ: CommentID, Commentator, Content, DateRecv, Email. Khóa chính là CommentID. 101 KH OA C NT T – Đ H KH TN Chương 3. Thiết kế 3.1.2.14 tblHotelInbox: ¾ Mô tả: Lưu trữ các thông tin trao đổi do các thành viên đăng ký với hệ thống hoặc người quản trị gửi đến. ¾ Các thành phần lưu trữ: HotelID, MessageID, DateRecv, SenderName, SenderEmail, Subject, Content. Khóa chính bao gồm HotelID, MessageID. 3.1.2.15 tblAirplaneInbox: ¾ Mô tả: Lưu trữ các thông tin trao đổi do các thành viên đăng ký với hệ thống gửi đến. ¾ Các thành phần lưu trữ: AirplaneID, MessageID, DateRecv, SenderName, SenderEmail, Subject, Content. Khóa chính bao gồm AirplaneID, MessageID. 3.1.2.16 tblVisitorInbox: ¾ Mô tả: Lưu trữ các thông tin trao đổi do các thành viên đăng ký với hệ thống hoặc người quản trị gửi đến. ¾ Các thành phần lưu trữ: VisitorID, MessageID, DateRecv, SenderName, SenderEmail, Subject, Content. Khóa chính bao gồm VisitorID, MessageID. 3.1.2.17 tblAdminInbox: ¾ Mô tả: Lưu trữ các thông tin trao đổi do các thành viên đăng ký với hệ thống gửi đến cho người quản trị. ¾ Các thành phần lưu trữ: AdminID, MessageID, DateRecv, SenderName, SenderEmail, Subject, Content. Khóa chính bao gồm AdminID, MessageID. 102 KH OA C NT T – Đ H KH TN Chương 3. Thiết kế 3.1.2.18 tblCountries: ¾ Mô tả: Lưu trữ tên của các quốc gia. ¾ Các thành phần lưu trữ: CountryID, CountryName_EN, CountryName_VN, RegionID, Supported. Khóa chính là RegionID. 3.1.2.19 tblProvinces: ¾ Mô tả: Lưu trữ tên các tỉnh, thành. ¾ Các thành phần lưu trữ: ProvinceID, ProvinceName, CountryID, Supported. Khóa chính là ProvinceID. 3.1.2.20 tblRegions: ¾ Mô tả: Lưu trữ tên các vùng trên thế giới ¾ Các thành phần lưu trữ: RegionID, RegionName_EN, RegionName_VN, ContinentID. Khóa chính là RegionID. 3.1.2.21 tblContinents: ¾ Mô tả: Lưu trữ tên các lục địa. ¾ Các thành phần lưu trữ: ContinentID, ContinentName_EN, ContinentName_VN. Khóa chính là ContinentID. 3.1.2.22 tblCities: ¾ Mô tả: Lưu trữ tên các thành phố

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

  • pdfUnlock-0012184-0012571.pdf
Tài liệu liên quan