Tiểu luận môn học phân tích thiết kế phần mềm đề tài phân tích thiết kế hệ thống đặt xe qua ứng dụng grab

69 0 0
Tiểu luận môn học  phân tích thiết kế phần mềm đề tài  phân tích thiết kế hệ thống đặt xe qua ứng dụng grab

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trang 1

Bộ Giáo Dục Và Đào Tạo

Trường Đại Học Ngoại Ngữ - Tin Học Thành Phố Hồ Chí Minh

Khoa Công Nghệ Thông Tin

MÔN HỌC : PHÂN TÍCH THIẾT KẾ PHẦN MỀM ĐỀ TÀI : PHÂN TÍCH THIẾT KẾ HỆ THỐNG ĐẶT XE

Trang 2

Bảng phân công công việc

Trang 3

1.4 So sánh tính năng của các đối thủ 11

2 Phân tích yêu cầu 12

2.1 Mô tả dự án 12

2.2 Actors và Use Cases 13

2.2.1 Các Use Case Diagram 13

2.2.2 Mô tả Actors 15

2.2.3 Mô tả Use Cases 15

2.3 Bảng phân quyền User vs Function 17

3 Yêu cầu chức năng 18

Trang 4

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

Trang 5

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

Giao diện:đơn giản dễ sử dụng, chủ đạo hai màu đen, trắng

Trang 6

Đặt xe trực tuyến Người dùng đặt xe trong qua điện thoại và chọn địa điểm cần đến

Tìm tài xế nhanh

Hiển thị giá cước Cung cấp người dùng giá cước dựa trên khoảng cách và thời gian dự kiến của chuyến

Giá cước cao hơn các ứng dụng khác Định vị GPS Giúp người dùng chia sẻ vị trí và giúp

tài xế nhận biết khách hàng đang ở địa

Giao diện:sinh động, bắt mắt chủ yếu hai màu vàng trắng

Đặt xe trực tuyến Người dùng đặt xe trong qua điện thoại và chọn địa điểm cần đến

Tìm tài xế nhanh

Hiển thị giá cước Cung cấp người dùng giá cước dựa trên khoảng cách và thời gian dự kiến

Trang 7

Định vị GPS Giúp người dùng chia sẻ vị trí và giúp tài xế nhận biết khách hàng đang ở địa điểm nào

Định vị khá tốt Đôi lúc không hiển thị địa chỉ 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ẻ

Trang 9

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

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 trên khoảng cách và thời gian dự kiến

Giờ cao điểm giá quá cao

Định vị GPS Giúp người dùng chia sẻ vị trí và giúp tài xế nhận biết khách hàng đang ở địa Dịch vụ ngoài lĩnh vực Người dùng đặt thức ăn, giao hàng Phí giao rẻ

Trang 10

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

Đặt xe trực tuyến Người dùng đặt xe trong qua điện thoại và chọn địa điểm cần đến

100% xe điện Tìm tài xế lâu Hiển thị giá cước Cung cấp người dùng giá cước dựa

trên khoảng cách và thời gian dự kiến Định vị GPS Giúp người dùng chia sẻ vị trí và giúp

tài xế nhận biết khách hàng đang ở địa

Trang 11

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

thoại và chọn địa điểm cần đến

Tìm tài xế lâu Hiển thị giá cước Cung cấp người dùng giá cước dựa

trên khoảng cách và thời gian dự kiến của chuyến

Giá cước rẻ

Định vị GPS Giúp người dùng chia sẻ vị trí và giúp tài xế nhận biết khách hàng đang ở địa điểm nào

Hiển thị địa chỉ không 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ẻ

1.4 So sánh tính năng của các đối thủ

Đánh giá chất lượng từng yêu cầu A theo thang điểm từ (*) đến (*****), nếu chức năng đó không có thì để

Trang 12

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

2 Phân tích yêu cầu

2.1 Mô tả dự án

Hệ thống đặt xe qua ứng dụng (Grab) là một nền tảng công nghệ được thế kế để kết nối giữa người dùng và tài xế cung cấp dịch vụ vận chuyển thông qua ứng dụng di động

