You are on page 1of 31

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC BÁCH KHOA


KHOA KHOA HỌC - KỸ THUẬT MÁY TÍNH

PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG

Bài tiểu luận

Hệ Thống Giám Sát Thời Gian Và


Quãng Đường Thực Hành Lái Xe

GVHD: THS. Nguyễn Thanh Tùng


Lớp: L01
SV thực hiện: Nguyễn Quốc Duy 1811727

Tp. Hồ Chí Minh, Tháng 01/2022


Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

LỜI CẢM ƠN

Để hoàn thành được tiểu luận của môn Phân Tích Và Thiết Kế Hệ Thống này, em xin gửi lời cảm ơn trịnh
trọng và chân thành nhất đến giảng viên Nguyễn Thanh Tùng. Thầy là người định hướng, chỉ dẫn chúng em
vô cùng nhiệt tình; cung cấp những kiến thức hay và bổ ích.

Cuối cùng, do bản thân em còn nhiều hạn chế về kiến thức, về thời gian và kinh nghiệm thực tiễn nên khó
lòng tránh khỏi những sai sót đáng tiếc trong quá trình hiện thực tiểu luận. Em rất mong nhận được những ý
kiến đóng góp từ thầy để hoàn thiện tiểu luận tốt hơn.

Trân trọng

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 1/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

Mục lục
Lời cảm ơn 1

Danh sách hình ảnh 4

Thuật ngữ & từ viết tắt 5

1 Giới thiệu đề tài 6

2 Lên kế hoạch dự án 7
2.1 Thuyết phục khách hàng lấy dự án . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 Phân tích tính khả thi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2.1 Khả thi về kỹ thuật . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2.2 Khả thi về kinh tế . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2.3 Khả thi về vận hành . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3 Phân tích hệ thống 9


