Với ý nghĩa như vậy, thông qua bài chuyên đề này tôi muốn mang đến một cách giải quyết yêu cầu quản lý thông tin cho nhà máy điện của con người hiện naythông qua việc xây dựng website “Q
Trang 1BO GIAO DUC & DAO TAO
TRUONG DAI HOC KINH TE QUOC DAN
VIEN CONG NGHE THONG TIN VA KINH TE SO —
Chuyên ngành :Công nghệ thông tin
Hệ đào tạo :Chính quy
Giảng viên hướng dẫn :TS Đặng Minh Quân
——:——«>l»c—= Oe
Trang 2MỤC LỤC
LOT MO DAU © G G SG << << EESESES SE se EeSesevesesseesee 1
CHƯƠNG 1: MO TẢ BÀI TOÁN XÂY DỰNG WEBSITE
QUAN LÝ CẢM BIEN VA KET NÓI CAM BIEN NHÀ MAY
i0 7Š ‹::1 2
1 Giới thiệu bài COANE d- (<< 9 9 9.99 9.90 0.0 001009600408 2
2 Tại sao lại giải quyết bài toán: -s<css<sssvssesserseesserseerssrssersee 2
CHƯƠNG 2: SƠ LƯỢC VE CÁC CÔNG NGHỆ DUOC SU
DỤNG TRONG DE 'TÀ I << se se ©s< sesse=ssessessecssss 5
1.1 .NET Core là một platform (nền tang) để thực thi ứng dụng: 51.3 .NET Core cung cấp các thư ViỆN: -.s s s-ssese=secscssessesses 6
2 ASP.NET COFe€: o.5-G 5c 0005008000806 6
2.1 ASP.NET Core khái niệm chung - 25-55-55 ssessesesseesessese 6
2.2 Cấu trúc của ASP.NET COF€: e«-ces<ccecesseserkeseeorreseroree 8
2.3 Cách thức hoạt động của một ứng dụng ASP.NET Core 8
3 ASP.NET Core MVC và Web APÌ o o-s- se su vesesseseesese 10
6 MOTT và MQTTne€(: o 70G G5 5 565 99 59959995 9699056995.968556695566556695 15
CHƯƠNG 3: PHAN TÍCH VA THIET KE HE THÓNG 16
Trang 31 Pha phân tÍCHh: << 5 9 9.9 9 9.999 9.9009.090 8096968000996 16
1.1 Biểu đồ UseCase: s«-ssscssereservserrserrserrserrsesrssersssrke 16 1.2 Biểu đồ lớp: o°œ©c< se ©ssssExsEEseEseEserseEsersersetseessessersere 241.3 Biểu đồ trạng thái: s-s-scscsecsecsscssrssesserseessrsssssers 261.4 Biểu đồ tuần tự: <-s©cs©csccsecserserserserserserssrssessersessere 371.5 Biểu đồ giao tiẾp: -c-< << se ssEcsexsersersersersersersersesssessessere 61
© - Giao đIỆN: d sọ eee 93
5 Trang Quản lý chỉ số kỹ thuật: . -s- s5 se sessssessessessessessesse 96
Trang 4PHAN: KET NÓI CẢM BIEN «-ccsseeceseeees.e 110
2 Giao diện cập nhật dữ liệu cảm biến: -s-s-s<ssssessessessesse 110
TÀI LIEU THAM KHAO -s°-scssecssesecse.s LLL
KET LUẬN 5 55ccsecsssesesseseesesssssesssssssesessessesseses Í 2
Trang 5LỜI MỞ ĐẦU
Trong cuộc sống hiện nay, nhu cầu của con người thay đồi theo từng ngày, từng giờ.Nếu như trước kia con người chỉ mong muốn cuộc sống có cơm ăn đầy đủ, quần áomặc ấm Thì ngày nay nhu cầu đó đã được thay thế băng cơm ngon quần áo đẹp
Cuộc sống chính là như vậy, là sự biến đổi không ngừng, là luôn tiến đến những giớihạn mới phục vụ cho những nhu cầu mới của con người Và trong cuộc sống hiện
đại ngày nay, khi khoa học công nghệ thay đồi theo từng giờ nhu cầu của con ngườicũng biến đồi theo Không chỉ dừng lại ở nhu cầu muốn tiếp cận với công nghệ mới
mà ngày nay con người còn có nhu cầu làm chủ các công nghệ này Làm chủ ở đâykhông giới hạn trong đối tượng là những kỹ sư, những nhà phát triển phần mềm màbao trùm lên tất cả mọi người Làm chủ ở đây không dừng lại ở mức nắm rõ, sử
dụng tốt các công nghệ mà còn mở rộng tới phạm vi sáng tạo ra các công nghệ mới, các sản phẩm công nghệ Việc sáng tạo này có thé rất vĩ mô như tạo ra robot phục
vụ con người nhưng cũng rất đơn giản như việc tạo ra một trang web Trang web
ngày nay muôn hình muôn dạng nhưng cùng có một điểm chung là thỏa mãn một
yêu cầu nào đó của con người Đó có thê là trong quản lý nhân sự, trong quản lý tàichính Với ý nghĩa như vậy, thông qua bài chuyên đề này tôi muốn mang đến một
cách giải quyết yêu cầu quản lý thông tin cho nhà máy điện của con người hiện naythông qua việc xây dựng website “Quản lý cảm biến và kết nối cảm biến nhà máy
điện”
Trang 6CHUONG 1: MÔ TẢ BÀI TOÁN XÂY DỰNG _
WEBSITE QUAN LÝ CAM BIEN VÀ KET NÓI CAM
BIEN NHA MAY DIEN
1 Giới thiệu bài toán:
Trong thời đại công nghệ phát triển như hiện nay, việc một doanhnghiệp (công ty) có một website dé quản lý thông tin đã không còn làđiều gì quá xa lạ Thông tin được quan lý cũng vô cùng đa dạng từ
những thông tin cơ bản như thông báo của công ty tới những thông tin
có giá trị như thông tin về nhân sự Và đã bao giờ bạn tự hỏi với mộtnhà máy điện bao gồm hàng nghìn thiết bị, họ quán lý những gi qua 1website? và họ quản lý chúng như thế nào?.Trong bài chuyên đề thựctập lần này tôi và các bạn sẽ cùng đi tìm câu trả lời cho những câu hỏitrên thông qua việc giải quyết bài toán cụ thể xây dựng website “Quản
lý cảm biến và kết nối cảm biến nhà máy điện” Vậy nên bài toán cuốicùng mà tôi muốn mang đến và giải quyết trong chuyên đề này là xâydượng website “Quan lý cảm biến và kết nối cảm biến nhà máy điện”
2 Tại sao lại giải quyết bài toán:
2.1 Nói chung
Theo thống kê không chính thức đến từ VNetWork hiện nay số
người dùng tại Internet hiện nay 68 triệu/người Nếu so sánh với
dân số Việt Nam (ngày 27/06/2021 theo số liệu mới nhất từ LiênHợp Quéc) là 98 triệu người thì số người dùng Internet tại Việt
Nam chiếm tỷ lệ khoảng 70% so với dân số Đây là một con số vô
cùng lớn, với lượng người truy cập Internet nhiều như vậy sẽ tạo ramột lượng nhu cầu sử dụng vô cùng lớn cùng với một thị trường
tiềm năng cho các nhà phát triển web Điều này cũng đồng nghĩaviệc bạn có một trang web cho riêng mình là rất dễ dàng nhưng giá
cả thì lại không phải là rẻ Nên tôi muốn thông qua bài toán điềudai tiên tôi muốn cung cấp cho mọi người sự đánh giá tổng quan về
việc xây dựng một trang web?.
Chúng ta thường rất quen thuộc với các trang web quản lý nhân sự,quản lý bán hàng nhưng liệu đã ai đặt ra câu hỏi vậy nếu nhà máy
Trang 7điện cũng tạo một website thì họ sẽ quản lý gì? Giải quyết câu hỏitrên cũng là một mục đích của chuyên đề hướng đến.
Như chúng ta có thê thấy hiện nay công nghệ thông tin vô cùng
phát trién Từ những thứ trước kia được cho là thiếu thực tế có vẻ
xa vời thì nay lại trở nên gần gũi và có thé sử dụng như trong lĩnhvực trí tuệ nhân tạo với sự xuất hiện của các trợ lý nhân tạo như trợ
lý Google, Amzon Alexa, Siri, Hay những thứ đã phát triển sẵn
từ trước nhưng thiếu phổ biến nay cũng đã được áp dung vào cuộcsống hàng ngày như thanh toán điện tử cụ thé thông qua ví điện tử
như paypal, airpay, hay thông qua thẻ hoặc trong lĩnh vực
thương mại điện tử với sự xuất hiện của nhiều sàn giao dịch thươngmại điện tử nồi tiếng hiện nay như: Shopee,Lazada, Với một
cuộc sống đang từng ngày thay đổi như vậy việc mọi người biết vềcông nghệ thông tin không chỉ là cần thiết mà là vô cùng quan
trọng Vậy nên thông qua giải quyết bài toán này tôi cũng muốn
cung cấp một ít kiến thức của mình về công nghệ thông tin cụ thé
trong lĩnh vực lập trình web tới mọi người CGIúp mọi người có cái
nhìn tổng quan về những thứ đăng sau website
2.2 Nói riêng:
Vào những thế kỷ trước khi khoa học công nghệ không phát triển
như ngày nay thì cách thức con người sử dụng dé quan lý thông tinthường là chép tay các tài liệu , rồi lưu trữ vào một vị trí xác định.Khi các thông tin mới người ta sẽ lấy các tài liệu và bổ sung váo nóbằng hình thức viết tay Có thé nói với cách thức lưu trữ như vậy
vô cùng tốn công và thời gian Đó là trong quá khứ vậy các bạn có
từng đặt câu hỏi vậy ngày nay con người đã và đang sử dụng
những hình thức, công cụ, giải pháp gì để quản lý thông tin
Ngày nay với sự phát triển công nghệ các doanh nghiệp có hàng
ngàn các lựa chon cho việc lưu trữ và quản lý thông tin thông tin
của mình Họ có thê lựa chọn tự phát triển hoặc thuê ngoài như
thiết kế mới hoàn toàn hoặc sử dụng các phần mềm có sẵn như:
phần mềm quan lý nhân sự BambooHR,SmartRecruiters, Nói
như vậy đề thấy hiện nay hầu như toàn bộ các doanh nghiệp, công
Trang 8ty đều lựa chọn sử dụng công nghệ liên quan đến máy tính, Internet
dé ứng dụng vào công việc quản lý và lưu trữ thông tin
Giải quyết 2 luận điểm trên chính là một mục dich mà bai toán tôimuốn hướng đến Thông qua bài tiêu luận này tôi muốn cung cấpcho các bạn, doanh nghiệp một giải pháp dé giúp quan lý thông tin.Tuy rằng nó chỉ một website chưa phải một phần mềm nhưng nó
có đủ sự tiện lợi, dé sử dụng, dé quản lý,
3 Ý nghĩa thực tế:
Bài toán trên không phải theo dạng như những bài toán giải hệ phương trình, giải phương trình bạn đã học Nó không chỉ dừng lại ở việc chỉ
cô gang tìm cách giải và đưa ra đáp án Mà bài toán ở đây còn hướng
đến những giá tri thực tế Giá trị thực tế của bài toán được thể hiện qua
các khía cạnh như trong giải bài toán và sau khi giải xong bài toán.
3.1 Trong khi giải bài toán:
Các công cụ được sử dụng dé giải bài toán luôn là các công nghệmới, được phần lớn mọi người sử dụng thông qua đó cung cấp
thông tin cơ bản về các công nghệ sử dụng trong lập trình web
Đồng thời quy trình áp dụng dé giải bài toán cũng được cấu trúctheo các quy trình thực tế qua đó mang đến các cách tiếp cận cho
mọi người khi giải một bài toán như vậy.
3.2 Sau khi giải bài toán:
Thứ chúng ta có thể đạt được thông quan giải bài toán này khôngchỉ một trang web quản lý thông tin và kết nối cho nhà máy điện
mà là một quy trình để xây dựng trang web, là một giải pháp trong
quản lý thông tin.
Trang 9CHƯƠNG 2: SƠ LƯỢC VE CÁC CÔNG NGHỆ DUOC
SỬ DỤNG TRONG DE TÀI
1 .NET Core:
.NET Core là một nền tang (Platform), bao gồm các framework cùngcác hệ thống thư viện (library) được Microsoft đưa ra phiên ban đầu
tiên là vào ngày 27/06/2016.
.NET Core va NET Framework là côn nghệ hoàn toàn độc lập với nhau.
1.1 .NET Core là một platform (nền tảng) dé thực thi
ứng dụng:
e Bat kỳ dang chương trình nao từ dll hoặc tự thực thi
EXE chỉ cần viết băng ngôn ngữ lập trình NET đều
được dịch sang mã trung gian IL (hay còn gọi là
Intermediate Language)
e Môi trường thực thi của NET Core được gọi là
CoreCLR và có thể chạy trên nhiều hệ điều hành như
Windows, Linux, và sử dụng trình biên dịch trung
gian JIT (Just-in-Time) complier.
e Compiler có nhiệm vụ dich mã IL thành một dang
mã máy (machine instruction) khi chạy chương trình
và có thé dich sang mã máy của 3 nền tảng nó hỗ trợ
e Dưới đây là ToolChain của NET Core (“Toolchain
là tập hợp của các tool dùng để biên dịch sourcecode thành các file executable có thể chạy được trêntarget device” (Pham Minh Tuấn (Shun), 2020))
Trang 10CH, WB MET code Fa code
1.2 .NET Core cung cấp framework:
e NET Core cung cấp các freamwork trong các lĩnh
vực phát triển web (ASP.NET Core), phát triển ứng
dung desktop trên windows (Windows Forms và WPF) (Trong Đức,2019)
1.3 .NET Core cung cấp các thư viện:
e NET Core có các hệ thống thư viện (library) bao
gồm các class dùng trong các ngôn ngữ được nó hỗ
trợ hiện nay (C#, VB.NET và F#)
e Trong thư viện bao gồm các thư viên cơ bản của
.NET Frameworrk và thư viện class riêng của NET Core.
2 ASP.NET Core:
ASP.NET Core là một framework dùng dé phát triển các ứng dung
web, được Microsoft giới thiệu phiên bản đầu tiên vào tháng 6 năm
2016.
2.1 ASP.NET Core khái niệm chung
e ASP.NET Core và ASP.NET là 2 framework độc lập,
riêng rẽ ASP.NET Core là một framework mã nguồn
mở, được xây mới hoàn toàn nhưng vân có trong
Trang 11mình những đặc điểm nỗi trội của ASP.NET, giúp
xây dựng các ứng dụng web chạy đa nền tảng
ASP.NET Core thống nhất tất cả các mô hình lập
trình đã xuất hiện trong ASP.NET như MVC, Web
API và xây mới như Razor Pages thành một mô hình
chung, dùng chung thư viện Người dùng sẽ được lựa
chọn mô hình lập trình mà mình muốn làm
Những ứng dụng web được viết từ ASP.NET Core
rất đan dạng từ ứng dụng web HTML truyền thống,
ứng dung web đơn trang(Single Page Application,
SPA) dén dich vu gọi ham từ xa (Remote Procedure
Call, RPC).
ASP.NET Core có thé chạy trên NET Framework
(Mai Chi, 2019).
Dé giải thích điều này cần biết một điều: quá trình
runtime các ứng dung là quá trinh chương trình may
ảo sẽ nạp ứng dụng vào dé thực thi (Mai
Chi,2019).Lúc này ứng dụng phải nằm ở dang mã
trung gian IL.
Mà các ứng dụng xây dựng trên framework
ASP.NET Core sẽ sử dụng một hệ thống API mà ở
đó chứa các API cơ bản của NET Core Đồng thời
các API cơ bản này cũng trùng với các API cơ bản
của NET Framework.
Vậy nên có thể đưa ra kết luận như trên
ASP.NET Core có thé coi là một tầng bổ sung xây
dựng bên trên ứng dụng console với mục đích chuyểnđổi thành ứng dụng web
Với cách nhìn nhận trên giúp các ứng dụng xây dựng
từ ASP.NET Core có thé chạy trên nhiều hệ điều
hành, chạy như một web server độc lập hoặc kết hợp
với các server khác (IIS).
Trang 12hd Middleware URL Routing Dependency Configuration
Server Injection & Logging
Model
h
(Mai Chi, 2021)
2.2 Cấu trúc của ASP.NET Core:
ASP.NET Core gồm 3 phan như hình trên bao gồm:
e Application Frameworks: chứa framework gitip xây
dựng các loại ứng dụng web bao gồm: MVC
framework, Razor Pages,
e Utility Frameworks: chứa framework liên quan tới
bao mật và cơ sở dit liệu bao gồm: Indentity va
Entity Framework.
e Platform: chứa những thành phầm tạo nên nền tảng
chung cho toàn bộ ứng dụng web.
2.3 Cách thức hoạt động của một ứng dụng ASP.NET
Core
2.3.1 Khái niệm chung:
Trong một ứng dụng sử dung ASP.NET Core framework
bạn sẽ có 2 chương trình web server bao gồm: reverse proxy
(IS,Apache, ), built-in-server Kestrel Trong đó Kestrel là
web server riêng của ASP.NET Core, được xây dựng độc
lập và có thé chạy trên nhiều nền tảng (Windows, )
Reverse proxy không phải thành phan bắt buộc, bạn có thé
lựa chon ứng dụng chạy có nó hoặc không.
e Nếu có tương đương reverse proxy sẽ là server dam
nhận quá trình giao tiếp với client, server sẽ nhận cácyêu cầu từ client dưới dạng HTTP nhưng nó không
xử lý mà chuyên tiếp yêu cầu này cho Kestrel
Trang 13Kestrel sẽ có nghĩa vụ xử lý yêu cầu và gửi lại kết
qua cho reverse proxy.
e Nếu không ứng dụng lúc này trở thành ứng dụng
console độc lập chạy với web server Kestrel.
Middleware là các thư viện/thành phần phần làm nhiệm vụ
xử lý các truy vấn HTTP và trả lại kết quả Các middleware
có thê ghép lại với nhau thành các chuỗi (pipeline) tùy theo
mục đích sử dụng, với nhiệm vụ cụ thê.
2.3.2 Cách thức hoạt động:
Trình duyệt web (Browser) gửi yêu cầu ngườidùng dưới dạng các yêu cầu HTTP tới server.Sau đó các yêu cầu sẽ được sẽ được nhận bởi
reverse proxy (IIS hoặc Apache, ) Reverse
proxy sẽ chuyên yêu cầu tới Kestrel
(ASP.NET Core web server) Kestrel nhận các
yêu cầu HTTP tiếp tục chuyền nó tới cácmiddleware Middleware sẽ xử lý các yêu cầunày và chuyên kết quả tới MVC middleware
Tại day MVC middleware sẽ sinh ra HTML
phản hồi chuyền nó tới Middleware,rồi lạichuyền tới Kestrel Kestrel sẽ gửi kết quả tớireverse proxy Reverse proxy chuyền kết quảlại cho trình duyệt Trình duyệt hiển thị kết
quả này cho người dùng.
Dưới đây là mô hình cơ bản chi quá trình trên:
Trang 14made to the server to 7 The HTML response the homepage is sent to browser.
rsh
_ | em 1H
L Request is forwarded by a
IS/NGINX/Apache to your
ASPNET Core app.
3 The ASPNET Core web server : (
receives the HTTP request and : passes it to middleware ‘
1 The middleware processes ‘ ;
che request and passes iton = | 4 ‘Response pes rên
:0 the MYC middleware ‘ | web server.
ASP.NET Core MVC la mot framework trong ASP.NET
Core thực thi mô hình hién trúc MVC (Trọng Đức,2020)
Từ framework này ta có thé xây dựng được các ứng dụng
nhưng ứng dụng web truyền thống, web API
3.1.1 MVC:
MVC là mẫu thiết kế được sử dụng trong phát
trién phan mềm Được sử dụng trong phát
triển web, ứng dụng desktop, mobile nhưng
phô biến hơn cả là trong phát triển web
Thành phần MVC chia làm 3 phan:
e M(Model) là thành phần lưu trữ dữ
liệu và trạng thái của ứng dụng Model
có thê là cơ sở dữ liệu nhưng cũng cóthể là file XML bình thường
e V(View) là thành phần dùng đề hiển
thị đữ liệu, hiển thị giao diện ngườidùng View được cấu tạo từ các thànhphần HTML,CSS, View cung cấp
10
Trang 15giao diện người dùng giúp người dùng
và hệ thống có thé giao tiếp thông qua
các thao tác có sẵn trên view View chỉ
làm nhiệm vụ hiển thị dữ liệu, chuyểngiao yêu cầu người dùng nhưng không
có tự yêu cau dữ liệu
e C(Controller) là thành phan dùng dé
xử lý các yêu cầu người dùng đồng
nghĩa có thê thay đổi model và cung
câp view tương ứng.
(Monamedia-Công ty thiết kế website cao cap,n.d)
Controller nhận yêu cau va xử ly yêu cầu
người dùng Trong quá trình này controller
có thê kết nối tới thành phần Model đề lấy
dữ liệu Sau đó lựa chọn view dé hiển thịkết quả
11
Trang 163.1.2 MVC trong ASP.NET Core:
Xét mơ hình hoạt động:
The MVC Request Life Cycle
4> ÌMatch URL to a route, HttpHandler builds the
Which has an associated right controller based on Acton (hi and
HttpHandler the route data Method thhợgm nh
LSC appropriate format
Generates the
Non HTML Response
Action Result «
If the format is HTML, Writes the data to the
parse and render the view tesponse stream in the
Trang 17Việc xử lý trên có thé dẫn tới sự kết nối model(CSDL) và cũng có thé thay đổi dữ liệu trongmodel Đề hoàn tất quá trình xử lý cần bước cuốicùng là lựa chọn view dé hiển thị ra cho người
Web API là một cách gọi chung cho các chương trình chạy
trên server trả về kết quả không phải dưới dạng HTML mà
là dữ liệu ở các dạng JSON hoặc XML.
Web API trong ASP.NET Core có thé được xây dung thôngqua framework ASP.NET Core MVC với một số thay đổi
nhỏ trong kỹ thuật.
Trong Web API thành phan việc xuất giao diện không nằmtrong phạm vi xử lý của server, server chỉ đảm nhận xuất dữliệu Quá trình xử lý dữ liệu và hiển thị sẽ do một một thànhphần khác đảm nhận cụ thể phần giao diện người dùng
nhưng là một ứng dụng độc lập chạy trên một thiết bị khác.Như vậy trong một ứng dụng sử dụng Web API ta có thể
chia làm 2 phần một phần: phần giao diện là một ứng dụngchạy trên một thiết bị khác và một chương trình chạy trên
server.
Phan giao diện có thé là các ứng dung don trang, các ứng
dụng mobile hoặc ứng dụng desktop.
Phần server là Web API
4 SQL Server:
4.1 Khai niệm:
SQL Server là một hệ quan trị cơ sở dit liệu quan hệ
(Relational Database Management System (RDBMS)) đồng
13
Trang 18thời cũng là một hệ quả trị cơ sở dữ liệu đối tượng
(Oject-Relational Database Management System (ORDBMS))
(Vũ An,n.d).Được sinh ra với mục đích dé chứa dit liệu vàtruy xuất theo yêu cầu Hỗ trợ ngôn ngữ SQL với mục đích
để “giao tiếp” giữa máy Client và hệ quản trị cơ sở dữ liệu.SQL Server có thé chạy trên đa nên tảng cụ thể (Windows,Linux) bắt đầu từ phiên bản SQL Server 2017
Đề thực hiện công việc với SQL Server ta cần một thànhphần là workstation Nên có hiểu mô hình hoạt động củaSQL Server bao gồm 2 thành phan là workstation và server
e Workstation là các phần mềm được dùng dé tương
tác với Server được cải đặt ở mọi thiết bị ví dụ như
SSMS, SQLEM
e Server là các dịch vụ được cai đặt trên máy chủ tập
trung như: SQL Server, SISS,
Trên một máy có thé có nhiều bản cài đặt của SQL Server
gọi là các instance Có 2 loại bản cài là Default (Mặc định)
và Named (Đặt tên mới).
¢ Loại default chỉ cho phép một bản cài duy nhất
e Loại Named cho phép có nhiều bản cài
5 ABP Freamwork:
ABP Frreamwork là một một ma nguồn mo, một freamwork được
dùng để xây dựng các ứng dụng web, tuân theo các phương pháp pháttriển phần mềm và công nghệ mới nhất
ABP Framework được tích hợp với nhiều hệ quản trị cơ sở dữ liệu
khác nhau như: SQL Server, MongoDB.
ABP Framework thiết kế ứng dụng dựa trên nguyên tác Domain
Driven Design và một số pattern khác với mục đích phân tách ứng
dụng thách các mô-đun nhỏ.
ABP Framework cũng được dùng để thiết kế loại ứng dụng SaaS
application.
14
Trang 196 MQTT và MQTTnet:
“MQTT (Message Queuing Telemetry Transport) là một giao thức
truyền thông điệp (message) theo mô hình publish/subscribe (xuất ban
— theo dõi), sử dung băng thông thấp, độ tin cậy cao và có khả năng
hoạt động trong điều kiện đường truyền không ổn định.” (Smart
Industry VN,2021)
MQtTTnet là một thư viện Net cho phép xây dựng các MQTT client
and a MQTT server (broker) và các các tính năng như của mô hình
MQTT mong đợi
15
Trang 20CHUONG 3: PHAN TÍCH VA THIẾT KE HE THONG
PHAN: QUAN LY CAM BIEN
1 Pha phan tich:
1.1 Biểu đồ UseCase:
1.1.1 Xác định Actor:
e Admin: Người quản lý hệ thống Người này tôn tại ở
cả hai loại phiên bản: Tenant và Không Tenant.
e TenantUser: Là các thành viên thuộc từng tenant cụ
thể
1.1.2 Xác định các chức năng của Actor:
Chức năng chung cho tat cả:
Quản lý đăng nhập
Quên mật khâuThay đổi Pasword
TenantUser:
Quản lý cảm biếnQuản lý thiết bị
Quản lý chỉ số kỹ thuậtQuản lý thông số cài đặtQuản lý lịch sử thiết bị
Admm:
e Với Admin của Teanat:
Quan ly cam biénQuan ly thiét bi
Trang 21Quản lý thiết bị
Quản lý người dùng
Quản lý quyền người dùng
Quản lý TenantQuản lý chỉ số kỹ thuật
Quản lý thông số cài đặtQuản lý lịch sử thiết bị
1.1.3 Xác định các UserCase:
Quản lý chung:
Đăng nhập
Quên mật khẩuThêm mật khâu
Quản lý cảm biên:
Thêm các cảm biên Sửa cảm biên
Xóa cảm biên Tìm kiêm cảm biên
Quản lý thiết bị:
Thêm thiết bịSửa thiết bị
Xóa thiết bịTìm kiếm thiết bịLọc thiết bị
Quản lý người dùng:
Thêm người dùng
Xóa người dùng
Sửa thông tin người dùng
Sửa quyền (Permission)
Tim kiêm người dùng
Quản lý quyền người dùng:
Thêm quyền người dùng
Xóa quyền người dùng
17
Trang 22Sửa quyền người dùngTìm kiếm quyền người dùng.
Quản lý Tenant:
Thêm người thué(Tenant) Xóa người thuê(Tenant) Sửa người thuê(Tenant)
Tìm kiếm người thuêQuản lý chỉ số kỹ thuật:
Thêm chỉ số kỹ thuật
Xóa chỉ số kỹ thuậtSửa chỉ số kỹ thuật
Tìm kiếm chỉ số kỹ thuậtQuản lý thông số cài đặt:
Thêm thông số cài đặtXóa thông số cài đặtSửa thông số cài đặtTìm kiếm thông số cài đặtQuản lý lịch sử thiết bị:
Lọc lịch sửa thiết bịTìm kiếm lịch sử thiết bị
Vẽ biểu đồ
18
Trang 24Sửa thông tin
Thêm thiết bị Xóa thiết bị
Admin
Admin
Trang 25<<include>> (Tìm kiém quyền
Sửa thông tin
quyền
' ' ' ' ' '
2.4 Quản lý quyền người dùng:
Hệ quản lý người dùng và theo dõi người dùng
Trang 261 1
<<Include>>
' '
'
'
' ' '
'
' ' '
‘6a chỉ số kỳ
thuật
Trang 272.7 Quan lý thông số cài đặt:
Hệ quản lý thông số cài đặt và theo dõi thông số cài đặt
Sửa thông tin
lông số cài đặi
Hệ quản lý thông số cài đặt và theo dõi thông số cài đặt
Trang 28Phan 1: Quản lý liên quan đến người dùng bao gồm
các chức năng: Quản lý người dùng, quản lý Tenant,
quản lý quyền (Role)Phần 2:Quản lý liên quan đến thiết bị bao gồm cácchức năng: Quản lý cảm biến, quản lý thiết bị, quản
lý thông số cài đặt, quản lý chỉ số kỹ thuật, quản lýlịch sử thiết bị
24
Trang 291.2.3 Biểu đồ lớp cho từng phần hệ thống:
e Phần 2 (Quản lý liên quan đến thiết bi):
Trang 30Chuyên tiếp
Sư kiên
1.3.2 Biéu đồ trạng thái:
1 Biểu đồ trạng thái cho UseCase: Quản lý chung:
e Biểu đồ trạng thái đăng nhập:
l Đăng nhập[thất bại]/Đăng nhập lại
Kiểm tra[that bại]/Nhập lại a nhậpƒ g áp
Trang 31e Biểu đồ trạng thái quên mật khẩu:
Hủy
Nhắn vào link quên mật khẩu trong form
Kiểm tra{that bại|'Nhập lại |
GÌithát bạiJNhập lạ Nhập thông tn vào rom
Kiểm tra[thát bai/Hiy
Gửi[ thành công và không Click vào link
trong gmailJHủy
6ùithát bại]Hủy
Gửi[thành công click vào link trong mail]/Click
Kiem tra [that bại]/Nhập lại Nhập thông tin
Luu(that bại|/Nhập lại Luufthanh công]
Kiểm tra[thát bại|JHủy
Luufthat bại]JHỦy
27
Trang 32e Biểu đồ trang thái quên mật khẩu:
Kiểm trallhát bạïJINhập lại Đăng nhập|lhát bại]/Đăng nhập lại
Trang 332 Biểu đồ trạng thái cho UseCase: Quản lý cảm biến
e Biểu đồ trạng thái thêm bản ghi mới:
Đ
Kiểm tra[thát baij/Nhap lại ng nhập[thát bại]/Đăng nhập lại
Kiểm tra[thất bại]/Hủy
Kiểm tra[thát bại]/Nhập lại
Lưu[thất bại]/Nhập lại
Kiểm tra[that bại]/Hủy Luuthát bại|/Hủy
Luu[thàni
Trang 34e_ Biểu đồ trạng thái sửa bản ghi:
Kiểm traithát
Hủy Đăng nhập thành công
Đăng nhập|thát bại|/Hủy
Kiểm tra[that bạiJ/Hủy
Nhắn vào Monitoring Panel và chọn Tag Manager
Nhắn vào button hình trang
giấy trong bản ghi được chọn
Kiểm tra [sail/Nhap lại Nhập thông tn
Trang 35e_ Biểu đồ trạng thái xóa bản ghi:
Kiem tra[thât bại]í Nhập lại Đăng nhập[Thát bạiJ'Đăng nhập lại
Kiểm tra|thát bạiJJHủy
Đăng nhập[thành công]
Đăng nhập|thát bại]Hủy
Hủy
Nhân vào Monitoring Panel và chọn Tag Manager
Nhân vào button hình thùng rác trong bản ghi
Xóa|Thát bại)/Xóa lại
Xóalthát bại]JHủy
Xóa[thành công]
Trang 36e Biểu đồ trạng thái tìm kiếm:
Kim ht bel NN Đăng nhdpthat bang nhập la
Đăng nhap|that bail/Hiy
- Kiểm tra{that bạiJJHủy
Đăng nhập[thành công]
Nhán vào Monitoring Panel chọn Tag Manager Ở
Tim kiếm|thất bail/Tim kiếm lai
Nhập thông tin vào 6 tìm kiếm
Hủy
Tim kiếm|thành công]
Tim kiếm|thát bạiJlHủy
Trang 373 Biểu đồ trạng thái cho UseCase Quản lý thiết bị:
Tương tự biếu đồ trạng thái cho UseCase Quan lýcảm biến:
4 Biéu đồ trạng thái cho UseCase Quản lý người dùng:
Các chức năng: thêm, sửa, xóa, tìm kiếm người dùngtương tự Quản lý cảm biến
e Biểu đồ trạng thái sửa quyền:
Kiểm tra[thát bại]/Nhập lại Đăng nhập[thát bại]/Đăng nhập lại
Đăng nhập[thất bại]/Hủy
Đăng nhập [thành công]
Kiểm tra[that bại]/Hủy Nhắn vào Admin Panel và chọn User Manager
Nhấn vào button action trong bản
ghi được chọn chọn Permission
Tích chọn Permission
Lưu[thất bại]/Hủy
Lưu[thành công]/Lưu và cập nhật
33
Trang 38Biểu đồ trạng thái cho UseCase Quản lý quyền người
dùng:
Tương tự biểu đồ trạng thái cho UseCase cho Quản
lý cảm biến
Biểu đồ trạng thái cho UseCase Quan lý Tenant:
Tương tự biểu đồ trạng thái cho UseCase cho Quản
Chức năng: Tìm kiếm lịch sử thiết bị tương tự biểu
đồ trạng thái tìm kiếm cảm biến của biểu đồ trạng
thái cho UseCase Quản lý cảm biến.
34
Trang 39e Biểu đồ trạng thái lọc lịch sửa thiết bị:
Kiém tralthát bail Nhap lại Đăng nhaptthat bail/Dang nhập lại
Đăng nhập {thanh công] Kiem tralthát bail Hy
Đăng nhapfthat
bail/Huy
Nhân vào Report Panel và chon History Trend And Value
Go thông tin về Parameter và chon Ngày tháng có thé cả 6 tim kiếm Tìm kinm|thát bạiJTìm kiếm lại
Tim liên|hátbại|Hùy
35
Trang 40Nhân vào Report Panel và chọn History Trend And Value
ani
Tim kiém(that bai Tim kiém lai
e Biêu đô trạng thái vẽ biêu đô:
Đăng nhập|thát bại]/Đăng nhập lai
6 thông tin về Parameter và chọn Ngày tháng có thé cả ô tim kiếm
36
Tìm kiém[that bai]
Hủy