Phát Triển Ứng Dụng Đặt Phòng Dịch Vụ Du Lịch Homestay Trên Nền Tảng Android

Khám phá luận văn thạc sĩ về phát triển ứng dụng đặt phòng homestay trên nền tảng Android, nâng cao trải nghiệm du lịch tiện lợi và hiệu quả.

Trường đại học

Học viện Kỹ thuật Mật mã

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

đồ án tốt nghiệp

2022

66
14
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

LỜI NÓI ĐẦU

1. CHƯƠNG 1: PHÂN TÍCH YÊU CẦU HỆ THỐNG

1.1. Tổng quan hệ thống đặt phòng dịch vụ du lịch HomeStay

1.2. Mô hình triển khai hệ thống

1.3. Yêu cầu hệ thống

1.3.1. Yêu cầu chức năng

1.3.2. Yêu cầu phi chức năng

1.4. Các công nghệ và công cụ sử dụng

1.4.1. Hệ điều hành Android

1.4.2. Ngôn ngữ Kotlin

2. CHƯƠNG 2: PHÂN TÍCH, THIẾT KẾ HỆ THỐNG

2.1. Biểu đồ Use case

2.1.1. Biểu đồ Use case tổng quát

2.1.2. Phân rã biểu đồ use case

2.2. Các biểu đồ tuần tự

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

2.3.1. Realtime Database HomeStay

2.3.2. Lưu trữ ảnh Storage của HomeStay

2.4. Push notification FCM

3. CHƯƠNG 3: TRIỂN KHAI HỆ THỐNG

3.1. Quá trình triển khai hệ thống

3.1.1. Tiến hành xây dựng ứng dụng trên nền tảng di động (Android)

3.1.2. Tích hợp các giải pháp an toàn vào ứng dụng

3.2. Giới thiệu một số giao diện của hệ thống

3.2.1. Giao diện màn hình đăng nhập

3.2.2. Giao diện màn hình đăng kí

3.2.3. Màn hình home của tài khoản khách du lịch

3.2.4. Giao diện màn hình danh sách phòng

3.2.5. Giao diện danh sách địa điểm du lịch

3.2.6. Giao diện bình luận phòng

3.2.7. Giao diện chức năng đặt phòng

3.2.8. Giao diện chức năng thêm phòng

3.2.9. Giao diện chức năng sửa phòng

3.2.10. Giao diện màn hình google map

3.2.11. Giao diện màn hình thời tiết

3.2.12. Hình ảnh giao diện tài khoản cá nhân

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Phân Tích Yêu Cầu Hệ Thống

Chương đầu tiên của luận văn tập trung vào việc phân tích yêu cầu của hệ thống đặt phòng dịch vụ du lịch homestay. Trong bối cảnh hiện nay, ứng dụng đặt phòng trở thành một công cụ thiết yếu cho ngành du lịch. Với sự phát triển mạnh mẽ của công nghệ thông tin, nhu cầu tìm kiếm và đặt chỗ ở một cách nhanh chóng và tiện lợi đã trở nên cấp thiết. Hệ thống được thiết kế để phục vụ hai đối tượng chính là khách du lịch và chủ nhà. Khách du lịch có thể dễ dàng tìm kiếm thông tin về các homestay, kiểm tra tình trạng phòng và thực hiện đặt phòng trực tuyến chỉ với một vài thao tác đơn giản. Chủ nhà cũng có thể quản lý thông tin phòng của mình một cách hiệu quả. Các yêu cầu chức năng và phi chức năng của hệ thống đều được đưa ra rõ ràng, đảm bảo tính khả thi và hiệu quả trong quá trình phát triển ứng dụng.

1.1 Tổng Quan Hệ Thống Đặt Phòng Dịch Vụ Du Lịch Homestay

