1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Thiết kế và xây dựng phần mềm quản lý khách sạn

45 27 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Thiết Kế Và Xây Dựng Phần Mềm Quản Lý Khách Sạn
Tác giả Nguyễn Hoài Phong, Nguyễn Hoàng Vũ
Người hướng dẫn ThS. Từ Thanh Trí
Trường học Trường Đại Học Tài Nguyên Và Môi Trường Tp.Hcm
Chuyên ngành Công Nghệ Thông Tin
Thể loại Báo Cáo
Năm xuất bản 2021
Thành phố Tp. Hồ Chí Minh
Định dạng
Số trang 45
Dung lượng 4,29 MB

Cấu trúc

  • Chương 1: Tổng quan và giới thiệu (10)
    • 1.1. Tổng quan đề tài (10)
    • A. Giới thiệu (10)
    • B. Mục Tiêu (10)
    • C. Phạm vi (10)
    • D. Phương pháp nghiên cứu (11)
    • E. Ý nghĩa (11)
  • Chương 2: Cơ sở lý thuyết (12)
    • 2.1. Công cụ sử dụng và hổ trợ (12)
    • A. Visual Studio Code (12)
    • B. Postman (12)
    • C. MongoDB (13)
      • 2.2. Ngôn ngữ, nền tảng , framework (14)
    • A. NodeJS, Express JS (14)
    • B. ReactJS (16)
    • D. GitHub (17)
      • 2.3 Kỹ thuật sử dụng (19)
    • A. JSON Web Token (19)
    • B. Lâp trình đồng bộ (Synchronous) và bất đồng bộ (Asynchronous) (21)
  • Chương 3: Cài đặt và thử nghiệm ứng dụng (22)
    • 3.3.1 Xác định yêu cầu bài toán (22)
    • A. Quản lý các phòng trong khách sạn (22)
    • B. Phân quyền (22)
    • C. Xác thực đăng nhập và quyền hạn (22)
    • D. Đặt phòng, thanh toán (22)
      • 3.3.2 Xây dựng chương trình (22)
    • A. Xác định & Phân tích các thực thể hệ thống (22)
      • 3.3.3 Phân tích hệ thống với UML (24)
    • A. Biểu đồ Usecase (24)
    • B. Mô hình quan hệ thực thể (ERD) (31)
    • C. Sơ đồ lớp (32)
    • D. Sơ đồ tuần tự (33)
    • A. Giao diện đăng nhập (36)
    • B. Giao diện đăng ký (38)
    • C. Giao diện trang chủ (39)
    • D. Giao diện thanh toán (41)
  • Chương 4: Kết luận (43)
    • 4.1. Kếết qu đ t đ ả ạ ượ c c a đếề tài ủ (0)
    • A. Kết quả chung (43)
    • B. Kiến thức lập trình (43)
      • 4.2. H n chếế c a đếề tài ạ ủ (0)
      • 4.3. Khuyếến nghị (0)
      • 4.4 H ướ ng phát tri n đếề tài ể (0)
  • TÀI LIỆU THAM KHẢO (45)

Nội dung

Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn Thiết kế và xây dựng phần mềm quản lý khách sạn

Tổng quan và giới thiệu

Giới thiệu

Thế kỷ 21 chứng kiến sự bùng nổ của ngành Công nghệ thông tin, với CNTT đang thay đổi thế giới một cách nhanh chóng và kết nối tri thức nhân loại Sự phát triển của hệ thống website toàn cầu đã tạo ra những thay đổi lớn trong cuộc sống con người, từ giải trí, quảng cáo, thương mại đến quản lý và blog Website thương mại điện tử ngày càng thay thế các phương thức truyền thống nhờ vào những lợi ích vượt trội như tốc độ nhanh hơn, chi phí thấp hơn, tính tiện dụng cao và khả năng hoạt động không bị giới hạn bởi không gian và thời gian.

Trong bối cảnh dịch bệnh COVID-19 hiện nay, việc chuyển đổi các hoạt động khách sạn như đặt phòng, thanh toán và hủy phòng sang hình thức trực tuyến là vô cùng quan trọng Số hóa các quy trình này không chỉ bảo vệ sức khỏe cho cả khách hàng và nhân viên mà còn giúp chủ khách sạn quản lý hiệu quả hơn.

Mục Tiêu

 Xây dựng Website quản lý khách sạn.

 Đặt phòng, hủy phòng, thanh toán tiện lợi

 Thiết kế giao diện gần gũi, dễ sử dụng cho người dùng.

 Giải thích các công nghệ, công cụ, framework sử dụng trong quá trình nghiên cứu.

 Đưa ra các báo cáo, tổng hợp

