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

xây dựng mạng xã hội cho người du lịch bụi

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.12 MB, 66 trang )

TRƯỜNG ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA KHOA HỌC VÀ KĨ THUẬT MÁY TÍNH

XÂY DỰNG MẠNG XÃ HỘI
CHO NGƯỜI DU LỊCH BỤI
GVHD : Ths. NGUYỄN THỊ ÁI THẢO
Ths. NGUYỄN ĐÌNH THÀNH

SVTH : LỤC MINH TUẤN

(51004203)

NGUYỄN VĂN TÂN

(51002910)

PHẠM VĂN GIANG

(50900679)

TP. HỒ CHÍ MINH, 12/2013


LỜI CẢM ƠN.
Chúng tôi xin chân thành cảm ơn khoa Khoa Học và Kĩ Thuật Máy Tính, trường đại học
Bách Khoa Tp Hồ Chí Minh, đại học Quốc gia Tp.Hồ Chí Minh đã tạo điều kiện thuận lợi cho
chúng tôi trong suốt quá trình học tập và thực hiện đề tài. Chúng tôi xin chân thành cảm ơn các
thầy cô trong khoa Khoa Học và Kĩ Thuật Máy Tính đã tận tình giảng dạy, trang bị cho chúng
tôi những kiến thức cần thiết trong suốt những năm học qua.
Chúng tôi xin gửi lời cảm ơn chân thành nhất đến cô Nguyễn Thị Ái Thảo và thầy Nguyễn


Đình Thành, giảng viên hướng dẫn trực tiếp đề tài. Cô và thầy là những người đã theo từng
bước đi của nhóm, sửa chữa những sai sót cũng như góp ý để cho chúng tôi thực hiện được đề
tài này.
Chúng tôi cũng xin cảm ơn tới gia đình, bạn bè đã sát cánh bên cạnh chúng tôi, giúp đỡ để
chúng tôi có điều kiện tốt nhất cả về vật chất và tinh thần trong quá trình thực hiện đề tài.
Mặc dù đã có cố gắng trong phạm vi và khả năng cho phép, nhưng không thể tránh khỏi
những thiếu sót, rất mong được sự góp ý, chỉ bảo thêm của quý thầy cô và các bạn.
Cuối cùng xin chân thành cảm ơn thầy cô và các bạn đã giành thời gian đọc tài liệu này.

Tp.Hồ Chí Minh, tháng 12 năm 2013.

Page 2


TÓM TẮT NỘI DUNG ĐỀ TÀI.
Thực tập tôt nghiệp là một giai đoạn đối với đề tài : Xây dựng mạng xã hội cho người du lịch
bụi được thực hiện trong vòng mười hai tuần. Trong quá trình thực hiện đề tài, chúng tôi đã tìm
hiểu về nhu cầu du lịch tại Việt Nam, đặc biệt là nhu cầu của đối tượng thường hay đi du lịch cá
nhân hoặc theo nhóm với mục đích khám phá mà không theo bất kì một tour du lịch của công ty
nào. Từ đó nhóm đã phân tích yêu cầu và đưa ra mô hình mạng xã hội cho người dùng thường hay
đi du lịch với hình thức kể trên. Song song với đó là tìm hiểu những vấn đề về kĩ thuật như
CodeIgniter Framework, các bài toán về lập kế hoạch, đặt phòng, chọn điểm đến, chọn phương
tiện, đặt bàn nhà hàng để làm kiến thức bổ trợ hoàn thành đề tài. Sản phẩm của đề tài là một hệ
thống gồm hai nhóm chức năng chính là: nhóm chức năng mạng xã hội với các chức năng như
chia sẻ trạng thái, thích, bình luận … và nhóm chức năng du lịch với các chức năng như lên kế
hoạch, tìm kiếm nhà hàng, khách sạn ….

Tp.Hồ Chí Minh, tháng 12 năm 2013

Page 3



MỤC LỤC

LỜI CẢM ƠN.............................................................................................................................................. 2
TÓM TẮT NỘI DUNG ĐỀ TÀI. ............................................................................................................... 3
MỤC LỤC BẢNG ....................................................................................................................................... 7
DANH SÁCH THUẬT NGỮ VÀ KHÁI NIỆM. ...................................................................................... 9
CHƯƠNG I GIỚI THIỆU..................................................................................................................... 10
1.1

Giới thiệu đề tài. ........................................................................................................................ 10

1.2

Mục tiêu và phạm vi đề tài. ...................................................................................................... 11

1.3

Cấu trúc bài báo cáo. ................................................................................................................ 11

CHƯƠNG II CƠ SỞ LÝ THUYẾT VÀ CÔNG NGHỆ ...................................................................... 12
2.1

Mạng xã hội. .............................................................................................................................. 12

2.2

Mạng du lịch. ............................................................................................................................. 13


2.1

Công nghệ. ................................................................................................................................. 15

2.1.1

CodeIgniter Framwork..................................................................................................... 15

2.1.2

JQuery ................................................................................................................................ 17

2.1.3

Ajax .................................................................................................................................... 19

2.2

Trực quan hóa dữ liệu .............................................................................................................. 20

CHƯƠNG III PHÂN TÍCH YÊU CẦU ................................................................................................. 21
3.1

Chức năng hệ thống. ................................................................................................................. 21

3.2

Lược đồ Use-Case...................................................................................................................... 22

3.3


Đặc tả User-Case ....................................................................................................................... 25

CHƯƠNG IV THIẾT KẾ HỆ THỐNG ................................................................................................. 41
4.1

Kiến trúc hệ thống. ................................................................................................................... 41

4.2

Thiết kế cơ sở dữ liệu ................................................................................................................ 43

4.2.1

Mô hình thực thể liên kết – ERD ..................................................................................... 43

4.2.2

Ánh xạ sang mô hình dữ liệu quan hệ ............................................................................. 46

CHƯƠNG V HIỆN THỰC HỆ THỐNG ............................................................................................. 59
5.1

Công nghệ sử dụng.................................................................................................................... 59

