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

(TIỂU LUẬN) dự án tốt NGHIỆP WEBSITE DU LICH WEBSITE NICE TRAVEL

82 11 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 đề Dự án tốt nghiệp Website du lịch Website Nice Travel
Trường học Trường Cao Đẳng Thực Hành FPT Polytechnic
Chuyên ngành Ứng dụng phần mềm
Thể loại Dự án tốt nghiệp
Năm xuất bản 2021
Định dạng
Số trang 82
Dung lượng 1,3 MB

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

Cấu trúc

  • 1. Giới thiệu dự án (6)
    • 1.1. Giới thiệu “Website Nice Travel” (6)
    • 1.2. Nền tảng công nghệ (6)
    • 1.3. Công cụ lập trình & công nghệ sử dụng (6)
    • 1.4. Giới thiệu hệ quản trị cơ sở dữ liệu (6)
    • 1.5. Giới thiệu ngôn ngữ lập trình (Java) (7)
    • 1.6. Các thư viện hỗ trợ (8)
      • 1.6.1. Giới thiệu công nghệ Spring (8)
      • 1.6.2. Giới thiệu Angular (9)
      • 1.6.3. Giới thiệu JQuery (11)
      • 1.6.4. Giới thiệu Bootstrap (11)
      • 1.6.5. Giới thiệu Restful Web Service (12)
      • 1.6.6. Giới thiệu Builder: Maven (12)
  • 2. Khảo sát hiện trạng (13)
    • 2.1. Hiện trạng thực tế (13)
    • 2.2. Mô hình nghiệp vụ của hệ thống (13)
      • 2.2.1. Sơ đồ cơ cấu tổ chức (13)
      • 2.2.2. Chức năng từng bộ phận (13)
      • 2.2.3. Quy trình nghiệp vụ (14)
  • 3. Phân tích & thiết kế hệ thống (16)
    • 3.1. Sơ đồ phân cấp chức năng (16)
    • 3.2. Activity diagram (18)
      • 3.2.1. Đăng nhập (18)
      • 3.2.2. Đăng ký (19)
      • 3.2.3. Quên mật khẩu (20)
      • 3.2.4. Booking (21)
      • 3.2.5. Quản lý nhân viên (22)
      • 3.2.6. Quản lý khách hàng (24)
      • 3.2.7. Quản lý tour du lịch (26)
      • 3.2.8. Thống kê (27)
    • 3.3. Mô hình nguồn dữ liệu DFD (28)
      • 3.3.1. Biểu đồ DFD mức ngữ cảnh (28)
      • 3.3.2. Biểu đồ DFD cấp 0 (29)
      • 3.3.3. Mô hình User case (30)
      • 3.3.4. Xác định thực thể (44)
      • 3.3.5. Mô hình ERD (45)
      • 3.3.6. Lượt đồ quan hệ (47)
      • 3.3.7. Mô hình dữ liệu (53)
  • 4. Thiết kế giao diện (58)
    • 4.1. Yêu cầu hệ thống (58)
    • 4.2. Giao diện (58)
      • 4.2.1. Trang chủ (58)
      • 4.2.2. Đăng nhập (59)
      • 4.2.3. Đăng ký (59)
      • 4.2.4. Quên mật khẩu (60)
      • 4.2.5. Xem chi tiết tour (61)
      • 4.2.6. Đặt tour (61)
      • 4.2.7. Chỉnh sửa thông tin cá nhân (62)
      • 4.2.8. Trang admin (62)
      • 4.2.9. Giao diện quản lý khách hàng (63)
    • 4.3. Giao diện quản lý tour (63)
      • 4.3.1. Giao diện quản lý nhân viên (64)
  • 5. Kiểm thử website & sửa lỗi (64)
    • 5.1. Test plan (64)
    • 5.2. Test case (66)
      • 5.2.1. Đăng nhập (66)
      • 5.2.2. Đăng ký (66)
      • 5.2.3. Quên mật khẩu (67)
      • 5.2.4. Chỉnh sửa tài khoản (68)
      • 5.2.5. Màn hình tour du lịch (69)
      • 5.2.6. Test case quản lý tổng quan (75)
      • 5.2.7. Test case quản lý- Quản lý tour (76)
  • 6. Tổng kết (78)
    • 6.1. Tổng kết (78)
    • 6.2. Hướng phát triển (80)

