Tải bản đầy đủ (.pdf) (42 trang)

Bài tập lớn Hệ thống quản lý điều tuyến Bus và phân công lái xe Bus - Nhập môn Công Nghệ phần mềm ptit

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.84 MB, 42 trang )

Nhập môn Công nghệ Phần mềm

Lớp học phần: CNPM13
Hệ thống quản lý điều tuyến Bus và phân công lái xe Bus
Nhóm BTL: Nhóm 11

Tên các thành viên nhóm:
1.B17DCCN284

Nguyễn Hoàng Hùng

2.B17DCCN464 Nguyễn Vũ Nghiêm
3.B17DCCN584

Kiều Văn Thông

4.B17DCCN620

Phạm Thị Trang

Tên Modul cá nhân: Thống kê tuyến xe theo số lượng khách
Yêu cầu của đề bài: Báo cáo tổng hợp BTL


1. Mô tả hệ thống bằng ngôn ngữ tự nhiên:
a. Giải thích nghĩa của các thuật ngữ ngữ cảnh của Hệ thống quản
lý điều tuyến Bus và phân công lái xe Bus:
STT

Tên Tiếng Việt


Tên Tiếng Anh

Mô tả

Các thuật ngữ liên quan đến hệ thống quản lý và điều tuyến xe Bus, phân công lái xe Bus
1

Người quản trị hệ thống

System administrator

Người quản lí tài khoản của
người dùng

2

Người quản lý

Manager

Người có quyền truy nhập các
dữ liệu hệ thống.

3

Lái xe

Driver

Người phụ trách lái xe Bus


4

Phụ xe

Bus assistant

Người hỗ trợ khách trên xe
trong khi xe vận hành và hỗ
trợ các việc phụ cho tài xế

5

Người soát vé

Ticket checkers

Kiểm tra tính hợp lệ của vé,
có thể phụ trách bán vé theo
lượt trên xe

6

Người bán vé

Ticket sellers

Người bán vé theo tháng tại
một địa điểm cố định được
hãng xe Bus xây dựng


7

Thu ngân

Cashier

Người có trách nhiệm quản lý
ngân sách của hãng Bus

8

Người dọn xe

Cleaning staff

Người có nhiệm vụ thu dọn
và lau dọn cho xe Bus

9

Xe Bus

Bus

Một phương tiện giao thông
công cộng đi theo tuyến cố


định được sắp xếp trước và

bán vé
10

Chỗ ngồi

Seat

Chỗ để hành khách ngồi khi
đi xe Bus

11

Tuyến đường

Route

Những địa điểm cố định mà
xe Bus đi khi vẫn hành được
thiết lập trước

12

Biển số xe

License plate

Biển số của xe Bus

13


Loại xe

mean of bus

Hãng của xe Bus

14

Số lượng khách xuống xe

Number of passengers
getting off

Số lượng khách xuống xe tại
một điểm dừng

15

Số lượng khách lên xe

Number of passengers
boarding

Số lượng khách lên xe tại một
điểm dừng

16

Số vé bán đi


Sold ticket amounts

Số vé được bán đi tại một
thời điểm nhất định

17

Số vé tồn

Remaining ticket amounts Số vé còn lại tại một thời
điểm nhất định

18

Thời gian xe xuất bến

Departure time

Thời gian mà xe Bus bắt đầu
đi đến điểm dừng đầu tiên
trong một phiên làm việc

19

Thời gian đến cuối bến

Finishing time

Thời gian mà xe Bus đi đến
điểm dừng cuối cùng trong

một phiên làm việc

20

Thời gian mở bán

Time to start selling

Thời gian bắt đầu mở bán vé
trong một phiên làm việc

21

Tổng số tiền thu

Proceeds

Tổng số tiền thu trong một


phiên làm việc
22

Giá vé

Fare

Giá của vé xe có thể theo lượt
hoặc theo tháng


23

Khung đường

Road frame

Tuyến đường xe Bus sẽ đi

24

Tổng số xe hệ thống

Total of buses in system

Số lượng xe Bus có trong hệ
thống quản lý

25

Tổng số xe trên tuyến
đường

Total of active buses

Tổng số xe đang được vận
hành trên đường tại một thời
điểm nhất định

26


Số chỗ trống

Number of vacancies

Số chỗ trống của xe Bus
trong một thời điểm nhất định

27

Số lượng khách trên xe

Number of passengers

Số khách của xe Bus trong
một thời điểm nhất định

28

Mật độ tuyến xe

Vehicle density

Số tuyến xe trên một khoảng
thời gian

29

Danh sách người lái xe

List of drivers


Thống kê thông tin của những
lái xe trong hệ thống

30

Điểm đầu tuyến

First route’s position

Điểm xe bắt đầu xuất phát

31

Điểm cuối tuyến

Last route’s position

Điểm xe kết thúc lịch trình

32

Ca làm

Shift

Thời gian nhân viên làm việc

33


Lương

Salary

Tiền công của nhân viên được
trả

34

Thưởng

Bonus

Tiền mà nhân viên nhận được
khi vượt chỉ tiêu


35

Tiền phạt

Fine

Tiền mà các nhân viên phải
nộp khi mắc lỗi nào đó

36

Ngày nghỉ


Day off

Ngày mà nhân viên không
phải đi làm

37

Ngày tăng ca

Overtime day

Ngày phải đi làm thêm so với
hàng tuần/ hàng tháng

38

Trợ cấp

Subvention

Tiền được nhận khi có những
trường hợp ngoại lệ

39

Bảo hiểm

Insurance

Tiền đảm bảo cho nhân viên

trong quá trình lao động

40

Chức vụ

Position