Phạm vi

Bất kỳ ai cũng có thể tham gia làm người dùng của hệ thống khách sạn, cho phép khách hàng xem chi tiết các phòng đã đặt Ngoài ra, mọi người có thể truy cập trang web của hệ thống để khám phá các phòng trước khi tạo tài khoản.

1 quản lý khách sạn GV: ThS Từ Thanh Trí

Phương pháp nghiên cứu

Phương pháp nghiên cứu lý thuyết bao gồm việc phân tích hệ thống và cấu trúc của một website cơ bản, đồng thời tìm hiểu các tài liệu liên quan đến việc xây dựng website Ngoài ra, nghiên cứu cũng chú trọng đến các nghiệp vụ trong lĩnh vực khách sạn, nhằm tạo ra một nền tảng vững chắc cho việc phát triển và quản lý website hiệu quả.

 Phương pháp điều tra: o Điều tra, phân tích tình trạng của khách sạn cụ thể

Ý nghĩa

Nếu thực hiện thành công đề tài này sẽ mang lại ý nghĩa to lớn về cả thực tiễn lẫn lý luận

 Ý nghĩa lý luận của đề tài:

Chương trình và bản thuyết minh của đề tài sẽ cung cấp tài liệu nghiên cứu hữu ích, dễ hiểu cho giáo viên và sinh viên, đặc biệt là những ai đam mê công nghệ Web và ứng dụng.

 Ý nghĩa thực tiễn của đề tài:

Với sự thành công của đề tài sẽ góp phần giúp cho việc quản lý khách sạn qua hình thức trực tuyến trở nên dễ dàng hơn.

2 quản lý khách sạn GV: ThS Từ Thanh Trí

Cơ sở lý thuyết

Visual Studio Code

Visual Studio Code (VS Code) là một trình biên tập mã nguồn miễn phí, tương thích với Windows, Linux và macOS, được phát triển bởi Microsoft Nó được coi là sự kết hợp hoàn hảo giữa môi trường phát triển tích hợp (IDE) và trình biên tập mã.

Visual Studio Code cung cấp chức năng tìm kiếm lỗi hiệu quả, tích hợp Git, hỗ trợ tô sáng cú pháp, hoàn thành mã thông minh, và các đoạn mã mẫu (snippets) cùng với cải tiến mã nguồn Nhờ vào khả năng tùy chỉnh linh hoạt, người dùng có thể thay đổi giao diện, phím tắt và các tùy chọn khác theo nhu cầu của mình.

Postman

Postman là công cụ phổ biến để thao tác với API, đặc biệt là REST Đây là một trong những công cụ hàng đầu được sử dụng để thử nghiệm API, cho phép người dùng gọi Rest API mà không cần viết mã.

1 IDE (Integrated Development Environment) là môi trường tích hợp dùng để viết code để phát triển ứng dụng.

2 Code Editor: Trình soạn thảo code

3 Syntax highlighting là một công cụ giúp tô màu các đoạn mã nguồn

Snippet là đoạn mã đã được định nghĩa sẵn và liên kết với một từ khóa cụ thể Khi cần sử dụng, người dùng chỉ cần gọi từ khóa đó để chèn nội dung đã được xác định trước.

Postman là công cụ hỗ trợ tất cả các phương thức HTTP như GET, POST, PUT, PATCH và DELETE Nó còn cho phép người dùng lưu lại lịch sử các lần request, giúp tiện lợi cho việc sử dụng lại khi cần thiết.

MongoDB

MongoDB là một database hướng tài liệu (document), một dạng NoSQL database 6

MongoDB avoids the table-based structure of relational databases to accommodate flexible document formats like JSON, utilizing a schema known as BSON By storing data as JSON documents, MongoDB allows each collection to contain documents of varying sizes and structures.

MongoDB was first introduced by MongoDB Inc in October 2007 as part of the 10th generation of products, functioning as a PaaS (Platform as a Service) similar to Windows Azure and Google App Engine It transitioned to open source in 2009.

HTTP (HyperText Transfer Protocol) là giao thức truyền tải siêu văn bản, đóng vai trò quan trọng trong việc truyền tải dữ liệu giữa máy chủ web và trình duyệt web Giao thức này cho phép việc trao đổi thông tin diễn ra một cách hiệu quả trên www.