➢ Ứng dụng có đặc điểm nổi bật

✓ Ứng dụng được triển khai trên nền tảng di động sử dụng được trên cả android và IOS, cho phép người dùng có thể truy cập hệ thống dù ở địa điểm nào ✓ Nền tảng đa chức năng, người dùng có thể đặt đồ ăn, giao hàng, đi chợ ✓ Tích hợp và liên kết nhiều doanh nghiệp, tiện lợi cho khách hàng thanh toán và

hỗ trợ ưu đãi doanh nghiệp

✓ Kết nối trực tiếp giữa người dùng và tài xế thông qua ứng dụng, tối ưu hóa thời quá trình đặt xe và thanh toán

✓ Kết nối trực tiếp giữa người dùng và tài xế thông qua ứng dụng, tối ưu hóa thời quá trình đặt xe và thanh toán

✓ Người dùng có thể đánh giá và xem xếp hạng tài xế hoặc nhà cung cấp dịch vụ khác trên nền tảng Grab, tạo ra một môi trường an toàn và đáng tin cậy cho tất cả mọi người

➢ User chính và chức năng từng user: ⚫ Passenger (Hành khách)

o Đặt xe với nhiều loại phương tiện có thể lựa chọn ( Grab Bike, Grab Car,…) o Tích điểm và đổi các ưu đãi, khuyến mãi đặc biệt cho các hành khách sử dụng

dịch vụ của Grab

o Thanh toán các đơn đặt xe bằng nhiều hình thức thanh toán được tích hợp với Grab

⚫ Tài xế (Driver)

o Nhận đơn đặt xe với 2 hình thức thủ công và tự động nhận đơn

o Thanh toán các đơn đặt xe bằng nhiều hình thức thanh toán được tích hợp với Grab

Trang 13

2.2 Actors và Use Cases 2.2.1 Các Use Case Diagram

UCD tổng quát

Trang 14

UCD Quản lí thông tin cá nhân

UCD Quản lí đặt xe

Trang 15

UCD Đổi mã khuyến mãi

2.2.2 Mô tả Actors

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

2.2.3 Mô tả Use Cases

Mô tả tóm tắt mục đích sử dụng của usecase

2 UC02 Đăng ký Cho phép actor đăng ký một tài khoản cho hệ thống

Trang 16

3 UC03 Đặt xe Cho phép actor đặt 1 chuyến đi đến địa điểm mong muốn

4 UC04 Phân tài xế Hệ thống tìm tài xế cho đơn đơn mới được tạo 5 UC05 Định vị Hệ thống định vị vị trí của người dùng

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

27 UC27 Thống kê tin nhắn Hệ thống thống kê số lượng tin nhắn

Trang 17

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

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

Table 3: Use Case List

2.3 Bảng phân quyền User vs Function

Đưa bảng Ma trận actor và usecase vào đây

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 Xác nhận hoàn thành đơn Driver Xem lịch sử đơn

Trang 18

Driver Đăng ký Driver Đăng nhập

Driver Cập nhật thông tin cá nhân Driver Đăng xuất

3 Yêu cầu chức năng

(Viết description đầy đủ các Use cases nhưng chỉ vẽ đính kèm các Sequence/Activity/State Diagrams cần

thiết để minh họa cho các Use case chính yếu)

3.1 Đặc tả usecase

3.1.1 UC01: Đăng nhập

Description Cho phép actor đăng nhập vào hệ thống

Actor Passenger/ Driver Trigger Actor khi vừa khởi động app Nhấn

nút đăng nhập Pre-condition Actor đã đăng kí số điện thoại tương ứng trên hệ thống

Post condition Chuyển tới trang default với role tương ứng

Error situations 1 Hệ thống đang bảo trì 2.Mất kết nối internet

3.Số điện thoại chưa đăng ký với hệ thống

Trang 19

System state in error situations

1 Hiển thị thông báo: MS01 2.Hiển thị thông báo: MS02 3.Hiển thị thông báo: MS03

Activities

Main Flow: Đăng nhập thành công bằng số điện thoại

1 Actor tại trang Đăng nhập nhập số điện thoại và nhấn vào button nhận OTP