Hệ thống đặt phòng dịch vụ du lịch homestay bao gồm hai phần chính: ứng dụng cho khách hàng (app HomeStay) và ứng dụng cho quản trị viên (app Admin). Ứng dụng HomeStay cho phép khách du lịch thực hiện các chức năng như tìm kiếm địa điểm, xem danh sách homestay và thực hiện đặt phòng. Trong khi đó, ứng dụng Admin hỗ trợ việc quản lý tài khoản và thông tin của khách hàng cũng như chủ nhà. Sự phân quyền rõ ràng giữa hai ứng dụng giúp tối ưu hóa quy trình quản lý đặt phòng và nâng cao trải nghiệm người dùng. Các công nghệ như Firebase, Kotlin và Android được sử dụng để phát triển hệ thống, đảm bảo tính ổn định và bảo mật thông tin người dùng.

1.2 Yêu Cầu Hệ Thống

Yêu cầu hệ thống được chia thành hai phần chính: yêu cầu chức năng và yêu cầu phi chức năng. Đối với yêu cầu chức năng, ứng dụng HomeStay cần cung cấp các chức năng như tìm kiếm địa điểm, quản lý phòng và thực hiện đặt phòng trực tuyến. Chủ nhà cũng cần có khả năng quản lý phòng của mình và xem đánh giá từ khách hàng. Đối với yêu cầu phi chức năng, ứng dụng cần đảm bảo tính thân thiện với người dùng, khả năng hoạt động trên nền tảng Android từ phiên bản 7.0 trở lên và bảo mật thông tin cá nhân. Điều này không chỉ giúp nâng cao trải nghiệm của người dùng mà còn đảm bảo an toàn cho dữ liệu cá nhân.

II. Phân Tích Thiết Kế Hệ Thống

Chương hai của luận văn tập trung vào việc phân tích và thiết kế hệ thống. Thiết kế ứng dụng được thực hiện dựa trên các biểu đồ use case, cho phép mô tả rõ ràng các chức năng và tương tác của người dùng với hệ thống. Các biểu đồ tuần tự cũng được sử dụng để mô tả quy trình hoạt động của ứng dụng từ khi người dùng thực hiện thao tác cho đến khi nhận được phản hồi. Thiết kế cơ sở dữ liệu là một phần quan trọng trong việc đảm bảo dữ liệu được lưu trữ và truy xuất một cách hiệu quả. Hệ thống sử dụng Realtime Database của Firebase để lưu trữ thông tin về các homestay, tình trạng phòng và thông tin người dùng. Bên cạnh đó, việc tích hợp các giải pháp an toàn cũng được chú trọng để bảo vệ thông tin cá nhân của người dùng.

2.1 Biểu Đồ Use Case

Biểu đồ use case tổng quát được xây dựng nhằm mô tả các chức năng chính của ứng dụng HomeStay. Các chức năng này bao gồm: đăng ký tài khoản, tìm kiếm phòng, đặt phòng và quản lý thông tin cá nhân. Mỗi chức năng đều có các tác nhân tương ứng, như khách du lịch và chủ nhà, giúp xác định rõ ràng vai trò của từng bên trong hệ thống. Biểu đồ use case không chỉ giúp các nhà phát triển hiểu rõ yêu cầu của người dùng mà còn là tài liệu quan trọng trong quá trình phát triển phần mềm. Việc phân rã biểu đồ use case giúp chi tiết hóa từng chức năng, từ đó dễ dàng hơn trong việc lập trình và kiểm thử ứng dụng.

2.2 Thiết Kế Cơ Sở Dữ Liệu

Thiết kế cơ sở dữ liệu là một yếu tố then chốt trong việc phát triển ứng dụng. Hệ thống sử dụng Firebase Realtime Database để lưu trữ thông tin về các homestay, bao gồm tên, địa chỉ, tình trạng phòng và các đánh giá từ khách hàng. Việc sử dụng Firebase giúp đảm bảo tính đồng bộ và thời gian thực trong việc cập nhật thông tin. Các bảng dữ liệu được thiết kế một cách hợp lý để dễ dàng truy xuất và quản lý, đồng thời đảm bảo tính bảo mật cho thông tin người dùng. Thiết kế này không chỉ giúp tối ưu hóa hiệu suất của ứng dụng mà còn tạo điều kiện thuận lợi cho việc mở rộng trong tương lai.