3.1 Thu thập yêu cầu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.1.1 Yêu cầu chức năng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.1.2 Yêu cầu phi chức năng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.2 Các vấn đề và đề xuất giải pháp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.2.1 Vấn đề . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.2.2 Đề xuất giải pháp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.3 Sơ đồ use-case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.4 Sơ đồ Data Flow (DFD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

4 Thiết kế hệ thống 15
4.1 Kiến trúc hệ thống . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.2 Thiết kế database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4.3 Thiết kế giao diện . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

5 Hiện thực hệ thống 25


5.1 Hệ quản trị cơ sở dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5.2 Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5.3 phần mềm quản lý . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
5.4 Thiết bị DAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

6 Kiểm thử hệ thống 28


6.0.1 Test Scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 2/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

7 Triển khai và bảo trì 29


7.1 Triển khai . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
7.2 Bảo trì . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
7.3 Bảo trì khắc phục . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
7.4 Bảo trì phòng ngừa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
7.5 Bảo trì hoàn thiện . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
7.6 Bảo trì thích ứng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

Tài liệu tham khảo 30

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 3/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

DANH SÁCH HÌNH ẢNH

1 Sơ đồ use case của hệ thống . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12


2 Sơ đồ DFD ở mức ngữ cảnh của hệ thống . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3 Sơ đồ DFD ở mức 0 của hệ thống . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4 Kiến trúc hệ thống . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
5 Sơ đồ ERD của hệ thống . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
6 Giao diện đăng nhập trên thiết bị DAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
7 Giao diện hiển thị thông tin sau khi đăng nhập thành công trên thiết bị DAT . . . . . . . . . . . 17
8 Giao diện của thiết bị DAT khi học viên đăng nhâp mà thầy dạy chưa đăng nhập . . . . . . . . . 18
9 Giao diện của thiết bị DAT khi thầy dạy đăng nhập mà học viên chưa đăng nhập . . . . . . . . . 18
10 Giao diện danh sách học viên . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
11 Giao diện thêm học viên . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
12 Giao diện danh sách các thầy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
13 Giao diện thêm thầy dạy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
14 Giao diện danh sách phiên lái xe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
15 Giao diện giám sát phiên lái xe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
16 Logo khá thú vị của PostgreSQL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
17 Hiện thực server bằng NodeJS mang lại hiệu năng cao. . . . . . . . . . . . . . . . . . . . . . . . . 26
18 Hiện thực phần mềm desktop bằng C sẽ mang lại hiểu suất cao. . . . . . . . . . . . . . . . . . . 26
19 Hiện thực thiết bị DAT bằng ngôn ngữ C là lựa chọn khôn ngoan. . . . . . . . . . . . . . . . . . 27

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 4/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

THUẬT NGỮ & TỪ VIẾT TẮT

DAT............... Viết tắt của Distance and Time, thời gian và quảng đường.
GNSS.......... Viết tắt của Global Navigation Satellite System, hệ thống vị tinh định vị toàn cầu.
HD.......... Viết tắt của High Definition, Độ phân giải cao.

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 5/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

1 Giới thiệu đề tài


Hiện nay tai nạn giao thông đang diễn ra hằng ngày gây thiệt hại rất lớn về tài sản và tính mạng. Theo
báo cáo tổng kết của Ủy ban An toàn giao thông Quốc gia 6 tháng đầu năm 2019 toàn quốc xảy ra 8.385 vụ
tai nạn giao thông, làm chết 3.810 người, bị thương 6.358 người. So với 6 tháng đầu năm 2018, số vụ tai nạn
giao thông giảm 641 vụ (giảm 7,1%), số người chết giảm 311 người (giảm 7,55%), số người bị thương giảm 679
người (giảm 9,65%)1 . Có rất nhiều lý do dẫn đến tai nạn giao thông như: người tham gia giao thông ý thức
còn kém, ít hiểu biết về pháp luật, sử dụng chất ma túy, rượu bia khi tham gia giao thông, chạy xe quá tốc
độ cho phép, phóng nhanh vượt ẩu...là những nguyên nhân dẫn đến tai nạn giao thông. Ngoài những nguyên
nhân trên, còn có một nguyên nhân đó là chất lượng bằng cấp lái xe, để có một phần khắc phục nguyên nhân
về chất lượng bằng cấp tốt hơn, tôi muốn giới thiệu hệ thống giám sát thời gian và quãng đường thực hành lái
xe, hệ thống này nhằm mục đích đảm bảo việc học và đào tạo bằng lái xe ô tô được diễn ra đầy đủ, nghiêm
túc và chất lượng, giúp nâng cao tay nghề của người lái xe và giảm thiểu tai nạn giao thông.

Hệ Thống Giám Sát Thời Gian Và Quãng Đường Thực Hành Lái Xe bao gồm thiết bị DAT, máy chủ và hệ
thống thông tin. Thiết bị DAT được lắp đặt trên các phương tiện dạy thực hành lái xe để kiểm soát thời gian
và quãng đường học thực tế của học viên. Với những thông tin được cung cấp từ thiết bị giám sát thời gian và
quãng đường thực hành lái xe (DAT), trung tâm đào tạo BGTVT sẽ có đầy đủ các thông tin để kiểm soát chất
lượng giảng dạy của đội ngũ giáo viên và học tập của học viên khi tham gia chương trình xin cấp bằng lái xe ô tô.

1 Nguồn: https://danluat.thuvienphapluat.vn/thuc-trang-tai-nan-giao-thong-hien-nay-176172.aspx, truy cập ngày

30/12/2021

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 6/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

2 Lên kế hoạch dự án
2.1 Thuyết phục khách hàng lấy dự án
1. Thái độ và cách thức nói chuyện: phải nhẹ nhàng, cởi mở và vui vẻ. Tạo cảm giác thân thiện và tin cậy.

2. Nắm bắt nhu cầu, tâm lý của khách hàng

3. Kiên nhẫn truyền đạt thông tin ngắn gọn nhưng đầy đủ

4. Nắm bất thời cơ Chốt hợp đồng.

2.2 Phân tích tính khả thi


Chúng tôi sẽ tập trung vào 3 khía cạnh là khả thi về kỹ thuật, khả thi về kinh tế, khả thi về vận hành.

2.2.1 Khả thi về kỹ thuật

Quy trình xác định xem tổ chức có các nguồn lực công nghệ để phát triển hoặc mua, cài đặt và vận hành
hệ thống hay không. chúng ta nên cấy ghép lựa chọn thiết bị DAT và Server. Khi chúng tôi quyết định phát
triển phù hợp với nhu cầu của tổ chức cũng như giúp phát triển dự án.

1. Thiết bị DAT phải có các bộ phận sau:

- Bộ vi xử lý;

- Bộ phận thu nhận hình ảnh (camera): độ phân giải tối thiểu HD (1280 x 720 pixel), chụp ảnh rõ trong
mọi điều kiện ánh sáng;
- Bộ phận đăng nhập và đăng xuất hệ thống để nhận dạng học viên (thông qua đầu đọc thẻ hoặc đầu đọc
vân tay);

- Bộ phận nhận tín hiệu GNSS:

- Bộ phận thu phát tín hiệu viễn thông di động, tối thiểu công nghệ 3G;

- Bộ phận hiển thị và cảnh báo: màn hình (có kích thước tối thiểu 7 Inch), đèn tín hiệu, loa;

- Bộ nhớ đảm bảo dung lượng để lưu giữ các dữ liệu tối thiểu 30 ngày gần nhất

- Đồng hồ thời gian thực được đồng bộ thời gian vệ tinh (khi có tín hiệu vệ tinh) và hiệu chỉnh theo giờ
Việt Nam;

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 7/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

- Có ít nhất một cổng kết nối theo chuẩn USB để trích xuất dữ liệu từ thiết bị DAT
.
2. Server

2.2.2 Khả thi về kinh tế

Tên phần cứng Giá tiền


Board lập trình nhúng Raspberry Pi Pico (Bộ 180.000đ
vi xử lý)
BCamera YooSee ngoài trời Siêu nét 2.0mpx 389.000đ
1080P - 2 anten w26S (Camera)
Module thu tín hiệu vệ tinh MAX-M8Q-0-10 200.000đ
GPS/ GNSS của hãng Ubox (Bộ phận nhận
tín hiệu GNSS)
Card WWAN 3G - 4G cao câp sierra MC7700 200.000đ
cho laptopBộ phận thu phát tín hiệu viễn
thông di động)
Màn hình hiển thị LCD 4.3 inch 277.000đ
Loa toàn dải Sony 4 inch 4Ohm 50W 90.000đ
Thẻ nhớ SD 128GB 79.000đ
Tổng giá trị 1.415.000đ
Bảng 1: Bảng giá phần cứng