Cơ sở dữ liệu NoSQL là hệ thống quản lý dữ liệu không quan hệ với lược đồ linh hoạt, dễ dàng mở rộng Chúng chủ yếu được sử dụng cho các kho dữ liệu phân tán, đáp ứng nhu cầu lưu trữ dữ liệu lớn.

7 JSON ( JavaScript Object Notation): là một tiêu chuẩn mở để trao đổi dữ liệu trên web.

4 quản lý khách sạn GV: ThS Từ Thanh Trí

Dữ liệu lưu trữ phi cấu trúc có tính sẵn sàng cao, hiệu suất lớn và dễ dàng mở rộng Việc caching dữ liệu lên RAM giúp giảm thiểu truy cập vào ổ cứng, từ đó nâng cao tốc độ đọc và ghi.

2.2 Ngôn ngữ, nền tảng , framework

NodeJS, Express JS

Node.js là một nền tảng chạy trên môi trường V8 JavaScript runtime, một trình thông dịch JavaScript nhanh chóng được sử dụng trong trình duyệt Chrome Thực tế, chúng ta có thể tải bộ V8 và nhúng vào bất kỳ ứng dụng nào, và Node.js đã áp dụng điều này cho các web server JavaScript, chỉ là một ngôn ngữ, hoàn toàn có thể hoạt động hiệu quả trên môi trường server giống như trong trình duyệt của người dùng.

JavaScript là ngôn ngữ dựa trên sự kiện, cho phép tạo ra các sự kiện non-blocking cho mỗi hoạt động trên server Mỗi kết nối mới và dữ liệu nhận được từ form upload đều kích hoạt sự kiện, bao gồm cả việc truy vấn dữ liệu từ cơ sở dữ liệu Điều này đảm bảo rằng trang web sử dụng Node.js không bao giờ bị khóa và có khả năng hỗ trợ hàng chục nghìn người dùng cùng lúc.

8 Non-blocking giúp chương trình không phải chờ đợi lần lượt mà sẽ ưu tiên những công việc khác

Node.js đóng vai trò như một server tương tự Apache, cho phép chạy ứng dụng và thông dịch mã Nó hỗ trợ nhiều module (thư viện) có thể cài đặt để nâng cao chức năng, bao gồm lưu trữ dữ liệu, hỗ trợ file Zip, đăng nhập qua Facebook và tích hợp các cổng thanh toán.

Express.js, hay còn gọi là Express JS, là một framework mã nguồn mở miễn phí dành cho Node.js, giúp thiết kế và xây dựng ứng dụng web một cách nhanh chóng và đơn giản.

Express.js, với yêu cầu duy nhất là ngôn ngữ lập trình JavaScript, giúp đơn giản hóa việc phát triển ứng dụng web và API cho lập trình viên Là một framework của Node.js, Express.js cung cấp nhiều mã code đã được viết sẵn, tạo điều kiện thuận lợi cho các nhà phát triển trong quá trình làm việc.

Express.js giúp lập trình viên dễ dàng phát triển ứng dụng web đơn lẻ hoặc nhiều web kết hợp nhờ vào dung lượng nhẹ và khả năng tổ chức ứng dụng theo kiến trúc MVC Để sử dụng Express.js, người dùng cần có kiến thức về JavaScript và HTML, đồng thời nó cũng là một mã nguồn mở.

9 Apache là phần mềm web server miễn phí mã nguồn mở

10 API là viết tắt của Application Programming Interface – phương thức trung gian kết nối các ứng dụng và thư viện khác nhau.

6 quản lý khách sạn GV: ThS Từ Thanh Trí

ReactJS

React là thư viện JavaScript mã nguồn mở miễn phí, chuyên dụng cho việc xây dựng giao diện người dùng và các thành phần UI Được duy trì bởi Facebook cùng với sự hỗ trợ từ cộng đồng các nhà phát triển và công ty, React là nền tảng lý tưởng để phát triển ứng dụng một trang và ứng dụng di động.

React là một thư viện hấp dẫn vì khả năng hoạt động cả trên phía client lẫn server, cho phép kết nối linh hoạt giữa chúng Thư viện này so sánh sự thay đổi giữa các lần render để cập nhật một cách tối ưu nhất trên DOM, chỉ thực hiện những thay đổi cần thiết.

API, viết tắt của Giao diện Lập trình Ứng dụng, là các phương thức và giao thức giúp kết nối với thư viện và ứng dụng khác Nó cho phép truy xuất đến một tập hợp các hàm thường dùng, từ đó hỗ trợ việc trao đổi dữ liệu giữa các ứng dụng một cách hiệu quả.