Nội dung

Chức năng từng bộ phận Quản trị viên : Quản lý trực tiếp trang web, chịu trách nhiệm vận hành và quản lý tài khoản, khách hàng, nhân viên, thống kê doanh số và bảo mật thông tin trên web

Trang 1

Trường Cao Đẳng Thực Hành FPT Polytechnic



DỰ ÁN TỐT NGHIỆP

WEBSITE DU LICH WEBSITE NICE TRAVEL

Giảng viên hướng dẫn:

Lớp:

Học kì: Fall 2021

Nhóm 5

DECEMBER 8, 2021

ỨNG DỤNG PHẦN MỀM

Trang 2

MỤC LỤC

Lời mở đầu 4

1 Giới thiệu dự án 5

1.1 Giới thiệu “Website Nice Travel” 5

1.2 Nền tảng công nghệ 5

1.3 Công cụ lập trình & công nghệ sử dụng 5

1.4 Giới thiệu hệ quản trị cơ sở dữ liệu 5

1.5.Giới thiệu ngôn ngữ lập trình (Java) 6

1.6.Các thư viện hỗ trợ 7

1.6.1 Giới thiệu công nghệ Spring 7

1.6.2 Giới thiệu Angular 8

1.6.3 Giới thiệu JQuery 9

1.6.4 Giới thiệu Bootstrap 9

1.6.5 Giới thiệu Restful Web Service 10

1.6.6 Giới thiệu Builder: Maven 10

2 Khảo sát hiện trạng 11

2.1 Hiện trạng thực tế 11

2.2 Mô hình nghiệp vụ của hệ thống 11

2.2.1 Sơ đồ cơ cấu tổ chức 11

2.2.2 Chức năng từng bộ phận 11

2.2.3 Quy trình nghiệp vụ 12

3 Phân tích & thiết kế hệ thống 13

3.1 Sơ đồ phân cấp chức năng 13

3.2 Activity diagram 14

3.2.1 Đăng nhập 14

1

Trang 3

3.2.2 Đăng ký 15

3.2.3 Quên mật khẩu 16

3.2.4 Booking 17

3.2.5 Quản lý nhân viên 18

3.2.6 Quản lý khách hàng 19

3.2.7 Quản lý tour du lịch 20

3.2.8 Thống kê 21

3.3 Mô hình nguồn dữ liệu DFD 22

3.3.1 Biểu đồ DFD mức ngữ cảnh 22

3.3.2 Biểu đồ DFD cấp 0 23

3.3.3 Mô hình User case 24

3.3.4 Xác định thực thể 36

3.3.5 Mô hình ERD 37

3.3.6 Lượt đồ quan hệ 39

3.3.7 Mô hình dữ liệu 45

Diagram 48

4 Thiết kế giao diện 49

4.1 Yêu cầu hệ thống 49

4.2 Giao diện 49

4.2.1 Trang chủ 49

4.2.2 Đăng nhập 50

4.2.3 Đăng ký 50

4.2.4 Quên mật khẩu 51

4.2.5 Xem chi tiết tour 52

4.2.6 Đặt tour 52

4.2.7 Chỉnh sửa thông tin cá nhân 53

2

Trang 4

4.2.8 Trang admin 53

4.2.9 Giao diện quản lý khách hàng 54

4.3 Giao diện quản lý tour 54

4.3.1 Giao diện quản lý nhân viên 55

5 Kiểm thử website & sửa lỗi 55

5.1 Test plan 55

5.2 Test case 57

5.2.1 Đăng nhập 57

5.2.2 Đăng ký 58

5.2.3 Quên mật khẩu 58

5.2.4 Chỉnh sửa tài khoản 60

5.2.5 Màn hình tour du lịch 61

5.2.6 Test case quản lý tổng quan 64

5.2.7 Test case quản lý- Quản lý tour 65

6 Tổng kết 66

6.1 Tổng kết 66

6.2 Hướng phát triển 67

Lời cảm ơn 68

3

Trang 5

Lời mở đầu