2.2.3 Khả thi về vận hành

Hệ thống này là bắt buộc, luôn luôn được cài đặt, không có chuyện cài mà không sử dụng

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 8/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

3 Phân tích hệ thống


3.1 Thu thập yêu cầu
3.1.1 Yêu cầu chức năng

Thiết bị DAT phải có các chức năng tối thiểu sau đây:
1. Chức năng hiển thị thông tin và thông báo trạng thái hoạt động: thiết bị DAT phải có chức năng tự kiểm
tra khi khởi động ban đầu và trong suốt quá trình hoạt động và có các tín hiệu, báo hiệu bằng đèn, bằng âm
thanh hoặc thông qua màn hình, để thông báo trạng thái hoạt động, bao gồm:

• Tình trạng tín hiệu viễn thông di động;

• Tình trạng có kết nối, mất kết nối với máy chủ;

• Tình trạng có tín hiệu, mất tín hiệu GNSS;

• Tình trạng hoạt động của bộ nhớ lưu trữ dữ liệu;

• Tình trạng hoạt động của camera;

• Trạng thái đăng nhập, đăng xuất của giáo viên và học viên;

• Hiển thị thông báo thông tin học viên sau khi đăng nhập bao gồm: mã số học viên (ID), mã khóa học,
tên học viên, tên giáo viên. Phát âm thanh thông báo: đúng, sai, hoàn thành khi đăng nhập, đăng xuất
và khi nhận dạng sai khuôn mặt học viên so với đăng nhập.

• Hiển thị theo thời gian thực, bao gồm: kết quả xác thực, số liệu thời gian, quãng đường đã học của phiên
học thực hành lái xe.

• Hiển thị số liệu thời gian, quãng đường của học viên đã luyện tập và còn phải luyện tập tiếp so với quy
định.