5.2

Xây dựng phiên bản thử nhiệm ............................................................................................... 59

5.2.1


Trang xác thực người dùng .............................................................................................. 59

5.2.2

Trang chủ của hệ thống .................................................................................................... 61

Page 4


5.2.3

Trang lập kế hoạch ........................................................................................................... 61

5.2.4

Chức năng quản lý của người quản trị ........................................................................... 63

CHƯƠNG VI TỔNG KẾT.................................................................................................................... 64
6.1

Kết luận ...................................................................................................................................... 64

6.1.1

Những việc làm được ........................................................................................................ 64

6.1.2

Những việc làm chưa được. .............................................................................................. 64


6.1.3

Đánh giá hệ thống. ............................................................................................................ 64

6.2

Hướng phát triển lên luận văn. ................................................................................................ 65

DANH MỤC TÀI LIỆU THAM KHẢO. ................................................................................................ 66

Page 5


MỤC LỤC HÌNH.

Hình 2.1: Cấu trúc CI ................................................................................................................................... 17
Hình 3.1 : Lược đồ Use-Case cho người dùng. ............................................................................................ 22
Hình 3.2 : lược đồ Use case cho người quản trị hệ thống. ......................................................................... 23
Hình 3.3 : lược đồ Use case chi tiết cho Use case Manage Restaurant. ..................................................... 23
Hình 3.4 : lược đồ Use case chi tiết cho Use case Manage Hotel. .............................................................. 24
Hình 3.5 : Lược đồ Use case chi tiết cho Use case Manage Tranportion. .................................................. 24
Hình 3.6 : lược đồ Use case chi tiết cho Use case Manage Attraction. ...................................................... 24
Hình 3.7 : lược đồ Use case chi tiết cho Use case Manage Post................................................................. 25
Hình 3.8 : lược đồ Use case chi tiết cho Use case Manage User. ............................................................... 25
Hình 4.1 : Kiến trúc hệ thống ...................................................................................................................... 41
Hình 4.2 : Cấu trúc mô hình HMVC ............................................................................................................. 42
Hình 4.3 : mô hình dữ liệu ERD. .................................................................................................................. 45
Hình 5.1 : Trang login .................................................................................................................................. 59
Hình 5.2 : Trang đăng kí .............................................................................................................................. 60

Hình 5.3 : Trang tạo lại mật khẩu. ............................................................................................................... 60
Hình 5.4 : Trang chủ của hệ thống .............................................................................................................. 61
Hình 5.5 : Trang tạo mới kế hoạch .............................................................................................................. 61
Hình 5.6 : Trang chọn điểm đến.................................................................................................................. 62
Hình 5.7 : Trang chọn phòng khách sạn ...................................................................................................... 62
Hình 5.8 : Trang chọn phương tiện ............................................................................................................. 63
Hình 5.9 : Trang của người quản trị hệ thống ............................................................................................. 63

Page 6


MỤC LỤC BẢNG

Bảng 3.1 : Đặc tả Use Case .......................................................................................................................... 27
Bảng 3.2 : Đặc tả Use Case Add friend ........................................................................................................ 27
Bảng 3.3 : Đặc tả Use Case Edit profile ....................................................................................................... 28
Bảng 3.4 : Đặc tả Use Case Comment ......................................................................................................... 29
Bảng 3.5 : Đặc tả Use Case Search .............................................................................................................. 29
Bảng 3.6 : Đặc tả Use Case View news........................................................................................................ 30
Bảng 3.7 : Đặc tả Use Case Show history .................................................................................................... 30
Bảng 3.8 : Đặc tả Use Case Post status ....................................................................................................... 31
Bảng 3.9 : Đặc tả Use Case Manage media ................................................................................................. 32
Bảng 3.10 : Đặc tả Use Case Register .......................................................................................................... 32
Bảng 3.11 : Đặc tả Use Case Send mail ....................................................................................................... 33
Bảng 3.12 : Đặc tả Use Case Manage plan .................................................................................................. 34
Bảng 3.13 : Đặc tả Use Case Manage Restaurant ....................................................................................... 35
Bảng 3.14 : Đặc tả Use Case Manage Hotel ................................................................................................ 36
Bảng 3.15 : Đặc tả Use Case Manage Tranportion ..................................................................................... 37
Bảng 3.16 : Đặc tả Use Case Manage post. ................................................................................................. 38
Bảng 3.17 : Đặc tả Use Case Manage User ................................................................................................. 39

Bảng 3.18 : Đặc tả Use Case Manage Attraction ........................................................................................ 40
Bảng 3.19 : Đặc tả Use Case Manage membership .................................................................................... 40
Bảng 4.1 : Bảng Attraction .......................................................................................................................... 46
Bảng 4.2 : Bảng Bring .................................................................................................................................. 47
Bảng 4.3 : Bảng Car ..................................................................................................................................... 47
Bảng 4.4 : Bảng City .................................................................................................................................... 48
Bảng 4.5 : Bảng Comment_image ............................................................................................................... 48
Bảng 4.6 : Bảng Comment_status ............................................................................................................... 48
Bảng 4.7 : Bảng Comment_video ................................................................................................................ 49
Bảng 4.8 : Bảng Eat ..................................................................................................................................... 49
Bảng 4.9 : Bảng Flight.................................................................................................................................. 50
Bảng 4.10 : Bảng Friend .............................................................................................................................. 50
Bảng 4.11 : Bảng Hotel_image ................................................................................................................... 50
Bảng 4.12 : Bảng Hotel ................................................................................................................................ 51
Bảng 4.13 : Bảng Image............................................................................................................................... 51
Bảng 4.13 : Bảng Moto................................................................................................................................ 52
Bảng 4.14 : Bảng Move ............................................................................................................................... 52
Bảng 4.15 : Bảng Other ............................................................................................................................... 52
Bảng 4.16 : Bảng Plan.................................................................................................................................. 53
Bảng 4.17 : Bảng Plane................................................................................................................................ 53
Bảng 4.18 : Bảng Profile .............................................................................................................................. 54
Bảng 4.19 : Bảng Restaurant ....................................................................................................................... 54
Bảng 4.20 : Bảng Ride ................................................................................................................................. 54
Bảng 4.21 : Bảng Room ............................................................................................................................... 55