Trong cuộc sống hiện đại ngày nay, con người không chỉ chăm chămvào việc nâng cao vật chất của mỗi người Mà song song đó, vật chất màmỗi con người tạo ra cũng là để phục vụ cho những mục đích trong cuộcsống như: học tập, sinh hoạt, an sinh xã hội và du lịch cũng không nằmngoài những mục đích mà con người muốn hướng đến để phục vụ củasống tinh thần của mình

Du lịch từ khi Việt Nam mở cửa hội nhập quốc tế đã có những bướcphát triển nhanh chóng cả về lượng khách và chất lượng dịch vụ Chínhnhững sự phát triển nhảy vọt của ngành du lịch đã giúp cho Việt Nam trởthành một điểm đến hấp dẫn trong con mắt của không chỉ du khách trongnước, mà còn tạo những ấn tượng đối với cộng đồng quốc tế, được các tổchức, báo chí quốc tế uy tín tôn vinh bằng những giải thưởng danh giá tầmkhu vực và Thế giới

Hiện nay, ngoài du lịch trong nước là lựa chọn của đại đa số ngườidân, du lịch quốc tế cũng trở nên phổ biến khi đời sống kinh tế ngày càngphát triển Trong mỗi dịp hè hoặc lễ, Tết hàng ngàn gia đình, tổ chức,doanh nghiệp đăng ký những tour du lịch nhằm nâng cao sự đoàn kết củatập thể, sự gắn kết của gia đình, cũng như để giảm stress sau những ngàyhọc tập, làm việc mệt mỏi

Dựa vào sự phát triển lạc quan của ngành trong tương lai, đề tài dulịch được chọn làm đề tài đồ án của nhóm với mong muốn được tham giađóng góp cho sự phát triển của ngành du lịch, giới thiệu du lịch Việt Namrộng rãi hơn tới mọi người trên toàn Thế giới Đề tài được nghiên cứu, thuthập thông tin cũng như tham khảo tài liệu để phát triển một hệ thống thânthiện với người dùng theo phương pháp hướng cấu trúc Công cụ và môitrường để phát triển hệ thống là hệ quản trị cơ sở dữ liệu Microsoft SQLServer và ngôn ngữ lập trình Java Chương trình được thực hiện và pháttriển sẽ là trợ thủ đắc lực để mọi người tra cứu thông tin, điểm đến du lịchđem đến những trải nghiệm và giải quyết tốt nhất những yêu cầu, thắc mắc

về du lịch Việt Nam của du khách trong và ngoài nước

4

Trang 6

1 Giới thiệu dự án

1.1 Giới thiệu “Website Nice Travel”

Tuy rằng hiện nay tình hình dịch covid-19 vẫn đang diễn biến phức tạplàm cho tất cả các ngành dịch vụ trong đó có du lịch đều bị tạm dừngnhưng sở thích đi du lịch của hầu hết mọi người vẫn rất lớn và hứa hẹn sẽlớn hơn khi dịch covid-19 được kiểm soát

Trong tình hình dịch phức tạp, mọi người có thể tham khảo trên websitecác tour du lịch gồm giá thành, địa điểm… trên trang web mà không cần điđâu trong mùa dịch này Chờ khi dịch ổn chúng ta có thể đặt tour để đi dulịch với bạn bè, gia đình

Hiện nay công nghệ 4.0 nên việc đặt tour du lịch cũng không quá khókhăn với mọi người, họ có thể lên website đặt tour mọi lúc mọi nơi

Dựa trên nhu cầu thực tế, phần lớn sở thích đi du lịch của mọi người

nhóm chúng tôi lựa chọn đề tài “Website Nice Travel ”(Website hành trình

thú vị)

1.2 Nền tảng công nghệ

Web ap: Sử dụng Angular JS, Html, Css, Bootstrap…

Restful Web Service: Sử dụng framework Spring Boot

1.3 Công cụ lập trình & công nghệ sử dụng

Frontend: HTML, CSS, Bootstrap

Backend: Java

Frameworks: Spring Boot, Hibernate, JPA, Angular JS

Database: SQL Server

Tool: Eclipse, Microsoft SQL Server, Visual Studio Code

1.4 Giới thiệu hệ quản trị cơ sở dữ liệu

