TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TPHCM
KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
BÁO CÁO
TIỂU LUẬN CHUYÊN NGÀNH
GVHD: Lê Văn Vinh
Đề tài: Xây dựng ứng dụng du lịch sử dụng
công nghệ Flutter và Node JS
Nhóm sinh viên thực hiện:
Nguyễn Gia Huy
18110121
Huỳnh Nhựt Thiên
18110203
Tp. Hồ Chí Minh, 19 tháng 09 năm 2021
I.
Khảo sát hiện trạng
Agoda
Các chức năng
Đăng nhập: Tài khoản google, facebook, email, số di động
Đăng ký: số điện thoại, email
Tìm kiếm
Khách sạn: tìm xung quanh vị trí hiện tại (Nhận phịng, trả phịng, số phịng,
người lớn, trẻ em)
Các ưu đãi và mã giảm giá
Tìm kiếm các chuyến bay : một chiều, khứ hồi
Lọc theo ngân sách các tour du lịch và giá (các thông tin chi tiết và liên hệ)
Danh sách địa điểm yêu thích, đơn đặt chỗ và các phiều giảm giá
Thanh toán: thẻ, tiền mặt
Đánh giá
Tradvisor
Đăng nhập: Tài khoản google, facebook, email
Tìm kiếm khách sạn lân cận: homestay và giá tiền, nhà hàng và các địa điểm du
lịch lân cận
Tìm theo số người và phòng
Xem các địa điểm du lịch lân cận
Lập kế hoạch
Chuyến đi: lưu địa điểm muốn ghé, xem các mục đã lưu trên bản đồ chia sẽ
Xem đặt chỗ
Đánh giá
Trip
Đăng nhập bằng tài khoản facebook, google, wechat, email, số điện thoại,
apple, Twitter
Đăng ký bằng email
Các ưu đãi và mã giảm giá
Tìm kiếm khách sạn, chuyến bay, Tàu hỏa
Thông tin về vé máy bay, tàu hỏa
Thơng tin về khách sạn
Thanh tốn trực tuyến bằng thẻ
Đánh giá
Quản lý lịch trình
Đăng bài khoảnh khắc du lịch (bài đăng, tags, vị trí)
II.
UseCase
Lược đồ UseCase
III. Đặc tả UseCase và Lược đồ Sequence
1. Usecase “Login”
Name
Login
Brief description
Người dùng đăng nhập vào hệ thống
Actor(s)
Customer, Admin
Pre-conditions
Người dùng đã được tạo tài khoản trong hệ thống
Post-conditions
Nếu đăng nhập thành công: Người dùng được xác thực và hệ
thống hiển thị các chức năng có thể chọn.
Nếu đăng nhập khơng thành công: Người dùng không truy
cập được vào hệ thống.
Flow of events
Basic flow
(Thành công)
Use case bắt đầu khi người dùng cần thực hiện chức năng nào
đó của hệ thống cần xác thực quyền truy cập
1. Hệ thống hiển thị cửa sổ cho người dùng nhập email
và password
2. Người dùng nhập email và password, nhấn “Đăng
nhập”
3. Hệ thống xác thực email và password
4. Hệ thống xác định vai trò của người dùng
5. Hệ thống mở màn hình trang chủ và mở các chức năng
được phép truy cập của người dùng.
Alternative flow
(Thất bại)
Nếu người dùng nhập sai email hoặc password. Những công
việc sau được thực hiện:
1. Hệ thống mô tả lý do xác thực bị sai
2. Hệ thống lưu ý người dùng đăng nhập lại
3. Khi người dùng nhập lại email và password, bước 3 ở
Basic flow được thực hiện.
Extension point
Khơng có
2. Usecase “Logout”
Name
Logout
Brief description
Người dùng đăng xuất khỏi hệ thống
Actor(s)
Customer, Admin
Pre-conditions
Người dùng đã đăng nhập trong ứng dụng
Post-conditions
Nếu đăng xuất thành công: Trở về trang đăng nhập trở về
trạng thái Guest
Flow of events
Basic flow
(Thành công)
Use case bắt đầu khi người dùng chọn chức năng “Đăng
xuất” trên thanh menu
1. Hệ thống hiển thị nút cho người dùng chọn đăng xuất
2. Người dùng chọn “Đăng xuất”
3. Hệ thống xóa session
4. Thốt khỏi ứng dụng, trở về trang đăng nhập
Alternative flow
(Thất bại)
Extension point
Khơng có
3. Usecase “SignUp”
Name
SignUp
Brief description
Người dùng đăng ký tài khoản hệ thống
Actor(s)
Guest
Pre-conditions
Người dùng chưa có tài khoản trong hệ thống.
Post-conditions
Nếu đăng ký thành công: Hệ thống thông báo đăng ký thành
công, người dùng được hệ thống cung cấp tài khoản.
Nếu đăng ký không thành công: Hệ thống thông báo đăng ký
thất bại người dùng phải đăng ký lại
Flow of events
Basic flow
(Thành công)
Use case bắt đầu khi người dung chưa có tài khoản cần thực
hiện chức năng đăng ký
1. Hệ thống hiển thị cửa sổ cho người dùng nhập họ và
tên, password, email, số điện thoại, địa chỉ.
2. Người dùng nhập họ và tên, password, email, số điện
thoại, địa chỉ.
3. Hệ thống xác thực họ và tên, password, email, số điện
thoại, địa chỉ.
4. Hệ thống xác định thông tin của người dung nhập vào.
5. Hê thống gửi mã xác thực đến email cho người dùng
5. Người dùng nhập mã mã xác thực ,hệ thống lưu tài
khoản cho người dùng để truy cập được vào hệ thống.
Alternative flow
(Thất bại)
Nếu người dùng nhập sai hay mã xác thực sai. Những công
việc sau được thực hiện:
1. Hệ thống mô tả lý do xác thực bị sai và thông tin sai
2. Hệ thống lưu ý người dùng đăng ký lại
3. Khi người dùng nhập lại các thông tin xác thực bị sai,
bước 1 ở Basic flow được thực hiện.
Extension point
Khơng có
4. Usecase “Check Tour Information”
Name
Xem thông tin Tour du lịch (Check Tour Information)
Brief description
Xem thông tin của địa điểm du lịch bao gồm các địa điểm
tham quan, nhà hàng, khách sạn, các loại phương tiện di
chuyển, chi phí.
Actor(s)
Guest, Admin
Pre-conditions
Người dùng truy cập vào ứng dụng.
Post-conditions
Nếu đăng nhập thành công: Người dùng xem được các thông
tin của tour du lịch
Nếu đăng nhập không thành công: Thông báo hệ thống bị lỗi
Flow of events
Người dùng chọn chức năng “Xem tour du lịch” ở Home
hoặc thanh Menu. Sau đó, chọn một địa điểm bất kỳ và người
dùng sẽ được chuyển đến giao diện của “Xem thơng tin Tour
du lịch”. Ở đây sẽ có các phần thơng tin của tour, người dùng
có thể chọn các thơng tin mà mình quan tâm đến. Người dùng
có thể trở về Home hoặc sử dụng chức năng khác của hệ
thống.
Basic flow
Người dùng chọn chức năng “Xem tour du lịch” ở Home
hoặc thanh Menu. Sau đó, chọn một địa điểm bất kỳ và người
dùng sẽ được chuyển đến giao diện của “Xem thông tin Tour
du lịch”.
(Thành công)
1. Hệ thống hiển thị các phần thông tin của tour
2. Người dùng có thể chọn các thơng tin mà mình quan
tâm đến.
3. Hệ thống truy xuất các thông tin.
4. Hệ thống hiển thị các thông tin mà người dùng chọn.
Alternative flow
(Thất bại)
Nếu hệ thống không truy xuất được dữ liệu. Những công việc
sau được thực hiện:
1. Hệ thống mô tả lý do truy xuất được dữ liệu thất bại.
2. Hệ thống thông báo người dùng về lỗi hệ thống
3. Người dùng chọn các lựa chọn khác, bước 3 ở Basic
flow được thực hiện.
Extension point
Khơng có
5. Usecase “Search Tour Infomation”
Name
Search Tour Infomation
Brief description
Người dùng nhập vào ơ tìm kiếm để tìm thơng tin tour
Actor(s)
Tất cả người dùng
Pre-conditions
Người dùng nhập thơng tin vào ơ tìm kiếm
Post-conditions
Nếu tìm tour thành cơng: Hệ thống trả về thơng tin tour được
tìm thấy
Nếu tìm tour khơng thành cơng: Hệ thống thơng báo khơng
tìm thấy
Flow of events
Basic flow
(Thành cơng)
Use case bắt đầu khi người dùng nhập vào ơ tìm kiếm để tìm
thơng tin tour
1. Hệ thống hiển thị ơ tìm kiếm
2. Người dùng nhập tên tour vào ơ tìm kiếm
3. Hệ thống tìm kiếm thơng tin
4. Hệ thống trả về thơng tin tour
Alternative flow
(Thất bại)
Extension point
Nếu tour không tồn tại
1. Hệ thống trả về thơng báo khơng tìm thấy kết quả
Khơng có
6. Usecase “Forgot Password”
Name
Forgot Password
Brief description
Người dùng quên mật khẩu tài khoản đã đăng ký
Actor(s)
Customer
Pre-conditions
Người dùng nhập thông tin email
Post-conditions
Nếu nhập đúng email: Hệ thống gửi mail thay đổi mật khẩu
đến email
Nếu đăng nhập không thành công: Hệ thống thông báo không
tồn tại email
Flow of events
Basic flow
(Thành công)
Use case bắt đầu khi người dùng nhập vào ô điền email đã
đăng ký
1. Hệ thống hiển thị ơ tìm kiếm
2. Người dùng nhập email vào ơ
3. Hệ thống tìm kiếm thơng tin
4. Hệ thống gửi mail đến email đã đăng ký
5. Người dùng nhấn vào đường link đổi mật khẩu
6. Điền thông tin vào ô “Mật khẩu mới” và “Nhập lại mật
khẩu mới”
7. Chọn “Xác nhận” và trở về trang đăng nhập
Alternative flow
(Thất bại)
Extension point
Nếu email không tồn tại
1. Hệ thống trả về thơng báo khơng tìm thấy email
Khơng có
7. Usecase “BookTour”
Name
BookTour
Brief description
Đặt tour du lịch
Actor(s)
Customer
Pre-conditions
Người dùng truy cập vào ứng dụng.
Post-conditions
Người dùng đăng nhập thành công vào hệ thống
Flow of events
Basic flow
Người dùng truy cập vào trang chủ để chọn tour
(Thành công)
1 .Người dùng chọn “Chọn địa chỉ” để chọn địa chỉ
và chọn tour muốn đặt ,sau đó người dùng sẽ được chuyển
đến giao diện của “Xem thông tin Tour du lịch”.
2. Hệ thống hiển thị các phần thông tin của tour
3. Người dùng chọn “Chọn khách sạn/ nhà nghỉ” để chọn
khách sạn hoặc nhà nghỉ
4. Người dùng chọn “Chọn nhà hàng” để chọn nhà hàng
5. Người dùng chọn “Chọn phương tiện” để chọn phương
tiện
6. Chọn “Đặt tour” để tiến hành đặt
Alternative flow
Nếu hệ thống không đặt được tour
(Thất bại)
1. Hệ thống mô tả lý do tour đặt dữ liệu thất bại.
2. Hệ thống thông báo người dùng về lỗi
3. Người dùng chọn các lựa chọn khác để tiến hành đặt
lại, bước 1 ở Basic flow được thực hiện.
Extension point
Không có
8. Usecase “Cancel tour”
Name
Cancel tour
Brief description
Hủy tour du lịch
Actor(s)
Customer
Pre-conditions
Người dùng truy cập vào ứng dụng.
Post-conditions
Người dùng hủy thành công: Hệ thống thông báo hủy thành
cơng và tour đã xóa khỏi “History”
Người dùng hủy thất bại: Hệ thống thông báo hủy thất bại
Flow of events
Basic flow
Người dùng truy cập vào “History”
(Thành công)
1 . Hệ thống hiển thị danh sách tour đã đặt
2. Người dùng chọn vào tour muốn hủy chọn “Hủy”
3. Hệ thống hiển thị thông báo xác nhận
4. Người dùng chọn “Đồng ý” nếu muốn hủy tour chọn
“Quay lại” để trở về bước 1
Alternative flow
Nếu hệ thống không hủy được
(Thất bại)
1. Hệ thống mô tả lý do tour không được hủy
2. Hệ thống thông báo người dùng về lỗi
3. Người dùng chọn các lựa chọn khác để tiến hành hủy
lại, bước 1 ở Basic flow được thực hiện.
Extension point
Khơng có
9. Usecase “Pay by paypal”
Name
Pay by paypal
Brief description
Thanh toán bằng paypal
Actor(s)
Customer
Pre-conditions
Người dùng truy cập vào ứng dụng.
Post-conditions
Người dùng thanh toán thành cơng: Hệ thống thơng báo thanh
tốn thành cơng
Người dùng thanh tốn thất bại: Hệ thống thơng báo thanh
toán thất bại
Flow of events
Basic flow
Người dùng truy cập vào “History”
(Thành công)
1 . Hệ thống hiển thị danh sách tour đã đặt
2. Người dùng chọn vào tour muốn thanh toán chọn
“Thanh tốn”
3. Hệ thống hiển thị thơng tin “Giá” và mã giảm giá
4. Người dùng chọn “Hình thức thanh tốn”, chọn
“Paypal”
5. Người dùng xác nhận thanh toán chọn “Thanh toán”
Alternative flow
Nếu hệ thống khơng thanh tốn được
(Thất bại)
1. Hệ thống mơ tả lý do tour khơng thanh tốn được
2. Hệ thống thông báo người dùng về lỗi
3. Người dùng chọn các lựa chọn khác để tiến hành thành
toán lại, bước 1 ở Basic flow được thực hiện.
Extension point
Khơng có
10. Usecase “Pay by vnpay”
Name
Pay by vnpay
Brief description
Thanh toán bằng vnpay
Actor(s)
Customer
Pre-conditions
Người dùng truy cập vào ứng dụng.
Post-conditions
Người dùng thanh toán thành cơng: Hệ thống thơng báo thanh
tốn thành cơng