III. Triển Khai Hệ Thống

Chương ba của luận văn mô tả quá trình triển khai hệ thống. Việc xây dựng ứng dụng trên nền tảng Android được thực hiện theo từng bước, từ việc lập trình các chức năng cơ bản đến việc tích hợp các giải pháp an toàn. Giao diện của ứng dụng được thiết kế đơn giản, thân thiện với người dùng, giúp người dùng dễ dàng thao tác và tìm kiếm thông tin. Các giao diện chính bao gồm màn hình đăng nhập, màn hình đăng ký, và màn hình danh sách phòng, mỗi giao diện đều được tối ưu hóa để mang lại trải nghiệm tốt nhất cho người dùng. Sự tích hợp của công nghệ thông tin trong quá trình phát triển ứng dụng không chỉ giúp nâng cao hiệu quả công việc mà còn đảm bảo tính bảo mật và an toàn cho người dùng.

3.1 Quá Trình Triển Khai Hệ Thống

Quá trình triển khai hệ thống được thực hiện theo từng giai đoạn rõ ràng. Đầu tiên, các nhà phát triển tiến hành xây dựng ứng dụng trên nền tảng Android, sử dụng ngôn ngữ lập trình Kotlin. Việc tích hợp các giải pháp an toàn như xác thực người dùng qua email và mã hóa thông tin cũng được thực hiện song song. Sau khi hoàn tất việc lập trình, ứng dụng được kiểm thử kỹ lưỡng để đảm bảo mọi chức năng hoạt động đúng như mong đợi. Cuối cùng, ứng dụng được phát hành trên cửa hàng ứng dụng Android CH Play, giúp người dùng dễ dàng tải về và sử dụng. Việc triển khai thành công hệ thống không chỉ giúp đáp ứng nhu cầu của người dùng mà còn thúc đẩy sự phát triển của ngành du lịch.

3.2 Giới Thiệu Một Số Giao Diện Của Hệ Thống

Một số giao diện chính của ứng dụng được thiết kế với mục tiêu mang lại trải nghiệm tốt nhất cho người dùng. Giao diện màn hình đăng nhập và đăng ký được tối ưu hóa để dễ dàng sử dụng, trong khi giao diện danh sách phòng cho phép khách du lịch tìm kiếm và đặt phòng một cách nhanh chóng. Giao diện hiển thị thông tin chi tiết về từng homestay cũng được thiết kế rõ ràng, giúp người dùng có cái nhìn tổng quan và dễ dàng lựa chọn. Ngoài ra, việc tích hợp bản đồ Google Maps vào ứng dụng giúp người dùng xác định vị trí homestay một cách chính xác, từ đó nâng cao trải nghiệm du lịch của họ.

03/01/2025

Trích đoạn nội dung tài liệu

Đặt vấn đề Hiện nay, các công nghệ tiên tiến phát triển ngày càng mạnh mẽ và được ứng dụng trên mọi lĩnh vực kinh tế, chính trị, xã hội cũng như đời sống thường nhật của con người. Ứng dụng của công nghệ thông tin và tin học hoá được xem là một trong những yếu tố mang tính quyết định trong hoạt động của quốc gia, tổ chức. Nó giúp cho các công việc được thực hiện nhanh, chính xác và đạt kết quả cao hơn nhiều. Kinh tế ngày càng phát triển thì nhu cầu du lịch đi đây đi đó khám phá, nghỉ dưỡng, mở mang kiến thức của con người ngày càng lớn.

Cùng với đó là sự bùng nổ mạnh mẽ của Công nghệ thông tin ở trên thế giới nói chung và nước ta nói riêng. Đối với việc đi du lịch hiện nay thì khách du lịch thường phải tìm địa điểm thông qua bạn bè người thân hay những người đã đi, sau đó đến nơi đi du lịch và tìm chỗ để ở lại tham quan nghỉ dưỡng. Tuy nhiên, với cuộc sống bận rộn hiện nay thì không phải ai cũng có thời gian và điều kiện sử dụng máy tính hay đến tận nơi tìm phòng và chưa tính rủi ro là đến nơi thì hết phòng và bị lỡ kế hoạch đặt ra của khách. Song song với khách du lịch thì các nhà chủ kinh doanh phòng trọ, nhà nghỉ cho khách cũng có nhu cầu cho thuê, đặt phòng.