Là hệ quản trị cơ sở dữ liệu quan hệ (RDBMS) do Microsoft phát triển.Hoạt động theo mô hình khách chủ cho phép đồng thời cùng lúc có nhiềungười dùng truy xuất đến dữ liệu

5

Trang 7

Mục đích sử dụng SQL Server:

Xây dựng cơ sở dữ liệu

Duy trì cơ sở dữ liệu

Hỗ trợ các thao tác dữ liệu: truy vấn, phân tích dữ liệu, tạo báo cáo, trích xuất và tổng hợp dữ liệu

1.5 Giới thiệu ngôn ngữ lập trình (Java)

Java là ngôn ngữ lập trình có các đặc điểm sau: viết 1 lần, chạy mọi nơi.Java là ngôn ngữ đa nền tảng, free, chạy được trên mọi hệ điều hành chỉcần cài đặt môi trường java (JDK) Java là một ngôn ngữ lập trình hướngđối tượng, có tính bảo mật cao, mạnh mẽ, phân tán, đa luồng xử lý

Hướng đối tượng - Trong Java, mọi thứ đều là một Object Java

có thể dễ dàng mở rộng và bảo trì vì nó được xây dựng dựa trên

mô hình Object

Nền tảng độc lập - Không giống nhiều ngôn ngữ lập trình khác

bao gồm cả C và C ++, khi Java được biên dịch, nó không được biên dịch thành ngôn ngữ máy nền tảng cụ thể, thay vào mã byte -nền tảng độc lập Mã byte này được thông dịch bởi máy ảo (JVM) trên nền tảng nào đó mà nó đang chạy

Đơn giản - Java được thiết kế để dễ học Nếu bạn hiểu khái niệm

cơ bản về OOP Java, sẽ rất dễ để trở thành master về java

Bảo mật - Với tính năng an toàn của Java, nó cho phép phát triển

các hệ thống không có virus, giả mạo Các kỹ thuật xác thực dựa trên mã hoá khóa công khai

Kiến trúc - trung lập - Trình biên dịch Java tạo ra định dạng tệp

đối tượng kiến trúc trung lập, làm cho mã biên dịch được thực thi trên nhiều bộ vi xử lý, với sự hiện diện của hệ điều hành Java

Portable - Là kiến trúc tập trung và không có khía cạnh thực hiện

phụ thuộc của đặc tả này làm cho Java khả chuyển Trình biêndịch trong Java được viết bằng ANSI C, đó là một tập con POSIX

6

Trang 8

Mạnh mẽ - Java làm nỗ lực để loại trừ các tình huống dễ bị lỗi

bằng cách kiểm tra lỗi tại thời gian biên dịch và kiểm tra lỗi tại runtime

Đa luồng - Với tính năng đa luồng của Java có thể viết các

chương trình có thể thực hiện nhiều tác vụ đồng thời Tính năng thiết kế này cho phép các nhà phát triển xây dựng các ứng dụng tương tác có thể chạy trơn tru hơn

Thông dịch - Mã byte Java được dịch trực tiếp tới các máy tính

gốc và không được lưu trữ ở bất cứ đâu

Hiệu năng cao - Với việc sử dụng trình biên dịch Just-In-Time,

Java cho phép thực hiện hiệu năng cao

Phân tán - Java được thiết kế cho môi trường phân tán của

Internet

Năng động - Java là năng động hơn C hoặc C++ vì nó được thiết

kế để thích nghi với môi trường đang phát triển Các chương trìnhJava có thể mang một lượng lớn thông tin tại runtime mà có thể được sử dụng để xác minh và giải quyết các truy cập vào các đối tượng tại runtime

1.6 Các thư viện hỗ trợ

1.6.1 Giới thiệu công nghệ Spring

Spring là một framework phát triển ứng dụng java được sử dụng bởihàng triệu lập trình viên Nó giúp tạo các ứng dụng có hiệu năng cao, dễkiểm thử…

Spring nhẹ (nhẹ: kích thước nhỏ, version cơ bản chỉ khoảng 2MB).Spring là mã nguồn mở, được phát triển, chia sẻ và có cộng đồngngười dùng lớn hơn

Spring Framework được xây dựng dựa trên 2 nguyên tắc designchính là: Dependency Injection (DI) và Aspect Oriented Programming(AOP)