Web API là hệ thống API quan trọng trong các trang web, cho phép kết nối và truy xuất dữ liệu từ cơ sở dữ liệu Hầu hết các website hiện nay đều sử dụng Web API để cập nhật thông tin và cung cấp các chức năng như đăng nhập thông qua các nền tảng như Google, Facebook, Twitter và Github.

Quản lý khách sạn là một lĩnh vực quan trọng, và việc sử dụng API trong quản lý này giúp kết nối và truy xuất dữ liệu một cách hiệu quả Các ứng dụng di động cũng dựa vào API để lấy thông tin, từ đó cải thiện trải nghiệm người dùng.

Hệ điều hành Windows và Linux cung cấp nhiều API, đi kèm với tài liệu chi tiết mô tả các hàm, phương thức và giao thức kết nối Những API này hỗ trợ lập trình viên phát triển ứng dụng có khả năng tương tác trực tiếp với hệ điều hành.

API của thư viện phần mềm hoặc framework định nghĩa các hành động mà thư viện cung cấp, cho phép tương tác dễ dàng giữa các ngôn ngữ lập trình khác nhau Một API có thể được triển khai theo nhiều cách khác nhau, giúp các chương trình viết bằng ngôn ngữ này sử dụng thư viện được phát triển bằng ngôn ngữ khác một cách hiệu quả.

REST (Representational State Transfer) là một kiến trúc API sử dụng phương thức HTTP đơn giản để giao tiếp giữa các máy Thay vì chỉ sử dụng một URL cho việc xử lý thông tin người dùng, REST gửi các yêu cầu HTTP như GET, POST, DELETE, v.v đến một URL để xử lý dữ liệu hiệu quả.

RESTful API là tiêu chuẩn thiết kế API cho ứng dụng web, giúp quản lý các resource hiệu quả Đây là một trong những kiểu thiết kế API phổ biến hiện nay, cho phép các ứng dụng web và mobile giao tiếp linh hoạt với nhau.

Chức năng chính của REST là quy định cách sử dụng các phương thức HTTP như GET, POST, PUT và DELETE, cùng với cách định dạng URL cho ứng dụng web nhằm quản lý các tài nguyên RESTful không giới hạn logic mã nguồn của ứng dụng và không bị ràng buộc bởi ngôn ngữ lập trình, cho phép bất kỳ ngôn ngữ hoặc framework nào cũng có thể được sử dụng để thiết kế một API RESTful.

GitHub

GitHub là một dịch vụ nổi bật cung cấp kho lưu trữ mã nguồn Git cho các dự án phần mềm, tích hợp đầy đủ các tính năng của Git và bổ sung thêm các tính năng xã hội để các lập trình viên có thể tương tác và hợp tác hiệu quả hơn.

GIT là công cụ quản lý mã nguồn hiệu quả, cho phép tổ chức dữ liệu theo dạng phân tán Nó giúp đồng bộ hóa mã nguồn của nhóm lên một máy chủ, đồng thời hỗ trợ các thao tác kiểm tra mã nguồn như so sánh khác biệt, kiểm tra các thay đổi, hiển thị lịch sử và gộp mã nguồn.

GitHub cung cấp hai phiên bản: miễn phí và trả phí Phiên bản trả phí thường được các doanh nghiệp lựa chọn để cải thiện khả năng quản lý nhóm và phân quyền bảo mật cho các dự án Trong khi đó, hầu hết người dùng cá nhân sử dụng tài khoản miễn phí để lưu trữ mã nguồn.

Github cung cấp các tính năng social networking như feeds, followers, và network graph để các developer học hỏi kinh nghiệm của nhau thông qua lịch sử commit.

GitHub là nền tảng mạng xã hội lớn nhất và thân thiện nhất cho lập trình viên, cung cấp các tính năng quan trọng như Wiki, quản lý issue, thống kê dự án, khả năng đổi tên project, và tổ chức project trong namespace của người dùng.

Quản lý khách sạn là một lĩnh vực quan trọng, trong đó việc theo dõi hoạt động của các dự án phần mềm là cần thiết Việc "watch project" giúp người quản lý nắm bắt quá trình phát triển của dự án, từ đó có cái nhìn tổng quan về sự tiến bộ và hiệu quả Bên cạnh đó, "follow user" cho phép theo dõi hoạt động của những người khác, giúp cải thiện khả năng quản lý và tối ưu hóa quy trình làm việc trong ngành khách sạn.