Page 7


Bảng 4.22 : Bảng Status............................................................................................................................... 55
Bảng 4.23 : Bảng Stay .................................................................................................................................. 56

Bảng 4.24 : Bảng Train ................................................................................................................................ 56
Bảng 4.25 : Bảng Trains ............................................................................................................................... 56
Bảng 4.26 : Bảng User ................................................................................................................................. 57
Bảng 4.27 : Bảng Video ............................................................................................................................... 57
Bảng 4.28 : Bảng Visit_attrac ...................................................................................................................... 58
Bảng 4.29 : Bảng Visit.................................................................................................................................. 58

Page 8


DANH SÁCH THUẬT NGỮ VÀ KHÁI NIỆM.

Thuật ngữ

Tên đầy đủ

Ghi chú

GDP

Gross Domestic Product

Tổng sản phẩm của một quốc gia.

HMVC

Hierarchical model–view–controller

Mô hình xây dựng hệ thống website.


GUI

Graphical User Interface

Giao diện người dùng đồ họa.

MVC

Model view controller

Mô hình xây dựng hệ thống website.

CI

CodeIgniter Framework

Framework lập trình PHP

URL

Uniform Resource Locator

Dùng tham chiếu tài nguyên trên Internet.

XSS

Cross-site scripting

XML


eXtensible Markup Language

EDP

Event-Driven Programming

Lập trình hướng sự kiện

HTML

HyperText Markup Language

Ngôn ngữ đánh giấu siêu văn bản

DOM

Document Object Model

Mô hình tài liệu đối tượng

Page 9


CHƯƠNG I GIỚI THIỆU

1.1 Giới thiệu đề tài.
Kinh tế xã hội ngày càng phát triển thì ngành du lịch và dịch vụ đang ngày càng chiếm tỉ
trọng cao trong GDP (Gross Domestic Product). Tại các nước phát triển thì tỉ lệ ngành du lịch và
dịch vụ luôn chiếm trên 50% tổng GDP [11] . Từ đó ta thấy được tiềm năng to lớn mà ngành du lịch
mang lại cho một quốc gia.

Tại Việt Nam, theo thống kê của Tổng cục Du Lịch thì số lượng khách quốc tế đến Việt
Nam trong năm 2012 là 6,8 triệu, khách nội địa là 32,5 triệu lượt

[12]

. Nhưng đó chỉ là các con số

thống kê được từ các công ty lữ hành, các khách đi theo tour, ngoài hình thức kể trên còn hàng
trăm ngàn lượt khách đi theo tự phát, đi theo nhóm nhỏ mà không theo bất kì tour của một công
ty nào. Vậy làm sao để hỗ trợ không chỉ cho các khách đi theo tour mà còn các khách hàng muốn
đi du lịch nhưng không theo tour biết được các địa điểm du lịch hấp dẫn, phương tiện di chuyển
hợp lý, nhà hàng khách sạn nổi tiếng… Từ những nhu cầu trên đòi hỏi chúng ta phải sớm cho ra
đời một dịch vụ mới hỗ trợ cho những đối tượng này.
Từ những lý do đã nói ở trên, nhóm đã quyết định tìm hiểu và xây dựng một hệ thống ứng
dụng, dịch vụ nhằm phục vụ cho mọi người có nhu cầu đi du lịch có thể thuận tiện nhất cho việc
lên lịch trình du lịch cho mình. Qua đó cũng giới thiệu các thắng cảnh trên thế giới cũng như tăng
cường quảng bá về hình ảnh, danh lam thắng cảnh nổi tiếng ở Việt Nam. Nhằm tạo điều kiện cho
ngành du lịch cũng như các dịch vụ đi kèm phát triển hơn nữa, đóng góp thêm vào sự phát triển
của nước nhà.
Trong nhiều năm trở lại đây, rất nhiều trang mạng xã hội ra đời và ngày càng đi sâu vào cuộc
sống đã đơn giản hóa các phương thức thanh toán và kết nối con người với nhau. Từ đó mở ra một
hướng mới trong công tác quảng cáo. Thay vì tốn nhiều chi phí bằng các hình thức trước đây, tốn
chi phí và mang lại không nhiều hiệu quả thì việc lựa chọn quảng cáo qua mạng xã hội đã và đang
mang lại nhiều hiệu quả. Qua đó ta có thể nhận thấy được vai trò ngày càng lớn của mạng xã hội.
Việc quảng bá du lịch thông qua mạng xã hội chắc chắn sẽ mang lại nhiều hiệu quả hơn.
Codeigniter Framewrok là một nền tảng đang được nhiều hệ thống lựa chọn bởi nó cung cấp
nhiều thư viện, helper được xây dựng sẵn, cú pháp đơn giản, giúp người lập trình nhanh chóng

Page 10



phát triển được hệ thống họ mong muốn. Ngoài ra, Codeigniter còn dễ dàng cho người dùng tích
hợp các thư viện mình viết hoặc của các framework khác.
Tìm hiểu và xây dựng mạng xã hội cho người du lịch bụi là đề tài có tính ứng dụng thực tế
cao. Bên cạnh với sự phát triển và thay đổi nhu cầu của người sử dụng thì hệ thống có khả năng
mở rộng và tích hợp những chức năng mới.

1.2 Mục tiêu và phạm vi đề tài.
Tầm vực của đề tài là nghiên cứu và xây dựng hệ thống mạng xã hội cho người đi du lịch bụi
trên nền tảng Codeigniter Framework. Ở giai đoạn thực tập tốt nghiệp thì đề tài sẽ tập trung vào
xây dựng hệ thống với đầy đủ các chức năng cơ bản như chức năng về mạng xã hội và chức năng
về du lịch. Ngoài ra, nhằm hướng khả năng áp dụng thực tế, hệ thống được xây dựng có khả năng
tích hợp thêm chức năng mới và dễ dàng trong quá trình chuyển đổi các dịch vụ được cung cấp.

