Tải bản đầy đủ (.pdf) (70 trang)

Xây dựng website đặt vé du lịch

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.62 MB, 70 trang )

ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC SƯ PHẠM
KHOA TIN HỌC

BÁO CÁO

KHÓA LUẬN TỐT NGHIỆP

TÊN ĐỀ TÀI
XÂY DỰNG WEBSITE ĐẶT VÉ DU LỊCH

GVHD
Sinh Viên
Lớp

: TS. Trần Văn Hưng
: Lý Văn Trà
: 16 CNTT01

ĐÀ NẴNG, 07/2020


LỜI MỞ ĐẦU

Hiện nay việc ứng dụng công nghệ thông tin được xem là một trong những
yếu tố quyết định trong hoạt động kinh doanh của các cá nhân, công ty và
doanh nghiệp nó đóng vai trị quan trọng để tạo ra đột phá mạnh mẽ. Cùng với
đó là sự phát triển của mạng Internet. Trong sản xuất, kinh doanh giờ đây đã
được thúc đẩy mạnh mẽ thông qua thương mại điện tử. Đối với một cửa hàng
hay shop việc tiếp cận, quảng bá, giới thiệu, tạo nhiều điều kiện thuận lợi thỏa
mãn nhu cầu của khách hàng. Vậy nên, em đã thực hiện đồ án “Xây dựng


website đặt vé du lịch” để tạo nhiều điều kiện thuận lợi cho khách hàng và
quảng bá du lịch Việt Nam
Em cũng xin chân thành cảm ơn TS. Trần Văn Hưng đã trực tiếp chỉ bảo và
hưỡng dẫn em suốt q trình hồn thành khóa luận này. Và em cũng xin cảm
ơn tất cả các thầy cơ Khoa Tin học đã nhiệt tình giúp đỡ và đào tạo em trong
thời gian vừa qua.
Em xin trân trọng cảm ơn!
Đà Nẵng, ngày tháng năm 2020
Sinh viên thực hiện
Lý Văn Trà


Ý KIẾN CỦA GIẢNG VIÊN HƯỚNG DẪN
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
Đà Nẵng, ngày tháng năm 2020

Cán bộ hướng dẫn


MỤC LỤC
MỞ ĐẦU ................................................................................................... 1
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT ......................................................... 3
1.1. Tổng quan về thương mại điện tử và website bán hàng ............... 3
1.1.1. Thương mại điện tử là gì? ...........................................................................3
1.1.2. Lợi ích thương mại điện tử .........................................................................3
1.1.3. Các mơ hình trong thương mại điện tử ......................................................3

1.2. Giới thiệu về Python ....................................................................... 5
1.2.1. Python là gì? ................................................................................................5
1.2.2. Tại sao phải sử dụng Python? .....................................................................6

1.3. Gới thiệu về Django ....................................................................... 6
1.3.1. Django là gì? ................................................................................................6
1.3.2. Tại sao sử dụng Django Framework? ........................................................6
1.3.3. MVT Patten của Django .............................................................................7

1.4. Gới thiệu về hệ quản trị cơ sở dữ liệu Mysql ................................ 8
1.4.1. Khái niệm ....................................................................................................8
1.4.2. Tại sao lại sử dụng hệ quản trị cơ sở dữ liệu Mysql ? ................................9

CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ WEBSITE ....................... 13
2.1. Phân tích u cầu hệ thống .......................................................... 13
2.1.1. Mô tả hệ thống........................................................................................... 13
2.1.2. Yêu cầu chức năng của hệ thống .............................................................. 13
2.1.3. Yêu cầu phi chức năng ..............................................................................13


2.2 Phân tích thiết kế hệ thống ........................................................... 13
2.2.1 Sơ đồ BFD ..................................................................................................14
2.2.2 Sơ đồ DFD ..................................................................................................15
2.2.3 Sơ đồ ERD ..................................................................................................28
2.2.4 Mơ hình dữ liệu quan hệ ............................................................................29

CHƯƠNG 3: TRIỂN KHAI VÀ KẾT QUẢ ĐẠT ĐƯỢC .................... 35
3.1. Triển khai môi trường làm việc ................................................... 35
3.1.1. Yêu cầu ......................................................................................................35
3.1.2. Thực hiện ................................................................................................... 35


3.2. Kết quả đạt được .......................................................................... 35
KẾT LUẬN ............................................................................................. 47
TÀI LIỆU THAM KHẢO ...................................................................... 48
PHỤ LỤC MÃ NGUỒN ......................................................................... 49