Những tính năng core (cốt lõi) của Spring có thể được sử dụng đểphát triển Java Desktop, ứng dụng mobile, Java Web Mục tiêu chính củaSpring là giúp phát triển các ứng dụng J2EE một cách dễ dàng hơn dựatrên mô hình sử dụng POJO (Plain Old Java Object)

7

Trang 9

Lợi ích của Spring:

Cho phép lập trình viên sử dụng POJOs Việc sử dụng POJOs giúp bạn không phải làm việc với EJB, ứng dụng, các luồng chạy, cấu hình … đơn giản hơn rất nhiều

Spring tổ chức theo kiểu module

Spring hỗ trợ sử dụng khá nhiều công nghệ như ORM Framework, các logging framework, JEE, các thư viện tạo lịch trình (Quartz và JDK timer),

Module Web của Spring được thiết kế theo mô hình MVC nên

nó cung cấp đầy đủ các tính năng giúp thay thế các web framework khác như Struts

Một số project khác của Spring:

Spring MVC: Dành cho việc xây dựng ứng dụng trên nền tảng web

Spring Boot: là một framework giúp phát triển cũng như chạy ứng dụng một cách nhanh chóng

Spring Batch: giúp tạo các lịch trình (scheduling) và tiến trình (processing) cho các công việc xử lý theo mẻ (batch job)

Spring Social: kết nối ứng dụng của bạn với API bên thứ ba của Facebook, Twitter, Linkedin… (Ví dụ: đăng nhập bằng Facebook, Gmail, Twitter…)

Một số project khác như: Spring IO, Spring Cloud, Spring Mobile, Spring for Android, Spring Session

1.6.2 Giới thiệu Angular

Angular là một javascript framework do google phát triển để xâydựng các Single Page Application (SPA) bằng JavaScript, HTML vàTypeScript Angular cung cấp các tính năng tích hợp cho animation, httpservice và có các tính năng như auto-complete, navigation, toolbar,menu… Code được viết bằng TypeScript, biên dịch thành JavaScript vàhiển thị tương tự trong trình duyệt

Để học được angular thì bạn cần biết các kiến thức cơ bản sau:

HtmlCss

8

Trang 10

Document Object Model (DOM)

9

Trang 11

1.6.3 Giới thiệu JQuery

JQuery là một Javascript Framework – 1 thư viện nền tảng hỗ trợviệc lập trình Javascript được dễ dàng

JQuery được tích hợp nhiều module khác nhau Từ module hiệu ứngcho đến module truy vấn selector jQuery được sử dụng đến 99% trên tổng

số website trên thế giới

Các module phổ biến của jQuery bao gồm:

jQuery không phải là một ngôn ngữ lập trình riêng biệt mà hoạt độngliên kết với JavaScript Với jQuery, bạn có thể làm được nhiều việc hơn

mà lại tốn ít công sức hơn jQuery cung cấp các API giúp việc duyệt tài liệuHTML, hoạt ảnh, xử lý sự kiện và thao tác AJAX đơn giản hơn jQueryhoạt động tốt trên nhiều loại trình duyệt khác nhau Một trong những đốithủ nặng ký của jQuery đó là JS Framework

1.6.4 Giới thiệu Bootstrap

Bootstrap là một Framework bao gồm HTML, CSS và Javascript

template dùng để phát triển website chuẩn Responsive

Bootstrap cho phép quá trình thiết kế website diễn ra nhanh chóng

và dễ dàng hơn dựa trên những thành tố cơ bản sẵn có như typography,forms, buttons, tables, grids, navigation, image carousels…

Bootstrap là một bộ sưu tập miễn phí của các mã nguồn mở và

công cụ dùng để tạo ra một mẫu website hoàn chỉnh Với các thuộc tính vềgiao diện được quy định sẵn như kích thước, màu sắc, độ cao, độ rộng…,

các designer có thể sáng tạo nhiều sản phẩm mới mẻ nhưng vẫn tiết kiệm

10

Trang 12

thời gian khi làm việc với framework này trong quá trình thiết kế giao diện website.

1.6.5 Giới thiệu Restful Web Service

RESTful Web Service là các Web Service được viết dựa trên kiếntrúc REST REST đã được sử dụng rộng rãi thay thế cho các Web Servicedựa trên SOAP và WSDL RESTful Web Service nhẹ (lightweight), dễ dàng