Vị trí của nhân viên trong hệ
thống

41

Nhân viên hợp đồng

Contract staff

Nhân viên làm việc theo thời
hạn của hợp đồng

42

Chi phí phát sinh

Accruals

Số tiền tăng lên vào việc gì
đó ngoài dự kiến

43


Chất lượng dịch vụ

Service quality

Mức độ hài lòng đối với
khách hàng

44

Lịch trình

Timetable

Nêu rõ các tuyến đường, ngày
tháng, thời gian xác định của
một xe Bus hay một lái xe

45

Chỉ tiêu

Target

Mục tiêu đề ra trước khi thực
hiện

46

Giờ làm


Work time

Thời gian bắt đầu làm việc
cho đến khi kết thúc làm việc

47

Vị trí

Position

= chức vụ


48

Giấy phép lái xe

Driving licence

Giấy phép vận hành xe của
người lái xe

49

Giấy phép hoạt động

Operating license


Giấy tờ cho phép sự hoạt
động của xe Bus

50

Giao diện phần mềm

Software interface

Màn hình của ứng dụng hệ
thống khi làm việc

51

Chức năng phần mềm

Software function

Một công việc nào đó trên
phần mềm

52

Lợi ích phần mềm

Software benefits

Những tiện ích mà phần mềm
mang lại khi sử dụng


53

Biển quảng cáo

Billboard

Quảng cáo được in trên
khung xe

Các hoạt động của quản lý về việc hệ thống quản lý và điều tuyến xe Bus, phân công lái xe
Bus
55

Điều chỉnh tuyến xe

Adjusted

Chuyển vị trí của các tuyến
xe khác nhau

56

Thêm tuyến xe

Add

Bổ sung tuyến xe vào hệ
thống

57


Xóa tuyến xe

Delete

Hủy bỏ tuyến xe khỏi hệ
thống

58

Sửa tuyến xe

Fix

Thay đổi thông tin của tuyến
xe nào đó trong hệ thống

59

Lên lịch

Schedule

Đưa ra thời gian, và chặng đi
cho các tuyến xe

60

Tìm kiếm chuyến


Search

Tìm thông tin của chuyến xe
nào đó


61

Phân công lái xe

Assign vehicle route

Giao nhiệm vụ cho các lái xe

62

Xem báo cáo

View report

Đọc, chỉnh sửa bản báo cáo

63

Sa thải

Dismiss

Hủy bỏ công việc của nhân
viên nào đó trong hệ thống


64

Tuyển dụng

Recruit

Đưa ra yêu cầu để thêm nhân
viên vào hệ thống

65

Hỗ trợ

Support

Giúp đỡ, trả lời câu hỏi khi
thắc mắc trong hệ thống

66

Lưu thông tin

Save information

Lưu dữ liệu thông tin vào hệ
thống

67


Quản lý thông tin khách
hàng

Customer information
management

Thực hiện lưu trữ thông tin,
thời gian, tuyến xe của khách
hàng

68

Quản lý thông tin xe

Vehicle information
management

Thực hiện lưu trữ thông tin,
thời gian, tuyến đường của xe

69

Đăng nhập

Login

Nhập tài khoản vào hệ thống

70


Đăng xuất

Logout

Thoát tài khoản khỏi hệ thống

71

Đổi mật khẩu

Change password

Thay đổi mật khẩu đăng nhập

72

Vé tháng

Communtation ticket

Vé được lưu thông sử dụng
trong 1 tháng

73

Vé lượt

Daily ticket

Vé mua tại xe và dùng cho 1

lần

Các hành động của người lái xe, phụ xe, soát vé liên quan đến hệ thống quản lý và điều
tuyến xe Bus, phân công lái xe Bus


74

Soát vé

Check ticket

Kiểm tra vé khách hàng

75

Lái xe

Drive

Điều khiển xe Bus trên đường

76

Dọn dẹp xe

Clean

Thu dọn, lau chùi trong xe
Bus


77

Bảo trì xe

Maintain

Sửa chữa, đảm bảo sự vận
hành của xe Bus

78

Phân công chỗ ngồi

Assign seats

Sắp xếp vị trí của các khách
hàng trong xe Bus

79

Đỗ xe

Parking

Dừng xe vào điểm dừng Bus

80

Thu tiền vé


Collect tickets

Nhận tiền vé khi bán vé

81

Chuyển hướng

To shifts

Chuyển điểm dừng trên hệ
thống

82

Thống kê cuối ngày

Statistics at the end

Tổng kết các thông tin(vé
xe,tiền vé,..) và bàn giao

83

Sửa điểm dừng

Fix stop

Thay đổi điểm dừng nào đó

trên lịch trình hệ thống bằng
điểm dừng khác

84

Xóa điểm dừng

Clean stop

Hủy bỏ điểm dừng nào đó
trên lịch trình hệ thống

85

Cập nhật điểm cuối của
tuyến Bus

Update finally point

Thực hiện xác nhận điểm gần
nhất mà xe Bus đi đến

86

Nhập biển số xe cần tìm

Enter the license plate to
search

Thực hiện gõ tên biển số xe

vào phần cần tìm


87

Xem danh sách các xe
được tìm kiếm theo biển
số xe

See our list of vehicle
search by license place
number

Xem thông tin các xe được
hiển thị sau khi thực hiện
công việc tìm kiếm biển số xe

88

Xem thông tin xe

See vehicle information

Xem các thông tin loại xe,
tuyến đường xe đi qua,... của
một xe nào đó

89

Xem thông tin tuyến

đường

See route information

Xem danh sách lần lượt các
điểm dừng mà xe Bus đi qua

90

Xem thông tin nhân viên