DANH MỤC HÌNH ẢNH
Hình 1 Cấu trúc tập tin mơ hình MVT ............................................................ 8
Hình 2 Sơ đồ BFD ........................................................................................... 14
Hình 3 Sơ đồ ngữ cảnh ................................................................................... 16
Hình 4 DFD 0 Chức năng và luồng của hệ thống .......................................... 17
Hình 5 DFD 1 Đăng kí tài khoản ................................................................... 18
Hình 6 DFD 1 Xem thơng tin tour ................................................................. 19
Hình 7 DFD 1 Đăng nhập ............................................................................... 19
Hình 8 DFD 1 Thay đổi thơng tin cá nhân .................................................... 20
Hình 9 DFD 1 Đặt vé ...................................................................................... 20
Hình 10 DFD 1 Bình luận ............................................................................... 21
Hình 11 DFD 1 Đăng blog .............................................................................. 21

Hình 12 DFD 1 Quản lý thơng tin tài khoản ................................................. 22
Hình 13 DFD 1 Reset mật khẩu ..................................................................... 23
Hình 14 DFD 1 Quản lý tour .......................................................................... 24
Hình 15 DFD 1 Quản lý điểm đến .................................................................. 25
Hình 16 DFD 1 Quản lý comment.................................................................. 26
Hình 17 DFD 1 Quản lý đặt vé ...................................................................... 26
Hình 18 DFD 1 Quản lý blog .......................................................................... 27
Hình 19 DFD 1 Đặt vé,thanh tốn .................................................................. 27
Hình 20 Sơ đồ ERD ......................................................................................... 29
Hình 21 Sơ đồ dữ liệu quan hệ ....................................................................... 34


DANH MỤC BẢNG
Bảng 1 User ..................................................................................................... 30
Bảng 2 Blog ..................................................................................................... 30
Bảng 3 Comment ............................................................................................. 31
Bảng 4 Booking ............................................................................................... 31
Bảng 5 Role ...................................................................................................... 31
Bảng 6 Photo ................................................................................................... 31
Bảng 7 Tour ..................................................................................................... 32
Bảng 8 Destination .......................................................................................... 32
Bảng 9 Area ..................................................................................................... 32


1

MỞ ĐẦU
Lí do chọn đề tài.
Sự phát triển cơng nghệ thơng tin ở nước ta đang bước vào thời kì mới
với việc ứng dụng rộng rải công nghệ thông tin trong tổ chức và xã hội, trong

kinh doanh,… Công nghệ thông tin đang từng bước đi vào cuộc sống của
chúng ta và có vai trị rất lớn phát triển đất nước. Do đó việc áp dụng cơng
nghệ thơng tin vào nhiều ngành, nhiềulĩnh vực rất quan trọng,trong đó có
ngành du lịch. Ngành có đóng góp GDP 10% cả nước và là ngành thu nhiều
ngoại tệ.
Nhận thấy trong những dịp lễ việc mua vé của khách du lịch rất khó
khăn,việc mua vé phải di chuyển đến địa điểm bán vé, phải xếp hàng đợi, hết
vé phải mua vé qua tay với giá cao,…Vì vậy, website đặt vé du lịch được ra
đời.
Mục tiêu đề tài.
Xây dựng một hệ thống đặt vé cho khách du lịch và những người muốn
tìm hiểu du lịch một cách thuận tiện nhất với thiết kế hết sức đa dạng, dễ mở
rộng. Các tour du lịch phải thể hiện đầy đủ các thông tin cần thiết cho người
dung. Ngoài ra hệ thống phải hướng đến việc mở rộng đặt vé du lịch ngoài
nước.
Đối tượng nghiên cứu.
Website xây dựng hướng đến người dùng là các khách du lịch và các
những người muốn tìm hiểu du lịch.
Phương pháp nghiên cứu.
Với những mục đích nêu trên, để có thể xây dựng hệ thống hoàn chỉnh
em đặt ra những phương pháp cụ thể như sau:
-

Sử dụng kiến thức đã học về website, cơ sở dữ liệu để phân tích thiết

kế hệ thống một các tối ưu.
Lý Văn Trà – Lớp 16CNTT1 (2016-2020)


2


-

Khảo sát người dùng để thu thập yêu cầu từ người dùng về một hệ

thống mà người dùng đang mong muốn.
-

Tìm hiểu MySQL

-

Tìm hiểu Django

-

Tìm hiểu Python

-

Thực hiện xây dựng phân tích thế kế hệ thống website cho phù hợp

Bố cục.
Chương 1: Giới thiệu về ngôn ngữ sử dụng các thư viện phân tích các ưu
nhược điểm. Giới thiệu về cơ sở dữ liệu.
Chương 2: Lấy yêu cầu, đánh giá phân tích yêu cầu chức năng để thiết
kế website.
Chương 3: Thực hiện và đánh giá từ kết quả thu được .

Lý Văn Trà – Lớp 16CNTT1 (2016-2020)