2 Hệ thống gửi mã OTP tới sdt Actor đã nhập

3 Actor nhập mã OTP vào và nhấn nút đăng nhập

4 Hệ thống chuyển tới trang default với role tương ứng

Alternative Flow: Đăng nhập thành công bằng google

1 Actor nhấn vào nút Đăng nhập bằng

6 Hệ thống gửi mã OTP tới sdt Actor đã nhập

7 Actor nhập mã OTP vào và nhấn nút đăng nhập

8 Hệ thống xác nhận mã OTP là đúng và chuyển tới trang default với role tương ứng

Alternative Flow: Đăng nhập thành công bằng facebook

1 Actor nhấn vào nút Đăng nhập bằng

4 Hệ thống chuyển sang trang yêu cầu quyền cấp thông tin cho ứng dụng

Trang 20

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 button nhận OTP

8 Hệ thống gửi mã OTP tới sdt Actor đã nhập

9 Actor nhập mã OTP vào và nhấn nút đăng nhập

10 Hệ thống xác nhận mã OTP là đúng và chuyển tới trang default với role tương ứng

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 đăng nhập

2 Hệ thống gửi thông báo MS12

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 nút nhận mã OTP

2 Hệ thống gửi thông báo MS03

3.1.2 UC02:Đăng ký

Description Cho phép actor đăng ký một tài khoản mới

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

Post condition Có thông báo xác nhận: đăng ký thành công

Error situations 1 Hệ thống đang bảo trì

2.Số điện thoại đã được đăng ký với hệ thống 3.SĐT sai cú pháp

4 Mã OTP không hợp lệ

System state in error situations

1 Hiển thị thông báo: MS01 2.Hiển thị thông báo: MS04 3 Hiển thị thông báo: MS05

Trang 21

4 hiển thị thông báo: MS12

Activities

Main Flow: Đăng ký thành công

1 Actor tại trang đăng ký, nhập số điện thoại rồi nhấn nút nhận mã OTP

2 Hệ thống tiến hành gửi mã yêu cầu xác nhận tới 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 nhập mã OTP hợp lệ

4 Xác nhận đăng ký thành công và chuyển sang trang default với role tương ứng

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 đăng ký

2 Hệ thống hiển thị thông báo lỗi MS04

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 mã OTP/ Mã hết thời gian hiệu lực)

2 Hệ thống hiển thị thông báo lỗi MS12

3.1.3 UC03: Đặt xe

Description Cho phép actor đặt 1 chuyến đi đến địa điểm mong muốn

Actor Passenger Trigger Actor tại trang default, chọn nút Ô tô hoặc nút Xe máy

Actor đứng tại trang hoạt động, chọn nút đặt lại

Pre-condition Actor đã đăng nhập với role = Passenger

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ế

Error situations 1 Hệ thống đang bảo trì 2.Mất kết nối internet

3 Người dùng chọn địa chỉ không tồn tại

Trang 22

System state in error situations

1 Hiển thị thông báo: MS01 2.Hiển thị thông báo: MS02 3.Hiển thị thông báo: MS06

Activities

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ô hoặc nút Xe máy

2 Hệ thống chuyển sang trang nhập điểm đón, đến

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 đón

6 Hệ thống thực hiện theo UC17-Tính giá cước

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ế

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

nút đặt lại

2 Hệ thống thực hiện theo UC17-Tính giá cước

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ế

Alternative Flow: Đặt xe không thành công

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

Alternative Flow: Đặt xe không thành công do có biến động trong việc tính giá cước

Trang 23

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

3.1.4 UC04: Phân tài xế

Description Hệ thống tìm tài xế cho đơn đơn mới được tạo

Actor Hệ thống Trigger Sau khi UC03-Đặt xe thành công Pre-condition UC03 đã thực hiện thành công

Post condition Hiển thị thông tin tài xế

Error situations 1.Không có tài xế nào đang hoạt động

Main Flow: Đã tìm được tài xế

1 -Hệ thống tiến hành xác định tọa độ Điểm đón, Điểm đến