See employee information Xem các thông tin cá nhân
của nhân viên: tên, tuổi, số
năm kinh nghiệm, chức vụ,...

91

Xem lịch trình

See the schedule

Xem các điểm dừng của xe

b. Mô tả hệ thống:
i. Những ai được dùng hệ thống và hành động của họ với
hệ thống là gì?
➢ Người quản trị hệ thống: quản lý các account người dùng; bảo trì hệ thống.
➢ Nhân viên điều hành xe( bao gồm lái xe và phụ xe):lập lịch lái trình lái xe, tuyến
xe , xe cho các tuyến, nhân viên lái xe và phụ xe, chấm công, xem vị trí các xe trên
GPS

➢ Người quản lý: xem các tuyến xe đang hoạt động, vị trí các xe, thêm, sửa, xóa các
tuyến đường, phân công lao động, thông tin xe đang hỏng,cái lái xe đang lái trên
đường,tìm kiếm thông tin lái xe, thêm lái xe, xóa lái xe, điều hướng lái xe, lên lịch
cho lái xe.
➢ Kế toán: thống kê doanh thu, chi phí cho các tuyến xe (gồm sửa chữa xe, nâng cấp
xe, mua xe mới, xăng dầu); nhập lương của nhân viên(quản lý, phụ xe, lái xe).
➢ Khách hàng: thực hiện mua vé online/mua vé trực tiếp, hủy vé trực tiếp, trả tiền
đặt vé theo tuyến, hủy vé xe, khiếu nại các yêu cầu.
➢ Người bán vé : nhập số lượng vé đã bán, số vé tồn, ngày giờ. thống kê các kiến
nghị của khách mua hàng trực tiếp.

ii.

Thông tin về các đối tượng được quản lý (xuất hiện)
trong hệ thống:


➢ Người quản trị hệ thống: id tài khoản đăng nhập, tên đăng nhập, mật khẩu, chức
vụ, tuổi, sđt, email, ngày giờ ra vào hệ thống, cấu trúc hệ thống.
➢ Người quản lý: id tài khoản đăng nhập, tên đăng nhập, chức vụ, mật khẩu, tuổi,
sđt, email, ngày giờ ra vào hệ thống, mục làm việc, chức năng quản lý,...
➢ Lái xe: id nhân viên, tài khoản đăng nhập hệ thống, ngày làm, tiền lương, ca làm,
tuyến đường đi, id xe, giấy phép lái xe,...
➢ Phụ xe: id nhân viên, tài khoản đăng nhập hệ thống, ngày làm, tiền lương, ca làm,
tuyến đường đi, id xe, dụng cụ thiết bị, số vé bán, dịch vụ trên xe,...
➢ Người soát vé: id nhân viên, tài khoản đăng nhập hệ thống, ngày làm, tiền lương,
ca làm, tuyến đường đi, id xe, id thiết bị kiểm tra, thời gian thống kê vé.
➢ Thu ngân: id nhân viên, tài khoản đăng nhập hệ thống, ngày làm, tiền lương, ca
làm, sđt, vị trí làm việc, thông tin nhân viên, số lượng nhân viên, thuế, ngày giờ
thống kê lương, ngày phát lương, thưởng, phạt.

➢ Người dọn xe: id nhân viên, tài khoản đăng nhập hệ thống, ngày làm, tiền lương,
ca làm, sđt, id xe, id người lái xe, dụng cụ vệ sinh, vị trí làm việc.
➢ Xe bus: id xe, id lái xe, id phụ xe, id người dọn xe, biển số xe, tổng số chỗ ngồi, số
chỗ trống, vị trí ngồi, số tầng xe, nhiên liệu, hãng xe, giấy phép xe, tuyến đường,
id tuyến, …
➢ Tuyến xe: id tuyến, điểm bắt đầu, điểm kết thúc, tên tuyến xe, chiều dài quãng
đường, tần suất tuyến xe.
➢ Ca: id ca, thời gian bắt đầu, thời gian kết thúc.
➢ Điểm dừng: id điểm dừng, tên điểm dừng, vị trí.
➢ Vé: id vé, giá vé, loại vé.


iii.

Mối quan hệ giữa các đối tượng:

➢ Người quản trị hệ thống có thể cấp phát, quản lý nhiều account.
➢ Người quản lý có thể quản lý nhiều nhân viên khác nhau với các chức vụ khác
nhau.
➢ Mỗi điều hành xe thì sẽ quản lý nhiều nhân viên (lái xe,phụ xe) và các xe đang
trong trạm và các xe đang hoạt động trên đường.
➢ Nhân viên thu ngân sẽ quản lí mọi thông tin liên quan đến việc xuất nhập chi phí.
➢ Khách hàng thì có thể đặt nhiều loại vé khác nhau.
➢ Một lái xe sẽ có thể lái nhiều tuyến xe khác nhau với những chiếc xe khác nhau.
➢ Một phụ xe có thể phục vụ nhiều tuyến xe khác nhau với các xe khác nhau.
➢ Một xe thì chỉ có 1 phụ xe và một lái xe.
➢ Một loại vé xe có thể phục vụ nhiều tuyến xe (như vé tháng).
➢ Một tuyến đường có nhiều xe chạy, có nhiều điểm dừng trên tuyến xe trong một ca
làm việc.
➢ Vé xe được dùng trên tuyến xe.


iv.

Mô tả:

➢ Phần mềm dạng ứng dụng cho máy tính cá nhân, app mobile cho :người quản trị
hệ thống, Nhân viên điều hành xe, Người quản lý,kế toán,Người bán vé, khách
hàng được sử dụng.
➢ Người quản trị hệ thống có khả năng cấp phát các account cho các đối tượng muốn
dùng hệ thống, có thể tham gia sửa xóa người dùng theo yêu cầu của quản lý.
➢ Người điều hành xe có khả năng xem các xe đang hoạt động trên đường, vị trí của
nó , người lái xe và phụ xe của các xe đang hoạt động, sửa đổi lịch trình, hành
trình của các xe, lập lịch cho từng xe, từng lái xe và phụ xe, lưu thông tin vé sau
mỗi ca.
➢ Người quản lý có thêm sửa xóa thông tin của các nhân viên mới, thêm thông tin
các tuyến xe mới, xem báo cáo doanh thu theo thời gian , theo tháng, theo tuyến
xe, theo vị trí , quản lí thông tin đầu xe ,quản lí tuyến bus.
➢ Nhân viên thu ngân sẽ có thể lập báo cáo thống kê chi phí hoạt động của từng
tuyến xe (xăng , dầu), chi phi sửa chữa từng chiếc xe, thu nhập của từng tuyến xe ,
báo lương chi trả cho từng nhân viên …


➢ Người lái xe (phụ xe) xe sẽ có thể xem lịch trình lái xe của cá nhân, tuyến xe mình
lái,xe mình lái cùng với phụ xe(lái xe) làm việc cùng.
➢ Khách hàng thì có thể xem thông tin các tuyến xe, vị trí của các xe,thời gian xe
đến điểm mong muốn, và giá vé cho từng loại xe, có thể mua vé xe online hoặc
mua vé xe trực tiếp từ phụ xe.
➢ Xe bus có thể dừng tại nhiều điểm để đón khách trên cùng một tuyến đường.
➢ Xe bus sẽ không dừng khi chưa tới điểm đón trả khách, không nhận thêm khách
khi đã đủ vị trí được lấp đầy.

➢ Xe được tiếp nhiên liệu đủ do lái xe trả tiền.
➢ Xe có thể do nhiều lái xe, nhiều phụ xe, nhiều soát xe điều khiển miễn là không
cùng lúc.
➢ Một xe có thể đi giữa nhiều tuyến khác nhau để tối ưu hoạt động.
➢ Thông tin xe được quản lý bởi nhiều account có chỉ định với những thông tin liên
quan về khách hàng, lái xe, phụ xe.
➢ Người quản lý có quyền sa thải, nhận nhân sự mới nếu đủ các yêu cầu.
➢ Tổng tiền thu được của 1 xe / 1 ngày được thống kê cho trưởng thu ngân.
➢ Một ngày có nhiều ca làm việc.
➢ Các tác vụ của người quản lý được lưu lại với thời gian thực.

v.

Chức năng:

1. Chức năng “Quản lí thông tin một đầu xe ”:
Có các chức năng thêm, sửa, xóa một đầu xe. Chức năng sửa thông tin xe được mô tả cụ
thể như sau: Quản lí (QL) chọn chức năng sửa thông tin một xe → giao diện tìm kiếm xe
theo biển số hiện lên → QL nhập một vài kí tự của biển số → danh sách các xe có biển số
chứa kí tự vừa nhập hiện lên → QL click chọn dòng tương ứng với xe muốn sửa → giao
diện sửa thông tin xe hiện lên với các thuộc tính cũ đã điền sẵn → QL sửa lại vài thuộc
tính và click submit → hệ thống cập nhật thông tin và thông báo thành công.
2. Chức năng “Quản lý tuyến bus”
có các chức năng thêm, sửa, xóa một tuyến bus. Chức năng sửa một tuyến bus được mô
tả như sau: QL chọn chức năng sửa lịch trình một tuyến bus → Giao diện tìm tuyến bus
hiện ra → QL nhập số hiệu tuyến bus vào và click tìm kiếm → Hệ thống hiện lên danh
sách các tuyến bus có số hiệu chứa dãy ký tự vừa nhập → QL click vào số hiệu tuyến bus
muốn điều chỉnh → Giao diện hiện lên thông tin tuyến bus: số hiệu, mật độ chuyến, điểm
khởi đầu, điểm kết thúc, và danh sách các điểm dừng đi qua, mỗi điểm dừng trên một
dòng với các nút sửa, xóa, dưới cùng là nút thêm điểm dừng → QL xóa điểm dừng cuối

và thêm vào hai điểm dừng mới (đổi hướng về kéo dài tuyến) và click submit → hệ thống
tự cập nhập điểm cuối của tuyến và cập nhật thông tin tuyến vào CSDL, đồng thời thông
báo thành công.


