1. 程式人生 > 實用技巧 >工業網際網路雲端管理系統軟體系統分析和設計

工業網際網路雲端管理系統軟體系統分析和設計

1. 專案介紹

​ 本次專案目的在於以電信雲作為雲端伺服器,在服務端進行業務開發,實現接受工業物聯網裝置訊息並記錄分析,以及前端web介面的展示。功能主要包括雲端伺服器接受物聯網裝置資訊,狀態監測和下發控制指令。

2. 軟體結構

​ 在具體瞭解軟體架構的檢視之前,為了理解軟體架構中的關鍵要素所表現出來的特徵,我們先來看看軟體架構的風格和策略,然後在逐一分析軟體架構的檢視。本專案作為一個前後端分離的專案,後端使用成熟的spring boot框架,前端使用vue和Element UI ,整體專案使用B/S架構,在客戶-服務模式中,客戶是主動的,服務是被動的。客戶知道它向哪個服務發出請求,而服務卻不知道它正在為哪個客戶提供服務,甚至不知道正在為多少客戶提供服務。客戶-服務模式的架構風格具有典型的模組化特徵,降低了系統中客戶和服務構件之間耦合度,提高了服務構件的可重用性。

3. 系統介面和API

3.1 使用者登入

​ 採用POST請求進行使用者登入驗證

request:{
	"usrname":"",
	"usrpwd":""
}
response:{
    "msg":"",
    "data":""
}

3.2 管理使用者

管理使用者採用POST新增,DELETE刪除

request:{
	"usrname":"",
	"usrpwd":"",
	"authority":"",
    "area":""
}
response:{
    "msg":"",
    "data":""
}

3.3 管理裝置

管理裝置採用POST新增,DELETE刪除,PUT修改

request:{
	"devname":"",
    "area":"",
}
response:{
    "msg":"",
    "data":""
}

3.4 資訊檢視

檢視資訊使用GET方法,對於需要實時重新整理的資料採用WebSocket方式

request:{
	"devname":"",
	"devip":"",
    "devport":"",
	"protocol":"",
    "area":"",
}
response:{
    "msg":"",
    "data":{
        "source":"",
        "destination":"",
        "timestamp":"",
    }
}

4 . 檢視分析

4.1 分解檢視

​ 分解是構建軟體架構模型的關鍵步驟,分解檢視也是描述軟體架構模型的關鍵檢視,一般分解檢視呈現為較為明晰的分解結構(breakdown structure)特點。分解檢視用軟體模組勾劃出系統結構,往往會通過不同抽象層級的軟體模組形成層次化的結構。

4.2 依賴檢視

前端查詢展示通過http或者websocket向後端詢問,獲取資料或者輸入資料;service負責實現所有的服務,包括處理Netty網路伺服器的資料,對資料庫的管理,和前端contorller的處理。

4.3 執行檢視

4.4 部署檢視

後端基於springboot部署時可以製作成一個jar包,還可以進一步部署到docker倉庫中。前端基於element ui和vue,實現前後端分離。

4.5 資料庫設計

根據之前的用例建模和資料類圖的分析,下面建立資料模型。

User

Device

Channel

Message

5. 系統執行環境及技術選型

5.1 系統執行環境

基於初步考慮部署在docker上,執行環境為ubuntu。

5.2 相關技術選擇

基於spring boot作為後端框架,vue和element ui作為前端。資料庫採用mysql,主要開發工具為idea和vscode。

6. 核心工作機制

使用者先登陸系統,系統根據使用者的許可權等級展示相應的功能模組;

需要獲取資訊時,點選對應的裝置可以獲取實時執行狀態曲線;

需要新增刪除裝置時,通過新增刪除申請,來向系統提供對應裝置資訊;

7. 總結

通過分析對本次專案進行了分解,對真正的需求和注意點都更加了解。