-Dựa trên danh sách những tài xế đang hoạt động, lọc ra những tài xế thỏa tiêu chí tọa độ Điểm đón

2 -Nếu danh sách có tài xế thực hiện theo UC13-Nhận đơn tự động thành công thì trả về thông báo MS14 cho UC03-Đặt xe

3 -Nếu danh sách không có tài xế thực hiện UC13-Nhận đơn tự động thì xét trong danh sách những tài xế thực hiện theo UC12-Nhận đơn thủ công với trả về kết quả trả về là “ACCEPTED”

-> Hiển thị thông báo MS14 + thông tin tài xế cho

UC03-Đặt xe

Trang 24

Alternative Flow: Không tìm được tài xế

1 -Nếu danh sách không có tài xế thực hiện UC13-Nhận đơn tự động thì xét trong danh sách những tài xế thực hiện theo UC12-Nhận đơn thủ công với trả về kết quả trả về là “ACCEPTED”

-> 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

3.1.5 UC05: Định vị

Description Hệ thống định vị vị trí của người dùng

Actor Hệ thống Trigger Actor nhấn vào nút cho phép truy cập vị trí

Pre-condition Actor đã bật tính năng gps của thiết bị

Post condition Hiển thị vị trí của khách hàng/ driver trên map

Error situations 1 Actor chưa bật gps của thiết bị

System state in error situations

1 Hiển thị thông báo: MS11

Main Flow: Định vị thành công

1 Actor nhấn vào nút cho phép truy cập vị trí

2 Hệ thống xác định vị trí của khách hàng dựa vào GPS

Alternative Flow: Định vị không thành công

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

Trang 25

3.1.6 UC06: Gọi điện

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 Pre-condition Actor đã đặt xe thành công

Post condition Màn hình thông báo cuộc gọi đến/ cuộc gọi đi

Error situations 1.Lỗi kết nối 2.Lỗi hệ thống

System state in error situations

1.Hiển thị thông báo MS13 2.Hiển thị thông báo: MS15

Main Flow: Gọi điện thành công

1 Actor nhấn vào biểu tượng điện thoại ở phần thông tin của tài xế

2 Hệ thống tiến hành quay số + phát ra chuông reo liền mạch

Alternative Flow: Gọi điện không thành công

1 Actor nhấn vào biểu tượng điện thoại ở phần thông tin của tài xế

2 Hệ thống tiến hành quay số + phát ra âm thanh gián đoạn, sau đó hiển thị thông báo MS13

3.1.7 UC07: Hủy đặt xe

Description Cho phép actor hủy đơn đặt xe

Actor Passenger/ Driver Trigger Sau khi UC03-Đặt xe thành công, actor nhấn vào nút hủy đặt xe Pre-condition Actor đã đặt xe thành công

Trang 26

Post condition Màn hình thông báo đơn đã bị hủy

Error situations 1.Lỗi kết nối

System state in error situations

1.Hiển thị thông báo MS13

Main Flow: Hủy đặt xe thành công

1 Sau khi UC03-Đặt xe thành công, actor

nhấn vào nút hủy đặt xe

2 Hệ thống hiển thị bảng lựa chọn lí do hủy đặt xe

3 Actor nhấn vào nút xác nhận hủy đặt xe

4 Hệ thống hiển thị đơn đã bị hủy và chuyển sang trang Hoạt động + gửi thông báo tới driver/ passenger

Alternative Flow: Hủy đặt xe không thành công

1 Actor nhấn vào nút xác nhận hủy đặt xe

2 Hệ thống hiển thị thông báo MS13

3.1.8 UC08: Thanh toán

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 Pre-condition Trạng thái đơn là “đã hoàn thành”

Post condition Hệ thống hiển thị đơn đã 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ử 2 Lỗi kết nối

System state in error situations

1 Hiển thị thông báo: MS17 2.Hiển thị thông báo: MS15

Trang 27

Actor System Main Flow: Thanh toán thành công bằng ví grab

1 Actor tại trang đơn đặt xe hiện tại, nhấn vào nút thanh toán

2 Hệ thống chuyển sang màn hình chọn hình thức thanh toán

3 Chọn hình thức thanh toán bằng ví grab