1.3 Cấu trúc bài báo cáo.
Nội dung của bài báo cáo trình bày gồm :
-

Chương I : Giới thiệu chung về đề tài.

-

Chương II : Trình bày về kiến thức nghiệp vụ và các công nghệ cần thiết để thực hiện
đề tài.

-

Chương III : Phân tích yêu cầu và chức năng của hệ thống.

-


Chương IV : Thiết kế hệ thống dựa trên những tài liệu đã phân tích ở chương III.

-

Chương V : Hiện thực đề tài.

-

Chương VI : Trình bày một số kết luận và hướng phát triển lên luận văn của đề tài.

-

Danh mục tài liệu tham khảo.

Page 11


CHƯƠNG II CƠ SỞ LÝ THUYẾT VÀ CÔNG NGHỆ
2.1 Mạng xã hội.
Mạng xã hội được biết đến là một hệ thống chia sẻ thông tin, cảm xúc của người dùng. Hoạt
động của mạng xã hội dựa trên nguyên tắc chia sẻ các thông tin được thiết lập bởi chính người
dùng. Từ việc chia sẻ cảm xúc, hình ảnh, video với nhau trên mạng mà mang chúng ta tới gần nhau
hơn, làm phai nhạt đi khoảng cách địa lý cũng như các khoảng cách về dân tộc tôn giáo từ đó cộng
đồng có thể tìm được tiếng nói chung để cùng nhau chia sẻ, giúp đỡ lẫn nhau trong những lúc khó
khăn hay đơn giản là nơi bạn có thể nói ra những tâm sự mà ngoài cuộc sống thật bạn không đủ
can đảm để nói lên điều đó.
Xuất phát từ nhu cầu đó, đã có rất nhiều hệ thống mạng xã hội ra đời phục vụ những nhu cầu
của con người. Tiêu biểu có thể kể tới mạng xã hội nổi tiếng như Facebook, Twitter , Google+.
Thông qua mạng xã hội thì các đơn vị tổ chức, công ty sự kiện có thể quảng cáo, truyền đạt thông

tin, các hoạt động khuyến mãi nhằm thu hút khách hàng. Đây có thể là hình thức quảng cáo rất
hiệu quả, bởi theo tâm lý thì khi có một người khách hàng nào đó đã sử dụng và giới thiệu sản
phẩm sẽ làm cho khách hàng cảm thấy tin tưởng hơn gấp nhiều lần. Có thể nói mạng xã hội đã
mang lại không ít lợi nhuận cho doanh nghiệp cũng như cho người dùng. Vì thông qua đó người
dùng có thể biết được thông tin hữu ích và đáng tin cậy do chính những người dùng khác trong hệ
thống cung cấp.
Hơn nữa, sự bùng nổ của công nghệ thông tin, mức sống của con người ngày càng được nâng
cao, họ dành càng nhiều thời gian hơn cho việc sử dụng internet. Nhờ đó mà càng nhiều dịch vụ
được ra đời để thích ứng với sự thay đổi này. Mạng xã hội cũng từ đó mà phát triển hơn.
Chúng ta cùng tìm hiểu mạng xã hội phổ biến nhất ở Việt Nam hiện nay.
 Facebook.
“Facebook là một website mạng xã hội truy cập miễn phí do công ty Facebook, Inc điều
hành. Người dùng có thể tham gia các mạng lưới được tổ chức theo thành phố, nơi làm việc,
trường học … để liên kết và giao tiếp với người khác. Mọi người cũng có thể kết bạn, gửi tin
nhắn của họ và cập nhập hồ sơ cá nhân của mình để thông báo cho bạn bè biết.” [1]

Page 12


Thế giới hiện có hơn 7 tỉ người và trung bình 1/7 trong số đó sử dụng Facebook, một con
số rất đáng tự hào với một dịch vụ mạng xã hội được phát triển từ năm 2003. Trước đó,
Facebook đạt 100 triệu người dùng vào năm 2008 và sau đó tăng lên một cách nhanh chóng.
Sự phát triển nhanh chóng của Facebook và các tính năng, dịch vụ đi kèm với nó cũng phát
triển ngày một mạnh mẽ hơn. Người dùng có thể cá nhân hóa nhiều tính năng trên Facebook,
điều này mang lại cho họ cảm giác an toàn và thoải mái hơn so với khi Facebook mới được
đưa ra sử dụng những năm đầu.[10]
Tuy nhiên, Facebook chưa đưa ra nhiều sự hỗ trợ cho những người đi du lịch. Hiện nay,
Facebook chưa cung cấp những tính năng cần thiết cho người đi du lịch cụ thể như tìm địa
điểm du lịch, khách sạn … và lập lịch trình du lịch cho bản thân. Thay vào đó nếu người
dùng muốn biết các thông tin về du lịch thì họ có thể tham gia các Fanpage về du lịch trên

Facebook. Tuy nhiên các thông tin trên Fanpage không thật sự đầy đủ và phù hợp với nhu
cầu của người có nhu cầu đi du lịch. Các địa điểm du lịch hấp dẫn, nhà hàng, khách sạn trên
các Fanpage chủ yếu được cung cấp dưới dạng thông báo do những người trong Fanpage
cung cấp, thông qua đó những người dùng khác có thể bình luận, thích. Khi có nhu cầu về
thông tin thì có thể lên để tham khảo thông qua lượng like, phân tích bình luận của người
dùng. Tuy nhiên các thông tin này thường thiếu hệ thống, khó cho người dùng tìm kiếm và
các thông tin được đưa ra bởi các người dùng khác nên có phần thiếu khách quan và tổng
quát. Chính vì vậy nên khi muốn đi du lịch thì đa phần người dùng Facebook sẽ tham khảo
thông tin du lịch trên các hệ thống website khác chuyên biệt hơn về du lịch.