Việc chờ khách tìm đến nơi đặt phòng gây lãng phí thời gian của hai bên cũng như rủi ro về cạnh tranh tiêu cực lẫn nhau giữa các nhà chủ. Cùng với các lý do nêu trên, qua tìm hiểu và khảo sát khách du lịch cùng với thị trường cho thuê phòng gần điểm du lịch, em được biết việc có một ứng dụng đặt dịch vụ du lịch trên các thiết bị di động sẽ giúp khách và chủ cho thuê phòng giảm bớt được thời gian và công sức khi phải đến tận nơi để đặt chỗ và chủ nhà cũng dễ dàng cho thuê. Muốn lựa chọn địa điểm du lịch phù hợp thì khách hàng chỉ cần sử dụng smartphone có kết nối mạng internet, sau đó tìm chỗ nghỉ 1 ngơi gần địa điểm đó và tiến hành đặt phòng với chủ nhà. Chủ nhà cũng dễ dàng cập nhật phòng cho khách để khách dễ dàng đặt phòng.

Do đó, em đã quyết định chọn đề tài: ‘Phát triển ứng dụng đặt phòng dịch vụ du lịch Homestay trên nền tảng Android’.2 Mô hình triển khai hệ thống Hệ thống sẽ bao gồm 2 phần dành cho Client (gọi là app HomeStay) và Admin (gọi là app Admin). Trong app HomeStay sẽ tiếp tục phân quyền dành cho “khách du lịch” và “chủ nhà”. - Phía Khách du lịch + Đăng ký và xác minh bằng email + Chức năng chỉnh sửa thông tin cá nhân, quên mật khẩu, đổi mật khẩu + Xem danh sách điểm du lịch nổi tiếng của các tỉnh trên cả nước + Tìm kiếm địa điểm du lịch cần đến theo mong muốn + Xem thông tin tất cả Homestay, tình trạng của phòng + Xem chi tiết các địa điểm du lịch đồng thời có thể tìm kiếm + Homestay gần đó để book phòng cho chuyến du lịch đó + Tìm kiếm địa chỉ HomeStay cần đến + Quản lý các phòng mình đã book, xem chi tiết phòng, xem được chi tiết chủ phòng cho thuê + Xem bản đồ, thời tiết để đảm bảo an toàn cho khách có chuyến đi an toàn + Xem các đánh giá của phòng, đồng thời có thể tự comment đánh giá trên phòng đó + Xem được chi tiết chủ cho thuê đảm bảo tính chính xác - Phía Chủ nhà + Đăng ký và xác minh bằng email + Chức năng chỉnh sửa thông tin cá nhân, quên mật khẩu, đổi mật khẩu 2 + Chức năng chính là tạo phòng, thêm, sửa, xóa phòng, cập nhật tình trạng khách book phòng và khi trả phòng. + Quản lý các phòng của mình, xem thông tin khách hàng đặt phòng để dễ liên hệ + Chức năng report khi khách hàng đặt phòng và không nhận hoặc lí do khác + Xem đánh giá của khách hàng về phòng của mình để cải thiện dịch vụ -Phía Admin quản lý + Đăng kí và xác minh bằng email.

+ Quản lý tài khoản của chủ nhà và khách đặt phòng. + Chức năng block tài khoản khi bị report quá nhiều, mở tài khoản khi có phản hồi. + Xem các đánh giá của khách hàng để đưa ra quyết định block chính xác.2 Yêu cầu hệ thống 1.1 Yêu cầu chức năng 1. App HomeStay - Đối với khách du lịch Khách hàng đăng nhập vào app sẽ sử dụng các chức năng như sau: + Tìm kiếm địa điểm du lịch muốn đi + Tìm kiếm phòng muốn đặt + Tiến hành đặt phòng, hủy phòng, bình luận về phòng - Đối với chủ nhà có phòng cho thuê Chủ nhà sẽ đăng nhập vào app sẽ sử dụng những chức năng như sau: + Đăng phòng của chủ nhà cho khách hàng thấy + Quản lý phòng của mình theo tình trạng đặt phòng + Đánh giá khách hàng sử dụng phòng với hệ thống 3 2.