Có 2 cách tiếp cận GitHub: Tạo project của riêng mình Contribute cho project có sẵn: fork project có sẵn của người khác, sửa đổi, sau đó đề nghị họ cập nhật sửa đổi của mình (tạo pull request).

JSON Web Token

JWT (JSON Web Token) là phương tiện để chuyển giao thông tin giữa Client và Server, với dữ liệu được định dạng bằng JSON Một chuỗi JWT bao gồm ba phần chính: header, payload và signature, được phân cách bằng dấu chấm (.).

Hình 2.8 Cấu trúc JWT (JSON web token)

10 quản lý khách sạn GV: ThS Từ Thanh Trí o Header : Phần header sẽ chứa kiểu dữ liệu , và thuật toán sử dụng để mã hóa ra chuỗi JWT

 “typ” (type) ch ra rằềng đốếi t ỉ ượ ng là m t ộ JWT

Thuật toán mã hóa cho chuỗi Token sử dụng HS256, trong đó phần payload chứa thông tin như username, userId và author Chữ ký được tạo ra bằng cách mã hóa phần header và payload kết hợp với một chuỗi secret (khóa bí mật).

11 quản lý khách sạn GV: ThS Từ Thanh Trí

Hình 2.9 Ví dụ về JWT (JSON Web Token)

 Vì sao sử dụng JWT ?

Xác thực là một ứng dụng phổ biến của JWT, cho phép người dùng đã đăng nhập gửi các yêu cầu tiếp theo kèm theo mã JWT Mã này giúp người dùng truy cập vào các URL, dịch vụ và tài nguyên được phép Phương pháp này không bị ảnh hưởng bởi Cross-Origin Resource Sharing (CORS) vì không sử dụng cookie.

JSON Web Token (JWT) là một phương thức hiệu quả để truyền tải thông tin an toàn giữa các bên, nhờ vào chữ ký (signature) của nó Người nhận có thể xác định danh tính người gửi thông qua chữ ký, được tạo ra từ sự kết hợp giữa phần header và payload Điều này cho phép xác minh tính xác thực của chữ ký, đảm bảo rằng thông tin không bị giả mạo.

Lâp trình đồng bộ (Synchronous) và bất đồng bộ (Asynchronous)

Lập trình đồng bộ (Synchronous) là phương pháp xử lý mà chương trình thực hiện từng bước một, chỉ chuyển sang bước tiếp theo khi bước trước đã hoàn thành Nguyên tắc này yêu cầu trình biên dịch xử lý mã theo thứ tự từ trên xuống dưới và từ trái qua phải, dẫn đến tình trạng chờ đợi giữa các bước thực thi.

Lập trình bất đồng bộ (Asynchronous) cho phép thực thi các tác vụ độc lập, không cần chạy tuần tự, giúp các tác vụ có thể hoạt động song song Điều này cải thiện hiệu suất hoạt động của ứng dụng bằng cách giảm thời gian chờ đợi giữa các xử lý.

Lập trình bất đồng bộ là phương pháp hiệu quả để xử lý các tác vụ có thể gây tắc nghẽn, chẳng hạn như truy cập website, nơi mà thời gian phản hồi có thể chậm Ngoài ra, các hoạt động khác như làm việc với file hay hình ảnh cũng nên được triển khai theo cách bất đồng bộ để tối ưu hóa hiệu suất.

Cookies là những tệp tin tạm thời được tự động tạo ra trên máy tính khi người dùng truy cập vào một trang web Chúng lưu trữ thông tin cá nhân như tài khoản đăng nhập, giúp người dùng dễ dàng truy cập lại trang web trong lần sau mà không cần nhập lại thông tin.

12 quản lý khách sạn GV: ThS Từ Thanh Trí

Cài đặt và thử nghiệm ứng dụng

Quản lý các phòng trong khách sạn

Quản trị viên có thể thêm, sửa, xóa và điều chỉnh giá của từng phòng mình muốn.

Phân quyền

Hệ thống sẽ có những quyền hạn cơ bản để thuận tiện trong việc quản lý.

Quyền bao gồm: Admin (Quản lý), Client(Khách hàng), Guest (người dùng, khách không nằm trong hệ thống).

Xác thực đăng nhập và quyền hạn

Xác thực thành viên đăng nhập vào hệ thống mà không ảnh hướng đến cơ sở dữ liệu.

Đặt phòng, thanh toán

Cho pháp khách hàng (đã đăng nhập vào hệ thống) tiến hành đặt phòng và thanh toán theo hình thức trực tuyến.

Khách hàng có thể tùy chọn tìm kiếm phòng theo ngày, theo loại.