3

CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1.1. Tổng quan về thương mại điện tử và website bán hàng
1.1.1. Thương mại điện tử là gì?
Thương mại điện tử (cịn gọi là E-commerce hay E-bussines) là quy trình
mua bán dịch vụ thơng qua thương mại điện tử và mạng viễn thông, đặc biệt
là qua máy tính và mạng Internet.
Ngày nay người ta hiểu khái niện Thương mại điện tử thông thường là
tất cả phương pháp tiến hành kinh doanh và các quy trình quản trị thơng qua
các kênh điện tử trong đó Internet đóng vai trị cơ bản và cơng nghệ thơng tin
là điều kiện tiên quyết.
1.1.2. Lợi ích thương mại điện tử
Lợi ích lớn nhất mà Thương mại điện tà mang lại đó chính là tiết kiệm
được chi phí, tạo thuận lợi cho các bên giao dịch. Giao dịch bằng phương tiện
điện tử nhanh hơn là giao dịch bằng truyền thơng, ví dụ như gửi fax hay thư
điện tử thì nội dung thông tin sẽ đến người nhận nhanh hơn là gửi thư. Giao
dịch qua Internet có chi phí rất rẻ, một doanh nghiệp có thể gửi thư tiếp thị,
chào hàng đến hàng loạt khách hàng chỉ với chi phi giống như gửi cho một
khách hàng.
Với thương mại điện tử, các bên có thể tiến hành giao khi ở các xa nhau,
giữa thành phố với nông thôn, từ nước này sang nước khác hay nói cách khác
là khơng bị giói hạn bởi không gian địa lý. Điều này cho phép các doanh
nghiệp tiết kiệm chi phí đi lại, thời gian gặp mặt trong khi mua bán.
Với người tiêu dùng họ có thể ngồi tại nhà để đặt hàng, mua sắm nhiều
loại hàng hóa dịch yụ thật nhanh chóng.
1.1.3. Các mơ hình trong thương mại điện tử


Lý Văn Trà – Lớp 16CNTT1 (2016-2020)


4

Thương mại điện tử có thể hoạt động như cánh tay đắc lực của một nhà
bán lẻ. Nó cũng có thể là hình thức duy nhất đưa sản phẩm của họ ra thị
trường.
Tuy nhiên, các mơ hình thương mại điện tử rất khác nhau và được chia
ra như sau:
- Business-to-business (B2B)
Thương mại điện tử B2B là gì? Là khi một cơng ty mua hàng hóa hoặc
dịch vụ trực tuyến từ một doanh nghiệp khác. Ví dụ như: một nhà hàng mua
một máy làm đá hoặc một công ty luật mua phần mềm kế toán. Các phần
mềm kinh doanh như quản lý quan hệ khách hàng (CRM) và các công ty cung
cấp dịch vụ thanh toán cũng được coi là B2B. Bán hàng trực tuyến B2B có xu
hướng phức tạp hơn các hình thức thương mại điện tử khác vì nó có một danh
mục lớn các sản phẩm phức tạp.
- Business-to-consumer (B2C)
Bán lẻ trực tuyến B2C là khi người tiêu dùng mua một mặt hàng qua
internet để sử dụng riêng. Mặc dù thương mại điện tử B2C có vẻ nổi bật hơn,
nhưng nó chỉ bằng một nửa kích thước của thị trường thương mại điện tử B2B
trên toàn thế giới.
- Consumer-to-consumer (C2C)
C2C hoạt động như các trang trao đổi, mua bán, đấu giá qua internet
trong đó người dùng bán hàng hóa cho nhau. Đây có thể là những sản phẩm
họ làm ra, chẳng hạn như thủ công hoặc đồ cũ mà họ sở hữu và muốn bán.
- Consumer-to-business (C2B)
Khi người tiêu dùng tạo ra giá trị cho doanh nghiệp, đó là thương mại
C2B. Tạo giá trị có thể có nhiều hình thức. Chẳng hạn, C2B có thể đơn giản

như một khách hàng để lại đánh giá tích cực cho một doanh nghiệp hoặc một
trang web nhiếp ảnh mua hình ảnh từ các nhiếp ảnh gia tự do. Ngoài ra, C2B
Lý Văn Trà – Lớp 16CNTT1 (2016-2020)


5