2. Chức năng ghi nhận thay đổi người dạy và học trên xe

• Người dạy thực hành và học viên sử dụng thẻ hoặc vân tay chạm vào đầu đọc thẻ hoặc đầu đọc vân tay
của thiết bị để đăng nhập hoặc đăng xuất hệ thống

• Thiết bị DAT phải ghi lại được thời điểm, tọa độ đăng nhập, đăng xuất của người dạy thực hành và học
viên, đồng thời phải có báo hiệu để nhận biết các sự thay đổi này.

• Việc đăng nhập, đăng xuất chỉ thực hiện được khi xe dừng hoặc đỗ

3. Chức năng xác thực người học qua camera

• Thiết bị DAT có khả năng sử dụng camera nhận dạng khuôn mặt để xác thực học viên.

• Thiết bị DAT ghi nhận thời điểm, tọa độ, kết quả xác thực tại thời điểm xác thực

4. Chức năng cảnh báo: Thiết bị DAT phải phát tín hiệu cảnh báo bằng đèn Led nháy sáng hoặc màn hình
hiển thị

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 9/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

• So sánh nhận dạng khuôn mặt học viên không trùng khớp với thông tin đã được đăng ký qua thẻ hoặc
vân tay của học viên;

• Phần cứng lỗi bao gồm: mất tín hiệu GNSS, mất tín hiệu viễn thông di động, lỗi bộ nhớ, camera bị lỗi;

• Không kết nối được với máy chủ quản lý.

5. Chức năng ghi và lưu trữ dữ liệu trên thiết bị: Thiết bị DAT phải ghi và lưu trữ dữ liệu trong bộ nhớ thiết
bị các thông tin tối thiểu như sau:
- Thông tin về người dạy và học viên

• Thông tin định danh học viên qua mã thẻ hoặc vân tay và hình ảnh khuôn mặt.

• Thông tin định danh giáo viên qua mã thẻ hoặc vân tay.

• Thời điểm, tọa độ bắt đầu và kết thúc phiên học thực hành lái xe của từng học viên.

• Thời gian, quãng đường học thực hành tích lũy và thời gian, quãng đường thực hành trong ngày của từng
học viên.

- Thông tin hành trình xe chạy và kết quả xác thực khuôn mặt học viên

• Hành trình xe chạy (thời gian, tọa độ, tốc độ) với tần suất ghi và lưu trữ không quá 30 giây một lần khi
xe trong phiên dạy thực hành.

• Kết quả xác thực khuôn mặt học viên (đúng, sai) với tần suất ghi và lưu trữ không quá 5 phút một lần
khi xe đang có học viên học thực hành.

• Ảnh chụp thời điểm đăng nhập và đăng xuất thành công. Ảnh chụp tại thời điểm thiết bị phát hiện Khuôn
mặt học viên và định danh qua thẻ hoặc vân tay là không cùng một người

3.1.2 Yêu cầu phi chức năng

1. Tần suất xác thực là 5 phút/lần.

2. Hành trình xe chạy (thời gian, tọa độ, tốc độ) với tần suất ghi và lưu trữ không quá 30 giây một lần khi
xe trong phiên dạy thực hành.

3. Kết quả xác thực khuôn mặt học viên (đúng, sai) với tần suất ghi và lưu trữ không quá 5 phút một lần
khi xe đang có học viên học thực hành.

4. Tốc độ xác thực qua thẻ hoặc vân tay 5 giây

5. Thời gian thực hành: sai số không vượt quá ± 0,5% giá trị đo.

6. Quãng đường thực hành: sai số không vượt quá ± 5% giá trị đo.

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 10/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

7. Các dữ liệu được ghi và lưu giữ trong thiết bị DAT và máy chủ phải đảm bảo không bị xóa, không bị
thay đổi trong suốt thời gian lưu trữ theo quy định.

8. Thời gian lưu trữ dữ liệu từ thiết bị DAT quy định mục 2.1.5 của Quy chuẩn này tại máy chủ quản lý
tối thiểu là 05 năm.

9. Kênh truyền từ thiết bị DAT đến máy chủ quản lý phải được mã hóa và bảo mật truyền thông.

3.2 Các vấn đề và đề xuất giải pháp