mở rộng và bảo trì

Những khái niệm đầu tiên về REST (REpresentational State

Transfer) được đưa ra vào năm 2000 trong luận văn tiến sĩ của Roy Thomas Fielding (đồng sáng lập giao thức HTTP) Trong luận văn ông giới

thiệu khá chi tiết về các ràng buộc, quy ước cũng như cách thức thực hiệnvới hệ thống để có được một hệ thống REST

REST định nghĩa các quy tắc kiến trúc để bạn thiết kế Web services,chú trọng vào tài nguyên hệ thống, bao gồm các trạng thái tài nguyênđược định dạng như thế nào và được truyền tải qua HTTP, và được viếtbởi nhiều ngôn ngữ khác nhau Nếu tính theo số dịch vụ mạng sử dụng,REST đã nổi lên trong vài năm qua như là một mô hình thiết kế dịch vụchiếm ưu thế Trong thực tế, REST đã có những ảnh hưởng lớn và gầnnhư thay thế SOAP và WSDL vì nó đơn giản và dễ sử dụng hơn rất nhiều

REST là một bộ quy tắc để tạo ra một ứng dụng Web Service, mà nótuân thủ 4 nguyên tắc thiết kế cơ bản sau:

Sử dụng các phương thức HTTP một cách rõ ràng Phi trạng thái

Hiển thị cấu trúc thư mục như các Urls

Truyền tải JavaScript Object Notation (JSON), XML hoặc cả hai

1.6.6 Giới thiệu Builder: Maven

Apache maven là một chương trình quản lý dự án cho phép cácdevelopers có thể quản lý về version, các dependencies ( các thư viện sử

dụng trong dự án ) , quản lý build, tự động download javadoc & source, …

11

Trang 13

2 Khảo sát hiện trạng

2.1 Hiện trạng thực tế

Các trang web của các công ty du lịch đang phát triển với tốc độ rấtnhanh, số lượng người truy cập ngày càng tăng Nhu cầu sở thích đi dulịch của mọi người cũng chiếm phần lớn Tất cả những gì chúng ta cần đểtruy cập vào trang web để xem các tour du lịch rất đơn giản là một máytính hoặc một chiếc điện thoại, Ipad và tư thế sẵn sàng chờ hết dịch làchúng ta có thể đi liền

2.2 Mô hình nghiệp vụ của hệ thống

2.2.1 Sơ đồ cơ cấu tổ chức

2.2.2 Chức năng từng bộ phận

Quản trị viên : Quản lý trực tiếp trang web, chịu trách nhiệm vận hành và quản lý tài khoản, khách hàng, nhân viên, thống kê doanh

số và bảo mật thông tin trên website

Nhân viên: Quản lý trang web, quản lý đơn hàng và các chuyến đi

Khách hàng: Xem các tour du lịch, yêu thích tour, đặt tour, quản lý thông tin cá nhân

12

Trang 14

2.2.3 Quy trình nghiệp vụ

2.2.3.1 Đặt tour, thanh toán

Người dùng tìm tour mong muốn, chọn “Đặt ngay”, sau đó “Thanh

toán” và hoàn thành các xác nhận cần thiết

2.2.3.2 Quản lý tour du lịch

Khách hàng có thể vào trang cá nhân để kiểm tra các tour đã đặt của

mình

Nhân viên khi muốn thêm một tour mới thì chọn quản lý tour, thêm

các thông tin cần thiết (điểm đến, giờ khởi hành ) và chọn nút “Thêm”

2.2.3.3 Báo cáo

Thống kê doanh thu 6 tháng gần nhất, theo ngày tháng

năm Thống kê danh sách tour du lịch khách hàng yêu thích

Thống kê khách hàng đăng kí tài khoản trong ngày hôm nay so với

ngày hôm sau

Thống kê số lượng tour đã đặt và còn lại bao nhiêu tour

2.2.3.4 Các chức năng

Tạo tài khoản: Người dùng mới sẽ được đăng ký tài khoản khi có

nhu cầu và đăng bán tour du lịch (nhân viên), đặt tour (khách hàng)