cịn là các doanh nghiệp bán hàng secondhand đơi khi mua hàng hóa từ những
người dùng internet bình thường.
- Business-to-government (B2G)
Hình thức này đơi khi được gọi là business-to-administration (B2A). Là
khi một cơng ty tư nhân trao đổi hàng hóa hoặc dịch vụ với một cơ quan công
cộng. Thông thường dưới dạng một hợp đồng kinh doanh với một tổ chức
công cộng để thực hiện một dịch vụ được ủy quyền. Chẳng hạn, một cơng ty
giám sát có thể đấu thầu trực tuyến một hợp đồng để làm sạch tòa án quận
hoặc một cơng ty CNTT có thể đáp ứng đề xuất quản lý phần cứng máy tính
của thành phố.
- Consumer-to-government (C2G)
Bạn có bao giờ thực hiện trả phí cho chỗ đậu xe hơi bằng ứng dụng trên
điện thoại chưa? Nếu rồi thì bạn đã có kinh nghiệm về C2G rồi đấy! Mơ hình
này cũng bao gồm nộp thuế trực tuyến và mua hàng hóa của cơ quan chính
phủ được đấu giá online. Bất cứ khi nào bạn chuyển tiền cho một cơ quan
công cộng qua internet, là bạn đang tham gia vào thương mại điện tử C2G
đấy!
1.2. Giới thiệu về Python
1.2.1. Python là gì?
Python là một ngơn ngữ lập trình bậc cao cho các mục đích lập trình đa
năng, do Guido van Rossum tạo ra và lần đầu ra mắt vào năm 1991.
Python có thể được chạy trên mọi hệ điều hành từ MS-DOC đến Mac
OS, OS/2, WinDows, Linux và các hệ điều hành khác thuộc họ Unix.Python

là một trong những ngôn ngữ được sử dụng nhiều nhất hiện nay.
Python đáp ứng phần lớn các yêu cầu của lập trình viên:lập trình Web, có
thể được sử dụng để phát triển các ứng dụng destop, AI, Machine Learning,...
[5]
Lý Văn Trà – Lớp 16CNTT1 (2016-2020)


6

1.2.2.Tại sao phải sử dụng Python?
Python có các đặc điểm sau: đẹp đẽ tốt hơn xấu xí, minh bạch tốt hơn
che đậy, đơn giản tốt hơn phức tạp, phức tạp tốt hơn rắc rối, dễ đọc.
Python có thể được mở rộng: nếu ta biết sử dụng C, ta có thể dễ dàng
viết và tích hợp vào Python nhiều hàm tùy theo nhu cầu. Các hàm này sẽ trở
thành hàm xây dựng sẵn (built-in) của Python. Ta cũng có thể mở rộng chức
năng của trình thơng dịch, hoặc liên kết các chương trình Python với các thư
viện chỉ ở dạng nhị phân (như các thư viện đồ họa do nhà sản xuất thiết bị
cung cấp). Hơn thế nữa, ta cũng có thể liên kết trình thơng dịch của Python
với các ứng dụng viết từ C và sử dụng nó như là một mở rộng hoặc một ngơn
ngữ dịng lệnh phụ trợ cho ứng dụng đó.
1.3. Gới thiệu về Django
1.3.1. Django là gì?
Django là 1 web framework khá nổi tiếng được viết hồn tồn bằng ngơn
ngữ Python. Nó là 1 framework với đầu đủ các thư viện, module hỗ trợ các
web-developer.
Django tập trung vào tính năng “có thể tái sử dụng” và “có thể tự chạy”
của các component, tính năng phát triển nhanh, khơng làm lại những gì đã
làm. Một số website phổ biến được xây dựng từ Django là Pinterest,
Instagram, Mozilla, và Bitbucket.
Django sử dụng mơ hình MVT(Model-View-Template) và được phát

triển bởi Django Software Foundation (DSF một tổ chức phi lợi nhuận độc
lập) Mục tiêu chính của Django là đơn giản hóa việc tạo các website phức tạp
có sử dụng cơ sở dữ liệu. [6]
1.3.2. Tại sao sử dụng Django Framework?
Nó nhanh và đơn giản, Django giúp bạn có thể lập trình web trong thời
gian ngắn.
Lý Văn Trà – Lớp 16CNTT1 (2016-2020)


7

Hơn nữa, Django có tài liệu rất tốt và tuân theo ngun tắc DRY (Đừng
lặp lại chính mình) trong khi những Framework khác không quan tâm nhiều
về điều này. Django cũng hỗ trợ ORM (Object Relistic Mapping).
Một cơ sở dữ liệu có thể được cập nhật thơng qua command line chỉ
bằng cách sử dụng lệnh sau đây.
`python manage.py migrate`
Và migrations có thể được tạo ra bằng cách sử dụng:
`python manage.py makemigrations`
1.3.3. MVT Patten của Django
Django sử dụng mơ hình MVT (Model-View-Template) thay vì sử dụng
mơ hình MVC (Model-View-Controller).
Mơ hình MVT được sử dụng trong khi tạo một ứng dụng với Tương tác
người dùng.
Mơ hình này thì bao gồm code HTML với Django Templage Language
(DTL).
Controller là mã được viết để kiểm soát sự tương tác giữa Model và
View và Django dễ dàng chăm sóc nó.
Bất cứ khi nào người dùng người request, nó xử lý request của người
dùng đó bằng Model, View và Template.