3.2.1 Vấn đề

Dữ liệu: Dữ liệu về thời gian được học, quãng đường được chạy của mỗi học viên sẽ rất khó khăn xác định
chính xác sau mỗi phiên học thực hành lái xe.

Xác thực: Trong mỗi phiên học, thì khó mà xác thực có đúng là học viên của trung tâm đào tạo lái xe
hay không.

Sao lưu dữ liệu: Nếu không có sao lưu thì các trung tâm đào tạo lái xe sẽ mất đi những thông tin của học
viên ví dụ về thông tin, lịch sử đăng nhập, lịch sử thực hành.

3.2.2 Đề xuất giải pháp

Cơ sở dữ liệu tập trung: Cơ sở dữ liệu tập trung sẽ đảm bảo an toàn cho dữ liệu được lưu trữ trên hệ
thống và cũng đảm bảo rằng các đặc quyền chỉ được trao cho những người có thẩm quyền.

Xác thực: Hệ thống sẽ đăng nhập bằng vân tay hoặc thẻ và thiết bị DAT sẽ xác thực học viên qua camera
với tần suất xác thực 5 phút/lần.

Giám sát thời gian và quãng đường : Thiết bị DAT của hệ thống sẽ giám sát được thời gian và quãng
đường của học viên sau mỗi lần đăng nhập và sẽ sao lưu về máy chủ của trung tâm đào tạo lái xe. Từ đó dễ
dàng so sánh thời gian học và quãng đường học mà trung tâm đào tạo lái xe cấp cho mỗi học viên

Nhìn chung, các đề xuất giúp quản lý dữ liệu dễ dàng. Sẽ giảm đáng kể thời gian phản hồi và dư thừa. Các
đề xuất làm giảm nguy cơ gian lận và xác thực được học viên.

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 11/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

3.3 Sơ đồ use-case

Hình 1: Sơ đồ use case của hệ thống

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 12/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

3.4 Sơ đồ Data Flow (DFD)


sơ đồ DFD ở mức ngữ cảnh

Hình 2: Sơ đồ DFD ở mức ngữ cảnh của hệ thống

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 13/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

sơ đồ DFD ở mức 0

Hình 3: Sơ đồ DFD ở mức 0 của hệ thống

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 14/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

4 Thiết kế hệ thống
Giai đoạn thiết kế cũng là lúc bắt đầu lựa chọn và mua lại phần cứng và phần mềm sẽ cần thiết cho hệ
thống

4.1 Kiến trúc hệ thống

Hình 4: Kiến trúc hệ thống

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 15/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

4.2 Thiết kế database

Hình 5: Sơ đồ ERD của hệ thống

4.3 Thiết kế giao diện


Giao diện của thiết bị DAT

Trước khi học thực hành trên xe tập lái, đầu tiên học viên và người thầy dạy bắt buộc phải đăng nhập

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 16/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

Hình 6: Giao diện đăng nhập trên thiết bị DAT

Đây là kết quả, đăng nhập thành công

Hình 7: Giao diện hiển thị thông tin sau khi đăng nhập thành công trên thiết bị DAT

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 17/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

Hình 8: Giao diện của thiết bị DAT khi học viên đăng nhâp mà thầy dạy chưa đăng nhập

Hình 9: Giao diện của thiết bị DAT khi thầy dạy đăng nhập mà học viên chưa đăng nhập

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 18/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

Giao diện của phần mềm quản lý

Hình 10: Giao diện danh sách học viên

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 19/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

Hình 11: Giao diện thêm học viên

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 20/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

Hình 12: Giao diện danh sách các thầy

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 21/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

Hình 13: Giao diện thêm thầy dạy

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 22/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

Hình 14: Giao diện danh sách phiên lái xe

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 23/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

Hình 15: Giao diện giám sát phiên lái xe

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 24/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

5 Hiện thực hệ thống


5.1 Hệ quản trị cơ sở dữ liệu
Chúng tôi sẽ chọn hệ quản trị cơ sở dữ liệu là postgreSQL