3. Chức năng “Lên lịch ca cho tài xế” với mô tả như sau :
QL chọn chức năng lên lịch ca cho tài xế → Giao diện tìm kiếm tài xế hiện ra → QL
nhập tên và click tìm → Danh sách các tài xế có tên vừa nhập hiện ra, mỗi người đầy đủ
thông tin trên 1 dòng → QL click chọn đúng tài xế muốn lên lịch → Giao diện hiện thông
tin các ngày đã có lịch và các ngày chưa lên lịch. Những ngày chưa lên lịch thì mỗi ngày
có 2 nút chọn tương ứng với 2 ca → QL click chọn 1 ca → Giao diện hiện lên tất cả các
xe chưa có tài xế vào ca đấy → QL chọn 1 xe trong danh sách. QL có thể quay lại để
thêm lịch cho ca khác, ngày khác. Khi xong QL click xác nhận → Hệ thống lưu lịch làm
việc vào và thông báo thành công.
4. Chức năng “Lưu thông tin vé sau mỗi ca” được mô tả như sau:
lái xe đem cuống vé về nộp cho QL, QL chọn chức năng nhập vé sau ca → Giao diện tìm
kiếm ca làm việc hiện lên → QL nhập tên lái xe, ngày giờ bắt đầu ca → Hệ thống hiện
lên tất cả các ca làm việc của các lái xe có tên chứa từ khóa nhập vào, ở tại ca đã chọn,
mỗi ca trên một dòng: tên, mã lái xe, biển số xe, tên tuyến, giờ bắt đầu, giờ kết thúc →
QL click chọn ca đúng với lái xe đang nộp vé → Giao diện nhập số vé, số tiền hiện ra →
QL nhập số lượng vé, số tiền đã bán được và click submit → Hệ thống lưu lại và báo
thành công.
5. Chức năng “Thống kê tuyến xe theo số lượng khách” được mô tả chi tiết như sau:
QL chọn chức năng thống kê tuyến xe theo lượng khách → Giao diện chọn khoảng thời
gian thống kê hiện lên → QL chọn ngày bắt đầu, ngày kết thúc và click nút thống kê →
Giao diện thống kê hiện lên, mỗi tuyến bus trên 1 dòng, xếp theo chiều giảm dần của số
lượng vé bán, tổng số tiền thu được: mã, tên tuyến, điểm bắt đầu, điểm kết thúc, tần suất
tuyến, chiều dài tuyến, tổng số vé bán ra, tổng số tiền thu được → QL click vào một dòng
của 1 tuyến để xem chi tiết → Giao diện thống kê chi tiết từng ca chạy của tuyến đấy
trong khoảng thời gian đã chọn hiện ra theo thứ tự thời gian, mỗi ca trên 1 dòng: ngày,

giờ bắt đầu, giờ kết thúc, tổng vé bán ra, tổng tiền thu được.

2. Biểu đồ UC tổng quan:
 Mục đích của bước này là xây dựng một bản mô tả yêu cầu của khách hàng bằng
ngôn ngữ kỹ thuật (UML).

a. Xác định các actor có thể có của hệ thống:
Actor là người dùng trực tiếp: nhân viên quản trị hệ thống (admin), nhân viên quản lý,
nhân viên lái xe, khách hàng,..

b. Các chức năng liên quan đến các actor:
-Người quản trị hệ thống: Quản lí tài khoản người dùng
-Nhân viên quản lí: Quản lí thông tin đầu xe, Quản lí tuyến bus, Lên lịch ca lái xe, Lưu
thông tin vé sau mỗi ca, thống kê tuyến xe theo số lượng khách


-Nhân Viên lái xe: Xem thông tin tuyến đường, xem lịch làm việc(lái xe)
-Khách hàng: Xem thông tin tuyến đường

c. Vẽ sơ đồ use case tổng quan:

(Biểu đồ Use case tổng quan)

d. Mô tả các Use case:
- Quản lí tài khoản: UC này cho phép nhân viên quản trị hệ thống có thể thêm,sửa,xóa tài
khoản người sử dụng khi có yêu cầu từ nhân viên tương ứng
- Quản lí tuyến Bus: UC này cho phép nhân viên quản lí có thể quản lí các tuyến bus khác
nhau
- Lên lịch ca cho tài xế: UC này cho phép nhân viên quản lí lên lịch cho các nhân viên lái
xe

- Lưu thông tin vé sau mỗi ca: UC này cho phép người quản lí lưu lại các thông tin về
tuyến đường, thời gian và tên tài xế,...
- Thống kê tuyến xe: UC này cho phép người quản lí thống kê các tuyến xe có mặt trong
hệ thống.
- Quản lí thông tin một đầu xe: UC này cho phép người quản lí thêm, sửa, xóa một đầu xe


- Lái xe xem thông tin tuyến đường: UC này cho phép lái xe xem thông tin tuyến đường
mình chạy
- Xem lịch làm việc: UC này cho phép lái xe xem thông tin lịch trình công việc của mình
- Xem thông tin tuyến đường: UC này cho phép khách hàng hoặc nhân viên hệ thống xem
thông tin các tuyến đường xe chạy
- Khách hàng xem thông tin tuyến đường: UC này cho phép khách hàng xem thông tin
tuyến đường Bus chạy.

3. Biểu đồ UC chi tiết:
a. Xác định các actor có trong use case: Người quản lý .
b. Mô tả chức năng:
QL chọn chức năng thống kê tuyến xe theo lượng khách → Giao diện chọn khoảng thời
gian thống kê hiện lên → QL chọn ngày bắt đầu, ngày kết thúc và click nút thống kê →
Giao diện thống kê hiện lên, mỗi tuyến bus trên 1 dòng, xếp theo chiều giảm dần của số
tượng vé bán, tổng số tiền thu được: mã, tên tuyến, điểm bắt đầu, điểm kết thúc, tần suất
tuyến, chiều dài tuyến, tổng số vé bán ra, tổng số tiền thu được → QL click vào một dòng
của 1 tuyến để xem chi tiết → Giao diện thống kê chi tiết từng ca chạy của tuyến đấy
trong khoảng thời gian đã chọn hiện ra theo thứ tự thời gian, mỗi ca trên 1 dòng: ngày,
giờ bắt đầu, giờ kết thúc, tổng vé bán ra, tổng tiền thu được.

c. Vẽ sơ đồ use case:

(Sơ đồ use case “Thống kê tuyến xe theo số lượng khách”)



“Thống kê tuyến xe theo số lượng khách”: Use Case này cho phép người quản lý có thể
xem được toàn bộ thống kê về tuyến xe nhằm phục vụ cho mục đích quản lý.