2.2 Mạng du lịch.
Cuộc sống đang ngày một phát triển, nhu cầu con người đang ngày càng tăng. Đặc biệt do
cuộc sống năng động khiến nhiều người bị stress trong công việc, hay các vấn đề trong cuộc sống
nên họ có nhu cầu đi du lịch để nghỉ ngơi giải trí nhiều hơn Nếu như mạng xã hội thực hiện các
chức năng đã kể trên thì mạng du lịch lại mang cho chúng ta những thông tin rất bổ ích dành cho
việc du lịch, khám phá. Mạng du lịch sẽ cung cấp cho ta các điểm đến du lịch tham quan, hay giới
thiệu những địa danh nổi tiếng tại một khu vực mà ta lựa chọn. Tốc độ phát triển của ngành du
lịch là rất nhanh và đang ngày càng mang lại cho quốc gia một nguồn thu lớn. Vì vậy nên những
dịch vụ phục vụ cho du lịch ra đời ngày một nhiều.

Page 13


Mạng du lịch không chỉ giới thiệu các điểm đến hấp dẫn tại vùng mà người dùng lựa chọn
mà nó còn cung cấp các dịch vụ tiện ích đi kèm rất hữu dụng cho người du lịch. Đó là dịch vụ đặt
phòng tại khách sạn, đặt vé máy bay, tàu hỏa … hay đặt bàn ăn tại một nhà hàng. Điều này mang
lại cho người dùng cảm giác thoải mái, tiện dụng. Họ không phải mất quá nhiều công sức trong
việc tìm kiếm khách sạn, nhà hàng … tại một nơi mà có thể họ chưa bao giờ tới, giúp họ không có
cảm giác bỡ ngỡ khi đặt chân tới một miền đất mới.
Như đã trình bày ở phần mở đầu, ở Việt Nam hiện nay thì người đi du lịch bụi ngày một

nhiều. Do hình thức này mang lại cho người đi du lịch sự tự do, thoải mái hay một sự riêng tư cần
thiết, muốn một mình khám phá thế giới tự nhiên. Hiện nay đã có những website phát triển dịch
vụ này nhằm đáp ứng nhu cầu cho người du lịch bụi. Sau đây chúng ta sẽ tìm hiểu về một số
website phục vụ cho những người du lịch bụi phổ biến tại Việt Nam.
 Dulichbui.org [4]
Dulichbui.org là một website cung cấp thông tin về các địa điểm du lịch, các khách sạn,
phương tiện di chuyển khi đi du lịch. Các thông tin này rất cần thiết khi bạn muốn thực hiện
một chuyến du lịch tới một miền đất mới mà bạn chưa từng tới đó trước đây.
Dulichbui.org cũng như phần lớn các website về du lịch, đều chưa cung cấp cho người
dùng khả năng chia sẻ thông tin, hình ảnh mà họ muốn. Hay chưa kết nối được những người
dùng trong hệ thống, các thành viên hầu như không thể liên lạc trực tiếp thông qua hệ thống
mà họ phải chia sẻ với nhau thông qua một diễn đàn mạng xã hội khác. Chính vì điều này
cũng làm giảm đáng kể thời gian mà họ sử dụng hệ thống của dulichbui.org, chỉ khi nào cần
về thông tin du lịch thì mới sử dụng. Hơn nữa, người dùng trong dulichbui.org không được
cung cấp tính năng tạo kế hoạch du lịch cho mình. Các tính năng như đặt phòng khách sạn,
thuê phương tiện thì được chuyển qua một website khác chứ không được thực hiện trên
dulichbui.org. Điều này làm cho người dùng khó trong việc thực hiện vì nếu muốn thực hiện
thì họ lại phải đăng kí thành viên với website mà dulichbui.org chuyển tới.
 Dulichbui.vn [2]
“Dulichbui.vn là một website thông tin du lịch, mẹo du lịch, kỹ năng sống, thông tin lộ
trình và những câu chuyện tuyệt vời của những bạn đam mê dịch chuyển. Đối tượng của
chúng tôi hướng đến không chỉ là những bạn thích sự tiện nghi, yên tĩnh và thoải mái mà còn

Page 14


phục vụ cộng đồng các bạn thích khám phá, yêu phiêu lưu, muốn tự do trên đôi chân của
mình khám phá các nền văn hóa trên thế giới”. [3]
Dulichbui.vn cung cấp những tính năng cần thiết cho một người đi du lịch như tìm kiếm
nhà hàng, khách sạn, địa điểm du lịch hấp dẫn… dulichbui.vn cũng cung cấp cho người dùng

chức năng lập kế hoạch để người dùng lên lịch trình du lịch cho bản thân.
Tuy nhiên, dulichbui.vn lại chưa hỗ trợ cho người dùng về tính năng mạng xã hội. Khi
người sử dụng có nhu cầu chia sẻ thông tin, hình ảnh, video thì dulichbui.vn lại chưa có khả
năng đáp ứng. Thay vì đó thì người dùng lại phải chọn một trang mạng xã hội khác như
Facebook, Google plus … để đăng hình ảnh, cảm xúc của mình khi đi du lịch tại một địa
điểm nào đó. Điều này mang lại sự thiếu tiện dụng cho người dùng.
Hơn nữa, dulichbui.vn vẫn đang trong quá trình phát triển và chưa hoàn thiện hết các tính
năng có trên website nên họ chưa có được nhiều người dùng. Các tính năng đã đi vào hoạt
động vẫn còn nhiều lỗi cần khắc phục.

2.1 Công nghệ.
2.1.1

CodeIgniter Framwork

CodeIgniter (CI) được viết bởi Rick Ellis trực thuộc Expression Engine. CI được ra đời năm
2006. Tuy ra đời sau một số Framework lớn như Zend Framework nhưng nhờ và tốc độ và dung
lượng nhỏ nên CI đã và đang phát triển một cách nhanh chóng, mạnh mẽ, đang dần trở thành một
thế lực thật sự trong số các PHP Framework hiện nay. [5]
CodeIgniter (CI) là một PHP Framework theo cấu trúc MVC được viết trên PHP4 và hỗ trợ
cả PHP4 và PHP5. CI là tập hợp các thư viện viết sẵn trên PHP giúp chúng ta phát triển web bằng
PHP nhanh hơn cách viết thông thường, các thư viện trong CI giúp ta thực hiện các tác vụ của một
ứng dụng web như kết nối cơ sở dữ liệu, upload file, xử lý hình ảnh, phân trang… một cách dễ
dàng và nhanh chóng. Đồng thời CI cũng giúp cho ta quản lý code dễ dàng hơn với mô hình MVC.
Ngoài ra hiện nay có rất nhiều Framework nổi tiếng được xây dựng trên nền tảng PHP như:
Zend (chuẩn hóa cao theo MVC, hỗ trợ nhiều phương thức nhưng kích thước lớn, khó trong việc
cấu hình và chỉ phù hợp với các dự án trung bình hoặc lớn) [9], CakePHP( kiến trúc gọn gàng, linh
động, đễ cấu hình nhưng chưa hỗ trợ được nhiều) [13], Seagull( có thể xây dựng ứng dụng nhanh
bằng dòng lệnh và giao diện ứng dụng GUI) [14].


Page 15


Nhìn chung thì mỗi Framework đều có điểm mạnh và điểm yếu riêng, tùy thuộc vào hệ
thống mà ta chọn Framework cho phù hợp. Do mới làm quen với PHP và thời gian thực hiện đề
tài không cho phép nên chúng tôi quyết định lựa chọn CI là Framework để xây dựng hệ thống.
 Ưu điểm
1. Được thiết kế theo mô hình MVC
Việc thiết kế theo mô hình MVC giúp tách phần hiển thị và phần xử lý của một phần
mềm thành những phần độc lập, giúp cho việc thiết kế, xử lý và cải tạo mã nguồn một
cách dễ dàng. Ngoài ra CI có gói cài đặt chỉ 404KB, so với các Framework khác như
CakePHP (1,3MB) , Zend (5,66MB) thì kích thước này tương đối nhỏ, giúp cho giảm
thiểu đáng kể không gian lưu trữ.
2. Tốc độ nhanh
CI được người dùng đánh giá là Framework nhanh nhất hiện nay. Nhờ cơ chế lưu
nội dung vào bộ đệm (cache) và kiểm tra bộ đệm trước khi thực hiện yêu cầu, CI giảm
số lần truy cập và xử lý dữ liệu do đó tối ưu việc tải trang.
3. Miễn phí
CI được cấp phát hành dưới giấy cấp phép Apache/BSD mở rộng, cho phép người
dùng tự do thay đổi, phát triển và phân phối mã nguồn. Hỗ trợ Search Engine
Opimization, cấu trúc URL của CI rất thân thiện với các robot tìm kiếm.
4. Hệ thống thư viện phong phú
CI cung cấp các thư viện sử dụng những tác vụ thường gặp nhất trong lập trình web,
chẳng hạn như truy cập cơ sở dữ liệu, kiểm tra dữ liệu, session … đến những chức
năng nâng cao như XML-RPC, mã hóa, bảo mật …
5. Bảo mật hệ thống
Cơ chế bảo mật chặt chẽ, ngăn ngừa XSS và SQL Injection của CI giúp giảm thiểu
các nguy cơ đối với hệ thống.
 Nhược điểm
1. Chưa hỗ trợ lập trình hướng sự kiện (Event-Driven Programming)

Event-Driven Programming (EDP) là một nguyên lý lập trình, trong đó các luồng
xử lý của hệ thống sẽ dựa vào các sự kiện như click chuột, gõ phím.

Page 16


2. Chưa hỗ trợ mạnh cho AJAX
AJAX (Asynchronous JavaScript and XML) đã trở thành một phần không thể
thiếu trong bất kỳ ứng dụng Web 2.0 nào. AJAX giúp nâng cao tính tương tác giữa
người dùng và hệ thống, giúp cho người dùng có cảm giác như đang sử dụng ứng dụng
desktop vì các thao tác đều diễn ra “tức thời”. Hiện tại, CodeIgniter vẫn chưa có thư
viện dựng sẵn nào để hỗ trợ xây dựng ứng dụng AJAX. Lập trình viên phải sử dụng
các thư viện bên ngoài, như jQuery, Script.aculo.us, Prototype hay Mootools.
 Cấu trúc của CI Framework
1. Thư mục cache: Bộ đệm của hệ thống, chứa các trang đã
được xử lý trước đó.
2. Thư mục helpers: Chứa các hàm hỗ trợ cho lập trình viên khi
viết ứng dụng.
3. Thư mục libraries: Chứa các thư viện dựng sẵn của CI.
4. Thư mục config: Chứa các tập tin cấu hình hệ thống.
5. Thư mục controllers: chứa các lớp controller.
6. Thư mục errors: chứa các tập tin lỗi.
7. Thư mục hooks: chứa các tập tin để mở rộng mã nguồn CI
8. Thư mục language: chứa các tập tin ngôn ngữ
9. Thư mục models: chứa các lớp model
10.Thư mục views: chứa các lớp view
Hình 2.1: Cấu trúc CI
2.1.2

JQuery


JQuery là một thư viện của JavaScript đa trình duyệt được thiết kế đơn giản hóa lập trình
phía máy người dùng của HTML. Jquery được ra đời vào tháng 1 năm 2006 tại BarCamp NYC
bởi John Resig. jQuery là mã nguồn mở, giúp cho việc dễ dàng di chuyển một tài liệu, chọn DOM
các yếu tố, tạo ra hình và xử lý các sự kiện trên website. jQuery giúp đơn giản hóa việc lập trình
JavaScript, tăng tốc độ xử lý các sự kiện trên website, giúp tiết kiệm thời gian và công sức so với
cách viết JavaScript thông thường. [6]

Page 17


 Một số tính năng của jQuery
1. Hướng tới các thành phần trong HTML: nếu không sử dụng thư viện Javascript này,
bạn phải viết rất nhiều dòng code mới có thể đạt được mục tiêu là di chuyển trong cấu
trúc cây (Document Object Model) của một tài liệu HTML và chọn ra các thành phần
liên quan. jQuery cho phép bạn chọn bất cứ thành phần nào của tài liệu một cách dễ
dàng dựa vào jQuery selector.
2. Thay đổi giao diện của một trang web: CSS là công cụ rất mạnh để định dạng một
trang web nhưng nó có một nhược điểm là không phải tất cả các trình duyệt đều hiển
thị giống nhau. Cho nên jQuery ra đời để lấp chỗ trống này, vì vậy bạn có thể sử dụng
nó để giúp trang web có thể hiển thị tốt trên hầu hết các trình duyệt. Hơn
nữa jQuery cũng có thể thay đổi class hoặc những định dạng CSS đã được áp dụng lên
bất cứ thành phần nào của HTML ngay cả khi trang web đó đã được trình duyệt load
thành công.
3. Thay đổi nội dung của tài liệu: jQuery không chỉ thay đổi bề ngoài của trang web, mà
còn có thể thay đổi nội dung của chính tài liệu đó. Nó có thể thêm hoặc bớt nội dung
trên trang, thậm chí cả cấu trúc HTML của một trang web cũng có thể được viết lại và
mở rộng.
4. Tương tác với người dùng: jQuery cho bạn nhiều phương thức để tương tác với người
dùng và tối giản các mã Event trong code HTML. jQuery cho phép bạn sử dụng rất

nhiều hiệu ứng động như mờ dần, slideUp, slideDown()…
5. Hỗ trợ Ajax: đây chính là công nghệ ngày càng trở nên phổ biến Asynchronous
JavaScript And XML (AJAX), nó giúp người thiết kế web tạo ra những trang web
tương tác cực tốt và nhiều tính năng. Thư viện jQuery loại bỏ sự phức tạp của trình
duyệt trong quá trình này và cho phép người phát triển web có thể tập trung vào các
tính năng đầu cuối, đơn giản hoá các tác vụ javascript.
 Ưu điểm của jQuery
1. Hỗ trợ tốt việc xử lý các vấn đề thường gặp như cấu trúc DOM, Ajax …
2. Tương thích nhiều trình duyệt web phổ biến.
3. Nhỏ gọn, dễ sử dụng, có nhiều tài liệu hướng dẫn chi tiết.

Page 18


4. Ít xung khắc với các thư viện JavaScript khác.
5. Có nhiều plugin thuận tiện cho việc phát triển hệ thống.
2.1.3

Ajax

AJAX, viết tắt từ Asynchronous JavaScript and XML (JavaScript và XML không đồng bộ),
là bộ công cụ cho phép tăng tốc độ ứng dụng web bằng cách cắt nhỏ dữ liệu và chỉ hiển thị những
gì cần thiết, thay vì tải đi tải lại toàn bộ trang web. AJAX không phải một công nghệ đơn lẻ mà là
sự kết hợp một nhóm công nghệ với nhau. Trong đó, HTML và CSS đóng vai hiển thị dữ liệu, mô
hình DOM trình bày thông tin động, đối tượng XMLHttpRequest trao đổi dữ liệu không đồng bộ
với máy chủ web, còn XML là định dạng chủ yếu cho dữ liệu truyền. Đây đều là công nghệ sẵn
có nhưng Javacript đã lắp ráp chúng lại để thực hiện những "sứ mệnh" đáng khâm phục. [7]
 Ưu điểm
1. Trong nhiều trường hợp, các trang web chứa rất nhiều nội dung thông thường trong
trang. Nếu sử dụng các phương pháp truyền thống, những nội dụng đó sẽ phải nạp lại

toàn bộ với từng yêu cầu. Tuy nhiên, nếu sử dụng Ajax, một ứng dụng web có thể chỉ
yêu cầu cho các nội dung cần thiết phải cập nhật, do đó giảm lượng lớn băng thông và
thời gian nạp trang.
2. Việc dùng các yêu cầu không đồng bộ (asynchronous request) cho phép giao diện
người dùng của ứng dụng hiển thị trên trình duyệt giúp người dùng trải nghiệm sự
tương tác cao, với nhiều phần riêng lẻ.
3. Việc sử dụng Ajax có thể làm giảm các kết nối đến server, do các mã kịch bản (script)
và các style sheet chỉ phải yêu cầu một lần.
 Hạn chế
1. AJAX có thể góp phần tạo nên một thế hệ mới cho ứng dụng web (như colr.org hay
backpackit.com). Tuy nhiên, nó cũng là một công nghệ "nguy hiểm" khi gây ra không
ít rắc rối về giao diện người dùng. Chẳng hạn, phím "Back" (trở lại trang trước) được
đánh giá cao trong giao diện website chuẩn. Đáng tiếc, chức năng này không hoạt
động ăn khớp với Javascript và mọi người không thể tìm lại nội dung trước đó khi
bấm phím Back. Bởi vậy, chỉ một sơ xuất nhỏ là dữ liệu trên trang đã bị thay đổi và
khó có thể khôi phục lại được. Đây là một trong những nguyên nhân chính khiến nhiều
người không ủng hộ ứng dụng Javascript.

Page 19


2. Bên cạnh đó, mọi người không thể lưu lại địa chỉ web vào thư mục Favorite
(Bookmark) để xem lại về sau. Do áp dụng lớp trung gian để giao dịch, các ứng dụng
AJAX không có một địa chỉ cố định cho từng nội dung. Khiếm khuyết này làm cho
AJAX dễ "mất điểm" trong mắt người dùng.