Chức năng tạo, sửa, xóa tour (nhân viên, admin): Tạo tour mới

trên website, sửa thông tin/trạng thái của tour và có thể xóa tour khi

không bán tour đó nữa

Quản lý tài khoản khách hàng (Nhân viên, Admin): Nhân viên và

admin có quyền quản lý thông tin tài khoản của khách hàng

Quản lý tài khoản (Admin): Admin có quyền quản lý thông tin tài

khoản của khách hàng và nhân viên

Quản lý tour đã thích (Khách hàng): Khách hàng có thể quản lý

tour yêu thích của mình

Chức năng thanh toán (Khách hàng): Khi thực hiện thanh toán,

khách hàng được chọn hình thức thanh toán và tiến hành thanh toán

13

Trang 16

2.2.3.5 Yêu cầu chức năng

Hệ thống chạy đứng, tốt, ổn định

Giao diện thân thiện, dể dùng.

Đáp ứng hầu hết các yêu cầu của người dùng.

2.2.3.6 Yêu cầu hệ thống

Cung cấp phân quyền cho các loại người có trách nhiệm: Admin, nhân viên, khách hàng

3 Phân tích & thiết kế hệ thống

3.1 Sơ đồ phân cấp chức năng

15

Trang 18

3.2 Activity diagram

3.2.1 Đăng nhập

17

Trang 19

3.2.2 Đăng ký

18

Trang 20

3.2.3 Quên mật khẩu

19

Trang 21

3.2.4 Booking

20

Trang 22

3.2.5 Quản lý nhân viên

21

Trang 24

3.2.6 Quản lý khách hàng

23

Trang 26

3.2.7 Quản lý tour du lịch

25

Trang 27

3.2.8 Thống kê

26

Trang 28

3.3 Mô hình nguồn dữ liệu DFD

3.3.1 Biểu đồ DFD mức ngữ cảnh

27

Trang 29

3.3.2 Biểu đồ DFD cấp 0

28

Trang 30

3.3.3 Mô hình User case

3.3.3.1 Xác định các Actor

Dựa vào yêu cầu bài toán, ta có các actor sau: quản trị viên (Admin), nhân viên(Staff), khách hàng(user)

3.3.3.2 Xác định các User case

Quản trị viên Đăng nhập, quản lý tài khoản khách hàng và nhân(Admin) viên, quản lý tour du lịch, thống kê doanh thu

Nhân viên (Staff) Đăng nhập, chỉnh sửa thông tin tài khoản, quản lý

khách hàng, quản lý các tour du lịchKhách hàng Tạo tài khoản, chỉnh sửa thông tin tài khoản, đăng(User) nhập, xem thông tin tour, tìm kiếm tour, đặt tour

3.3.3.3 Xây dựng biểu đồ User case tổng quát

a Quản trị viên:

29

Trang 31

b Khách hàng:

30

Trang 32

o Hiển thị thông tin tour du lịch lên website.

o Khi bấm chọn “Yêu thích” hoặc “Đặt ngay”, mã tour sẽ được gửi đến trang “Đặt tour du lịch”

Thông tin đầu ra: Hiển thị chi tiết về tour du lịch giúp khách hàng có thể tìm hiểu rõ thông tin chi tiết từng tour có thể giúp họ dễ dàng lựa chọn theo đúng yêu cầu của mình

Trang 33

3.3.3.4.3 Đăng ký tài khoản

Mô tả: Cung cấp chức năng đăng ký tài khoản (Nhân viên, khách hàng) giúp người dùng có thể đặt cho mình hay gia đình những

chuyến đi du lịch tuyệt vời

Kích hoạt: Khi người dùng nhấp vào đăng

ký Quá trình xử lý:

o Khi đăng ký, một biểu mẫu thông tin được hiện ra để ngườidùng nhập một số thông tin cần thiết cho khởi đầu của một tài khoản

o Kiểm tra username, email đã tồn tại hay chưa

o Kiểm tra dữ liệu nhập vào ở các ô dữ liệu

o Khi ấn Sign up, thông tin người dùng nhập sẽ được gửi lênserver để kiểm tra, nếu hợp lệ sẽ gửi một email đến email người dùng đãnhập trước đó để xác nhận đăng ký thành công Khi này người dùng mới

