Professional Documents
Culture Documents
0502-G11 - GrabTravel
0502-G11 - GrabTravel
0502-G11 - GrabTravel
Trường Đại Học Ngoại Ngữ - Tin Học Thành Phố Hồ Chí Minh
Khoa Công Nghệ Thông Tin
Thành Viên :
1. Lê Quốc Cường-MSSV:22DH110457
2. Huỳnh Nhật Hoàng-MSSV:22DH111132
3. Cuột Văn Phong – MSSV: 22DH114677
4. Nguyễn Trần Thảo Vy – MSSV: 22DH114365
Bảng chữ ký
Tác giả:
Vị trí: Ngày:
Vị trí: Ngày:
Vị trí: Ngày:
Vị trí: Ngày:
2|Page
Người duyệt:
Vị trí: Ngày:
Mục lục
3|Page
3.2.2. Activity Diagram: Quản lí đặt xe ..................................................................... 47
3.2.3. Activity Diagram: Đổi mã khuyến mãi .............................................................. 47
3.2.4. Activity Diagram::Đánh giá tài xế ................................................................... 48
3.2.5. Activity Diagram: Xác nhận hoàn thành đơn ..................................................... 48
3.2.6. Activity Diagram: Hủy đặt xe .......................................................................... 49
3.2.7. Activity Diagram: Thanh toán ......................................................................... 49
3.2.8. Activity Diagram: Phân tài xế ......................................................................... 50
3.2.9. Activity Diagram: Cập nhật thông tin cá nhân ................................................... 50
3.2.10. Activity Diagram: Xem lịch sử đặt xe ............................................................. 51
3.2.11. Activity Diagram: Đặt xe .............................................................................. 52
3.3. Sequence Diagram .............................................................................................. 53
3.3.1. Sequence Diagram: Quản lí đặt xe .................................................................. 53
3.3.2. Sequence Diagram: Quản lí profile .................................................................. 54
3.3.3. Sequence Diagram:Xem lịch sử đặt xe ............................................................. 55
3.3.4. Sequence Diagram: Đăng nhập ....................................................................... 56
3.3.5. Sequence Diagram: Hủy đặt xe....................................................................... 57
3.3.6. Sequence Diagram: Phân tài xế ...................................................................... 58
3.3.7. Sequence Diagram:Thanh toán ....................................................................... 59
3.3.8. Sequence Diagram: Đặt xe ............................................................................. 60
3.3.9. Sequence Diagram: Cập nhật thông tin cá nhân................................................ 61
3.3.10. Sequence Diagram: QnA .............................................................................. 62
3.3.11. Sequence Diagram: Đăng xuất...................................................................... 63
3.3.12. Sequence Diagram: Xác nhận hoàn thành đơn ................................................ 64
3.4. State Diagram .................................................................................................... 65
3.4.1. State Diagram: <User> ................................................................................. 65
3.4.2. State Diagram: <UserIteration> ..................................................................... 66
3.4.3. State Diagram: <Driver> ............................................................................... 67
3.4.4. State Diagram: <Passenger> ......................................................................... 68
4. Thiết kế hệ thống ..................................................................................................... 69
4.1. Thiết kế dữ liệu .................................................................................................... 69
4.1.1. Class Diagram .............................................................................................. 69
4|Page
1. Giới thiệu
1.1. Mục tiêu
Bản phân tích và thiết kế này cung cấp bản mô tả chi tiết về hệ thống “đặt xe qua ứng dụng Grab”,
bản phân tích các chức năng chủ yếu và bản thiết kế các chức năng thiết kế chính yếu của hệ thống
được xây dựng.
# Thuật ngữ/ Mô tả
Từ viết tắt
2 BR Business Rule
5|Page
Đặt xe trực tuyến Người dùng đặt xe trong qua điện Tìm tài xế
thoại và chọn địa điểm cần đến nhanh
Hiển thị giá cước Cung cấp người dùng giá cước dựa Giá cước cao
trên khoảng cách và thời gian dự kiến hơn các ứng
của chuyến dụng khác.
Định vị GPS Giúp người dùng chia sẻ vị trí và giúp Định vị khá tốt Đôi lúc không
tài xế nhận biết khách hàng đang ở địa hiển thị địa
điểm nào chỉ chính xác
Chọn phương tiện Chọn các loại phương tiện khác nhau Nhiều sự lựa
car,bike... chọn
Thanh toán Trả thẻ, tiền mặt Thuận tiện vì
hướng tới
khách hàng
trả bằng thẻ
nhiều.
1.3.2. <Be>
Giao diện:sinh động, bắt mắt chủ yếu hai màu vàng trắng.
6|Page
Định vị GPS Giúp người dùng chia sẻ vị trí và giúp Định vị khá tốt Đôi lúc không
tài xế nhận biết khách hàng đang ở địa hiển thị địa chỉ
điểm nào chính xác
Dịch vụ ngoài lĩnh vực Người dùng đặt thức ăn, giao hàng Phí ship rẻ
Thanh toán Trả thẻ, tiền mặt Thanh toán Hay bị lỗi khi
nhanh hoàn tiền về
thẻ.
Chọn phương tiện Chọn các loại phương tiện khác nhau Hình thức
car,bike... thanh toán đa
dạng
1.3.3. <Gojek>
Giao diện:sinh động, bắt mắt chủ yếu hai màu xanh lá, trắng.
7|Page
8|Page
Yêu cầu chức năng Chức năng Ưu điểm Nhược điểm
Đặt xe trực tuyến Người dùng đặt xe trong qua điện Đặt nhiều Tìm tài xế hơi
thoại và chọn địa điểm cần đến chuyến cùng lâu
lúc
Hiển thị giá cước Cung cấp người dùng giá cước dựa Giá trước cạnh Giờ cao điểm
trên khoảng cách và thời gian dự kiến tranh ở việc giá quá cao
của chuyến đặt xe và món
ăn gây hứng
thú cho người
có ngân sách
hạn chế
Định vị GPS Giúp người dùng chia sẻ vị trí và giúp Định vị khá Đôi lúc không
tài xế nhận biết khách hàng đang ở địa tốt hiển thị địa chỉ
điểm nào chính xác
Dịch vụ ngoài lĩnh vực Người dùng đặt thức ăn, giao hàng Phí giao rẻ
Thanh toán Trả thẻ, tiền mặt Thanh toán
nhanh
Chọn phương tiện Chọn các loại phương tiện khác nhau Nhiều lựa
car,bike... chọn
9|Page
1.3.4. <Xanh SM>
Giao diện:sinh động, bắt mắt chủ yếu hai màu xanh da trời, trắng,dễ sử dụng.
1.3.5. <Maxim>
Giao diện:đơn giản chủ yếu hai màu vàng trắng, dễ sử dụng.
10 | P a g e
Yêu cầu chức năng Chức năng Ưu điểm Nhược điểm
Đặt xe trực tuyến Người dùng đặt xe trong qua điện Tìm tài xế lâu
thoại và chọn địa điểm cần đến
Hiển thị giá cước Cung cấp người dùng giá cước dựa Giá cước rẻ
trên khoảng cách và thời gian dự kiến
của chuyến
Định vị GPS Giúp người dùng chia sẻ vị trí và giúp Hiển thị địa chỉ
tài xế nhận biết khách hàng đang ở địa không chính
điểm nào xác
Dịch vụ ngoài lĩnh vực Người dùng đặt thức ăn, giao hàng Phí giao rẻ
Thanh toán Trả thẻ, tiền mặt Thanh toán
nhanh
Chọn phương tiện Chọn các loại phương tiện khác nhau Chỉ có hai lựa
car,bike... chọn xe máy,
ô tô
11 | P a g e
Dịch vụ ngoài lĩnh vực **** **** ***
Kết luận: Nếu quan tâm đến dịch vụ đa dạng, be và gojek là những đối thủ hấp dẫn. Cả hai không chỉ cung
cấp dịch vụ đặt xe mà còn cung cấp nhiều dịch vụ đa dạng khác nhau như giao hàng, giao món ăn,đặt vé
máy bay...Giúp người dùng tiết kiệm thời gian và tiện lợi khi có thể dùng một ứng dụng duy nhất để đáp
ứng nhu cầu.Do nhu cầu ở các thành phố phát triển khá lớn nên ưu tiên dịch vụ như be và gojek.
12 | P a g e
2.2. Actors và Use Cases
2.2.1. Các Use Case Diagram
13 | P a g e
UCD Quản lí thông tin cá nhân
14 | P a g e
UCD Đổi mã khuyến mãi
2.2.2. Mô tả Actors
# Tên Actor Mô tả
1 Người dùng (User) Là người sử dụng ứng dụng di động hoặc trang web để đặt xe.
2 Tài xế (Driver) Là người nhận yêu cầu đặt xe từ người dùng và chở họ đến điểm đến mong
muốn.
3 Hệ thống (System) Là phần mềm hoặc nền tảng ứng dụng di động và web quản lý và xử lý yêu
cầu đặt xe, hiển thị thông tin tài xế và quản lý thanh toán.
1 UC01 Đăng nhập Cho phép actor đăng nhập vào hệ thống
2 UC02 Đăng ký Cho phép actor đăng ký một tài khoản cho hệ thống
15 | P a g e
3 UC03 Cho phép actor đặt 1 chuyến đi đến địa điểm mong muốn
Đặt xe
4 UC04 Phân tài xế Hệ thống tìm tài xế cho đơn đơn mới được tạo
6 UC06 Gọi điện Cho phép các actor gọi điện trong nội bộ app miễn phí
8 UC08 Thanh toán Cho phép actor thanh toán đơn đặt xe với nhiều hình thức
9 UC09 Cập nhật thông tin cá nhân Cho phép người dùng thay đổi thông tin cá nhân
10 UC10 Đăng xuất Cho phép actor đăng xuất khỏi hệ thống
11 UC11 Xem lịch sử đặt xe Cho phép actor xem lại các đơn đã đặt
12 UC12 Nhận đơn thủ công Cho phép actor nhận làm tài xế cho chuyến đi
13 UC13 Nhận đơn tự động Cho phép hệ thống chọn những tài xế để tự động nhận đơn
14 UC14 Xác nhận hoàn thành đơn Cho phép actor đặt trạng thái đơn thành đã hoàn thành
15 UC15 Nhắn tin Cho phép một actor nhắn tin với các actor khác
16 UC16 Đổi mã khuyến mãi Cho phép actor đổi mã khuyến mãi
17 UC17 Tính giá cước Hệ thống tính toán và hiển thị giá cước của chuyến đi
18 UC18 Đánh giá chuyến đi Cho phép actor phản hồi trải nghiệm về chuyến đi
19 UC19 Xem danh sách tài khoản Cho phép admin xem các tài khoản đã được đăng kí trên hệ
thống
20 UC20 Thống kê đánh giá tài xế Hệ thống tự động điều chỉnh lại điểm đánh giá của tài xế khi
có lượt đánh giá mới
21 UC21 Xếp mức ưu tiên tài xế Hệ thống tự động sắp xếp mức ưu tiên của tài xế dựa vào
điểm đánh giá
22 UC22 Xem mức ưu tiên tài xế Cho phép actor xem danh sách mức ưu tiên của từng tài xế
23 UC23 Thống kê số đơn Hệ thống tự động tính tổng số đơn mà driver đã hoàn thành
24 UC24 Tính tiền thưởng Hệ thống tự động tính tiền thưởng cho driver
25 UC25 Tính điểm reward Hệ thống tự động tính điểm reward và gửi cho khách hàng
26 UC26 Nâng cấp bậc khách hàng Hệ thống tự động tăng cấp bậc khách hàng khi đủ điểm
reward
16 | P a g e
28 UC28 Lọc số câu hỏi nhiều nhất Cho phép admin lọc ra những câu hỏi được các actor khác
nhắn nhiều nhất
29 UC29 Trả lời câu hỏi Cho phép admin thêm các câu trả lời cho mục Các câu hỏi
thường gặp
30 UC30 Xóa đơn Cho phép actor xóa những đơn đã đặt
31 UC31 Khóa tài khoản Cho phép admin xóa tài khoản của những actor khác
2.3.1. Admin
Actor chính Usecase
Admin Khóa tài khoản
Admin Xem danh sách tài khoản
Admin Xem mức đánh giá tài xế
2.3.2. Passenger
Actor chính Usecase
Passenger Đặt xe
Passenger Đánh giá chuyến đi
Passenger Thanh toán
Passenger Hủy đơn
Passenger Đăng nhập
Passenger Nhắn tin
Passenger Cập nhật thông tin cá nhân
Passenger Đổi mã khuyến mãi
Passenger Đăng xuất
Passenger Đăng ký
2.3.3. Driver
Actor chính Usecase
Driver Nhận đơn tự động
Driver Nhận đơn thủ công
Driver Hủy đơn
Driver Xác nhận hoàn thành đơn
Driver Xem lịch sử đơn
17 | P a g e
Driver Đăng ký
Driver Đăng nhập
Driver Cập nhật thông tin cá nhân
Driver Đăng xuất
Driver Nhắn tin
2.3.4. Hệ thống
Actor chính Usecase
Hệ thống Định vị
Hệ thống Tính tiền cước
Hệ thống Phân tài xế
Hệ thống Xếp mức ưu tiên driver
Hệ thống Nâng cấp bậc khách hàng
Hệ thống Thống kê đánh giá driver
Hệ thống Tính điểm reward
Hệ thống Thống kê số đơn
Hệ thống Tính tiền thưởng
Actor Passenger/ Driver Trigger Actor khi vừa khởi động app. Nhấn
nút đăng nhập
Post condition Chuyển tới trang default với role tương ứng
18 | P a g e
System state in 1. Hiển thị thông báo: MS01
error situations
2.Hiển thị thông báo: MS02
Activities
Actor System
1 Actor tại trang Đăng nhập nhập số 2 Hệ thống gửi mã OTP tới sdt Actor đã nhập
điện thoại và nhấn vào button nhận
OTP
3 Actor nhập mã OTP vào và nhấn nút 4 Hệ thống chuyển tới trang default với role tương
đăng nhập ứng
Actor System
1 Actor nhấn vào nút Đăng nhập bằng 2 Hệ thống hiển thị giao diện đăng nhập bằng
google google
3 Actor nhập tài khoản và mật khẩu rồi 4 Hệ thống chuyển sang trang yêu cầu nhập số
nhấn nút Đăng nhập điện thoại
5 Actor nhập số điện thoại và nhấn vào 6 Hệ thống gửi mã OTP tới sdt Actor đã nhập
button nhận OTP
7 Actor nhập mã OTP vào và nhấn nút 8 Hệ thống xác nhận mã OTP là đúng và chuyển tới
đăng nhập trang default với role tương ứng
Actor System
1 Actor nhấn vào nút Đăng nhập bằng 2 Hệ thống hiển thị giao diện đăng nhập bằng
facebook facebook
3 Actor nhập tài khoản và mật khẩu rồi 4 Hệ thống chuyển sang trang yêu cầu quyền cấp
nhấn nút Đăng nhập thông tin cho ứng dụng
19 | P a g e
5 Actor nhấn vào nút Cho phép 6 Hệ thống chuyển sang trang yêu cầu nhập số
điện thoại
7 Actor nhập số điện thoại và nhấn vào 8 Hệ thống gửi mã OTP tới sdt Actor đã nhập
button nhận OTP
9 Actor nhập mã OTP vào và nhấn nút 10 Hệ thống xác nhận mã OTP là đúng và chuyển tới
đăng nhập trang default với role tương ứng
Actor System
Alternative Flow: Đăng nhập không thành công do mã OTP không hợp lệ
1 Actor nhập mã OTP vào và nhấn nút 2 Hệ thống gửi thông báo MS12
đăng nhập
Actor System
Alternative Flow: Đăng nhập không thành công do số điện thoại chưa được đăng kí trên hệ thống
1 Actor nhập số điện thoại và nhấn vào 2 Hệ thống gửi thông báo MS03
nút nhận mã OTP
3.1.2. UC02:Đăng ký
Name Đăng ký Code UC02
Actor Passenger/ Driver Trigger Actor khi vừa khởi động app. Nhấn
nút đăng ký
Pre-condition Actor chưa đăng nhập & chấp nhận điều khoản và điều kiện
20 | P a g e
4. hiển thị thông báo: MS12
Activities
Actor System
1 Actor tại trang đăng ký, nhập số điện 2 Hệ thống tiến hành gửi mã yêu cầu xác nhận tới
thoại rồi nhấn nút nhận mã OTP số điện thoại của khách hàng.
3 Tại trang xác thực mã OTP, khách hàng 4 Xác nhận đăng ký thành công và chuyển sang
nhập mã OTP hợp lệ trang default với role tương ứng
Actor System
Alternative Flow: Đăng ký không thành công khi nhập số điện thoại đã được đăng ký với hệ thống
1 Actor nhập số điện thoại đã được 2 Hệ thống hiển thị thông báo lỗi MS04
đăng ký
Actor System
Alternative Flow: Đăng ký không thành công khi nhập mã OTP không hợp lệ
1 Actor nhập mã OTP không hợp lệ ( Sai 2 Hệ thống hiển thị thông báo lỗi MS12
mã OTP/ Mã hết thời gian hiệu lực)
Description Cho phép actor đặt 1 chuyến đi đến địa điểm mong muốn
Post condition Có thông báo xác nhận: Đặt xe thành công – Hiển thị thông tin tài xế
21 | P a g e
System state in 1. Hiển thị thông báo: MS01
error situations
2.Hiển thị thông báo: MS02
Activities
Actor System
Main Flow: Đặt xe thành công với một chuyến đi hoàn toàn mới
1 Actor tại trang default, chọn nút Ô tô 2 Hệ thống chuyển sang trang nhập điểm đón, đến
hoặc nút Xe máy
3 Actor nhập địa điểm đón, đến 4 Hệ thống hiển thị lên điểm đón để người dùng
xác nhận
5 Actor nhấn vào nút xác nhận điểm 6 Hệ thống thực hiện theo UC17-Tính giá cước
đón
7 Actor nhấn vào nút xác nhận đặt xe 8 Hệ thống thực hiện theo UC04-Phân tài xế + hiển
thị thông báo MS14 + thông tin tài xế
Actor System
Alternative Flow: Đặt xe thành công bằng cách đặt lại chuyến đi cũ
1 Actor đứng tại trang hoạt động, chọn 2 Hệ thống thực hiện theo UC17-Tính giá cước
nút đặt lại
3 Actor nhấn vào nút xác nhận đặt xe 4 Hệ thống thực hiện theo UC04-Phân tài xế + hiển
thị thông báo MS14 + thông tin tài xế
Actor System
1 Actor nhấn vào nút xác nhận đặt xe 2 Hệ thống thực hiện theo UC04 + hiển thị thông
báo MS08
Actor System
Alternative Flow: Đặt xe không thành công do có biến động trong việc tính giá cước
22 | P a g e
1 Actor nhấn vào nút xác nhận đặt xe 2 Hệ thống hiển thị thông báo MS10
Description Hệ thống tìm tài xế cho đơn đơn mới được tạo
Activities
Actor System
-> Hiển thị thông báo MS14 + thông tin tài xế cho
UC03-Đặt xe
Actor System
23 | P a g e
Alternative Flow: Không tìm được tài xế
-> Hiển thị thông báo MS14 + thông tin tài xế cho
UC03-Đặt xe
2 -Nếu kết quả cuối cùng trả về là NULL thì hiển thị
thông báo MS08 cho UC03-Đặt xe
Actor Hệ thống Trigger Actor nhấn vào nút cho phép truy
cập vị trí
Post condition Hiển thị vị trí của khách hàng/ driver trên map
Actor System
1 Actor nhấn vào nút cho phép truy cập 2 Hệ thống xác định vị trí của khách hàng dựa vào
vị trí GPS
Actor System
1 Actor từ chối cho phép truy cập vị trí 2 Hệ thống hiển thị thông báo MS11
24 | P a g e
3.1.6. UC06: Gọi điện
Name Gọi điện Code UC06
Description Cho phép actor gọi điện trong nội bộ app miễn phí
Actor Passenger/ Driver Trigger Sau khi phân tài xế thành công,
Actor nhấn vào biểu tượng hình
điện thoại
Post condition Màn hình thông báo cuộc gọi đến/ cuộc gọi đi
2.Lỗi hệ thống
Actor System
1 Actor nhấn vào biểu tượng điện thoại 2 Hệ thống tiến hành quay số + phát ra chuông reo
ở phần thông tin của tài xế liền mạch
Actor System
1 Actor nhấn vào biểu tượng điện thoại 2 Hệ thống tiến hành quay số + phát ra âm thanh
ở phần thông tin của tài xế gián đoạn, sau đó hiển thị thông báo MS13
25 | P a g e
Post condition Màn hình thông báo đơn đã bị hủy
Actor System
1 Sau khi UC03-Đặt xe thành công, actor 2 Hệ thống hiển thị bảng lựa chọn lí do hủy đặt xe
nhấn vào nút hủy đặt xe
3 Actor nhấn vào nút xác nhận hủy đặt 4 Hệ thống hiển thị đơn đã bị hủy và chuyển sang
xe trang Hoạt động + gửi thông báo tới driver/
passenger
Actor System
1 Actor nhấn vào nút xác nhận hủy đặt 2 Hệ thống hiển thị thông báo MS13
xe
Description Cho phép actor thanh toán đơn đặt xe với nhiều hình thức
Actor Passenger Trigger Actor tại trang đơn đặt xe hiện tại,
nhấn vào nút thanh toán
Error situations 1. Actor chưa liên kết tài khoản ngân hàng/ ví điện tử
Activities
26 | P a g e
Actor System
1 Actor tại trang đơn đặt xe hiện tại, 2 Hệ thống chuyển sang màn hình chọn hình thức
nhấn vào nút thanh toán thanh toán
3 Chọn hình thức thanh toán bằng ví 4 Hệ thống hiển thị trang xác nhận thanh toán với
grab số tiền cần thanh toán
5 Nhấn vào nút xác nhận thanh toán 6 Hiển thị thông báo MS24
Actor System
Main Flow: Thanh toán thành công bằng third-party payment method
1 Chọn hình thức thanh toán bằng 1 ứng 2 Hệ thống hiển thị trang xác nhận thanh toán với
dụng thứ 3 số tiền cần thanh toán
3 Nhấn vào nút xác nhận thanh toán 4 Hiển thị thông báo MS24
3 Chọn hình thức thanh toán bằng ví 4 Hệ thống hiển thị trang xác nhận thanh toán với
grab số tiền cần thanh toán
5 Nhấn vào nút xác nhận thanh toán 6 Hiển thị thông báo MS24
Actor System
1 Nhấn vào nút xác nhận thanh toán 2 Hệ thống hiển thị thông báo MS25
Description Cho phép người dùng thay đổi thông tin cá nhân
Actor Passenger/ Driver Trigger Actor tại trang default, chọn giao
diện tài khoản, sau đó bấm nút
hình cây bút cạnh ảnh đại diện
Post condition Có thông báo xác nhận: đã lưu thông tin cá nhân + hiển thị thông tin mới
27 | P a g e
2.Mất kết nối internet
Actor System
1 Actor tại trang default, chọn giao diện 2 Hệ thống chuyển sang trang thay đổi thông tin cá
tài khoản, sau đó bấm nút hình cây nhân
bút cạnh ảnh đại diện
3 Actor nhập thông tin muốn thay đổi và 4 Hệ thống trở lại trang Tài khoản và hiển thị thông
nhấn nút lưu tin mới được thay đổi
Actor System
1 Actor nhập thông tin muốn thay đổi và 4 Hệ thống hiển thị thông báo MS16
nhấn nút lưu
Actor Passenger/ Driver Trigger Actor tại trang default, chọn giao
diện tài khoản, sau đó bấm nút
đăng xuất
28 | P a g e
Activities
Actor System
1 Tại trang chỉnh sửa thông tin cá nhân, 2 Hệ thống chuyển sang màn hình đăng nhập
bấm vào nút đăng xuất
Actor System
1 Tại trang chỉnh sửa thông tin cá nhân, 2 Hệ thống hiển thị thông báo lỗi MS15
bấm vào nút đăng xuất
Activities
Actor System
1 Tại trang default, Actor nhấn vào trang 2 Hệ thống chuyển sang trang Hoạt động và hiển
Hoạt động thị Lịch sử đặt xe của Actor
Actor System
29 | P a g e
Alternative Flow: Xem lịch sử đặt xe thất bại
1 Tại trang default, Actor nhấn vào trang 2 Hệ thống hiển thị thông tin báo MS15
Hoạt động
Actor Driver Trigger Actor tại trang danh sách các đơn
hiện tại, nhấn vào nút nhận đơn
Activities
Actor System
1 Tại trang các đơn hiện tại, Actor nhấn 2 Hệ thống trả về giá trị “ACCEPTED” cho UC04-
vào nút nhận đơn Phân tài xế và trả về thông tin chuyến đi
Actor System
1 Tại trang các đơn hiện tại, Actor nhấn 2 Hệ thống hiển thị thông báo MS17
vào nút nhận đơn
30 | P a g e
Actor Driver Trigger Actor bật chế độ nhận đơn tự động
Post condition Hiển thị thông tin đơn đặt và thông báo tới tài xế
Error situations
System state in
error situations
Activities
Actor System
1 Actor bật chế độ nhận đơn tự động 1 Hệ thống thực hiện theo UC04-Phân tài xế và trả
về thông tin chuyến đi
Description Cho phép actor đặt trạng thái đơn thành đã hoàn thành
Post condition Hệ thống hiển thị thông tin đơn là “đã hoàn thành”
Activities
Actor System
31 | P a g e
1 Sau khi UC04-Phân tài xế thực hiện 2 Hệ thống chuyển sang trang hiển thị thông tin
thành công, actor nhấn vào nút xác đơn đã hoàn thành ở giao diện của driver + gửi
nhận hoàn thành đơn thông báo MS18 ở giao diện của passenger
Actor System
1 Sau khi UC04-Phân tài xế thực hiện 2 Hệ thống hiển thị thông báo MS17
thành công, actor nhấn vào nút xác
nhận hoàn thành đơn
Description Cho phép một actor nhắn tin với các actor khác
Actor Passenger, Driver Trigger Sau khi hệ thống thực hiện thành
công UC03-Đặt xe, actor chọn mục
nhắn tin
Activities
Actor System
1 Sau khi hệ thống thực hiện thành công 2 Hệ thống chuyển sang phiên trò chuyện riêng
UC03-Đặt xe, actor chọn mục nhắn tin
với tài xế
3 Actor nhập nội dung muốn gửi đi và 4 Hệ thống hiển thị tin nhắn đã được gửi đi
nhấn gửi
32 | P a g e
Actor System
Alternative Flow: Nhắn tin thất bại do tin nhắn vượt quá kí tự cho phép
1 Actor nhập nội dung muốn gửi đi và 2 Hệ thống hiển thị thông báo MS21
nhấn gửi
Actor System
Alternative Flow: Nhắn tin thất bại do tin nhắn không hợp lệ
1 Actor nhập nội dung muốn gửi đi và 2 Hệ thống hiển thị thông báo MS20
nhấn gửi
Description Cho phép một actor nhắn tin với các actor khác
Activities
Actor System
1 Actor tại trang default, nhấn chọn mục 2 Hệ thống chuyển sang trang đổi mã khuyến mãi
Grab Reward
3 Actor chọn mã khuyến mãi mong 4 Hệ thống hiển thị mã đã được đổi thành công
muốn và nhấn nút đổi
Actor System
33 | P a g e
1 Actor chọn mã khuyến mãi mong 2 Hệ thống hiển thị thông báo MS22
muốn và nhấn nút đổi
Description Hệ thống tính toán và hiển thị giá cước của chuyến đi
Activities
Actor System
Actor System
34 | P a g e
Actor Passenger Trigger Sau khi UC14-Xác nhận hoàn thành
đơn thực hiện thành công, actor
nhấn vào các biểu tượng ngôi sao ở
trang thông tin đơn
Error situations
System state in
error situations
Activities
Actor System
1 Sau khi UC14-Xác nhận hoàn thành 2 Hệ thống hiển thị thông tin đã được đánh giá
đơn thực hiện thành công, actor nhấn
vào các biểu tượng ngôi sao ở trang
thông tin đơn
Description Cho phép admin xem các tài khoản đã được đăng kí trên hệ thống
Actor Admin Trigger Admin nhấn vào nút xem danh sách
tài khoản
Post condition Hiển thị danh sách các tài khoản đã được đăng ký với hệ thống
Error situations
35 | P a g e
System state in
error situations
Activities
Actor System
1 Admin nhấn vào nút xem danh sách 2 Hiển thị danh sách các tài khoản đã được đăng ký
tài khoản với hệ thống
Description Hệ thống tự động điều chỉnh lại điểm đánh giá của tài xế khi có lượt đánh giá mới
Post condition Cập nhật điểm đánh giá mới cho driver
Error situations
System state in
error situations
Activities
Actor System
1 Sau khi UC18-Đánh giá chuyến đi thực 2 Hệ thống cập nhật mới điểm đánh giá cho driver
hiện thành công
Description Hệ thống tự động sắp xếp mức ưu tiên của tài xế dựa vào điểm đánh giá
36 | P a g e
Post condition Cập nhật mức ưu tiên mới cho driver
Error situations
System state in
error situations
Activities
Actor System
1 Sau khi UC20-Thống kê đánh giá tài xế 2 Hệ thống cập nhật mức ưu tiên mới cho driver
thực hiện thành công
Description Cho phép actor xem danh sách mức ưu tiên của từng tài xế
Post condition Hiển thị danh sách mức ưu tiên của từng tài xế
Error situations
System state in
error situations
Activities
Actor System
1 Sau khi UC19-Xem danh sách tài 2 Hệ thống hiển thị danh sách mức ưu tiên của
khoản thực hiện thành công, actor từng tài xế
nhấn vào chức năng xem mức ưu tiên
37 | P a g e
Description Hệ thống tự động tính tổng số đơn mà driver đã hoàn thành
Post condition Hiển thị danh sách tổng số đơn từng driver và các số liệu liên quan
Error situations
System state in
error situations
Activities
Actor System
1 Sau khi UC14-Xác nhận hoàn thành 2 Hệ thống hiển thị danh sách mức ưu tiên của
đơn thành công từng tài xế
Error situations
System state in
error situations
Activities
Actor System
38 | P a g e
1 Hệ thống tính tiền thưởng dựa trên số đơn mà
driver đã chạy trong ngày và BR05-Khung giờ
vàng
Error situations
System state in
error situations
Activities
Actor System
Description Hệ thống tự động nâng cấp bậc khách hàng khi đủ điều kiện
39 | P a g e
Pre-condition Tài khoản khách hàng hợp lệ
Post condition Cập nhật cấp bậc mới cho khách hàng
Error situations
System state in
error situations
Activities
Actor System
-vàng:400 điểm
Post condition Cập nhật thông tin liên quan tới tin nhắn
Error situations
System state in
error situations
Activities
Actor System
40 | P a g e
Main Flow: Thống kê tin nhắn thành công
Post condition Cập nhật số lượng tin nhắn được hỏi nhiều nhất
Error situations
System state in
error situations
Activities
Actor System
Description Cho phép admin thêm các câu trả lời cho mục Các câu hỏi thường gặp
Actor Admin Trigger Admin nhấn thêm mục trả lời mới
Error situations
System state in
error situations
41 | P a g e
Activities
Actor System
1 Admin nhấn thêm mục trả lời mới 2 Hệ thông hiển thị câu trả lời mới
Post condition Đơn không còn hiển thị ở trang Hoạt động
Error situations
System state in
error situations
Activities
Actor System
1 Khi UC11-Xem lịch sử đặt xe được 2 Trang Hoạt động không còn hiển thị đơn đã bị
thực hiện, actor nhấn vào nút xóa xóa
Error situations
42 | P a g e
System state in
error situations
Activities
Actor System
1 Khi UC22-Xem mức ưu tiên tài xế 2 Hệ thống hiển thị trạng thái tài khoản của driver
được thực hiện, actor chọn chức năng trở thành “Inactivated”
khóa tài khoản
System Message
Message thông báo khi actor sử dụng phần mềm mà không có mạng
Message thông báo khi actor đăng nhập với một số điện thoại không tồn tài trên hệ
thống
Message thông báo khi actor đăng ký một số điện thoại trùng với một số điện thoại
tồn tại trên hệ thống
Message thông báo khi actor nhập số điện thoại không đúng định dạng
Message thông báo khi actor nhập một địa chỉ không tồn tại
Message thông báo khi actor nhấn vào nút thay đổi một thông tin cá nhân không
phù hợp
43 | P a g e
MS08 “Hiện không có tài xế phù hợp với yêu cầu của bạn! Vui lòng thử lại sau.”
Message thông báo khi hệ thống không nhận được phản hồi từ tài xế khi phân tài xế
Message thông báo khi định vị của bạn không nằm trong phạm vi phục vụ của hệ
thống
Message thông báo khi Passenger nhấn vào nút Đặt xe nhưng giá cước có sự thay
đổi
Message thông báo khi Passenger chưa bật tính năng GPS trên thiết bị khi sử dụng
app
Message thông báo khi Actor nhập một mã OTP không hợp lệ
Message thông báo khi Actor sử dụng các tính năng nhưng kết nối mạng yếu
Message thông báo khi hệ thống gặp trục trặc khi xử lí tính năng
Message thông báo khi Actor nhập thông tin cá nhân không hợp lệ
Message thông báo khi Actor nhấn vào nút nhận đơn cho một đơn hàng đã bị hủy
Message thông báo khi Actor nhấn vào nút xác nhận hoàn thành đơn
Message thông báo khi Actor thực hiện các thao tác liên quan tới đơn khi đơn đã bị
hủy
44 | P a g e
Message thông báo khi actor nhấn nút gửi cho nội dung tin nhắn chứa từ ngữ
không phù hợp
Message thông báo khi actor nhấn nút gửi cho nội dung tin nhắn vượt quá độ dài kí
tự cho phép
Message thông báo khi actor nhấn nút đổi một mã khuyến mãi khi không có đủ
điểm reward
Message thông báo khi actor nhấn vào nút xác nhận điểm đón khi đã nhập một địa
điểm mà hệ thống không hoạt động
Message thông báo khi actor nhấn vào nút xác nhận thanh toán cho đơn hàng
Message thông báo khi actor nhấn vào nút xác nhận thanh toán nhưng không đủ
tiền
Business Rules
<=2km = 12.000đ
= 1.2: Vào các khung giờ cao điểm trong ngày thường
= 1.5: Vào các khung giờ bình thường của ngày lễ Tết
= 1.7: Vào các khung giờ cao điểm của ngày lễ Tết
BR03 Điểm đón, điểm đến Người dùng phải bật định vị GPS để định vị được điểm đi,
điểm đến trên bản đồ
45 | P a g e
Khách VIP: hệ số ưu tiên = 2
-Tài xế:
-Buổi trưa:12-13h
-Buổi tối:16h-19h
46 | P a g e
3.2.2. Activity Diagram: Quản lí đặt xe
47 | P a g e
3.2.4. Activity Diagram::Đánh giá tài xế
48 | P a g e
3.2.6. Activity Diagram: Hủy đặt xe
49 | P a g e
3.2.8. Activity Diagram: Phân tài xế
50 | P a g e
3.2.10. Activity Diagram: Xem lịch sử đặt xe
51 | P a g e
3.2.11. Activity Diagram: Đặt xe
52 | P a g e
3.3. Sequence Diagram
3.3.1. Sequence Diagram: Quản lí đặt xe
53 | P a g e
3.3.2. Sequence Diagram: Quản lí profile
54 | P a g e
3.3.3. Sequence Diagram:Xem lịch sử đặt xe
55 | P a g e
3.3.4. Sequence Diagram: Đăng nhập
56 | P a g e
3.3.5. Sequence Diagram: Hủy đặt xe
57 | P a g e
3.3.6. Sequence Diagram: Phân tài xế
58 | P a g e
3.3.7. Sequence Diagram:Thanh toán
59 | P a g e
3.3.8. Sequence Diagram: Đặt xe
60 | P a g e
3.3.9. Sequence Diagram: Cập nhật thông tin cá nhân
61 | P a g e
3.3.10. Sequence Diagram: QnA
62 | P a g e
3.3.11. Sequence Diagram: Đăng xuất
63 | P a g e
3.3.12. Sequence Diagram: Xác nhận hoàn thành đơn
64 | P a g e
3.4. State Diagram
3.4.1. State Diagram: <User>
65 | P a g e
3.4.2. State Diagram: <UserIteration>
66 | P a g e
3.4.3. State Diagram: <Driver>
67 | P a g e
3.4.4. State Diagram: <Passenger>
68 | P a g e
4. Thiết kế hệ thống
4.1. Thiết kế dữ liệu
69 | P a g e