Professional Documents
Culture Documents
Báo Cáo Oop
Báo Cáo Oop
Báo Cáo Oop
Nhóm 1
Đặng Quang Anh 20192678
Hoàng Văn Xuân 20193200
Nguyễn Thu Hiền 20192832
Nghiêm Tuấn Hùng 20192883
Nguyễn Chí Kiên 20192952
Hà Nội, 1/2024
MỤC LỤC
1
nhận là có cháy ? của cảm biến.
Nếu có cháy, hệ thống sẽ báo động thế
nào ?
Hệ thống có lưu lại lịch sử hoạt động
của cảm biến không ?
Hệ thống sẽ phát triển trên những nền
tảng nào ?
2
1.2 Phân tích các yêu cầu
Yêu cầu phần cứng
− Máy chủ được xây dựng đảm bảo tốc độ xử lý cao để đảm bảo phản hồi
kịp thông báo từ cảm biến và thông báo của người dân
− Các thiết bị cảm biến và phân hệ vô tuyến của máy chủ cần được xây
dựng tuân theo chuẩn 802.15.4
Yêu cầu phần mềm
− Hệ thống đảm bảo giám sát thường trực trạng thái các cảm biến, giao tiếp
đơn giản và tối ưu để đảm bảo xử lý tình huống nhanh nhất có thể
− Hệ thống có thể lưu trữ số lượng lớn các bản ghi về sự thay đổi trạng thái
cảm biến, cho phép người dùng từ cấp có thể quản lý tìm kiếm và truy
xuất thông tin, lấy danh sách theo ngày, theo tuần, theo tháng, theo năm
nếu cần thiết
− Hệ thống có thể lưu trữ lịch sử hoạt động của máy chủ và chỉ có thể truy
xuất bởi nhà phát triển khi cần
Yêu cầu về dữ liệu
Dựa vào những yêu cầu về dữ liệu sau khi sử dụng các kỹ thuật thu thập thông
tin, nhóm tổng hợp được bảng yêu cầu mà hệ thống cần đảm bảo về mặt dữ liệu
như sau:
Bảng 1-2 Bảng yêu cầu về dữ liệu
Tên dữ liệu Mô tả
ID cảm biến, tên cảm biến, vị trí lắp đặt, trạng thái hoạt động
Cảm biến
( bình thường, báo cháy, bị tắt thông báo, mất kết nối )
ID người dùng, Số căn hộ người dùng, tên chủ hộ, số điện
Người dùng nhân dân thoại chủ hộ, trạng thái hoạt động ( đăng ký, báo cháy, rời hệ
thống ),
ID quản lý, tên tài khoản quản lý, mật khẩu quản lý, tên quản
Người dùng quản lý
lý, số điện thoại quản lý
Lịch sử hoạt động cảm Ngày xảy ra hoạt động, ID cảm biến, vị trí lắp đặt, trạng thái
biến hoạt động
Lịch sử hoạt động Ngày xảy ra hoạt động, tên chủ hộ, trạng thái hoạt động, số
nhân dân căn hộ người dùng
Lịch sử hoạt động Ngày xảy ra hoạt động, tên quản lý, ID thông báo đến, hành
quản lý động (tắt thông báo, mở báo cháy), gọi cứu hộ
Yêu cầu về người dùng
− Hệ thống có thể phân cấp độ sử dụng của người dùng thành các cấp: cấp
cảm biến, cấp nhân dân, cấp quản lý và cấp nhà phát triển
− Hệ thống cho phép thiết bị người dùng cấp nhân dân tham gia đăng ký báo
cháy và thoát khỏi hệ thống báo cháy khi cần
− Hệ thống đảm bảo tính bảo mật thông tin của người dùng các cấp.
3
− Đối với cấp cảm biến, tập cảm biến đi kèm với một máy chủ là xác định,
chỉ làm việc duy nhất với máy chủ tương ứng, không tương tác với một
máy chú khác
− Ngược lại, máy chủ sẽ chỉ làm việc các thiết bị đã được đăng ký, bao gồm
thiết bị người dùng cấp nhân dân và bộ cảm biến đi kèm. Các kết nối bên
ngoài danh sách đăng ký không được chấp nhận
Yêu cầu phi chức năng
− Giao diện trực quan, dễ sử dụng cho cả thiết bị nhân dân và máy chủ giao
tiếp giữa hệ thống và người quản lý
− Không chiếm dụng bộ nhớ và tài nguyên máy nhân dân
4
CHƯƠNG 2. KẾT QUẢ MÔ PHỎNG
5
Biểu đồ ca sử dụng phân rã
2.1.2.1. Ca sử dụng chức năng quản lý người dùng
a) Sơ đồ Ca sử dụng
6
b) Đặc tả Ca sử dụng
Bảng 2-1 Đặc tả Ca sử dụng đăng nhập
7
Bảng 2-3 Đặc tả ca sử dụng xóa người dùng
Bảng 2-4 Đặc tả ca sử dụng cập nhật thông tin người dùng
8
Bảng 2-5 Đặc tả Ca sử dụng xem chi tiết người dùng
9
Bảng 2-7 Đặc tả Ca sử dụng tìm kiếm người dùng
10
b. Đặc tả
Điều kiện tiên quyết Đăng nhập hệ thống, xem danh sách thiết bị
Admin nhận được thông báo thêm mới thiết bị thành
Điều kiện kết thúc
công
Luồng sự kiện thay Nếu dữ liệu không hợp lệ, admin cần nhập lại thông tin.
thế
11
Bảng 2-10 Đặc tả ca sử dụng xem danh sách thiết bị
12
Người dùng xem được trạng thái các thiết bị trong hệ
Điều kiện kết thúc
thống.
Luồng sự kiện thay
thế
13
Bảng 2-15 Đặc tả ca sử dụng bật/ tắt thiết bị
14
b. Đặc tả
15
Điều kiện kết thúc Người dùng bật/tắt được báo động cháy
Luồng sự kiện thay
thế
b. Đặc tả
Bảng 2-19 Đặc tả lịch sử báo cháy
16
Bảng 2-20 Đặc tả lịch sử hoạt động thiết bị
17
2.2 Biểu đồ hoạt động
Chức năng lịch sử hoạt động
Hình 2.7 Biểu đồ hoạt động chức năng lịch sử hoạt động
18
Chức năng quản lí người dùng
Hình 2.8 Biểu đồ hoạt động chức năng quản lí người dùng
19
Chức năng quản lí thiết bị báo cháy
Hình 2.9 Biểu đồ hoạt động chức năng quản lí thiết bị báo cháy
20
Chức năng giám sát báo cháy
2.2.4.1. Giám sát thiết bị báo cháy
Hình 2.10 Biểu đồ hoạt động chức năng giám sát thiết bị
21
2.2.4.2. Phân biệt báo động thật giả
Hình 2.11 Biểu đồ hoạt động chức năng phân biệt báo động giả
22
2.2.4.3. Chức năng báo cháy
23
Hình 2.14 Biểu đồ tuần tự cập nhật người dùng
24
Hình 2.16 Biểu đồ tuần tự tìm kiếm người dùng
25
Biểu đồ tuần tự quản lí thiết bị báo cháy
26
Hình 2.20 Biểu đồ tuần tự tìm kiếm thiết bị báo cháy
27
Hình 2.22 Sơ đồ tuần tự bật tắt thiết bị
28
Biểu đồ tuần tự giám sát, báo cháy
29
Biểu đồ tuần tự lịch sử hoạt động
30
CHƯƠNG 3. THIẾT KẾ HỆ THỐNG
Hệ thống báo cháy bao gồm 4 phần chính là: thiết bị kết nối khách (client), server
dùng để lưu và xử lý dữ liệu, center để xử lý dữ liệu của sensor (node) và gửi lại
về server, khối cuối cùng là sensor (cảm biến phát hiện đám cháy).
Như hình trên, mô hình được sử dụng để giao tiếp giữa máy khách và server là
client-server. Mô hình Client – Server có hai đối tượng chính là máy chủ cung
cấp dịch vụ (Server) và máy khách (Client). Mỗi máy chủ có thể là các hệ thống
con cung cấp các dịch vụ nhỏ trong một hệ thống lớn vì vậy kiến trúc Client –
Server không bị giới hạn ở một máy chủ duy nhất. Một số hệ thống phổ biến sử
dụng kiến trúc Client – Server có thể kể đến như: Web Server, Mail Server, File
Server, … Việc thực hiện giao tiếp giữa Máy chủ - Máy khách được thực hiện
theo luồng như sau:
• Máy khách (Client) thực hiện gửi một yêu cầu (request) cho một dịch vụ
được cung cấp ở phía máy chủ thông qua một giao thức hoặc một cơ chế
thủ tục, ví dụ: HTTP, COBRA, Java RMI, …
• Máy chủ nhận tiếp nhận yêu cầu và thực hiện xử lý yêu cầu sau đó đóng
thực hiện hồi đáp máy khách (response).
• Luồng điều khiển và xử lý yêu cầu và hồi đáp ở hai phía Máy chủ - Máy
khách là hoàn toán độc lập ngoại trừ giao thức hoặc cơ chế thủ tục đồng
bộ cho việc gửi/nhận yêu cầu hoặc phản hồi.
Khối tiếp theo là liên kết giữa server và center, center ở đây sử dụng là
broker.emfx.io. Broker.emfx.io là một dịch vụ trung gian cho phép các ứng dụng
kết nối với các cơ sở dữ liệu SQL Server. Dịch vụ này cung cấp một API
RESTful đơn giản để truy vấn, thêm, cập nhật và xóa dữ liệu từ SQL Server. Sau
khi kết nối được tạo, ứng dụng có thể sử dụng API RESTful để gửi yêu cầu đến
SQL Server. Yêu cầu này phải được định dạng theo định dạng JSON. Giao thức
liên kết giữa broker.emfx.io và SQL Server là giao thức TCP/IP. Broker.emfx.io
cung cấp một API RESTful để kết nối với SQL Server. API này sử dụng giao
thức HTTP/HTTPS để truyền dữ liệu giữa broker và SQL Server.
31
Cuối cùng là khối liên kết giữa center và sensor node. Giao thức được lựa chọn ở
đây là MQTT. Giao thức MQTT là một giao thức truyền thông tin nhắn nhẹ và
hiệu quả được sử dụng rộng rãi trong các ứng dụng Internet of Things (IoT).
Giao thức này có một số ưu điểm nổi bật, bao gồm:
• Gọn nhẹ: MQTT là một giao thức gọn nhẹ, sử dụng ít tài nguyên mạng và
CPU. Điều này khiến nó trở nên lý tưởng cho các thiết bị IoT có nguồn tài
nguyên hạn chế.
• Tính hiệu quả: MQTT sử dụng mô hình truyền thông điệp theo mô hình
publish/subscribe, cho phép các thiết bị chỉ cần kết nối với broker để nhận
thông tin mà chúng quan tâm. Điều này giúp giảm đáng kể lượng dữ liệu
được truyền tải trên mạng.
• Tính tin cậy: MQTT hỗ trợ các mức độ chất lượng dịch vụ (QoS) khác
nhau, cho phép người dùng xác định mức độ tin cậy của các thông điệp
được gửi.
• Tính mở: MQTT là một giao thức mở, được phát triển bởi một nhóm các
nhà phát triển trên toàn thế giới. Điều này cho phép các nhà phát triển dễ
dàng triển khai và sử dụng giao thức này.
3.2 Mục tiêu thiết kế
Hệ thống báo cháy sử dụng sensor có mục tiêu chính là phát hiện và cảnh báo
sớm các đám cháy, nhằm giảm thiểu thiệt hại về người và tài sản. Hệ thống này
có thể được thiết kế với các mục tiêu cụ thể sau:
• Tính chính xác: Hệ thống phải có độ chính xác cao, tránh phát hiện sai báo
cháy.
• Tính tin cậy: Hệ thống phải hoạt động ổn định và đáng tin cậy, đảm bảo
phát hiện và cảnh báo cháy kịp thời.
• Tính linh hoạt: Hệ thống phải có thể mở rộng và dễ dàng tùy chỉnh để đáp
ứng các nhu cầu khác nhau.
• Tính tiết kiệm: Hệ thống phải có chi phí đầu tư và vận hành hợp lý.
Sensor là thiết bị cảm biến được lắp đặt tại các khu vực cần được bảo vệ.
Sensor sẽ phát hiện các dấu hiệu của cháy, chẳng hạn như nhiệt độ, khói, hoặc
khí độc.
Gateway là thiết bị trung gian, giúp kết nối giữa sensor và broker.
Broker là thiết bị trung tâm, chịu trách nhiệm thu thập dữ liệu từ các sensor
và chuyển tiếp dữ liệu đến server.
Server là thiết bị xử lý dữ liệu, có nhiệm vụ phân tích dữ liệu từ các sensor để
xác định xem có xảy ra cháy hay không.
Client là thiết bị nhận dữ liệu kết quả từ server, có thể là một ứng dụng di
động hoặc một hệ thống giám sát trung tâm.
32
• Gọn nhẹ: Giao thức MQTT sử dụng ít tài nguyên mạng và CPU, phù hợp
với các thiết bị sensor có nguồn tài nguyên hạn chế.
• Tính hiệu quả: Giao thức MQTT sử dụng mô hình truyền thông điệp theo
mô hình publish/subscribe, cho phép các thiết bị chỉ cần kết nối với broker
để nhận thông tin mà chúng quan tâm. Điều này giúp giảm đáng kể lượng
dữ liệu được truyền tải trên mạng.
• Tính tin cậy: Giao thức MQTT hỗ trợ các mức độ chất lượng dịch vụ
(QoS) khác nhau, cho phép người dùng xác định mức độ tin cậy của các
thông điệp được gửi.
Sử dụng giao thức HTTP/HTTP
Giao thức HTTP/HTTPS là các giao thức truyền tải dữ liệu phổ biến, được sử
dụng rộng rãi trên Internet. Giao thức này phù hợp với hệ thống báo cháy sử
dụng sensor vì những lý do sau:
• Tính mở: Giao thức HTTP/HTTPS là các giao thức mở, được phát triển
bởi một nhóm các nhà phát triển trên toàn thế giới. Điều này cho phép các
nhà phát triển dễ dàng triển khai và sử dụng giao thức này.
• Tính tương thích: Giao thức HTTP/HTTPS tương thích với nhiều nền tảng
và hệ điều hành khác nhau.
• Tính bảo mật: Giao thức HTTPS sử dụng mã hóa để bảo vệ dữ liệu truyền
tải.
3.3 Thiết kế lớp
33
Hình 3.3 Sơ đồ lớp quản lí người dùng
34
KẾT LUẬN
Qua bài tập lớn trên, nhóm đã nắm được phân tích và thiết kế một hệ thống
cụ thể ở đây là hệ thống báo cháy. Nhóm đã biết quy trình để phân tích các sơ đồ,
biểu đồ như ca sử dụng, chức năng, hoạt động, tuần tự, lớp,… Từ đó biết cách
triển khai một hệ thống bao gồm nhiều bước rất quan trọng. Hệ thống báo cháy là
một hệ thống quan trọng trong việc bảo vệ tính mạng và tài sản của con người.
Hệ thống này có chức năng phát hiện và cảnh báo sớm khi có đám cháy xảy ra,
giúp con người có thể thoát hiểm kịp thời. Với sự phát triển của công nghệ, hệ
thống báo cháy ngày càng được cải tiến về tính năng và hiệu quả. Các hệ thống
báo cháy hiện đại có thể sử dụng nhiều loại cảm biến khác nhau để phát hiện đám
cháy, đồng thời có khả năng kết nối với các hệ thống khác như hệ thống camera
giám sát, hệ thống báo động,... Điều này giúp nâng cao khả năng phát hiện và
cảnh báo cháy sớm, góp phần giảm thiểu thiệt hại do cháy nổ gây ra.
35