4 Hệ thống hiển thị trang xác nhận thanh toán với 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

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 dụng thứ 3

2 Hệ thống hiển thị trang xác nhận thanh toán với 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í

grab

4 Hệ thống hiển thị trang xác nhận thanh toán với 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

Alternative Flow: Thanh toán không thành công

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

3.1.9 UC09: Cập nhật thông tin cá nhân

Name Cập nhật thông tin cá nhân Code UC09

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 Pre-condition Actor đã đăng nhập với role tương ứng

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

Error situations 1 Lỗi kết nối

Trang 28

2.Mất kết nối internet

3 Người dùng điền thông tin không phù hợp

System state in error situations

1 Hiển thị thông báo: MS15 2.Hiển thị thông báo: MS02 3.Hiển thị thông báo: MS07

Main Flow: Cập nhật thông tin cá nhân thành công

1 Actor tại trang default, chọn giao diện tài khoản, sau đó bấm nút hình cây

4 Hệ thống trở lại trang Tài khoản và hiển thị thông tin mới được thay đổi

Main Flow: Cập nhật thông tin cá nhân thất bại

1 Actor nhập thông tin muốn thay đổi và nhấn nút lưu

4 Hệ thống hiển thị thông báo MS16

3.1.10 UC10: Đăng xuất

Description Cho phép actor đăng xuất khỏi hệ thống

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

Pre-condition Actor đã đăng nhập với role tương ứng

Post condition Trở lại giao diện đăng nhập

Error situations 1 Hệ thống đang bảo trì 2.Mất kết nối internet

System state in error situations

1 Hiển thị thông báo: MS01 2.Hiển thị thông báo: MS02

Trang 29

Activities

Main Flow: Đăng xuất thành công

1 Tại trang chỉnh sửa thông tin cá nhân, bấm vào nút đăng xuất

2 Hệ thống chuyển sang màn hình đăng nhập

Alternative Flow: Đăng xuất không thành công

1 Tại trang chỉnh sửa thông tin cá nhân, bấm vào nút đăng xuất

2 Hệ thống hiển thị thông báo lỗi MS15

3.1.11 UC11: Xem lịch sử đặt xe

Description Cho phép actor xem lại các đơn đã đặt

Actor Passenger Trigger Actor tại trang default, nhấn vào

trang Hoạt động Pre-condition Actor đã đăng nhập với role tương ứng

Post condition Hiển thị đầy đủ thông tin đơn đặt

Error situations 1 Lỗi kết nối

Main Flow: Xem lịch sử đặt xe thành công

1 Tại trang default, Actor nhấn vào trang

Hoạt động

2 Hệ thống chuyển sang trang Hoạt động và hiển

thị Lịch sử đặt xe của Actor

Trang 30

Alternative Flow: Xem lịch sử đặt xe thất bại

1 Tại trang default, Actor nhấn vào trang

Hoạt động

2 Hệ thống hiển thị thông tin báo MS15

3.1.12 UC12: Nhận đơn thủ công

Description Cho phép actor nhận làm tài xế cho chuyến đi

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 Pre-condition Actor đã đăng nhập với role tương ứng

Post condition Hiển thị thông tin đơn đặt

Error situations 1 Đơn đã bị hủy 2 Lỗi kết nối

System state in error situations

1 Hiển thị thông báo: MS17 2.Hiển thị thông báo: MS15

Activities

Main Flow: Nhận đơn thủ công thành công

1 Tại trang các đơn hiện tại, Actor nhấn vào nút nhận đơn

2 Hệ thống trả về giá trị “ACCEPTED” cho UC04-Phân tài xế và trả về thông tin chuyến đi

Main Flow: Nhận đơn thất bại do đơn đã bị hủy

1 Tại trang các đơn hiện tại, Actor nhấn vào nút nhận đơn

2 Hệ thống hiển thị thông báo MS17

3.1.13 UC13: Nhận đơn tự động

Description Cho phép actor nhận làm tài xế cho chuyến đi

Trang 31

Actor Driver Trigger Actor bật chế độ nhận đơn tự động

Pre-condition Actor đã đăng nhập với role tương ứng

