1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo phân tích và thiết kế website đặt phòng khách sạn laravel php theo chuẩn công nghệ GTVT

81 23 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 đề Báo Cáo Phân Tích Và Thiết Kế Website Đặt Phòng Khách Sạn Laravel PHP Theo Chuẩn Công Nghệ GTVT
Định dạng
Số trang 81
Dung lượng 4,39 MB
File đính kèm bao-cao-dat-phong-khach-san.zip (4 MB)

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

DANH SÁCH THUẬT NGỮ VIẾT TẮT STT Từ viết tắt Ý nghĩa 1 API Viết tắt của Application Programming Interface Giao diện lập trình ứng dụng 2 BTS Viết tắt của Base Transceiver Station Trạm thu phát sóng di.

Trang 2

DANH SÁCH THUẬT NGỮ VIẾT TẮT

Trang 3

DANH SÁCH BIỂU ĐỒ

Hình 2 1 Sơ đồ phân rã chức năng 11

Hình 2 2Sơ đồ tổng quan hệ thống 12

Hình 2 3 Biểu đồ hoạt động đăng ký 13

Hình 2 4 Biểu đồ hoạt động đăng nhập 13

Hình 2 5 Biểu đồ hoạt động tìm kiếm địa điểm 14

Hình 2 6 Biểu đồ hoạt động xem địa điểm 14

Hình 2 7 Biểu đồ hoạt động xem dịch vụ du lịch 15

Hình 2 8 Biểu đồ hoạt động thêm địa điểm du lịch 15

Hình 2 9 Biểu đồ hoạt động thêm dịch vụ du lịch 16

Hình 2 10 Biểu đồ hoạt động thay đổi thông tin tài khoản cá nhân 16

Hình 2 11 Biểu đồ use case tổng quát 18

Hình 2 12 Biểu đồ use case quản lý người dùng 19

Hình 2 13 Biểu đồ use case quản lý địa điểm 20

Hình 2 14 Biểu đồ use case quản lý loại địa điểm 21

Hình 2 15 Biểu đồ use case quản lý dịch vụ 22

Hình 2 16 Biểu đồ use case quản lý loại dịch vụ 23

Hình 2 17 Biểu đồ use case quản lý nhận xét, hình ảnh 24

Hình 2 18 Biểu đồ use case quản lý tin tức 25

Hình 2 19 Biểu đồ use case quản lý loại tin tức 26

Hình 2 20Biểu đồ use case quản lý dịch vụ của chủ dịch vụ 27

Hình 2 21 Biểu đồ use case quản lý thông tin cá nhân của người dùng 28

Hình 2 22 Biểu đồ use case quản lý địa điểm của người dùng 29

Hình 2 23 Biểu đồ use case quản lý nhận xét của người dùng 30

Hình 2 24 Biểu đồ use case quản lý địa phương của quản trị 31

Hình 2 25 Biểu đồ lớp tổng quát 32

Hình 2 26 Biểu đồ tuần tự cho chức năng đăng nhập 45

Hình 2 27 Biểu đồ tuần tự cho chức năng đăng ký 46

Hình 2 28 Biểu đồ tuần tự cho chức năng thêm địa điểm của quản trị 46

Hình 2 29 Biểu đồ tuần tự cho chức năng sửa địa điểm của quản trị 47

Hình 2 30 Biểu đồ tuần tự cho chức năng thêm địa điểm của người dùng 47

Hình 2 31 Biểu đồ tuần tự cho chức năng thêm người dùng 48

Trang 4

Hình 2 32 Biểu đồ tuần tự cho chức năng sửa thông tin cá nhân 48

Hình 2 33 Biểu đồ tuần tự cho chức năng thêm dịch vụ 49

Hình 2 34 Biểu đồ tuần tự cho chức năng sửa dịch vụ 49

Hình 2 35 Biểu đồ tuần tự cho chức năng thêm tin tức 50

Hình 2 36 Biểu đồ tuần tự cho chức năng sửa tin tức 50

Hình 2 37 Biểu đồ tuần tự cho chức năng tìm kiếm 51

Hình 2 38 Biểu đồ tuần tự cho chức năng thêm loại dịch vụ 51

Hình 2 39 Biểu đồ tuần tự cho chức năng sửa loại dịch vụ 52

Trang 5

DANH SÁCH HÌNH ẢNH

Hình 3 1 Mô hình quan hệ 58 Hình 3 2 Giao diện menu chính 68 Hình 3 3 Giao diện đăng nhập hệ thống 68

Trang 6

MỤC LỤC

DANH SÁCH THUẬT NGỮ VIẾT TẮT 2

DANH SÁCH BIỂU ĐỒ 3

DANH SÁCH HÌNH ẢNH 5

MỤC LỤC 6

LỜI NÓI ĐẦU 1

Chương 1 3

TỔNG QUAN VỀ ĐỀ TÀI 3

1.1 Giới thiệu về hệ thống 3

1.2 Cơ sở lý thuyết về cơ sở dữ liệu 3

1.3 Ngôn ngữ lập trình 5

1.3.1 Ngôn ngữ HTML 5

1.3.2 Ngôn ngữ CSS 7

1.3.3 Ngôn ngữ PHP 8

1.4 Mô hình MVC 10

1.5 Laravel framework 10

1.6 Kết chương 2 12

Chương 2 14

PHÂN TÍCH HỆ THỐNG 14

2.1 Khảo sát hệ thống 14

2.1.1 Mục đích 14

2.1.2 Mô tả hệ thống 14

2.1.3 Nhóm chức năng chính 15

2.2 Phân tích hệ thống 17

2.2.1 Mô hình hóa chức năng nghiệp vụ 17

2.2.2 Xây dựng biểu đồ Use Case 23

Trang 7

2.2.3 Xây dựng biểu đồ lớp 37

2.2.4 Xây dựng biểu đồ tuần tự 50

2.3 Kết chương 58

Chương 3 58

THIẾT KẾ HỆ THỐNG 58

3.1 Thiết kế cơ sở dữ liệu 58

3.1.1 Mô hình quan hệ 58

3.1.2 Danh sách các bảng trong mô hình quan hệ 58

3.2 Thiết kế giao diện tổng quan 67

3.1.1 Giao diện hệ thống trên web 67

b Giao diện đăng nhập quản trị 68

3.3 Kết chương 70

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 71

1 Tổng kết 71

2 Hướng phát triển 71

TÀI LIỆU THAM KHẢO 72

Trang 8

LỜI NÓI ĐẦU

Hiện nay, với hơn 60% người dùng Internet nghiên cứu trực tuyến trước khi họđặt chỗ cho kế hoạch du lịch của mình, thì việc sở hữu một trang web là điều rất cầnthiết cho các đơn vị kinh doanh lưu trú Số lượng du khách đến và đi thay đổi liên tục,

họ còn sử dụng đa dạng dịch vụ đi kèm, nếu chỉ dùng phương pháp sổ sách truyềnthống thì không thể quản lý phòng và các thông tin khách hàng hiệu quả được Do

vậy, xây dựng website quản lý đặt phòng khách sạn là điều cần thiết để kinh doanh

và phát triển bền vững Qua yêu cầu thực tế đó nhóm đã tìm hiểu cũng như đánh giá điđến giải pháp xây dựng Hệ thống hỗ trợ thông tin khách sạn Ứng dụng hoàn thành sẽgiới thiệu cho du khách những sự lựa chọn địa điểm khách sạn hấp dẫn nhất với giá cảphải chăng kèm theo đó là một số dịch vụ đi kèm khách sạn như: món ăn nổi tiếng, các

lễ hội, những hình ảnh đặc trưng nhất ; cung cấp thêm các thông tin về thời tiết khuvực, nơi nghỉ dưỡng, ăn uống Website cung cấp các chức năng về chia sẻ, bình luận

và bài giới thiệu về địa điểm khách sạn để làm tài liệu tham khảo cho các du kháchkhác Ngoài ra nhiều loại hình khách sạn mới và các chức năng hữu ích cho ngườidùng sẽ được cập nhật, bổ sung trong quá trình phát triển

Nội dung của đồ án bao gồm:

Chương 1: Tổng quan về đề tài: Giới thiệu sơ lược về mục tiêu đề tài và các

cơ sở lý thuyết liên quan

Chương 2: Phân tích hệ thống: Chương này đi sâu vào tiếp cận hệ thống được

xây dựng trong đề tài từ các bước khảo sát, phân tích hệ thống

Chương 3: Thiết kế hệ thống: Thiết kế cơ sở dữ liệu và giao diện hệ thống

trong đề tài

Kết luận và hướng phát triển: Đưa ra kết quả và đánh giá hệ thống, hướng

phát triển trong tương lai của hệ thống

Trên thực tế không có sự thành công nào mà không gắn liền với những sự hỗtrợ, giúp đỡ dù ít hay nhiều, dù trực tiếp hay gián tiếp của người khác

Với lòng biết ơn sâu sắc nhất, nhóm em xin gửi lời cảm ơn chân thành tới toànthể các thầy cô giáo trong khoa Công nghệ thông tin, những người đã dạy dỗ và truyềnđạt vốn kiến thức vô cùng quý báu của mình cho chúng em trong suốt quãng thời gian

Trang 9

học tại đây Những tình cảm và kiến thức mà thầy cô đã gửi trao cho chúng em sẽ làhành trang cho chúng em để bước đi trên những đoạn đường tương lai.

Một lần nữa em xin được chân thành cảm ơn!

Trang 10

Chương 1 TỔNG QUAN VỀ ĐỀ TÀI 1.1 Giới thiệu về hệ thống

Trong thời đại công nghệ hóa phát triển, để thuận lợi cho việc kinh doanh thì hầuhết các ngành kinh doanh về dịch vụ đều trang bị cho mình những công cụ hỗ trợ tuyệtvời Với khách sạn cũng vậy, việc xây dựng website quản lý đặt phòng khách sạn đemlại rất nhiều tiện ích cho du khách

- Giúp tiết kiệm thời gian trong việc tìm kiếm khách sạn Chắc hẳn bạn sẽ chẳng hềmuốn khách hàng của mình phải chờ đợi nhân viên lễ tân đang lật giở từng trang sổ đểtìm kiếm thông tin Booking, thông tin buồng phòng, Thay vào đó, chỉ cần vài thaotác đơn giản trên website là mọi chuyện đều được giải quyết Trên thực tế có nhữngwebsite (travelloka.com.vn, \đã giải quyết vấn đề về tra cứu thông tin du lịch kháchsạn nhưng vẫn chưa thực sự đầy đủ Đi kèm với đó còn tồn tại các mặt hạn chế:

- Nguồn thông tin chưa xác thực, còn mang tính quảng cáo nhiều khiến ngườidùng bị loãng thông tin

- Thiếu một vài chức năng mà theo phần lớn người dùng thì những điều này làcần thiết như xác định địa điểm hiện tại, xem thời tiết tại vị trí du lịch

Từ yêu cầu thực tế đó và cũng như phân tích từ những sản phẩm đi trước, em đãtìm hiểu cũng như đánh giá để đi đến giải pháp xây dựng Hệ thống website đặt phòngkhách sạn để khắc phục những hạn chế còn tồn động trên

Trang web mà đề tài hướng đến sẽ cung cấp đầy đủ thông tin cho những aimuốn tìm kiếm khách sạn Người dùng có thể đặt những câu hỏi về điểm đến, kháchsạn, nhà hàng, thời tiết hay bất cứ câu hỏi gì khác, hệ thống sẽ cung cấp cho bạn đầy

đủ thông tin hoặc có rất nhiều người từ có kinh nghiệm hoặc hiểu biết sẽ trả lời chobạn Những chuyến đi và kinh nghiệm thực tế được người dùng chia sẻ cho nhữngngười khác, từ đó bạn có thể dễ dàng tìm kiếm, đặt phòng phụ hợp với giá cả và dịch

vụ mong muốn

1.2 Cơ sở lý thuyết về cơ sở dữ liệu

Hệ thống sử dụng hệ cơ sở dữ liệu MySQL

Trang 11

MySQL là một hệ thống quản lý cơ sở dữ liệu quan hệ nhanh và dễ dàng.MySQL đang được sử dụng cho nhiều công việc kinh doanh từ lớn tới nhỏ, nó đượcphát triển, được công bố, được hỗ trợ bởi MySQL AB, là một công ty của Thụy Điển.

Hệ cơ sở dữ liệu này đã trở thành khá phổ biến vì nhiều lý do:

 MySQL là mã nguồn mở

 MySQL là một chương trình rất mạnh mẽ

 MySQL sử dụng một Form chuẩn của ngôn ngữ dữ liệu nổi tiếng là SQL

 MySQL làm việc trên nhiều Hệ điều hành và với nhiều ngôn ngữ như PHP,PERL, C, C++, Java, …

 MySQL làm việc nhanh và khỏe ngay cả với các tập dữ liệu lớn

 MySQL rất thân thiện với PHP, một ngôn ngữ rất đáng giá để tìm hiểu để pháttriển Web

 MySQL hỗ trợ các cơ sở dữ liệu lớn, lên tới 50 triệu hàng hoặc nhiều hơn nữatrong một bảng Kích cỡ file mặc định được giới hạn cho một bảng là 4 GB,nhưng chúng ta có thể tăng kích cỡ này (nếu hệ điều hành có thể xử lý nó) để đạttới giới hạn lý thuyết là 8 TB

 MySQL là có thể điều chỉnh Giấy phép GPL mã nguồn mở cho phép lập trìnhviên sửa đổi phần mềm MySQL để phù hợp với môi trường cụ thể của họ

MySQL sử dụng nhiều kiểu dữ liệu, được chia thành 3 loại: kiểu số, kiểu date vàtime, và kiểu chuỗi

Kiểu dữ liệu số trong MySQL

MySQL sử dụng tất cả các kiểu dữ liệu số theo chuẩn ANSI SQL Các kiểu dữliệu số phổ biến gồm:

INT: Một số nguyên với kích cỡ thông thường, có thể là signed hoặc unsigned.

Nếu có dấu, thì dãy giá trị có thể là từ -2147483648 tới 2147483647, nếu khôngdấu thì dãy giá trị là từ 0 tới 4294967295 Chúng ta có thể xác định một độ rộnglên tới 11 chữ số

Trang 12

TINYINT: Một số nguyên với kích cỡ rất nhỏ, có thể là signed hoặc unsigned.

Nếu có dấu, thì dãy giá trị có thể là từ -128 tới 127, nếu không dấu thì dãy giá trị

là từ 0 tới 255 Chúng ta có thể xác định một độ rộng lên tới 4 chữ số

SMALLINT: Một số nguyên với kích cỡ nhỏ, có thể là signed hoặc unsigned.

Nếu có dấu, thì dãy giá trị có thể là từ -32768 tới 32767, nếu không dấu thì dãygiá trị là từ 0 tới 65535 Chúng ta có thể xác định một độ rộng lên tới 5 chữ số

MEDIUMINT: Một số nguyên với kích cỡ trung bình, có thể là signed hoặc

unsigned Nếu có dấu, thì dãy giá trị có thể là từ -8388608 tới 8388607, nếukhông dấu thì dãy giá trị là từ 0 tới 16777215 Chúng ta có thể xác định một độrộng lên tới 9 chữ số

BIGINT: Một số nguyên với kích cỡ lớn, có thể là signed hoặc unsigned Nếu

có dấu,thì dãy giá trị có thể là từ -9223372036854775808 tới

9223372036854775807, nếu không dấu thì dãy giá trị là từ 0 tới

18446744073709551615 Chúng ta có thể xác định một độ rộng lên tới 20 chữsố

FLOAT(M,D): Một số thực dấu chấm động không dấu Chúng ta có thể định

nghĩa độ dài hiển thị (M) và số vị trí sau dấy phảy (D) Điều này là không bắtbuộc và sẽ có mặc định là 10,2: với 2 là số vị trí sau dấu phảy và 10 là số chữ số(bao gồm các phần thập phân) Phần thập phân có thể lên tới 24 vị trí sau dấuphảy đối với một số FLOAT

DOUBLE(M,D): Một số thực dấu chấm động không dấu Chúng ta có thể định

nghĩa độ dài hiển thị (M) và số vị trí sau dấy phảy (D) Điều này là không bắtbuộc và sẽ có mặc định là 16,4: với 4 là số vị trí sau dấu phảy và 16 là số chữ số(bao gồm các phần thập phân) Phần thập phân có thể lên tới 53 vị trí sau dấuphảy đối với một số DOUBLE REAL là đồng nghĩa với DOUBLE

DECIMAL(M,D): Một kiểu khác của dấu chấm động không dấu Mỗi chữ số

thập phân chiếm 1 byte Việc định nghĩa độ dài hiển thị (M) và số vị trí sau dấyphảy (D) là bắt buộc NUMERIC là một từ đồng nghĩa cho DECIMAL

1.3 Ngôn ngữ lập trình

Trang 13

1.3.1 Ngôn ngữ HTML

Ngôn ngữ HTML (HyperText Markup Language – ngôn ngữ siêu văn bản) là

một trong các loại ngôn ngữ được sử dụng trong lập trình web Khi truy cập một trangweb cụ thể là click vào các đường link, chúng ta sẽ được dẫn tới nhiều trang các nhau,

và các trang này được gọi là một tài liệu HTML (tập tin HTML)

Một trang HTML như vậy được cấu thành bởi nhiều phần tử HTML nhỏ và đượcquy định bằng các thẻ tag Chúng ta có thể phân biệt một trang web được viếtbằng ngôn ngữ HTML hay PHP thông qua đường link của nó Ở cuối các trang HTMLthường hay có đuôi là HTML hoặc HTM

HTML là ngôn ngữ lập trình web được đánh giá là đơn giản Mọi trang web, mọitrình duyệt web đều có thể hiển thị tốt ngôn ngữ HTML Hiện nay, phiên bản mới nhấtcủa HTML là HTML 5 với nhiều tính năng tốt và chất lượng hơn so với các phiên bản

cũ của HTML

Vai trò của HTML trong lập trình web:

HTML là một loại ngôn ngữ đánh dấu siêu văn bản nên các chức năng của nócũng xoay quanh yếu tố này Cụ thể, HTML giúp cấu thành các cấu trúc cơ bản trênmột website (chia khung sườn, bố cục các thành phần trang web) và góp phần hỗ trợkhai báo các tập tin kĩ thuật số như video, nhạc, hình ảnh

Ưu điểm nổi trội nhất và cũng là thế mạnh của HTML là khả năng xây dựng cấutrúc và khiến trang web đi vào quy củ một hệ thống hoàn chỉnh HTML chứa nhữngyếu tố cần thiết mà dù website có thuộc thể loại nào, giao tiếp với ngôn ngữ lập trình

nào để xử lý dữ liệu thì nó vẫn phải cần đến ngôn ngữ HTML để hiển thị nội dung cho

người truy cập

Đối với các lập trình viên hay nhà phát triển web, họ đều phải học HTML nhưmột loại ngôn ngữ cơ bản trước khi bắt tay vào thiết kế trang web nào

Các thẻ trong HTML:

Trang 14

Các trang HTML được quy định bằng các thẻ tag Những thẻ này được chứa

trong các dấu ngoặc đơn dạng: <tên thẻ> Trừ một vài thẻ đặc biệt, hầu hết các thẻ cơ bản đều có các thẻ đóng tương ứng với nó Ví dụ, thẻ <html> có thẻ đóng tương ứng

là </html>, thẻ <body> có thẻ đóng tương ứng là </body> … Bảng 1.1 là các mẫu thẻ

tag thường gặp trong HTML

Bảng 1.1 Các mẫu thẻ thường gặp trong HTML

<html> Thẻ này chứa đựng các tài liệu HTML đầy đủ Ở đầu trang

sẽ xuất hiện các thẻ <head>, </head> và thân tài liệu là các thẻ <body>, </body>

<head> Thẻ này đại diện cho đầu trang tài liệu mà có thể giữ các

thẻ HTML như <title>, <link> …

<title> Thẻ <title> được sử dụng trong thẻ <head> chỉ tiêu đề tài

Trang 15

<p> Thẻ tag này đại diện cho định dạng các đoạn văn trong

CSS được sử dụng cùng với HTML và JavaScript trong hầu hết các trang web đểtạo giao diện người dùng cho các ứng dụng web và giao diện người dùng cho nhiềuứng dụng di động

Ba lợi ích chính của CSS

 Giải quyết một vấn đề lớn:

Trước khi có CSS, các thẻ như phông chữ, màu sắc, kiểu nền, các sắp xếp phần

tử, đường viền và kích thước phải được lặp lại trên mọi trang web Đây là một quátrình rất dài tốn thời gian và công sức

 Tiết kiệm rất nhiều thời gian:

Định nghĩa kiểu CSS được lưu trong các tệp CSS bên ngoài vì vậy có thể thayđổi toàn bộ trang web bằng cách thay đổi chỉ một tệp

 Cung cấp thêm các thuộc tính:

CSS cung cấp các thuộc tính chi tiết hơn HTML để định nghĩa giao diện củatrang web

1.3.3 Ngôn ngữ PHP

Giới thiệu chung:

Trang 16

PHP khởi đầu như là một dự án mã nguồn mở nhỏ, nhưng theo đà phát triển,ngày càng nhiều người thấy rằng nó càng ngày càng hữu ích PHP được phát triển từmột sản phẩm có tên là PHP/FI PHP/FI do Rasmus Lerdorf tạo ra năm 1994, ban đầuđược xem như là một tập con đơn giản của các mã kịch bản Perl để theo dõi tình hìnhtruy cập đến bản sơ yếu lý lịch của ông trên mạng Ông đã đặt tên cho bộ mã kịch bảnnày là "Personal Home Page Tools" Khi cần đến các chức năng rộng hơn, Rasmus đãviết ra một bộ thực thi bằng C lớn hơn để có thể truy vấn tới Database và giúp chongười sử dụng phát triển các ứng dụng web đơn giản Rasmus đã quyết định công bố

mã nguồn của PHP/FI cho mọi người xem, sử dụng cũng như sửa các lỗi có trong nó,đồng thời cải tiến mã nguồn

PHP viết hồi qui của "PHP: Hypertext Preprocessor"

PHP là ngôn ngữ lập trình kịch bản viết cho máy chủ mà được nhúng trongHTML Nó được sử dụng để quản lý nội dụng động, Database, Session tracking, …PHP được tích hợp với một số Database thông dụng như MySQL, PostgreSQL,Oracle, Sybase, Informix, và Microsoft SQL Server

PHP thực thi rất tuyệt vời, đặc biệt khi được biên dịch như là một ApacheModule trên Unix side MySQL Server, khi được khởi động, thực thi các truy vấnphức tạp với các tập hợp kết quả khổng lồ trong thời gian Record-setting

PHP hỗ trợ một số lượng rộng rãi các giao thức lớn như POP3, IMAP, và LDAP.PHP4 bổ sung sự hỗ trợ cho Java và các cấu trúc đối tượng phân phối (COM vàCORBA)

Trang 17

Sử dụng PHP, có thể hạn chế người dùng truy cập vào một số trang trong Website.

Nó có thể mật mã hóa dữ liệu

Đặc trưng của PHP

Các đặc trưng quan trọng làm PHP trở thành ngôn ngữ khá tiện lợi:

 Đơn giản hóa

MVC là viết tắt của Model – View – Controller Là một kiến trúc phần mềm hay

mô hình thiết kế được sử dụng trong kỹ thuật phần mềm Đây là mô hình phân bốsource code thành 3 phần, mỗi thành phần có một nhiệm vụ riêng biệt và độc lập vớicác thành phần khác

Trang 18

Ưu điểm và nhược điểm của MVC

Ưu điểm

Thể hiện tính chuyên nghiệp trong lập trình, phân tích thiết kế Do được chiathành các thành phần độc lập nên giúp phát triển ứng dụng nhanh, đơn giản, dễ nângcấp, bảo trì…

Cho tới năm 2015, thì Framework laravel hiện đang đứng top 1 thế giới về mức

độ phổ biến và ưu dùng Được cộng đồng hỗ trợ phát triển mạnh mẽ Tháng 8 năm

2014, Laravel Framework được xem như là một dự án PHP phổ biến nhất trên Github

Sau nhiều lần được cộng đồng Laravel thế giới hỗ trợ phát triển thì phiên bảnmới nhất hiện nay là Laravel 5.2 và sắp tới là phiên bản 5.3

Các tính năng cơ bản của Laravel Framework

Bundles: Ở laravel phiên bản 3.x, cung cấp một hệ thống đóng gói các module,

với rất nhiều tính năng đi kèm

Composer: Ở laravel phiên bản 4.x, được sử dụng như một công cụ quản lý với

tính năng như thêm các gói cài đặt, các chức năng PHP phụ trợ cho Laravel cótrong kho Packagist

Eloquent ORM (object relation mapping): ánh xạ các đối tượng và quan hệ cơ

sở dữ liệu, cung cấp các phương thức nội bộ để thực thi đồng thời cũng bổ sung

Trang 19

các tính năng hạn chế về mối quan hệ giữa các đối tượng cơ sở dữ liệu EloquentORM trình bày các bảng trong cơ sở dữ liệu dưới dạng các lớp, cung cấp thêmlựa chọn truy cập cơ sở dữ liệu trực tiếp mới mẻ hơn, chuyên nghiệp hơn.

Application logic: Là một phần của phát triển ứng dụng, được sử dụng bởi bộ

điều khiển controllers

Routes: Định nghĩa mối quan hệ giữa các đường dẫn (url), các liên kết (link)

Khi một liên kết được tạo ra bằng cách sử dụng tên của routes, thì một định danhliên kết thống nhất sẽ được tạo ra bởi laravel

Restful Controller: cung cấp các tùy chọn để tách các logic phía sau các

request HTTP POST, GET

Class auto loading: cung cấp việc tải tự động các class trong PHP, mà không

cần include các class vào Tùy thuộc vào yêu cầu các class cần thiết sẽ được nạpvào, hạn chế các class không cần thiết

View: chứa các mã html, hiển thị dữ liệu được chỉ định bởi controller

 Migrations: cung cấp một hệ thống kiểm soát các phiên bản lược đồ cơ sở dữliệu (database cheme), làm cho web ứng dụng có khả năng tương tác phùhợp những thay đổi logic, các đoạn mã code của ứng dụng và những thay đổi cầnthiết trong việc bố trí cơ sở dữ liệu, triển khai nới lỏng và cập nhật các ứng dụng

Unit Testing: đóng một vai trò quan trọng trong Laravel, Unit testting chứa rất

nhiều các hệ thống unit testing, giúp phát hiện và ngăn chặn lỗi trong khuôn khổnhất định Unit Testing có thể đượcchạy thông qua tiện ích command-line

Automatic pagination: Tính năng tự động phân trang được tích hợp

vào Laravel giúp đơn giản hóa các nhiệm vụ thực hiện phân trang so với cácphương pháp thông thường

Trang 22

Chương 2 PHÂN TÍCH HỆ THỐNG 2.1 Khảo sát hệ thống

2.1.1 Mục đích

Hiện nay các Website về thông tin và đặt phòng khách sạn khá nhiều, nhưng chỉmang tính chất quảng cáo cho các khách sạn Việc tìm được thông tin chính xác vềkhách sạn , địa điểm, cảnh quan và những đánh giá khách quan từ phía người dùng đềugặp khó khăn Hệ thống hỗ trợ đặt phòng khách sạn được xây dựng trên cả nền web vàứng dụng di động để khắc phục những nhược điểm đó, ngoài ra còn cung cấp thêm cáctiện ích khác sẽ nói rõ trong mô tả hệ thống

Người dùng có thể dễ dàng xem thông tin phòng khách sạn, giá cả, loại phòng,ngoài ra còn có thể xem thời tiết tại địa điểm, chỉ đường, thao tác thêm các địa điểm dulịch mới và đăng tải hình ảnh về địa điểm du lịch dễ dàng qua điện thoại di động, đồngthời cảnh báo sự cố tại một địa điểm du lịch nào đó cho những người dùng khác trong

hệ thống

Những nhóm người cung cấp dịch vụ như chủ nhà hàng khách sạn tham gia vào hệthống, giới thiệu về loại hình dịch vụ mà mình cung cấp cho khách du lịch mà ở đây làngười dùng hệ thống tham khảo và lựa chọn

và khai phá nhanh chóng bằng cách đăng tải hình ảnh địa điểm, vị trí địa điểm này

có thể được định vị tự động hoặc do người dùng viết

- Nhóm chủ nhà hàng khách sạn cung cấp các dịch vụ du lịch được phép truy cập hệthống như một khách du lịch, đồng thời nhóm người này có thể thêm thông tin như

Trang 23

giá tiền, các dịch vụ nhà hàng khách sạn mà mình cung cấp cho khách du lịch biếtđến.

- Nhóm quản trị sẽ quản trị các tài khoản người dùng (cấp quyền, sửa, vô hiệu tàikhoản), thông tin khách sạn, dữ liệu Tỉnh thành, quản lý các bài viết của nhómngười dùng còn lại, quản lý tin tức khách sạn, quản lý loại hình dịch vụ

2.1.3 Nhóm chức năng chính

2.1.3.1 Chức năng dành cho “Khách đặt phòng khách sạn”

- Đăng nhập hệ thống với quyền của mình

- Thay đổi thông tin cá nhân và mật khẩu cá nhân

- Xem thông tin địa điểm khách sạn, xem tin tức khách sạn du lịch và dịch vụ

- Bật chỉ đường tới địa điểm khách sạn

- Chia sẻ thông tin địa điểm khách sạn

- Bình luận và đăng tải hình ảnh về địa điểm khách sạn

- Thêm địa điểm khách sạn mới

- Tìm kiếm khách sạn du lịch

2.1.3.2 Chức năng dành cho “Nhóm dịch vụ”

- Có các chức năng như nhóm “Khách du lịch”

- Quản lý thông tin dịch vụ của mình, bao gồm:

+ Tạo mới thông tin về dịch vụ mà mình cung cấp

+ Sửa thông tin dịch vụ mà mình cung cấp

+ Vô hiệu hóa thông tin dịch vụ mà mình cung cấp

2.1.3.3 Chức năng dành cho “Quản trị viên”

- Đăng nhập hệ thống toàn quyền

- Thay đổi thông tin cá nhân và mật khẩu cá nhân

- Quản lý danh sách người dùng (Nhóm dịch vụ, Khách du lịch, Thành viên ban quản trị) gồm các hoạt động:

+ Cấp quyền truy cập hệ thống cho người dùng

+ Cấp lại mật khẩu cho người dùng

+ Vô hiệu hóa tài khoản người dùng

- Quản trị địa điểm khách sạn gồm hoạt động:

+ Tạo mới khách sạn

Trang 24

+ Sửa thông tin khách sạn.

+ Vô hiệu hóa khách sạn

- Quản trị bình luận, hình ảnh về địa điểm khách sạn /dịch vụ/tin tức+ Thêm bình luận, hình ảnh về địa điểm khách sạn /dịch vụ/tin tức+ Sửa bình luận, hình ảnh về địa điểm khách sạn /dịch vụ/tin tức+ Xóa bình luận, hình ảnh về địa điểm khách sạn /dịch vụ/tin tức

- Quản trị thông tin dịch vụ gồm họat động:

+ Thêm thông tin dịch vụ

+ Sửa thông tin dịch vụ

+ Xóa thông tin dịch vụ

- Quản trị danh mục địa phương (xã-huyện-tỉnh), gồm hoạt động:+ Thêm địa phương vào danh mục

+ Sửa địa phương trong danh mục

+ Xóa địa phương khỏi danh mục

- Quản trị tin tức du lịch gồm hoạt động:

+ Đăng tải tin tức

+ Sửa tin tức

+ Xóa tin tức

Trang 25

2.2 Phân tích hệ thống

2.2.1 Mô hình hóa chức năng nghiệp vụ

2.2.1.1 Sơ đồ phân rã chức năng

Hình 2 1 Sơ đồ phân rã chức năng

Trang 26

2.2.1.2 Sơ đồ tổng quan hệ thống

Hình 2 2Sơ đồ tổng quan hệ thống

Trang 27

2.2.1.3 Biểu đồ hoạt động

a Biểu đồ hoạt động quy trình đăng kí tài khoản người dùng

Hình 2 3 Biểu đồ hoạt động đăng ký

b Biểu đồ hoạt động quy trình đăng nhập hệ thống

Hình 2 4 Biểu đồ hoạt động đăng nhập

Trang 28

c Biểu đồ hoạt động quy trình tìm kiếm khách sạn

Hình 2 5 Biểu đồ hoạt động tìm kiếm khách sạn

d Biểu đồ hoạt động quy trình xem thông tin khách sạn

Hình 2 6 Biểu đồ hoạt động xem khách sạn

Trang 29

e Biểu đồ hoạt động quy trình xem các dịch vụ khách sạn

Hình 2 7 Biểu đồ hoạt động xem dịch vụ du lịch

f Biểu đồ hoạt động quy trình thêm địa điểm khách sạn

Hình 2 8 Biểu đồ hoạt động thêm địa điểm khách sạn

g Biểu đồ hoạt động quy trình thêm dịch vụ du lịch

Trang 30

Hình 2 9 Biểu đồ hoạt động thêm dịch vụ du lịch

h Biểu đồ hoạt động quy trình thay đổi thông tin tài khoản cá nhân

Hình 2 10 Biểu đồ hoạt động thay đổi thông tin tài khoản cá nhân

Trang 31

2.2.2 Xây dựng biểu đồ Use Case

- Các Use Case của hệ thống

+ Đăng nhập hệ thống (Toàn bộ người dùng được thực hiện đăng nhập vào hệ thống)

+ Thay đổi hồ sơ cá nhân (Toàn bộ người dùng được thay đổi thông tin cá nhân và mật khẩu của mình)

+ Thích, lưu, bình luận, đăng tải hình ảnh về địa điểm

+ Thêm địa điểm du lịch mới

+ Đưa ra cảnh báo tại địa điểm du lịch

+ Tìm kiếm địa điểm du lịch

+ Quản lý thông tin dịch vụ của mình (Nhóm dịch vụ được quyền quản lý thông tindịch vụ của mình đăng tải)

+ Quản lý bài viết (Quản trị viên có quyền quản lý bài viết về địa điểm du lịch)+ Quản lý địa điểm du lịch (Quản trị viên có quyền quản lý thông tin địa điểm du lịch)

+ Quản lý danh mục địa phương (Quản trị viên có quyền quản lý danh mục địa phương gồm xã-huyện-tỉnh)

+ Quản lý người dùng trong hệ thống (Quản trị viên có quyền quản lý danh sách người dùng hệ thống, phê duyệt tài khoản, cấp lại mật khẩu hoặc vô hiệu hóa tài khoản)

+ Quản lý thông tin dịch vụ du lịch (Quản trị viên có quyền quản lý thông tin dịch vụ)

+ Quản lý loại hình dịch vụ du lịch (Quản trị viên có quyền quản lý loại hình dịch vụ)

Trang 32

+ Quản lý tin tức về tình hình du lịch (Quản trị viên có quyền quản lý tin tức du lịch)

- Biểu đồ Use Case tổng quát

Hình 2 11 Biểu đồ use case tổng quát

Trang 33

- Biểu đồ use case quản lý người dùng của quản trị

Hình 2 12 Biểu đồ use case quản lý người dùng

a Tóm tắt

Quản lý người dùng là Use Case quản trị viên sử dụng để quản lý các thông tin về người dùng

b Tác nhân

Tác nhân: Quản trị viên

c Use case liên quan

Use case đăng nhập

Trang 34

- Biểu đồ use case quản lý khách sạn của quản trị

Hình 2 13 Biểu đồ use case quản lý khách sạn

a Tóm tắt

Quản lý địa điểm là Use Case quản trị viên sử dụng để quản lý các thông tin các địa điểm

b Tác nhân

Tác nhân: Quản trị viên

c Use case liên quan

Use case đăng nhập

Trang 35

- Biểu đồ use case quản lý loại địa điểm khách sạn của quản trị

Hình 2 14 Biểu đồ use case quản lý loại địa điểm

a Tóm tắt

Quản lý loại địa điểm là Use Case quản trị viên sử dụng để quản lý các thông tin về loại địa điểm

b Tác nhân

Tác nhân: Quản trị viên

c Use case liên quan

Use case đăng nhập

d Các luồng sự kiện

Luồng sự kiện chính

1 Chọn danh sách quản lý loại địa điểm 2 Hệ thống hiển thị giao diện danh sách

các loại địa điểm

3 Lựa chọn loại địa điểm và chức năng,

Trang 36

- Biểu đồ use case quản lý dịch vụ của quản trị

Hình 2 15 Biểu đồ use case quản lý dịch vụ

a Tóm tắt

Quản lý dịch vụ là Use Case quản trị viên sử dụng để quản lý các thông tin về dịch vụ

b Tác nhân

Tác nhân: Quản trị viên

c Use case liên quan

Use case đăng nhập

Trang 37

- Biểu đồ use case quản lý loại dịch vụ của quản trị

Hình 2 16 Biểu đồ use case quản lý loại dịch vụ

a Tóm tắt

Quản lý loại dịch vụ là Use Case quản trị viên sử dụng để quản lý các thông tin về loạidịch vụ

b Tác nhân

Tác nhân: Quản trị viên

c Use case liên quan

Use case đăng nhập

Trang 38

- Biểu đồ use case quản lý nhận xét của quản trị

Hình 2 17 Biểu đồ use case quản lý nhận xét, hình ảnh

a Tóm tắt

Quản lý nhận xét, hình ảnh là Use Case quản trị viên sử dụng để quản lý các thông tin

về nhận xét, hình ảnh mà người dùng đăng tải

b Tác nhân

Tác nhân: Quản trị viên

c Use case liên quan

Use case đăng nhập

năng, nhập thông tin cần cập nhật

4 Tiếp nhận thông tin, kiểm tra thông tin có hợp lệ hay không

5.Thông báo cập nhật thành công

Trang 39

- Biểu đồ use case quản lý tin tức của quản trị

Hình 2 18 Biểu đồ use case quản lý tin tức

a Tóm tắt

Quản lý tin tức là Use Case quản trị viên sử dụng để quản lý các thông tin về tin tức

b Tác nhân

Tác nhân: Quản trị viên

c Use case liên quan

Use case đăng nhập

Trang 40

- Biểu đồ use case quản lý loại tin tức của quản trị

Hình 2 19 Biểu đồ use case quản lý loại tin tức

a Tóm tắt

Quản lý loại tin tức là Use Case quản trị viên sử dụng để quản lý các thông tin về loại tin tức

b Tác nhân

Tác nhân: Quản trị viên

c Use case liên quan

Use case đăng nhập

Ngày đăng: 04/08/2022, 23:21

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w