Kích hoạt: Khi người dùng click vào chức năng “Đăng nhập”, đặt tour

o Đăng nhập thành công cho người dùng đăng nhập hợp lệ

o Nếu người dùng quên mật khẩu thì sẽ chuyển sang trang quên mật khẩu để có thể giúp người dùng lấy lại mật khẩu

o Nếu người dùng chưa có tài khoản để đăng nhập thì sẽ chuyểnsang trang đăng kí tài khoản

32

Trang 34

Thông tin đầu ra: Chuyển thẳng đến trang chủ nếu người dùng đăng nhập thành công.

33

Trang 35

Thông tin đầu ra:

o Thông báo đã đặt tour

o Nếu người dùng không thanh toán sẽ chuyển đến trang danh sách các tour đã đặt

3.3.3.4.6 Yêu thích tour du lịch

Mô tả: Cho phép người dùng lưu tour du lịch mà mình yêu thích

Kích hoạt: Khi người dùng click vào biểu tượng “Yêu

thích” Quá trình xử lý:

o Sau khi click yêu thích, kiểm tra đăng nhập hay chưa

o Hệ thống sẽ lưu thông tin dữ liệu chuyến đi và người dùng Thông tin đầu ra: Thông báo yêu thích tour thành công

3.3.3.4.7 Thanh toán

Mô tả: Thanh toán tour du lịch mình đã đặt

Kích hoạt: Khi người dùng click vào chức năng “Thanh

o Thông báo thanh toán thành công

o Chuyền về trang thông tin các tour đã đặt

34

Trang 36

Thông tin đầu ra: Hiển thị các thông tin chi tiết các tour đã đặt.

3.3.3.4.9 Thông tin cá nhân

Mô tả: Cho phép người dùng cập nhật thông tin cá nhân của mình

Kích hoạt: Người dùng bấm vào “Tài khoản của

tôi” Quá trình xử lý:

o Hệ thống yêu cầu người dùng nhập các thông tin cá nhân mìnhmuốn cập nhật

o Kiểm tra các thông tin có hợp lệ không

o Kết nối database để cập nhật thông tin

Thông tin đầu ra: Thông báo cập nhật thành công

3.3.3.4.10 Trang admin 3.3.3.4.10.1.Quản lý khách hàng

Mô tả: Cho phép quản trị viên quản lý các thông tin được công khai của người dùng

Kích hoạt: Quản trị viên đăng nhập và chọn trang quản lý khách hàng

Trang 37

Thông tin đầu ra: Hiển thị các thông tin, thống kê danh sách khách hàng.

36

Trang 38

3.3.3.4.10.2 Quản lý nhân viên

Mô tả: Cho phép quản trị viên quản lý các thông tin của nhân viên.Kích hoạt: Quản trị viên đăng nhập và chọn trang quản lý nhân viên Quá trình xử lý:

o Kiểm tra dữ liệu nhập có hợp lệ hay không để thực hiện các thao tác như cập nhật, xóa, thêm tài khoản từ quản trị viên

o Kết nối database để cập nhật thông tin

Thông tin đầu ra: Hiển thị các thông tin, thống kê danh sách nhân viên

3.3.3.4.10.3 Quản lý tour

Mô tả: Cho phép quản trị viên quản lý các tour du lịch

Kích hoạt: Quản trị viên đăng nhập và chọn trang quản lý tour du lịch Quá trình xử lý:

o Kiểm tra dữ liệu nhập có hợp lệ hay không để thực hiện các thao tác như cập nhật, xóa, thêm tour du lịch từ quản trị viên

o Kết nối database để cập nhật thông tin

Thông tin đầu ra: Hiển thị các thông tin, thống kê danh sách tour du lịch

3.3.3.4.10.4 Quản lý doanh thu

Mô tả: Cho phép quản trị viên quản lý doanh thu theo tháng, theo ngày

Kích hoạt: Quản trị viên đăng nhập sẽ hiện lên trang chủ quản trị viên

Thông tin đầu ra: Hiển thị thống kê doanh thu theo biểu đồ

37

Trang 39

3.3.3.5 Lượt đồ sequence

Đăng nhập

38

Trang 40

Đăng ký

39

Ngày đăng: 10/12/2022, 07:16

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

w