PostgreSQL là một hệ thống quản trị cơ sở dữ liệu quan hệ miễn phí và nguồn mở (RDBMS) tập trung
vào khả năng mở rộng và tuân thủ các tiêu chuẩn kỹ thuật. Nó được thiết kế để xử lý một loạt các khối lượng
công việc lớn, từ các máy tính cá nhân đến kho dữ liệu hoặc dịch vụ Web có nhiều người dùng đồng thời

PostgreSQL bắt đầu từ năm 1986 như một phần của dự án POSTGRES tại Đại học California tại Berkeley
và có hơn 30 năm phát triển. Đây là cơ sở dữ liệu mặc định cho macOS Server, và cũng có các bản phân phối
cho Linux, FreeBSD, OpenBSD và Windows.

Hình 16: Logo khá thú vị của PostgreSQL.

5.2 Server
Chúng tôi sẽ chọn công nghệ nodejs để hiện thực server vì hệ thống giám sát thời gian và quãng đường cần
realtime nên có thể chọn nodejs là một cách hợp lý

Nodejs là một nền tảng (Platform) phát triển độc lập được xây dựng ở trên Javascript Runtime của
Chrome hỗ trợ tạo ra ứng dụng ở phía backend một cách nhanh chóng và dễ dàng mở rộng. Nodejs được
xây dựng và phát triển từ năm 2009, bảo trợ bởi công ty Joyent, trụ sở tại California, Hoa Kỳ. Nó tốc độ
xử lý và hiệu năng khá cao, được dùng để tạo ra được các ứng dụng có tốc độ xử lý nhanh, realtime thời gian thực.

NodeJS có thể được dùng để xây dựng các loại ứng dụng khác nhau như các ứng dụng dòng lệnh, ứng dụng
web, ứng dụng trò chuyện theo thời gian thực, máy chủ REST API,.. Tuy nhiên, nền tảng này thường được
dùng chủ yếu để xây dựng các chương trình mạng như máy chủ web, tương tự như PHP, Java hoặc ASP.NET.
NodeJS thường sẽ chạy trên đa nền tảng phía Server nên nó có thể thực hiện chạy ở bất kỳ các máy như: Mac

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 25/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

– Window – Linux. Dù không dễ dàng để học nó, cộng đồng NodeJS thường rất lớn và sẵn sàng support cho
bạn mọi lúc mọi nơi.

Hình 17: Hiện thực server bằng NodeJS mang lại hiệu năng cao.

5.3 phần mềm quản lý


Chúng tôi sẽ hiện thực phần mềm quản lý theo nền tảng desktop, vì vậy chúng tôi sẽ chọn công nghệ C#
hiện thực phần mềm quản lý này.

C# là một ngôn ngữ lập trình hướng đối tượng đa năng, mạnh mẽ được phát triển bởi Microsoft, C# là
phần khởi đầu cho kế hoạch .NET của họ. Tên của ngôn ngữ bao gồm ký tự thăng theo Microsoft nhưng theo
ECMA là C#, chỉ bao gồm dấu số thường. Microsoft phát triển C# dựa trên C++ và Java.

Hình 18: Hiện thực phần mềm desktop bằng C sẽ mang lại hiểu suất cao.

5.4 Thiết bị DAT


Chúng tôi sẽ lựa chọn công nghệ C để hiện thực cho thiết bị DAT

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 26/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

Ngôn ngữ lập trình C là một ngôn ngữ mệnh lệnh được phát triển từ đầu thập niên 1970 bởi Dennis Ritchie
để dùng trong hệ điều hành UNIX. Từ đó, ngôn ngữ này đã lan rộng ra nhiều hệ điều hành khác và trở thành
một những ngôn ngữ phổ dụng nhất

Hình 19: Hiện thực thiết bị DAT bằng ngôn ngữ C là lựa chọn khôn ngoan.

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 27/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

6 Kiểm thử hệ thống


Chúng tôi sẽ lựa chọn công cụ kiểm thử Winium để kiểm thử hệ thống

Winium là một open source framework mới, dựa trên Selenium, nó bao gồm 3 phần:

1. Automation test trên Windows applications.

2. Automation test trên Windows Phone (home button, notifications bar, toggles etc.)

3. Hỗ trợ Windows Phone applications. (Tương lại sẽ không phát triển tiếp)