d. Tại sao đề xuất các use case con và mối liên hệ Include/
Extend:
a) Xem thống kê:
Là hành động của người quản lý tác động chính lên use case cha, hay là chính là chức
năng chính của use case cha.
b) Đăng nhập:
Là hành động sau khi người quản lý muốn xem thống kê, nên đây là use case con của use
case cha.
Người quản lý bắt buộc phải đăng nhập để có thể xem thống kê. Hay có thể nói, đăng
nhập chính là chức năng bắt buộc của Xem thống kê.
 Xem thống kê Include>> Đăng nhập.
c) Chọn thời gian thống kê:
Là giao diện xảy ra khi người quản lý đăng nhập vào chức năng xem thống kê để xem
được thống kê trong khoản thời gian nào.
Đây là chức năng bắt buộc, nên:
 Xem thống kê Include>> Chọn thời gian thống kê.
d) Xem thống kê tuyến xe theo số lượng khách:
Là chức năng của use case chính nên nó tồn tại trong use case cha.
Nó là một chức năng mở rộng, có thể có của use case Xem thống kê.
 Xem thống kê tuyến xe theo số lượng khách Extend>> của Xem thống kê.
e) Xem thống kê chi tiết từng ca chạy của tuyến xe:
Người quản lý có thể xem hoặc không các vấn đề chi tiết của tuyến xe.
Là phần mở rộng của use case Xem thống kê tuyến xe theo số lượng khách, nên dễ thấy:
 Xem thống kê chi tiết từng ca chạy của tuyến xe Extend>> của Xem thống kê


tuyến xe theo số lượng khách.

4. Kịch bản chuẩn và ngoại lệ (v.1):
a. Kịch bản chuẩn:


Nhân viên quản lý A đăng nhập vào hệ thống.
Giao diện hệ thống hiện ra.
Nhân viên quản lý A chọn chức năng thống kê.
Hệ thống hiển thị giao diện chọn đối tượng thống kê và kiểu thống kê.
Nhân viên quản lý A click vào chức năng thống kê tuyến xe theo số lượng khách.
(doanh thu).Nhân viên quản lý A muốn xem thống kê tuyến xe theo số lượng
khách trong 2 ngày cuối tháng 4/2020.
6. Hệ thống hiển thị giao diện chọn khoảng thời gian thống kê.
7. Nhân viên quản lý A nhập ngày bắt đầu là 29/04/2020, ngày kết thúc là
30/04/2020 và click nút thống kê.
8. Hệ thống hiển thị thông tin các tuyến bus trên 1 dòng xếp theo chiều giảm dần của
số lượng vé bán, tổng số tiền thu được.
1.
2.
3.
4.
5.

STT



Tên
tuyến


Điểm
bắt đầu

Điểm
kết thúc

Tần
suất
tuyến

Chiều
dài
tuyến

Tổng số Tổng số
vé bán tiền thu
ra
được

1

08B

Long
Biên Vạn
Phúc

Long
Biên


Vạn
Phúc

20 phút

20km

428

2996k

2

20B

Cầu
Giấy Bến xe
Yên
Nghĩa

Cầu
Giấy

Bến xe
Yên
Nghĩa

10 phút


10km

215

1505k

3

10A

Long
Biên Từ Sơn

Long
Biên

Từ Sơn

15 phút

15km

175

1225k

9. Nhân viên quản lý A click vào mã 08B đầu danh sách để xem thống kê chi tiết
tuyến 08B.
10. Hệ thống hiển thị thống kê chi tiết từng ca chạy của tuyến xe 08B trong thời gian 2
ngày cuối còn hoạt động tháng 4/2020:


STT

Ngày

Giờ bắt đầu

Giờ kết thúc

Tổng số vé bán

Tổng tiền thu


ra

được

1

29/04/2020

5:00

12:00

150

1050k


2

29/04/2020

12:00

21:00

50

350k

3

30/04/2020

5:00

12:00

75

525k

4

30/04/2020

12:00


21:00

153

1071k

428

2996k

Tổng:

b. Kịch bản ngoại lệ:
i. Kịch bản ngoại lệ 1:
8. Các tuyến xe đều có doanh thu bằng 0.
ii. Kịch bản ngoại lệ 2:
8. Hệ thống không hiện thống kê doanh thu. (Do 2 ngày 29/04/2020 và 30/04/2020
là 2 ngày cách ly xã hội nên cấm các phương tiện công cộng.)
8.1 Nhân viên quản lý A nhập ngày bắt đầu là 27/04/2020, ngày kết thúc là
28/04/2020 và click nút thống kê.
8.2 Hệ thống hiển thị thông tin các tuyến bus trên 1 dòng xếp theo chiều giảm dần
của số lượng vé bán, tổng số tiền thu được.
9. Nhân viên A click vào mã tuyến xe đầu danh sách.

5. Biểu đồ lớp thực thể phân tích:
Trích các lớp thực thể:

a. Trích danh từ:
➢ Mô tả hệ thống trong một đoạn văn như sau:


Hệ thống quản lý điều tuyến bus và phân công nhân viên điều hành xe bus. Hệ
thống cho phép người quản lý có thể quản lý thông tin về một đầu xe, lên lịch ca
cho nhân viên điều hành xe, lưu thông tin vé sau mỗi ca, thống kê tuyến bus theo
số lượng khách, Quản lí tuyến bus bao gồm các thông tin thông tin các điểm dừng,
mật độ chuyến của một tuyến bus . Hệ thống cũng cho phép nhân viên điều hành
xe xem lịch nhân viên điều hành xe, xem thông tin tuyến đường.


➢ Danh từ và các phân tích sau:

