3 Phƣơng pháp nghiên cứu
2.3 Phân tích yêu cầu bài toán
2.3.1 Ngƣời sử dụng
Ngƣời sử dụng là đối tƣợng quan trọng của hệ thống.
a. Đối tượng người sử dụng
Đối tƣợng sử dụng là ngƣời du lịch, đây chính là đối tƣợng sử dụng chiếm số lƣợng lớn nhất và quan trọng nhất của hệ thống.
Ngƣời du lịchbao gồm các tất cả mọi ngƣời, đối tƣợng này có thể đi theo các tour du lịch hoặc không theo tour du lịch hoặc chỉ tham khảo các địa điểm du lịch.
Tập trung vào đối tƣợng ngƣời du lịch tự do ( không đi theo các tour du lịch đã định trƣớc). Ƣu điểm của đối tƣợng này:
Thƣờng không định trƣớc các địa điểm cần tới.
Phí bỏ ra để đi du lịch và tìm kiếm các địa điểm cần tới là ít.
Chiếm số lƣợng lớn ngƣời dân.
Đối tƣợng này cũng có thể là các ngƣời du lịch từ nƣớc ngoài.
b. Mục đích sử dụng
Mục đích lớn của hệ thống là hƣớng tới đại đa số ngƣời dùng.Hệ thống đi kèm với việc xây dựng kho dữ liệu là phát triển một ứng dụng trên điện thoại di động, cụ thể là Android. Và ngƣời sử dụng sẽ đƣợc:
Cung cấp các địa điểm du lịch theo các tiêu chí khác nhau.
Tìm kiếm và tra cứu các địa điểm du lịch.
Đánh giá và bình luận về các địa điểm du lịch.
Chia sẻ hình ảnh tƣơng ứng với địa điểm mình đã đi qua.
Ngoài ra, ngƣời sử dụng cũng góp phần xây dựng kho dữ liệu thông qua việc:
Chia sẻ hình ảnh.
Đánh giá, bình luận để thông qua đó hệ thống có thể lọc để có thể giới thiệu tới ngƣời dùng những nơi thú vị nhất một cách nhanh nhất.
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 31
2.3.2 Kho dữ liệu
a. Xây dựng
Kho dữ liệu đƣợc đƣợc cung cấp:
Nguồn dữ liệu của hệ thống, là dữ liệu cung cấp ban đầu của hệ thống, trong quá trình hoạt động.
Nguồn dữ liệu của ngƣời dùng, là thông tin về hình ảnh du lịch do ngƣời dùng đăng tải.
Dữ liệu của kho dữ liệu chính là cơ sở dữ liệu các địa điểm đƣợc ngƣời dùng cung cấp thông qua các địa điểm mà họ đã đi qua.Bên cạnh đó dữ liệu sẽ đƣợc lọc thô thông qua bình luận và đánh giá của ngƣời dùng về một địa điểm nào đó.
Quá trình xây dựng dữ liệu bao gồm các bƣớc sau:
1. Ngƣời dùng đăng tải chia sẻ hình ảnh kèm với thông tin về một địa điểm du lịch nào đó mà họ đã đi qua. Thông tin này mang tích chất dữ liệu thô ban đầu.
2. Hệ thống sẽ lƣu trữ thông tin.
3. Tiến hành lọc bằng tay, do ngƣời quản lý hệ thống đảm nhiệm. 4. Tiến hành lƣu trữ vào cơ sở dữ liệu của kho dữ liệu.
Do môi trƣờng xây dựng dữ liệu chính là điện thoại di động nên dữ liệu phải đƣợc chuẩn hóa theo các tiêu chí sau:
Mã hóa unicode utf-8 (để hiển thị tiếng Việt).
Thông tin dữ liệu phải ngắn (phù hợp với trạng thái bộ nhớ của điện thoại). Các tham số về vị trí bản đồ, đánh giá, bình luận phải chính xác.
c. Khai thác
Dữ liệu của kho sẽ đƣợc khai thác thông qua ứng dụng chính trên điện thoại di động do hệ thống cung cấp. Qua đó, ngƣời du lịch có thể đăng nhập bằng tài khoản Facebook để chia sẻ các thông tin về các địa điểm du lịch.
Việc lấy dữ liệu sẽ thông qua môi trƣờng Internet, nhƣ vậy việc khai thác sẽ là bất cứ ở đâu và bất cứ lúc nào.
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 32 Khai thác dữ liệu đƣợc diễn ra qua 2 bƣớc:
Bƣớc 1 :Thông tin đƣợc lấy trực tiếp từ server thông qua webservice và kiểu dữ liệu đƣợc truyền tải để kết nối điện thoại di động là JSon. Đây là kiểu dữ liệu chuẩn đƣợc đa phần các lâp trình viên sử dụng nhiều trong các nền tảng công nghệ lớn.
Bƣớc 2 :Thông tin nhận đƣợc (JSon) qua bộ phân tích dữ liệu ở ứng dụng và hiểu thị trực quan cho ngƣời dùng.
2.3.3 Công nghệ
Công nghệ là yếu tố đƣa các thông tin của kho dữ liệu tới với ngƣời dùng. Mobile
- Ngôn ngữ lập trình Java. - Android SDK.
Ngoài ra, hệ thống còn sử dụng các thông tin về địa điểm của kho dữ liệu Google Map.
Việc lựa chọn các công nghệ này để phát triển kho dữ liệu đều dựa trên tính phổ biến và thông dụng hiện nay.Phần chính là server sẽ cung cấp các phƣơng thức để truy xuất thông tin từ kho dữ liệu, phần ở điện thoại di động mang tính chất hiển thị trực quan.
Công nghệ sử dụng ở điện thoại di động đƣợc lựa chọn là nền tản di động Android, với bộ SDK Android. Đây là một trong những nền tảng công nghệ mạnh nhất trong lĩnh vực điện thoại thông minh (smartphone).
2.4Phân tích khả thi
2.4.1 Tính khả dụng
Hệ thống hoàn toàn có thể triển khai trên thực tế.
Cộng đồng sử dụng điện thoại thông minh (cụ thể Android) rất đông đảo. Nhu cầu du lịch của ngƣời dân càng ngày càng lớn.
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 33
2.4.2 Chi phí phát triển
Điện thoại thông minh ngày nay đang phát triển các dòng điện thoại bình dân, nghĩa là chi phí cho một chiếc điện thoại hỗ trợ đầy đủ các tính năng mà chƣơng trình yêu cầu thì hoàn toàn không đắt.
Ngoài ra, với việc hƣớng tới đƣa quảng cáo vào sau này sẽ tạo một nguồn kinh phí để hỗ trợ phát triển và nâng cấp ứng dụng.
2.5Yêu cầu chức năng
Bảng 1 : Bảng các chức năng.
Use case ID Use case name
UC1 Choose Language
UC2 Choose Location
UC3 Login By Facebook Account
UC4.1 View List Cities
UC4.2 View List Destinations
UC4.3 View List Hotels
UC4.4 View List Restaurant
UC5 View Content Detail
UC6 View Gallery
UC7 Post Review
UC8 Bookmark
UC9 Share Photo
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 34
2.6Biểu đồ sử dụng
2.6.1 Mức 0
Hình 12: Use case tổng quát
2.6.2 Mức 1
a. Xem danh sách nội dung
System
user
Login By Facebook Account
View List Content
View Content Detail
Search Text
Search Nearby
Login Server
Manage Content Data
Approve User's Shared Photo
system admin Choose Language
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 35
Hình 13: Use case xem danh sách nội dung
b. Xem chi tiết nội dung
System
user
Show List Item View List Content
View List Destinations View List Hotels View List Restaurant View List Cities
<<include>> <<extend>>
<<extend>>
<<extend>>
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 36
Hình 14: Use case xem chi tiết nội dung
c. Tìm kiếm theo từ khóa
System
user
View Content Detail Share Photo View Map Show Direction View Gallery Show Description Like Review Bookmark
Show Contact Information
<<include>> <<include>> <<include>> <<include>> <<include>> <<include>> <<include>> <<include>> <<include>>
Login By Facebook Account
<<include>>
View City Detail View Destiantion Detail
View Hotel Detail View Restaurant Detail
<<extend>>
<<extend>>
<<extend>>
<<extend>>
Show Navigation List
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 37
Hình 15: Use case tìm kiếm theo từ khóa
d. Tra cứu địa điểm gần
Hình 16: Use case tra cứu địa điểm gần
System
user
Search Text Input Text
Filter Search Result By Type
Display Search Result
Sort Result By Rating Mark
<<include>> <<include>> <<include>> <<include>> System user Search Nearby Setting
Config Distance Config Measure Unit
Display Result
Sort Result By Distance
Display Result On Map
Show Direction <<include>> <<include>> <<include>> <<include>> <<include>> <<include>> <<include>>
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 38
e. Quản lý nội dung dữ liệu
Hình 17: Use quản lý nội dung dữ liệu
f. Duyệt hình ảnh
System
system admin
Manage Content Data
Create/Update/Delete/View
Update Map Location Manage City
Manage Destination Manage Restaurant
Manage Hotel Manage Gallery Login Server <<include>> <<include>> <<extend>> <<extend>> <<extend>> <<extend>> <<extend>> <<include>> <<include>> <<include>> <<include>>
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 39
Hình 18: Use case duyệt hình ảnh
g. Xem thư viện hình ảnh
Hình 19: Use case xem thƣ viện hình ảnh
System
system admin
Approve User's Shared Photo Show List Shared Photo
Approve A Photo Reject A Photo Cancel Approve Login Server <<include>> <<include>> <<include>> <<include>> <<include>> System View Gallery user
Show List Gallery
View All Images In A Gallery
Show Image Description
<<include>>
<<include>>
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 40
h. Gửi bình luận
Hình 20: Use case gửi bình luận
i. Chia sẻ hình ảnh
Hình 21: Use case chia sẻ hình ảnh
k. Xem thông tin liên lạc
System
user
Review
Wirte Review
View All User's Review Display Item Rating Value
Login By Facebook Account
<<include>> <<include>> <<include>> <<include>> System user Share Photo Shared From Gallery
Take A Photo
Login By Facebook Account
<<include>> <<include>>
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 41
Hình 22: Use case xem thông tin liên lạc
m. Đánh dấu địa điểm
Hình 23: Use case đánh dấu địa điểm
System
user
Show Contact Information
Phone Call Send Mail
View Website <<include>> <<include>> <<include>> System Bookmark user Create Bookmark Delete Bookmark
Show List Bookmark
<<include>>
<<include>>
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 42
CHƢƠNG 3 – PHÁT TRIỂN ỨNG DỤNG HỖ TRỢ DU LỊCH
Trong chƣơng này tôi tập trung vào hai vấn đề cơ bản là xây dựng cơ sở dữ liệu và giao diện ứng dụng.Trong đó, quan trọng nhất là chi tiết giao diện thể hiện chức năng cụ thể của ứng dụng.
3.1 Xây dựng cơ sở dữ liệu [9] 3.1.1 Bảng dữ liệu 3.1.1 Bảng dữ liệu
a. Bảng User
Bảng chứa thông tin tài khoản ngƣời dùng
Trƣờng Kiểu dữ liệu Mô tả
id Number Khóa chính
facebookId String Facebook id của ngƣời dùng
username String Facebook username
email String Email của ngƣời dùng lấy từ
createdDate Datetime Ngày tạo user
lastLogin Datetime Thời gian login gần đây nhất
Bảng 2: Bảng User
b. Bảng city
Bảng chứa thông tin về thành phố
Trƣờng Kiểu dữ liệu Mô tả
id Number Khóa chính
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 43
shortDescription Text Phần mô tả ngắn gọn về thành
phố
description Text Phần mô tả đầy đủ về thành
phố
thumbnailUrl String URL hình ảnh đại diện của
thành phố
createdDate Datetime Ngày tạo
locationLat Float Vĩ độ trên map
locationLng Float Kinh độ trên map
locationDescription Text Mô tả về địa điểm trên map
websiteUrl String URL website về thành phố
language String Ngôn ngữ
Bảng 2 : Bảng City
c. Bảng Destination
Bảng chứa thông tin các địa danh
Trƣờng Kiểu dữ liệu Mô tả
id Number Khóa chính
name String Tên thành phố
shortDescription Text Phần mô tả ngắn gọn về
thành phố
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 44 phố
thumbnailUrl String URL hình ảnh đại diện của
thành phố
createdDate Datetime Ngày tạo
locationLat Float Vĩ độ trên map
locationLng Float Kinh độ trên map
locationDescription Text Mô tả về địa điểm trên map
websiteUrl String URL website về địa danh
language String Ngôn ngữ
ratingValue Float Điểm đánh giá về địa danh,
giá trị bằng trung bình cộng các điểm đánh giá của ngƣời sử dụng
likeValue Number Số lƣợng ngƣời like
phoneNumber String Số điện thoại liên lạc
email String Email liên lạc
cityId Number Khóa ngoại, id của thành
phố mà địa danh thuộc về
Bảng 3 : Bảng Destination
d. Bảng Restaurant
Bảng chứa thông tin về nhà hàng
Trƣờng Kiểu dữ liệu Mô tả
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 45
name String Tên nhà hàng
shortDescription Text Phần mô tả ngắn gọn về
nhà hàng
description Text Phần mô tả đầy đủ về nhà
hàng
thumbnailUrl String URL hình ảnh đại diện của
nhà hàng
createdDate Datetime Ngày tạo
locationLat Float Vĩ độ trên map
locationLng Float Kinh độ trên map
locationDescription Text Mô tả về địa điểm trên
map
websiteUrl String URL website về nhà hàng
language String Ngôn ngữ
ratingValue Float Điểm đánh giá về nhà
hàng, giá trị bằng trung bình cộng các điểm đánh giá của ngƣời sử dụng
likeValue Number Số lƣợng ngƣời like
phoneNumber String Số điện thoại liên lạc
email String Email liên lạc
cityId Number Khóa ngoại, id của thành
phố mà nhà hàng thuộc về
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 46
e. Bảng Hotel
Bảng chứa thông tin khách sạn
Trƣờng Kiểu dữ liệu Mô tả
id Number Khóa chính
name String Tên khách sạn
shortDescription Text Phần mô tả ngắn gọn về
khách sạn
description Text Phần mô tả đầy đủ về
khách sạn
thumbnailUrl String URL hình ảnh đại diện của
khách sạn
createdDate Datetime Ngày tạo
locationLat Float Vĩ độ trên map
locationLng Float Kinh độ trên map
locationDescription Text Mô tả về địa điểm trên
map
websiteUrl String URL website về khách sạn
language String Ngôn ngữ
ratingValue Float Điểm đánh giá về khách
sạn, giá trị bằng trung bình cộng các điểm đánh giá của ngƣời sử dụng
likeValue Number Số lƣợng ngƣời like
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 47
email String Email liên lạc
hotelClass Number Hạng của khách sạn(5 sao,
4 sao…)
Bảng 5 : Bảng Hotel
f. Bảng Review
Bảng chứa các đánh giá của user về một địa điểm
Trƣờng Kiểu dữ liệu Mô tả
id Number Khóa chính
userId Number Khóa ngoại, id của user
contentType Number Loại của nội dụng đƣợc
đánh giá, là hotel,
destination, hay restaurant
contentId Number id của nội dung đƣợc đánh
giá
title String Phần tiêu đề của đánh giá
content Text Phần nội dung của đánh
giá
ratingMark Number Điểm đánh giá
createdDate Datetime Ngày tạo
Bảng 6 : Bảng Review
g. BảngGallery
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 48
Trƣờng Kiểu dữ liệu Mô tả
id Number Khóa chính
name String Tên của gallery
desctiption Text Phần mô tả của gallery
baseContentType Number Loại nội dung mà gallery
thuộc về: là city, destination, hotel hay restaurant
baseContentId Number id của địa điểm mà gallery
thuộc về
thumbnailUrl String URL hình ảnh đại diện
lang String Ngôn ngữ
createdDate Datetime Ngày tạo
Bảng 7 : Bảng Gallery
h. Bảng Image
Bảng chứa thông tin về các hình ảnh của gallery
Trƣờng Kiểu dữ liệu Mô tả
id Number Khóa chính
imagePath String Đƣờng dẫn đến file image
trong hệ thống
imageUrl String URL của image
description Text Phần mô tả của image
galleryId Number Khóa ngoại, id của gallery
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 49
createdDate Datetime Ngày tạo
Bảng 8 : Bảng Image
l. Bảng ShareImage
Bảng chứa thông tin về các hình ảnh đƣợc chia sẻ bởi ngƣời sử dụng
Trƣờng Kiểu dữ liệu Mô tả
id Number Khóa chính
imagePath String Đƣờng dẫn đến file image
trong hệ thống
imageUrl String URL của image
description Text Phần mô tả của image
galleryId Number Khóa ngoại, id của gallery
mà image thuộc về
userId Number Khóa ngoại, id của user đã
chia sẻ hình ảnh
createdDate Datetime Ngày tạo
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 50
3.1.2 Mô hình quan hệ dữ liệu
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 51
3.2 Giao diện của ứng dụng 3.2.1 Giao diện chính 3.2.1 Giao diện chính
Hình 25: Giao diện chính
Chức năng:
Hiển thị danh sách 63 tỉnh thành để ta chọn địa điểm mình ở mình cần (ta có thể không chọn giá trị này).
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 52
3.2.2 Giao diện giới thiệu về Việt Nam
Hình 26: Giao diện Việt Nam
Chức năng:
Gồm một loạt các hình ảnh đƣợc trình chiếu ở dạng slide để giới thiệu về đất nƣớc hình chữ S, giới thiệu về thủ đô, ngôn ngữ, diện tích, dân số, khí hậu, môi trƣờng, bản đồ, mô tả của đất nƣớc Việt Nam.
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 53 Hiển thị danh sách các nhƣ hình dƣới để ta lựa chọn. Ở đây ta có thể đăng
nhập hoặc đăng xuất facebook.
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 54
3.2.3 Giao diện thành phô
Hình 28: Giao diện danh mục thành phố
Chức năng:
Hiển thị ra danh sách các thành phố để ta lựa chọn. Khi chọn một trong những thành phố đó thì hiển thị giao diện hình dƣới.
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 55
Hình 29: Giao diện thành phố
Chức năng:
Ghé thăm website thành phố đã chọn, xem hình ảnh của thành phố đó, chia sẻ những hình ảnh, mô tả về thành phố, diện tích, dân số….đồng thời chúng
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 56
+ Giao diện về hình ảnh.
Trần Thị Thu Thủy Lớp 10CNTT3 Trang 57
3.2.4 Giao diện đánh dấu địa điểm
Hình 31: Giao diện đánh dấu