Xác định & Phân tích các thực thể hệ thống

 Phân tích chi tiết từng thực thể

13 quản lý khách sạn GV: ThS Từ Thanh Trí

 Đặt tả cơ sở dữ liệu

Thuộc tính Kiêu dữ liệu Khóa Ghi chú

_Id ObjectId Primary key Not null

14 quản lý khách sạn GV: ThS Từ Thanh Trí

Thuộc tính Kiêu dữ liệu Khóa Ghi chú

_Id ObjectId Primary key Not null

Thuộc tính Kiêu dữ liệu Khóa Ghi chú

_Id ObjectId Primary key Not null

UserId String Not null fromDate String Not null toDate String Not null transactionId String Not null totalDate Number Not null amount Number Not null status string Not null

3.3.3 Phân tích hệ thống với UML

Biểu đồ Usecase

15 quản lý khách sạn GV: ThS Từ Thanh Trí

Hình 3.1 Lược đồ Use case tổng quát b Đặt tả Usecase

 Chức năng cho phép người dùng (Admin, Client) đăng nhập vào hệ thống

16 quản lý khách sạn GV: ThS Từ Thanh Trí

 Người dùng chọn đăng nhập trên thanh menu

 Hệ thống hiển thị giao diện đăng nhập.

 Người dùng nhập tài khoản bao gồm Tên đăng nhập và mật khẩu

 Hệ thống kiểm tra và xác nhận thông tin đăng nhập

 Hiển thị giao diện chính của trang web

 Người dùng hủy yêu cầu đăng nhập

 Hệ thống trả về trang chủ

 Người dùng nhập thông tin sai

 Hệ thống hiển thị thông báo lỗi

 Chức năng cho phép client (guest, không thuộc người dùng trong hệ thống) đăng ký trở thành người dùng trong hệ thống

 Người dùng chọn đăng nhập trên thanh menu

 Người dùng chọn đăng ký từ giao diện đăng nhập

 Hệ thống hiển thị giao diện đăng ký.

 Người dùng nhập thông tin đăng ký bao gồm Tên đăng nhập, mật khẩu và mật khẩu xác nhận

 Hệ thống kiểm tra và xác nhận thông tin đăng ký

 Hiển thị giao diện chính của trang web

17 quản lý khách sạn GV: ThS Từ Thanh Trí

 Người dùng hủy yêu cầu đăng ký

 Hệ thống trả về trang chủ

 Người dùng nhập thông tin sai như: nhập tài khoản đã tồn tại, nhập mật khẩu không hợp lệ, nhập mật khẩu xác nhận không đúng.

 Hệ thống hiển thị thông báo lỗi

 Chức năng cho phép người dùng (Admin) quản lý bài phòng của khách sạn: Thêm, xóa, tìm kiếm.

 Phải đăng nhập bằng tài khoản Admin

 Dòng sự kiện chính của thêm phòng:

 Sự kiến bắt đầu khi người dùng chọn thêm phòng

 Hệ thống hiển thị giao diện tạo phòngt.

 Người dùng nhập thông tin phòng gồm tên, loại, giá mỗi ngày, số người tối đa, ảnh

 Hệ thống kiểm tra tính hợp lệ thông tin

 Hệ thống lưu phòng mới.

18 quản lý khách sạn GV: ThS Từ Thanh Trí

 Dòng sự kiện chính của tìm phòng:

 Người dùng nhập thông tin cần tìm kiếm.

 Hệ thống hiển thị các bài viết/di tích có liên quan.

 Dòng sự kiện chính của xóa phòng:

 Người dùng chọn phòng muốn xóa

 Hệ thống hiển thị thông báo xác nhận xóa cho người dùng.

 Người dùng xác nhận thông tin,

 Dòng sự kiện phụ của xóa phòng

 Người dùng xác nhận hủy, không xóa phòng khi hệ thống gửi thông báo xác nhận

 Hệ thống tắt thông báo và không xác bài viết

 Usecase Quản Lý Thanh Toán

 Chức năng cho Admin xem các giao dịch trong lịch sử.

 Sự kiến bắt đầu khi người dùng chọn xem giao dịch từ giao diện quản lý admin

 Hệ thống hiển thị danh sách giao dịch.

19 quản lý khách sạn GV: ThS Từ Thanh Trí

 Người dùng xác nhận hủy kiểm duyệt

 Chức năng cho khách hàng và khác không thuộc hệ thống tìm kiếm các phòng.

 Sự kiến bắt đầu khi người dùng nhập tên phòng hoặc chọn ngày loại ở trên thanh lọc.

 Hệ thống hiển thị các phòng có liên quan.

 Chức năng cho phép khách hàng đặt phòng trực tuyến

 Phải đăng nhập từ trước

 Sự kiến bắt đầu khi người dùng chọn phòng muốn đặt

 Hệ thống hiển thị thông tin đặt phòng từ lựa chọn người dùng

 Người dùng nhấp thanh toán

 Hệ thống yêu cầu nhập số thẻ VISA

 Hệ thống thanh toán và lưu giao dịch

 Hệ thống thông báo đặt phòng thành công

20 quản lý khách sạn GV: ThS Từ Thanh Trí

 Chức năng cho phép khách hàng hủy đặt phòng trực tuyến

 Phải đăng nhập từ trước và phòng được đặt chưa sử dụng

 Sự kiến bắt đầu khi người dùng chọn phòng muốn hủy từ lịch sử đặt phòng

 Khách hàng chọn giao dịch muốn hủy

 Hệ thống hủy phòng đó và hoàn tiền

21 quản lý khách sạn GV: ThS Từ Thanh Trí

Mô hình quan hệ thực thể (ERD)

Hình 3.2 Mô hình quan hệ thực thể

22 quản lý khách sạn GV: ThS Từ Thanh Trí

Sơ đồ lớp

23 quản lý khách sạn GV: ThS Từ Thanh Trí

Sơ đồ tuần tự

a Biểu đồ tuần tự cho chức năng đăng nhập

Hình 3.4 Lượt đồ tuần tự cho chức năng đăng nhập b Biểu đồ tuần tự cho chức năng đăng ký

Hình 3.5 Lượt đồ tuần tự cho chức năng đăng ký

24 quản lý khách sạn GV: ThS Từ Thanh Trí c Biểu đồ tuần tự cho chức năng quản lý phòng

Hình 3.6 Lược đồ tuần tự cho chức năng quản lý phòng

25 quản lý khách sạn GV: ThS Từ Thanh Trí d Biểu đồ tuần tự cho chức năng tìm kiếm phòng

Hình 3.7 Lược đồ tuần tự cho chức năng tìm phòng e Biểu đồ tuần tự cho chức năng đặt phòng

Hình 3.8 Lược đồ tuần tự cho chức năngđặt phòng

26 quản lý khách sạn GV: ThS Từ Thanh Trí f Biểu đồ tuần tự cho chức năng hủy đặt phòng

Hình 3.9 Lược đồ tuần tự cho chức năng hủy đặt phòng

3.3.4 Phân tích thiết kế giao diện với chức năng

Giao diện đăng nhập

Hình 3.10 Giao diện đăng nhập

27 quản lý khách sạn GV: ThS Từ Thanh Trí a Mục đích

Giao diện cho người dùng (Admin, Client) đăng nhập vào hệ thống. b Phạm vi

Người dùng có thể đăng nhập, hủy hoặc chọn “Tham gia với chúng tôi” tức đăng ký nếu chưa có tài khoản c Mô tả chức năng

Nếu người dùng nhập sai tài khoản hoặc mật khẩu, sẽ có thông báo bên dưới phải màn hình hiển thị cho người dùng

Nếu người dùng nhập đúng tài khoản và mật khẩu, hệ thống sẽ hiện thỉ giao diện chính

28 quản lý khách sạn GV: ThS Từ Thanh Trí

Giao diện đăng ký

Hình 3.11 Giao diện đăng ký a Mục đích

Giao diện cho client/khách (người không thuộc người dụng trong hệ thống) đăng ký tham gia vào hệ thống. b Phạm vi

Client/Khách có thể hủy quay về trang chủ hoặc chọn “Đã có tài khoản” nếu đã là người dùng trong hệ thống c Mô tả chức năng

Nếu Client/Khách nhập sai thông tin thì hệ thống sẽ không cho phép Client/khách đăng ký.

Nếu khách hàng để trống thông tin thì hệ thống sẽ báo lỗi từ cái ô nhập

Nếu Client/Khách nhập đầy đủ và hợp lệ các thông tin, hệ thống sẽ cho đăng ký thành công và trở về trang chủ.

29 quản lý khách sạn GV: ThS Từ Thanh Trí

Giao diện trang chủ

Hình 3.12 Giao diện trang chủ

Hình 3.13 Giao diện chính a Mục đích

Giao diện trang chủ hiển thị các phòng cho client b Phạm vi