6.0.1 Test Scenario

ID Requirement Test Scenario Test case


name
1 Đăng nhập Kiểm tra 1. Xác thực vân tay khác với vân tay đăng ký
2. Xác thực vân tay trùng với vân tay đăng ký
3. Đăng nhập bằng thẻ từ khác với thẻ từ đăng ký ở
trung tâm
4. Đăng nhập bằng thẻ từ trùng với thẻ từ đăng ký ở
trung tâm
2 Xác thực khuôn Xác thực 1. Xác thực khuôn mặt khi không có học viên đang thực
mặt hành
2. Xác thực khuôn mặt khi có 2 khuôn mặt
3. Xác thực khuôn mặt khi có khuôn mặt học viên không
khớp với khuôn mặt khi đăng ký học
4. Xác thực khuôn mặt khi có khuôn mặt học viên khớp
với khuôn mặt khi đăng ký học
5. Kiểm tra xem chu kỳ nhận dạng có <= 5 phút 1 lần
3 Phần mềm quản lý Kiểm tra dữ liệu 1. Kiểm tra kết nối đến server
2. Giám sát phiên lái xe khi không có internet
3. Giám sát phiên lái xe khi có internet
4. Giám sát phiên lái xe khi phiên đó đã kết thúc
5. Giám sát phiên lái xe khi phiên đó đang hoạt động
Bảng 2: Bảng Test Scenario.

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 28/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

7 Triển khai và bảo trì


7.1 Triển khai
- Lắp đặt thiết bị DAT vào xe tập lái

- Cài đặt phần mềm quản lý vào máy tính

- Phát hiện các sai sót, khuyết điểm của hệ thống thông tin.

- Đào tạo và hướng dẫn sử dụng.

7.2 Bảo trì


Sau khi triển khai hệ thống thì chúng tôi sẽ bảo trì khắc phục, bảo trì phòng ngừa, bảo trì hoàn thiện và
bảo trì thích ứng.

7.3 Bảo trì khắc phục


Bảo trì khắc phục được gọi là nhiệm vụ bảo trì được thực hiện để xác định, cô lập và khắc phục lỗi để thiết
bị, máy móc hoặc tài sản có thể được khôi phục về tình trạng hoạt động trong phạm vi dung sai hoặc giới hạn
được thiết lập cho các hoạt động tại chỗ. Thông thường, bảo trì khắc phục là bảo trì được thực hiện sau khi hệ
thống giám sát thời gian và quãng đường phát hiện lỗi và nhằm khôi phục dữ liệu về tình trạng mà nó có thể
thực hiện chức năng dự kiến.

7.4 Bảo trì phòng ngừa


Bảo trì phòng ngừa được thực hiện trong khi hệ thống giám sát thời gian và quãng đường vẫn đang hoạt
động, để nó không bị hỏng đột xuất. Giữ cho hệ thống giám sát thời gian và quãng đường có thể hoạt động
trơn tru khi hệ thống đang hoạt động. Bảo trì phòng ngừa thành công có thể làm giảm hệ thống không phản
hồi

7.5 Bảo trì hoàn thiện


Bảo trì hoàn thiện để cải thiện hiệu suất của tài sản bằng cách tăng thời gian hoạt động trong hệ thống
giám sát thời gian và quãng đường. Nếu vòng đời của tài sản giảm nhu cầu thay thế vốn, hãy thực hiện bảo trì
hoàn hảo để kéo dài vòng đời trong hệ thống.

7.6 Bảo trì thích ứng


Bảo trì thích ứng là sửa đổi hệ thống phần mềm sau khi phân bố để cải thiện khả năng bảo trì và hiệu suất
trong hệ thống quản lý phòng khám. Bảo trì thích ứng là một phần nhỏ của bảo trì trong hệ thống nhưng thay
đổi có thể khiến người dùng vận hành hệ thống thích ứng hơn.

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 29/30
Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học và Kỹ Thuật Máy Tính

Tài liệu
[1] Kendall, System analysis and design 8th

Bài tiểu luận của môn Phân tích và thiết kế hệ thống - Niên khóa 2021-2022 Trang 30/30

You might also like