Nó hoạt động như một Controller để kiểm tra xem nó có khả dụng hay
khơng bằng cách ánh xạ URL và nếu URL ánh xạ thành cơng thì View sẽ bắt
đầu tương tác với Model và gửi lại Template cho người dùng dưới dạng
respone.
Mọi sự khó hiểu cũng diễn ra ở đây khi View của Django đang đảm
nhận vai trị tương tự Controller trong MVC khi mà nó có khá nhiều logic. Sự
khó hiểu nhẹ này chỉ là thoáng qua khi chúng ta đã quen với những

Lý Văn Trà – Lớp 16CNTT1 (2016-2020)


8

framework khác. Rồi mọi chuyện sẽ trở nên bình thường khi chúng ta lại quen
với Django.

Hình 1 Cấu trúc tập tin mơ hình MVT
1.4. Gới thiệu về hệ quản trị cơ sở dữ liệu Mysql
1.4.1. Khái niệm
Lý Văn Trà – Lớp 16CNTT1 (2016-2020)


9

MySQL là một hệ thống quản trị cơ sở dữ liệu mã nguồn mở
(Relational Database Management System, viết tắt là RDBMS) hoạt
động theo mơ hình client-server. RDBMS là một phần mềm hay dịch
vụ dùng để tạo và quản lý các cơ sở dữ liệu (Database) theo hình thức
quản lý các mối liên hệ giữa chúng.
MySQL là một trong số các phần mềm RDBMS. RDBMS và

MySQL thường được cho là một vì độ phổ biến quá lớn của MySQL.
Các ứng dụng web lớn nhất như Facebook, Twitter, YouTube, Google,
và Yahoo! đều dùng MySQL cho mục đích lưu trữ dữ liệu. Kể cả khi
ban đầu nó chỉ được dùng rất hạn chế nhưng giờ nó đã tương thích với
nhiều hạ tầng máy tính quan trọng như Linux, macOS, Microsoft
Windows, và Ubuntu. [7]
1.4.2. Tại sao lại sử dụng hệ quản trị cơ sở dữ liệu Mysql ?
- Tính linh hoạt
Máy chủ cơ sở dữ liệu MySQL cung cấp đặc tính linh hoạt, có sức
chứa để xử lý các ứng dụng được nhúng sâu với dung lượng chỉ 1MB để
chạy các kho dữ liệu đồ sộ lên đến hàng terabytes thông tin. Sự linh hoạt
về flatform là một đặc tính lớn của MySQL với tất cả các phiên bản của
Linux, Unix, và Windows đang được hỗ trợ. Và dĩ nhiên, tính chất mã
nguồn mở của MySQL cho phép sự tùy biến hoàn toàn theo ý muốn để
thêm vào các yêu cầu thích hợp cho database server.
- Tính thực thi cao
Kiến trúc storage-engine cho phép các chuyên gia cơ sở dữ liệu cấu
hình máy chủ cơ sở dữ liệu MySQL đặc trưng cho các ứng dụng đặc thù.
Dù ứng dụng là một hệ thống xử lý giao dịch tốc độ cao hay web site dung
lượng lớn phục vụ hàng triệu yêu cầu mỗi ngày, MySQL có thể đáp ứng
khả năng xử lý những địi hỏi khắt khe nhất của bất kì hệ thống nào. Với
Lý Văn Trà – Lớp 16CNTT1 (2016-2020)


10

các tiện ích tải tốc độ cao, đặc biệt bộ nhớ caches, và các cơ chế xử lý
nâng cao khác, MySQL đưa ra tất cả các vũ khí cần phải có cho các hệ
thống doanh nghiệp khó tính ngày nay.
- Có thể sử dụng ngay