30 quản lý khách sạn GV: ThS Từ Thanh Trí

Từ giao diện chính (hình 3.13), client có thể chọn đặt phòng, tìm kiếm phòng và kiểm tra thông tin hồ sơ. c Mô tả chức năng

Hệ thống hiển thị các phòng và cho phép người dùng tìm kiếm hoặc đặt phòng Để truy cập giao diện trang chủ, người dùng cần phải đăng nhập hoặc thực hiện đăng ký tài khoản.

31 quản lý khách sạn GV: ThS Từ Thanh Trí

Giao diện thanh toán

Hình 3.14 Giao diện thanh toán

Hình 3.Cửa số thông tin thẻ thanh toán

32 quản lý khách sạn GV: ThS Từ Thanh Trí a Mục đích

Hiển thị thông tin đặt phòng do khách hàng chọn Cho phép khách hàng thanh toán bằng thẻ. b Phạm vi

Người dùng có thể thanh toán bằng thẻ hoặc hủy đặt phòng quay về giao diện chính

Người dùng cũng có thể vào hồ sơ từ thanh navbar. c Mô tả chức năng

Hiển thị thông tin đặt phòng và thanh toán. d Ràng buộc Để thanh toán thì người dùng phải chọn phòng từ trước.

33 quản lý khách sạn GV: ThS Từ Thanh Trí

Ngày đăng: 14/03/2022, 14:21

HÌNH ẢNH LIÊN QUAN

Hình 2.4 NodeJS - Thiết kế và xây dựng phần mềm quản lý khách sạn
Hình 2.4 NodeJS (Trang 15)
Hình 2.5. Github - Thiết kế và xây dựng phần mềm quản lý khách sạn
Hình 2.5. Github (Trang 18)
Hình 2.8. Cấu trúc JWT (JSON web token) - Thiết kế và xây dựng phần mềm quản lý khách sạn
Hình 2.8. Cấu trúc JWT (JSON web token) (Trang 19)
Hình 3.1 Lược đồ Use case tổng quát - Thiết kế và xây dựng phần mềm quản lý khách sạn
Hình 3.1 Lược đồ Use case tổng quát (Trang 25)
Hình 3.2 Mô hình quan hệ thực thể - Thiết kế và xây dựng phần mềm quản lý khách sạn
Hình 3.2 Mô hình quan hệ thực thể (Trang 31)
Hình 3.3 Sơ đồ lớp - Thiết kế và xây dựng phần mềm quản lý khách sạn
Hình 3.3 Sơ đồ lớp (Trang 32)
Hình 3.4 Lượt đồ tuần tự cho chức năng đăng nhập - Thiết kế và xây dựng phần mềm quản lý khách sạn
Hình 3.4 Lượt đồ tuần tự cho chức năng đăng nhập (Trang 33)
Hình 3.5. Lượt đồ tuần tự cho chức năng đăng ký - Thiết kế và xây dựng phần mềm quản lý khách sạn
Hình 3.5. Lượt đồ tuần tự cho chức năng đăng ký (Trang 33)
Hình 3.6 Lược đồ tuần tự cho chức năng quản lý phòng - Thiết kế và xây dựng phần mềm quản lý khách sạn
Hình 3.6 Lược đồ tuần tự cho chức năng quản lý phòng (Trang 34)
Hình 3.7 Lược đồ tuần tự cho chức năng tìm phòng - Thiết kế và xây dựng phần mềm quản lý khách sạn
Hình 3.7 Lược đồ tuần tự cho chức năng tìm phòng (Trang 35)
Hình 3.9 Lược đồ tuần tự cho chức năng hủy đặt phòng - Thiết kế và xây dựng phần mềm quản lý khách sạn
Hình 3.9 Lược đồ tuần tự cho chức năng hủy đặt phòng (Trang 36)
Hình 3.11 Giao diện đăng ký - Thiết kế và xây dựng phần mềm quản lý khách sạn
Hình 3.11 Giao diện đăng ký (Trang 38)
Hình 3.12 Giao diện trang chủ - Thiết kế và xây dựng phần mềm quản lý khách sạn
Hình 3.12 Giao diện trang chủ (Trang 39)
Hình 3.13 Giao diện chính - Thiết kế và xây dựng phần mềm quản lý khách sạn
Hình 3.13 Giao diện chính (Trang 39)
Hình 3.Cửa số thông tin thẻ thanh toán - Thiết kế và xây dựng phần mềm quản lý khách sạn
Hình 3. Cửa số thông tin thẻ thanh toán (Trang 41)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w