App Admin Admin sẽ đăng nhập vào app và sử dụng những chức năng như sau: - Xem danh sách user bao gồm tất cả khách du lịch và chủ nhà - Xem đánh giá của từng tài khoản khi sử dụng dịch vụ - Block tài khoản nếu vi phạm nội quy, quy định hoặc do bị phản ánh quá nhiều - Mở khóa cho tài khoản khi nhận được phản hồi từ người dùng 1.2 Yêu cầu phi chức năng Dành cho cả app HomeStay và Admin - Là ứng dụng di động chạy trên nền tảng Android - Yêu cầu về sản phẩm: Sử dụng được từ Android 7.0 trở lên - Giao diện đơn giản, thân thiện, dễ sử dụng - Có tính thực tiễn cao - Không để lộ thông tin người dùng 1.3 Các công nghệ và công cụ sử dụng 1.1 Hệ điều hành Android Android là một hệ điều hành dựa trên nền tảng Linux và được thiết kế dành cho các thiết bị di động màn hình cảm ứng như điện thoại thông minh và máy tính bảng. Ban đầu, Android được phát triển bởi Tổng công ty Android, với sự hỗ trợ tài chính từ Google và sau này được chính Google mua lại vào năm 2005. Android ra mắt năm 2007 cùng với tuyên bố thành lập Liên minh thiết bị cầm tay mở: một hiệp hội gồm các công ty phần cứng, phần mềm, và viễn thông với mục tiêu đẩy mạnh các tiêu chuẩn mở cho các thiết bị di động. Giao diện người dùng của Android dựa trên nguyên tắc tác động trực tiếp, sử dụng cảm ứng chạm tương tự như những động tác ngoài đời thực như vuốt, chạm, kéo giãn và thu lại để xử lý các đối tượng trên màn hình.

Những thiết bị phần cứng bên trong như gia tốc kế, con quay hồi chuyển và cảm biến khoảng cách được một số ứng dụng sử dụng để phản hồi một số hành động khác của người dùng, ví dụ như điều chỉnh màn hình từ chế độ hiển thị dọc sang chế độ hiển thị ngang tùy theo vị trí của thiết bị, hoặc cho phép người dùng lái xe đua bằng xoay 4 thiết bị, giống như đang điều khiển vôlăng. Các thiết bị Android sau khi khởi động sẽ hiển thị màn hình chính, điểm khởi đầu với các thông tin chính trên thiết bị, tương tự như khái niệm desktop (bàn làm việc) trên máy tính để bàn. Màn hính chính Android thường gồm nhiều biểu tượng (icon) và tiện ích (widget); biểu tượng ứng dụng sẽ mở ứng dụng tương ứng, còn tiện ích hiển thị những nội dung sống động, cập nhật tự động như dự báo thời tiết, hộp thư của người dùng, hoặc những mẩu tin thời sự ngay trên màn hình chính. Màn hình chính có thể gồm nhiều trang xem được bằng cách vuốt ra trước hoặc sau, mặc dù giao diện màn hình chính của Android có thể tùy chỉnh ở mức cao, cho phép người dùng tự do sắp đặt hình dáng cũng như hành vi của thiết bị theo sở thích.

Những ứng dụng do các hãng thứ ba có trên Google Play và các kho ứng dụng khác còn cho phép người dùng thay đổi "chủ đề" của màn hình chính, thậm chí bắt chước hình dáng của hệ điều hành khác như Windows Phone chẳng hạn. Phần lớn những nhà sản xuất, và một số nhà mạng, thực hiện thay đổi hình dáng và hành vi của các thiết bị Android của họ để phân biệt với các hãng cạnh tranh. Ở phía trên cùng màn hình là thanh trạng thái, hiển thị thông tin về thiết bị và tình trạng kết nối. Thanh trạng thái này có thể "kéo" xuống để xem màn hình thông báo gồm thông tin quan trọng hoặc cập nhật của các ứng dụng, như email hay tin nhắn SMS mới nhận, mà không làm gián đoạn hoặc khiến người dùng cảm thấy bất tiện.