Sự đáng tin cậy cao và tính “mì ăn liền” là những tiêu chuẩn đảm bảo
của MySQL. MySQL đưa ra nhiều tùy chọn có thể dùng ngay từ cấu hình
tái tạo chủ/tớ tốc độ cao, để các nhà phân phối thứ 3 đưa ra những giải
pháp có thể dùng ngay duy nhất cho server cơ sở dữ liệu MySQL.
- Hỗ trợ giao dịch mạnh
MySQL đưa ra một trong số những engine giao dịch cơ sở dữ liệu
mạnh nhất trên thị trường. Các đặc trưng bao gồm hỗ trợ giao dịch ACID
hoàn thiện ( Atomic – tự động, Consistent – thống nhất, Isolated – độc lập,
Durable – bền vững), khóa mức dịng khơng hạn chế, khả năng giao dịch
được phân loại, và hỗ trợ giao dịch đa dạng (multi-version) mà người đọc
không bao giờ gây trở ngại cho người viết và ngược lại. Tính tồn vẹn của
dữ liệu cũng phải được bảo đảm trong suốt quá trình server có hiệu lực,
các mức giao dịch độc lập được chun mơn hóa, và phát hiện khóa chết
ngay lập tức.
- Nơi lưu trữ Web và Data đáng tin cậy
MySQL là nhà máy chuẩn cho các web sites phải trao đổi thường
xun vì nó có engine xử lý tốc độ cao, khả năng chèn dữ liệu nhanh ghê
gớm, và hỗ trợ mạnh cho các chức năng chuyên dụng của web như tìm
kiếm văn bản nhanh. Những tính năng này cũng được áp dụng cho môi
trường lưu trữ dữ liệu mà MySQL tăng cường đến hàng terabyte cho các
server đơn. Các tính năng khác như bảng nhớ chính, cây B và chỉ số băm,
và bảng lưu trữ đã được cô lại để giảm các yêu cầu lưu trữ đến 80% làm

Lý Văn Trà – Lớp 16CNTT1 (2016-2020)


11

cho MySQL trở thành lựa chọn tốt nhất cho cả ứng dụng web và các ứng
dụng doanh nghiệp.

- Chế độ bảo mật dữ liệu mạnh
Vì bảo mật dữ liệu cho một công ty là công việc số một của các
chuyên gia về cơ sở dữ liệu, MySQL đưa ra tính năng bảo mật đặc biệt
chắc chắn dữ liệu sẽ được bảo mật tuyệt đối. Trong việc xác nhận truy cập
cơ sở dữ liệu, MySQL cung cấp các kĩ thuật mạnh mà chắc chắn chỉ có
người sử dụng đã được xác nhận mới có thể truy nhập được vào server cơ
sở dữ liệu, với khả năng này để chặn người dùng ngay từ mức máy khách
là điều có thể làm được. SSH và SSL cũng được hỗ trợ để chắc chắn các
kết nối được an toàn và bảo mật. Một đối tượng framework đặc quyền
được đưa ra mà người sử dụng chỉ có thể nhìn thấy dữ liệu, các hàm mã
hóa và giải mã dữ liệu mạnh chắc chắn rằng dữ liệu sẽ được bảo mật. Cuối
cùng, tiện ích backup và recovery cung cấp bởi MySQL và các hãng phần
mềm thứ 3 cho phép backup logic và vật lý hoàn thiện cũng như recovery
toàn bộ hoặc tại một thời điểm nào đó.
- Sự phát triển ứng dụng hỗn hợp
Một trong số các lý do khiến cho MySQL là cơ sở dữ liệu mã nguồn
mở phổ biến nhất thế giới là nó cung cấp hỗ trợ hỗn hợp cho bất kì sự phát
triển ứng dụng nào cần. Trong cơ sở dữ liệu, hỗ trợ có thể được tìm thấy
trong các stored procedure, trigger, function, view, cursor, ANSI-standard
SQL, và nhiều nữa. Với các ứng dụng nhúng, thư viện plug-in có sẵn để
nhúng vào cơ sở dữ liệu MySQL hỗ trợ trong bất kì ứng dụng nào.
MySQL cũng cung cấp các bộ kết nối như: ODBC, JDBC, … để cho phép
tất cả các form của ứng dụng sử dụng MySQL như một server quản lí dữ
liệu được ưu tiên.
- Dễ dàng quản lý
Lý Văn Trà – Lớp 16CNTT1 (2016-2020)


12