+ Hệ thống: danh từ chung → loại.
+Tuyến bus: là đối tượng xử lý của hệ thống → là một lớp thực thể: TuyenXe.
+Nhân viên điều hành xe: không phải là đối tượng xử lý của hệ thống, nhưng
cũng bị quản lý cùng với người quản lý và phụ xe theo kiểu người dùng trực tiếp
của phần mềm → đề xuất là một thực thể chung: NguoiDung.
+ Người quản lý:không phải là đối tượng xử lý của hệ thống, nhưng cũng bị quản
lý cùng với lái xe và phụ xe theo kiểu người dùng trực tiếp của phần mềm → đề
xuất là một thực thể chung: Nguoidung.
+Thông tin: danh từ chung → loại.
+Đầu xe: là đối tượng xử lý của hệ thống → là một thực thể: Xe.
+Ca: là đối tượng xử lý của hệ thống. → là lớp thực thể chung: Ca.
+ lịch Ca là đối tượng xử lí của hê thống → là môt thực thể :LichLamViec
+Vé: là đối tượng xử lý của hệ thống. → là lớp thực thể: Ve.
+Khách: không phải đối tượng xử lý trực tiếp của hệ thống → loại.
+Điểm dừng: là đối tượng xử lý của hệ thống. → Là lớp thực thể: DiemDung.
+Mật độ: danh từ chung → loại.
+Lịch nhân viên điều hành xe: là đối tượng xử lý của hệ thống. → là lớp thực thể
chung: Ca.
+Các thông tin thống kê: Thống kê doanh thu → TKDoanhThu, thống kê tuyến
đường → TKTuyenXe.

➢ Đánh giá các danh từ:

Vậy chúng ta thu được các lớp thực thể ban đầu là: TuyenXe, NguoiDung, Xe,
Ca,LichLamViec, Ve, DiemDung và các lớp thực thể thống kê: TKDoanhThu,
TKTuyenXe.

b. Quan hệ giữa các lớp thực thể được biểu hiện như sau:
+ Một lái xe có thể lái nhiều tuyến xe, một tuyến xe có thể được lái bởi nhiều lái
xe. Một tuyến xe có thể có nhiều lịch làm việc, một nhân viên có thể có thể có
nhiều lịch làm việc.Tuy nhiên,trong một lịch làm việc tuyến xe có thể có thể có
nhiều lái xe.Vì vậy,quan hệ giữa TuyenXe và LichLamViec là quân hệ n-n. Chúng
ta cần tách một lớp trung gian ở giữa là LichLamViecVaTuyenXe


+ Một Lái Xe sẽ có nhiều lịch làm việc và một lịch làm việc chỉ có một Lái Xe do
đó mối quan hệ giữa NguoiDung Và LichLamViec là 1-n.
+ Một ca làm có nhiều lịch làm việc và một lịch làm việc sẽ có một ca làm => Do
đó quan hệ giữa Ca va LichLamViec là 1-n.
+ Một tuyến xe có thể có nhiều xe và một xe có thể thuộc nhiều tuyến xe vì vậy
mối quan hệ giữa TuyenXe và Xe là n-n. Do đó có thể bổ sung một lớp thực thể
liên kết giữa hai đối tượng này là XeTuyenXe.
+Một Xe trong một Tuyến Xe có thể thuộc nhiều Lịch Làm việc và Một Lịch Làm
việc sẽ chỉ chứa một Xe trong một Tuyến Xe do đó quan hệ giữa XeTuyenXe với
LichLamViec Là 1-n.
+ Một Tuyến xe sẽ có nhiều điểm dừng và một điểm dừng sẽ có nhiều tuyến xe đi
qua. Do đó mối quan hệ giữa TuyenXe và DiemDung là n-n. Do đó ta cần thêm
một lớp trung gian là TuyenXeDiemDung.
+ Một tuyến xe có thể sử dụng được nhiều vé nhưng một vé chỉ trên một tuyến xe
+ Mỗi Loại Vé Sẽ được bán bởi nhiều Xe và tuyến Xe khác nhau, Mỗi Xe và
Tuyến Xe thì Chỉ bán một loại vé , do đó quan hệ giữa XeTuyenXe và Ve là n-1.


c. Biểu đồ lớp thực thể pha phân tích:

(Biểu đồ lớp thực thể pha phân tích)


6. Biểu đồ lớp modul “Thống kê tuyến xe theo số
lượng khách” pha phân tích:
Kịch bản v.1:
➢ Giao diện đăng nhập → đề xuất lớp GD_DangNhap: ô nhập tên đăng nhập, mật
khẩu và nút đăng nhâp.
➢ Giao diện chính của nhân viên quản lý → GD_TrangChu: nút chọn chức năng
thống kê tuyến xe theo lượng khách (hay doanh thu) (quản lý thông tin một đầu
xe, quản lý tuyến bus, lên lịch ca, lưu thông tin vé).
➢ Giao diện chọn kiểu thống kê → GD_ChonKieuThongKe: nút chọn đối tượng
thống kê, nút chọn kiểu thống kê, nút xác nhận.
➢ Giao diện thống kê tuyến xe → GD_ThongKe: nút chọn ngày bắt đầu, nút chọn
ngày kết thúc, nút thống kê, bảng kết quả thống kê (mỗi tuyến bus trên 1 dòng, xếp
theo chiều giảm dần của số tượng vé bán, tổng số tiền thu được: mã, tên tuyến,
điểm bắt đầu, điểm kết thúc, tần suất tuyến, chiều dài tuyến, tổng số vé bán ra,
tổng số tiền thu được).
➢ Giao diện thống kê chi tiết từng ca chạy của tuyến xe → GD_ThongKeChiTiet:
bảng kết quả (thống kê chi tiết từng ca chạy của tuyến đấy trong khoảng thời gian
đã chọn hiện ra theo thứ tự thời gian, mỗi ca trên 1 dòng: ngày, giờ bắt đầu, giờ
kết thúc, tổng vé bán ra, tổng tiền thu được), nút Trở lại.