2.2 Trực quan hóa dữ liệu
Trong thời kì bùng nổ dữ liệu, công nghệ và toàn cầu hóa như hiện nay, tình trạng khối lượng
dữ liệu lớn khiến việc sắp xếp, quản lý, truy suất dữ liệu, lựa chọn thông tin cần thiết từ nhiều
nguồn cho các mục đích khác nhau và đưa ra các hoạt động hiệu quả dựa trên thông tin đó gặp khá

nhiều khó khăn. Vấn đề đặt ra là: có cách nào đó mà hệ thống dữ liệu thành những hình ảnh trực
quan hóa, sinh động để dễ dàng tiếp cận và đánh giá một cách nhanh chóng, chính xác ?
Cách tiếp cận để biểu diễn dữ liệu thành hình ảnh hoặc mô hình trực quan là phân tích, sàng
lọc và chuyển hóa dữ liệu thành thông tin cần thiết cho hệ thống sử dụng. Đại diện trực quan là
phần nằm giữa dữ liệu và thông tin. Nó cung cấp những phương pháp, công cụ để phân tích chuyển
hóa khối dữ liệu thành những thông tin có ý nghĩa, dễ quản lý và sử dụng. Tiêu chuẩn cho một đại
diện trực quan phụ thuộc vào bản chất của dữ liệu, các loại thông tin mà nó tìm cách để đại diện
và kinh nghiệm người tạo ra nó. Để đáp ứng đủ thông tin cho người dùng suy luận và phán đoán,
nhưng lại tránh dư thừa, nhầm lẫn và dễ dàng tiếp cận. Đại diện trực quan hóa được thiết kế đơn
giản, trong sáng và biểu diễn thông tin bằng những hình ảnh, biểu đồ, mô hình và màu sắc, hình
khối đặc trưng, sử dụng hiệu ứng đồ họa cho mục đích phân biệt các nguồn thông tin khác nhau.
Một số ứng dụng tiêu biểu của trực quan hóa :
 Phân tích thám hiểm: dùng để phân tích mối quan hệ, tính đối ngẫu, làm biểu mẫu. Ví dụ
các bản đồ phân tích đánh giá người dùng về điểm đến hấp dẫn.
 Phân tích xác nhận : trực quan phân tích xác nhận về mối quan hệ cấu trúc giữa các chuỗi
dữ liệu, chấp nhận hoặc từ chối dữ liệu. Ví dụ : sử dụng so sánh xu hướng thay đổi nhu
cầu của người dùng.
 Trực quan thông tin : Biểu diễn thông tin bằng cách hình ảnh trực quan như biểu đồ, bản
đồ.

Page 20


CHƯƠNG III PHÂN TÍCH YÊU CẦU
3.1 Chức năng hệ thống.
 Đôi với người dùng hệ thống.


Khách
Là những người chưa đăng nhập vào hệ thống. Do những nhu cầu riêng của hệ thống nên sẽ buộc


những người này phải đăng nhập hoặc đăng kí thành viên mới sử dụng được các chức năng mà hệ
thống cung cấp.
 Thành viên.
Là những người đã đăng nhập vào hệ thống. Những người này sẽ thực hiện được các chức năng
chính sau :


Đăng trạng thái, hình ảnh, video.

 Bình luận cho các hình ảnh, trạng thái, video của chính bạn hay của bạn mình.
 Chia sẻ một thông tin nào đó thông qua chức năng share lên trang cá nhân của mình.
 Nhấn like để thích một bài đăng nào đó.
 Nói chuyện, chat với bạn bè của mình.
 Tìm kiếm nhà hàng, khách sạn, điểm đến.
 Lập kế hoạch du lịch cho bản thân.
 Chỉnh sửa thông tin cá nhân.
 Đối với người quản trị hệ thống
 Quản lý người dùng.
 Quản lý khách sạn.
 Quản lý phương tiện.
 Quản lý điểm đến.
 Một số yêu cầu chức năng khác.
 Có khả năng mở rộng đa ngôn ngữ.
 Ứng dụng tương thích với tất cả các trình duyệt và hệ điều hành.

Page 21


3.2 Lược đồ Use-Case

 Lược đồ Use case cho người dùng.


Actor : User



Tổng số Use-Case : 13



Trong đó : User là người dùng của hệ thống.

Hình 3.1 : Lược đồ Use-Case cho người dùng.

Page 22


 Lược đồ Use case cho quản trị hệ thống.


Actor : Admin



Tổng số Use case : 7



Trong đó Admin là người quản trị hệ thống.


Hình 3.2 : lược đồ Use case cho người quản trị hệ thống.
Trong đó lược đồ Use case chi tiết cho từng chức năng như sau :


Lược đồ Use case chi tiết cho Manage Restaurant.

Hình 3.3 : lược đồ Use case chi tiết cho Use case Manage Restaurant.

Page 23




Lược đồ Use case chi tiết cho Manage Hotel.

Hình 3.4 : lược đồ Use case chi tiết cho Use case Manage Hotel.


Lược đồ Use case chi tiết cho Manage Tranportion.

Hình 3.5 : Lược đồ Use case chi tiết cho Use case Manage Tranportion.


Lược đồ Use case chi tiết cho Manage Attraction.

Hình 3.6 : lược đồ Use case chi tiết cho Use case Manage Attraction.

Page 24





Lược đồ Use case chi tiết cho Manage Post.

Hình 3.7 : lược đồ Use case chi tiết cho Use case Manage Post


Lược đồ Use case chi tiết cho Manage User.

Hình 3.8 : lược đồ Use case chi tiết cho Use case Manage User.

3.3 Đặc tả User-Case
 Danh sách các Actor của hệ thống

STT

Tên Actor

Ý nghĩa / Ghi chú

1

User

Người dùng bình thường trong hệ thống

2

Admin


Người quản trị hệ thống

 Danh sách các Use case của hệ thống

STT

Tên Use Case

Ý nghĩa / Ghi chú

1

Login/Logout

Đăng nhập vào hệ thống hoặc đăng xuất khỏi hệ thống

2

Add friend

Thêm bạn mới

3

Edit profile

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

4


Comment

Bình luận

5

Search

Tìm kiếm

Page 25


×