MySQL trình diễn khả năng cài đặt nhanh đặc biệt với thời gian ở
mức trung bình từ lúc download phần mềm đến khi cài đặt hoàn thành chỉ
mất chưa đầy 15 phút. Điều này đúng cho dù flatform là Microsoft
Windows, Linux, Macintosh hay Unix. Khi đã được cài đặt, tính năng tự
quản lý như tự động mở rộng không gian, tự khởi động lại, và cấu hình
động sẵn sàng cho người quản trị cơ sở dữ liệu làm việc. MySQL cũng
cung cấp một bộ hồn thiện các cơng cụ quản lý đồ họa cho phép một
DBA quản lý, sửa chữa, và điều khiển hoạt động của nhiều server MySQL
từ một máy trạm đơn. Nhiều công cụ của các hãng phần mềm thứ 3 cũng
có sẵn trong MySQL để điều khiển các tác vụ từ thiết kế dữ liệu và ETL,
đến việc quản trị cơ sở dữ liệu hoàn thiện, quản lý công việc, và thực hiện
kiểm tra.
- Mã nguồn mở tự do và hỗ trợ 24/7
Nhiều công ty lưỡng lự trong việc giao phó tồn bộ cho phần mềm
mã nguồn mở vì họ tin họ khơng thể tìm được một cách hỗ trợ hay mạng
lưới an toàn phục vụ chuyên nghiệp, hiện tại, họ tin vào phần mềm có bản
quyền để chắc chắn về sự thành cơng tồn diện cho các ứng dụng chủ chốt
của họ. Những lo lắng của họ có thể được dẹp bỏ với MySQL, sự bồi
thường là có trong mạng lưới MySQL.
- Tổng chi phí thấp nhất
Bằng cách sử dụng MySQL cho các dự án phát triển mới, các công ty
đang thấy rõ việc tiết kiệm chi phí. Được hồn thành thơng qua sử dụng
server cơ sở dữ liệu MySQL và kiến trúc scale-out, các doanh nghiệp đã
tìm ra cái mà họ có thể đạt được ở mức ngạc nhiên về khả năng xử lý.
Thêm vào đó, tính tin cậy và dễ duy trì của MySQL ở mức trung bình mà
người quản trị cơ sở dữ liệu không phải mất nhiều thời gian sửa chữa hay
vấn đề thời gian chết.
Lý Văn Trà – Lớp 16CNTT1 (2016-2020)



13

CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ WEBSITE
2.1. Phân tích yêu cầu hệ thống
2.1.1. Mô tả hệ thống
Hệ thống được thiết kế nhắm đến các khách hàng muốn đặt vé du lịch
hoặc muốn tìm hiểu về tour du lịch.
Người quản trị hệ thống là Admin quản lý tất các thông tin khách
hàng,tour du lịch,…
2.1.2. Yêu cầu chức năng của hệ thống
Hệ thống được chia với ba loại đối tượng sử dụng hệ thống, chức năng
quyền hạn củ thể ứng với từng loại đối tượng:
- Admin: là người quản lý tour du lịch,quản lý người dùng, quản lý thông
tin người dùng, quản lý slider, quản lý đặt vé, quản lý hình ảnh,… là người có
quyền cao nhất trong hệ thống.
- User: là người dùng sau khi đăng nhập có các quyền xem tour, đặt
vé,quản lý thông tin cá nhân, đăng blog,…
- Guest: là đối tượng khơng đăng nhập chỉ có quyền cơ bản là xem
thông tin tour, các thông tin trên web.
2.1.3. Yêu cầu phi chức năng
- Phân quyền chặt chẽ:Quản lý người dùng thông qua các chức năng và
dữ liệu.Các chức năng được thiết kế độc lập giúp linh hoạt hơn trong việc tổ
chức.
- Ổn định,xử lý nhanh:Các thao tác được quản lý chặt chẽ.Các số liệu đã
nhập được ràng buộc trên nên tảng hệ thống quản lý tổng thể.Các thủ tục xử
lý được phân chia tối ưu, do đó tốc độ tính tốn và xử lý rất nhanh.
- Hỗ trợ cùng nhiều người dùng:Giải pháp được thiết kế, nhằm hỗ trợ
nhiều người dùng cùng lúc.
2.2 Phân tích thiết kế hệ thống
Lý Văn Trà – Lớp 16CNTT1 (2016-2020)



14

2.2.1 Sơ đồ BFD
Sơ đồ chức năng kinh doanh hay mơ hình phân rã chức năng trong tiếng
Anh là business function diagram, viết tắt là BFD.
Sơ đồ chức năng kinh doanh (BFD) được sử dụng để thực hiện phân tích
chức năng, mô tả sự phân chia các chức năng thành các chức năng nhỏ hơn
trong hệ thống.
Mục đích của phân tích chức năng là xác định một cách chính xác và cụ
thể các chức năng chính của hệ thống thơng tin. Trong giai đoạn phân tích
chức năng, người ra phải xác định một cách rõ ràng những gì mà hệ thống sẽ
phải thực hiện mà chưa quan tâm tới phương pháp thực hiện các chức năng
ấy.
Như vậy, việc phân tích phải đề cập đến những mô tả cơ sở ban đầu. Các
mơ tả này sẽ được trình bày rõ ràng trong một tài liệu gửi cho người sử dụng
phê chuẩn trước khi tiến hành những cơng việc tiếp theo. [1]

Hình 2 Sơ đồ BFD
Lý Văn Trà – Lớp 16CNTT1 (2016-2020)


15

2.2.2 Sơ đồ DFD
DFD (Data Flow Diagram) là sơ đồ luồng đi dữ liệu trong hệ thống sơ đồ
DFD được vẽ khi có phân rã chức nắng BFD và các yêu cầu từ thu thập yêu
cần trong hệ thống để biết được người dùng thao tác trên hệ thống và luồng đi
dữ liệu sẽ được xử lý như thế nào.

Sơ đồ luồng dữ liệu trong tiếng Anh là Data Flow Diagram, viết tắt là
DFD.
Sơ đồ luồng dữ liệu (DFD) là một mơ hình hệ thống cân xứng cả dữ liệu
và tiến trình (progress). Nó chỉ ra cách thơng tin chuyển vận từ một tiến trình
hoặc từ chức năng này trong hệ thống sang một tiến trình hoăc chức năng
khác.
Với sơ đồ BFD, chúng ta đã xem xét hệ thống thông tin theo quan điểm
"chức năng" thuần túy. Bước tiếp theo trong q trình phân tích là xem xét chi
tiết hơn về các thông tin cần cho việc thực hiện các chức năng đã được nêu và
những thông tin cần cung cấp để hồn thiện chúng. Cơng cụ mơ hình được sử
dụng cho mục đích này là sơ đồ luồng dữ liệu DFD.
DFD là công cụ dùng để trợ giúp cho bốn hoạt động chính sau đây của
các phân tích viên hệ thống trong q trình phân tích thơng tin:
- Phân tích: DFD được dùng để xác định yêu cầu của người sử dụng
- Thiết kế: DFD dùng để vạch kế hoạch và minh họa các phương án cho
phân tích viên hệ thống và người dùng khi thiết kế hệ thống mới.
- Biểu đạt: DFD là công cụ đơn giản, dễ hiểu đối với phân tích viên hệ
thống và người dùng
- Tài liệu: DFD cho phép biểu diễn tài liệu phân tích hệ thống một cách
đầy đủ, súc tích và ngắn gọn. DFD cung cấp cho người sử dụng một cái nhìn
tổng thể về hệ thống và cơ chế lưu chuyển thơng tin trong hệ thống đó.

Lý Văn Trà – Lớp 16CNTT1 (2016-2020)


16

- Sơ đồ ngữ cảnh:
Sơ đồ ngữ cảnh (Context diagram): đầy là sơ đồ mức cao nhất. Nó cho ra
một cái nhìn tổng qt về hệ thống trong mơi trường nó đang tồn tại. Ở mức

này, sơ đồ ngữ cảnh chỉ có một tiến trình duy nhất, các tác nhân và các luồng
dữ liệu (khơng có kho dữ liệu).
Sơ đồ mức 0 là sơ đồ phân rã từ sơ đồ ngữ cảnh. Với mục đích mơ tả hệ
thống chi tiết hơn, sơ đồ mức 0 được phân rã từ sơ đồ ngữ cảnh với các tiến
trình được trình bày chính là các mục chức năng chính của hệ thống.
Sơ đồ mức i (i >= 1) là sơ đồ được phân rã từ sơ đồ mức i-1. Mỗi sơ đồ
phân rã mức sua chính là sự chi tiết hóa một tiến trình mức trước. Quá trình
phân rã sẽ dừng khi đạt được sơ đồ luồng dữ liệu sơ cấp (khi một tiến trình là
một tính tốn hay thao tác dữ liệu đơn giản, khi mỗi luồng dữ liệu không cần
chia nhỏ hơn nữa.
Để dễ dàng cho việc xây dựng sơ đồ luồn dữ liệu người ta phải dựa vào
sơ đồ chức năng kinh doanh BFD trên nguyên tắc mỗi chức năng tương ứng.
Thể hiện cái nhìn tổng quan của hệ thống.

Hình 3 Sơ đồ ngữ cảnh
Lý Văn Trà – Lớp 16CNTT1 (2016-2020)


17

- Sơ đồ DFD 0
Sơ đồ phân rã từ sơ đồ ngữ cảnh, thể hiện chức năng và luồng dữ liệu
của hệ thống.

Hình 4 DFD 0 Chức năng và luồng của hệ thống
- Sơ đồ DFD 1 của đăng kí tài khoản
Lý Văn Trà – Lớp 16CNTT1 (2016-2020)


18


Thể hiện luồng dữ liệu đăng ký tài khoản của một Guest lên hệ thống.
Khi Guest đăng ký dữ liệu sẽ được kiểm tra theo đúng định dạng hay không
hay có tồn tại trong hệ thống hay chưa. Nếu tất cả điều thỏa mãn sẽ cho phép
một đăng ký một tài khoản mới.

Hình 5 DFD 1 Đăng kí tài khoản
- Sơ đồ DFD 1 của xem thông tin tour
Sơ đồ này thể hiện luồng đi của dữ liệu đối với cả ba đối tượng
User,Guest,Admin.

Lý Văn Trà – Lớp 16CNTT1 (2016-2020)


×