Xác định chức năng gán giá trị cho đối tượng:
1. Giao diện đăng nhập → đề xuất lớp GD_DangNhap: ô nhập tên đăng nhập, mật
khẩu và nút đăng nhâp.
→ Xử lý thông tin đăng nhập KiemTraDangNhap().

→ Liên quan đến thuộc tính tên đăng nhập, mật khẩu của lớp NguoiDung.
→ Gán cho chức năng của lớp NguoiDung.
2. Giao diện chính của nhân viên quản lý → GD_TrangChu: nút chọn chức năng
thống kê (quản lý thông tin một đầu xe, quản lý tuyến bus, lên lịch ca, lưu thông
tin vé).
→ Không cần xử lý dưới Cơ sở dữ liệu.


3. Giao diện chọn thống kê theo đối tượng và kiểu thống kê
→GD_ChonKieuThongKe: ô chọn đối tượng thống kê, ô chọn kiểu thống kê và
nút xác nhận.
→ Không cần xử lý Cơ sở dữ liệu.
4. Giao diện thống kê tuyến xe → GD_ThongKe: ô chọn ngày bắt đầu, ô chọn ngày
kết thúc, nút thống kê và bảng kết quả thống kê (mỗi tuyến bus trên 1 dòng, xếp
theo chiều giảm dần của số tượng vé bán, tổng số tiền thu được: mã, tên tuyến,
điểm bắt đầu, điểm kết thúc, tần suất tuyến, chiều dài tuyến, tổng số vé bán ra,
tổng số tiền thu được).
→ Xử lý tìm kiếm thông tin thống kê tuyến xe, nên timThongKeTuyenXe().
→ Liên quan đến các thuộc tính của tuyến xe, nên đề xuất chức năng liên quan đến lớp
TKTuyenXe.
5. Giao diện thống kê chi tiết từng ca chạy của tuyến xe → GD_ThongKeChiTiet:
bảng kết quả (thống kê chi tiết từng ca chạy của tuyến đấy trong khoảng thời gian
đã chọn hiện ra theo thứ tự thời gian, mỗi ca trên 1 dòng: ngày, giờ bắt đầu, giờ
kết thúc, tổng vé bán ra, tổng tiền thu được) và nút trở lại.
→ Xử lý tìm kiếm thông tin lượng khách (hay là số vé) theo lịch ca chạy, nên
timThongKeChiTiet().
→ Liên quan đến các thông tin từng ca chạy kết hợp với tổng doanh thu sau khi bán vé,
nên đề xuất chức năng liên quan đến lớp LichLamViec.

(Biểu đồ lớp modul “Thống kê tuyến xe theo số lượng khách” pha phân tích)


7. Kịch bản v.2:


1. Nhân viên quản lý A truy cập vào hệ thống để xem thống kê tuyến xe số lượng
khách.
2. Giao diện GD_DangNhap hiện lên.
3. Nhân viên quản lý A nhập tên đăng nhập, mật khẩu và click Đăng nhập.
4. Lớp GD_DangNhap gọi đến lớp NguoiDung yêu cầu kiểm tra đăng nhập.
5. Lớp NguoiDung gọi phương thức kiểm tra đăng nhập.
6. Lớp NguoiDung trả lại kết quả cho lớp GD_DangNhap.
7. GD_DangNhap gọi lớp GD_TrangChu hiển thị.
8. GD_TrangChu hiển thị.
9. Nhân viên quản lý A click vào chức năng thống kê.
10. Lớp GD_TrangChu gọi tới lớp GD_ChonKieuThongKe hiển thị.
11. Lớp GD_ChonKieuThongKe hiển thị.
12. Nhân viên quản lý A chọn đối tượng thống kê tuyến xe, kiểu theo doanh thu và
click xác nhận.
13. Lớp GD_ChonKieuThongKe gọi tới lớp GD_ThongKe.
14. Lớp GD_ThongKe hiển thị.
15. Nhân viên quản lý A chọn ngày bắt đầu, ngày kết thúc và click nút thống kê.
16. Lớp GD_ThongKe gọi tới lớp ThongKeTuyenXe yêu cầu tìm thống kê tuyến xe.
17. Lớp ThongKeTuyenXe thực hiện yêu cầu.
18. Lớp ThongKeTuyenXe trả lại kết quả cho lớp GD_ThongKe.
19. Lớp GD_ThongKe hiển thị.
20. Nhân viên quản lý A click vào một dòng của một tuyến xe.
21. Lớp GD_ThongKe gọi tới lớp LichLamViec yêu cầu thống kê lượng khách theo
ca lịch làm.
22. Lớp LichLamViec thực hiện yêu cầu.
23. Lớp LichLamViec trả lại kết quả cho lớp GD_ThongKe.

24. Lớp GD_ThongKe gọi lớp GD_ThongKeChiTiet hiển thị.
25. Lớp GD_ThongKeChiTiet hiển thị.
26. Nhân viên quản lý A click nút trở lại.
27. Lớp GD_ThongKeChiTiet gọi tới lớp GD_ChonKieuThongKe hiển thị.
28. Lớp GD_ChonKieuThongKe hiển thị.

8. Biểu đồ tuần tự phân tích:


(Biểu đồ tuần tự modul “Thống kê tuyến xe theo số lượng khách” pha phân tích)

9. Biểu đồ thực thể thiết kế:


Input: Biểu đồ thực thể pha phân tích:


×