Post condition Hiển thị thông tin đơn đặt và thông báo tới tài xế

Alternative Flow: Nhận đơn tự động thành công

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

3.1.14 UC14: Xác nhận hoàn thành đơn

Name Xác nhận hoàn thành đơn Code UC14

Description Cho phép actor đặt trạng thái đơn thành đã hoàn thành

Actor Driver Trigger Sau khi UC04-Phân tài xế thực hiện

thành công, actor nhấn vào nút xác nhận hoàn thành đơn

Pre-condition Actor đã được phân làm tài xế cho một đơn

Post condition Hệ thống hiển thị thông tin đơn là “đã hoàn thành”

Error situations 1 Đơn đã bị hủy bởi khách hàng

Trang 32

1 Sau khi UC04-Phân tài xế thực hiện

thành công, actor nhấn vào nút xác nhận hoàn thành đơn

2 Hệ thống chuyển sang trang hiển thị thông tin đơn đã hoàn thành ở giao diện của driver + gửi thông báo MS18 ở giao diện của passenger

Alternative Flow: Xác nhận hoàn thành đơn thất bại

1 Sau khi UC04-Phân tài xế thực hiện

thành công, actor nhấn vào nút xác nhận hoàn thành đơn

2 Hệ thống hiển thị thông báo MS17

3.1.15 UC15: Nhắn tin

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

Pre-condition Actor đã đăng nhập với role tương ứng

Post condition Tin nhắn được đánh dấu là đã gửi

Error situations 1 Tin nhắn không hợp lệ

2 Tin nhắn vượt quá kí tự cho phép

System state in error situations

1 Hiển thị thông báo: MS20 2 Hiển thị thông báo: MS21

Activities

Main Flow: Nhắn tin thành công

1 Sau khi hệ thống thực hiện thành công

UC03-Đặt xe, actor chọn mục nhắn tin

với tài xế

2 Hệ thống chuyển sang phiên trò chuyện riêng

3 Actor nhập nội dung muốn gửi đi và nhấn gửi

4 Hệ thống hiển thị tin nhắn đã được gửi đi

Trang 33

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à nhấn gửi

2 Hệ thống hiển thị thông báo MS21

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à nhấn gửi

2 Hệ thống hiển thị thông báo MS20

3.1.16 UC16: Đổi mã khuyến mãi

Description Cho phép một actor nhắn tin với các actor khác

Actor Passenger Trigger Actor tại trang default, nhấn chọn mục Grab Reward

Pre-condition Actor đã đăng nhập với role tương ứng

Post condition Hiển thị thông báo đổi mã thành công

Error situations 1 Đổi mã không thành công

Main Flow: Đổi mã thành công

1 Actor tại trang default, nhấn chọn mục Grab Reward

2 Hệ thống chuyển sang trang đổi mã khuyến mãi

3 Actor chọn mã khuyến mãi mong

Trang 34

1 Actor chọn mã khuyến mãi mong muốn và nhấn nút đổi

2 Hệ thống hiển thị thông báo MS22

3.1.17 UC17: Tính giá cước

Description Hệ thống tính toán và hiển thị giá cước của chuyến đi

Pre-condition Passenger đã nhập đầy đủ điếm đón, điểm đến

Post condition Hiển thị giá tiền của đơn đặt

Error situations 1 Passenger nhập địa chỉ hệ thống không hỗ trợ

Main Flow: Tính giá cước thành công

1 Hệ thống tính giá cước dựa trên Điểm đến, điểm

đón từ UC03-Đặt xe và BR01-Cách tính giá cước

2 Hệ thống hiển thị cước, điểm đón, điểm đến lên trang xác nhận đặt xe

Main Flow: Tính giá cước thất bại

1 Hệ thống tính giá cước dựa trên Điểm đến, điểm

đón từ UC03-Đặt xe và BR01-Tính giá cước

2 Hệ thống hiển thị thông báo MS23

3.1.18 UC18: Đánh giá chuyến đi

Description Cho phép actor phản hồi trải nghiệm về chuyến đi

Ngày đăng: 16/04/2024, 18:02

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan