ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

工业互联网云服务器的软件系统分析和设计

2020-12-29 21:01:06  阅读:164  来源: 互联网

标签:服务 软件系统 前端 视图 分解 互联网 软件架构 msg 服务器


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. 总结

通过分析对本次项目进行了分解,对真正的需求和注意点都更加了解。

标签:服务,软件系统,前端,视图,分解,互联网,软件架构,msg,服务器
来源: https://www.cnblogs.com/panrenhua/p/14208723.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有