Trong các phiên bản đời đầu, người dùng có thể nhấn vào thông báo để mở ra ứng dụng tương ứng, về sau này các thông tin cập nhật được bổ sung theoe tính năng, như có khả năng lập tức gọi ngược lại khi có cuộc gọi nhỡ mà không cần phải mở ứng dụng gọi điện ra. Thông báo sẽ luôn nằm đó cho đến khi người dùng đã đọc hoặc xóa nó đi. Ưu điểm - Giao diện dễ sử dụng, khả năng tùy biến cao, bạn có thể tùy ý chỉnh sửa mọi thứ trên hệ điều hành android, trừ các phân vùng trong hệ thống - Android có sự phổ biến rất cao bởi hệ điều hành này len lỏi ở mọi thiết bị di động, từ điện thoại cao cấp, trung cấp cho đến những sản phẩm có giá phổ thông - Giá thành phải chăng, rẻ hơn so với dòng cao cấp như Iphone 5 - Sử dụng nhiều ứng dụng cùng lúc, đa nhiệm cao Nhược điểm - Dễ bị nhiễm các phần mềm độc hại cùng các mã độc, do hệ điều hành Android cho phép bạn cài đặt các ứng dụng bên ngoài Google Play - Quá nhiều ứng dụng trên Google Play dẫn đến kiểm soát chất lượng rất khó - Sự phân mảnh lớn của hệ điều hành android - Khả năng cập nhật hệ điều hành chậm chạp - Thường xuyên bị đầy bộ nhớ đệm RAM Phần cứng Android sử dụng ARM cho nền tảng phần cứng; các phiên bản sau của hệ điều hành Android hỗ trợ kiến trúc x86 và x86-64. Bắt đầu từ năm 2012, các nhà sản xuất thiết bị đã phát hành điện thoại thông minh và máy tính bảng Android với bộ vi xử lý Intel.

Yêu cầu phần cứng tối thiểu của Android phụ thuộc vào kích thước màn hình của thiết bị, loại và mật độ CPU.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Bài viết "Phát Triển Ứng Dụng Đặt Phòng Dịch Vụ Du Lịch Homestay Trên Nền Tảng Android" của tác giả Bùi Văn Phúc, dưới sự hướng dẫn của ThS. Nguyễn Văn Phác tại Học viện Kỹ thuật Mật mã, trình bày về việc phát triển ứng dụng đặt phòng homestay trên nền tảng Android. Bài viết không chỉ cung cấp cái nhìn tổng quan về công nghệ và quy trình phát triển ứng dụng, mà còn nhấn mạnh lợi ích của việc sử dụng ứng dụng này trong việc nâng cao trải nghiệm du lịch cho người dùng. Đặc biệt, ứng dụng này có thể giúp người dùng dễ dàng tìm kiếm và đặt phòng homestay, từ đó thúc đẩy sự phát triển của ngành du lịch homestay tại Việt Nam.

Để mở rộng thêm kiến thức về lĩnh vực du lịch, bạn có thể tham khảo các bài viết liên quan như Nghiên cứu phát triển loại hình du lịch homestay tại Tây Ninh, nơi bàn về sự phát triển của mô hình homestay trong một khu vực cụ thể, hoặc Luận văn du lịch phát triển du lịch Tây Ninh, cung cấp cái nhìn tổng quan về các chiến lược phát triển du lịch tại tỉnh Tây Ninh. Cuối cùng, bài viết Luận án Tiến sĩ Kinh tế về Phát triển Bền vững Du lịch tại Thanh Hóa cũng sẽ giúp bạn hiểu thêm về các yếu tố bền vững trong phát triển du lịch, một khía cạnh quan trọng khi triển khai ứng dụng dịch vụ du lịch.