本文档明确“智能巡检系统”的开发需求,详细阐述了本系统的外部接口需求、系统功能、性能需求、技术需求以及软件运行环境等。编写此需求规格说明书是为了使使用人员和开发人员对所开发的平台有一致的理解。通过阅读此文档开发人员可以了解当前业务的具体需求和要实现的主要功能,使用人员通过阅读此文档可以确认开发人员对其业务需求的认识是否正确并对系统要实现功能有初步的了解。
本软件产品,电脑PC端名称为“智能巡检系统”管理平台,手机端名称为“智能巡检”APP。
1) 硬件运行环境
PC服务器或云服务器,根据扩展需要,可部署在1至n台服务器上。
2) 操作环境
Windows 7/8/8.1/10以上操作系统(支持32位和64位),
浏览器(搜狗浏览器,FireFox,Chrome,IE 10以上版本)。
3) 软件环境
x64位的JDK 8或OpenJDK、Python 3.9、科学上网工具、服务器端操作系统可使用linux内核操作系统或Windows(建议使用CentOS 7以上版本)、客户端开发采用浏览器端技术进行开发。
4) 网络环境
局域网或广域网环境中。
5) 国际化
无国际化要求,软件界面及日志信息使用中文进行展示。
1) B/S:Browser/Server,浏览器/服务器模式
2) DBMS:DataBase Management System,数据库管理系统
3) IP:Internet Protocol,Internet协议
4) TCP:Transimission Control Protocol,传输控制协议
5) SSL:Secure Sockets Layer 安全套接字协议
6) LBS:Location Based Services 基于位置的服务
智能巡检系统,是一种高效的设备管理工具。它可以帮助企业和机构进行各种形式的巡检,并对设备的状态进行勘察,发现哪些设备需要维修或更换,从而减少不必要的停工时间和成本。其主要需求有一些几点:
1)巡检范围:确定系统需要巡检的设备、设施或区域范围,包括建筑物、设备设施、管道线路等。
2)巡检频率:确定巡检的时间间隔,根据设备的特性和使用情况确定巡检的频率,以保证设备的正常运行和安全。
3)巡检内容:确定巡检的具体内容,包括设备的外观、功能、性能等方面的检查,以及设备的维护保养、故障排除等工作。
4)巡检方式:确定巡检的方式,可以是人工巡检、自动巡检或者人工与自动相结合的方式,根据实际情况选择合适的巡检方式。
5)巡检报告:确定巡检结果的记录和报告方式,包括巡检的时间、地点、内容、结果等信息,以及巡检过程中发现的问题和处理情况。
本软件采用B/S架构,人机交互界面采用浏览器端技术和手机端APP开发,可以应用于各种设备线路的巡检,如电力设备、机械设备、交通设备等,帮助工作人员及时发现设备故障和隐患,提高设备的可靠性和安全性。在巡检范围上,可以设置需巡检路线;同时,在一条巡检路线上可以设定多个巡检点。在巡检频率上,管理员可以通过设置打卡频率,来实时检测巡检人员的位置,是否开始巡检工作;当巡检人员,在某处巡检点发现问题时,可在“智能巡检”APP上报问题。
智能巡检系统主要功能包括用户管理,角色管理,菜单管理,权限管理,班组管理,巡检路线管理,巡检点管理,巡检记录等功能。
经过仔细研判,结合当前的现状及未来的业务扩展逐步梳理出系统的以下几个核心点:
班组管理:设置班组,方便用户管理巡检人员。
巡检路线管理:根据实际业务需求,设置巡检路线的起止位置,以及选择班组负责巡检。
巡检点管理:根据实际业务需求,在巡检路线上添加巡检点,包括巡检点的类型、位置信息、打卡频次、打卡范围等。
巡检记录:方便用户查看巡检人员的巡检轨迹以及巡检上报问题。
1) 《可研分析》
目前,带有定位功能的程序,主要接入的地图SDK有以下几种:
高德地图SDK:高德地图是国内领先的地图服务提供商,其SDK提供了丰富的地图功能,包括定位、导航、路径规划等。
百度地图SDK:百度地图是国内另一家知名的地图服务提供商,其SDK提供了类似于高德地图的功能,包括定位、导航、路径规划等。
谷歌地图SDK:谷歌地图是国际上最知名的地图服务提供商,其SDK提供了全球范围的地图数据和功能,包括定位、导航、路径规划等。
腾讯地图SDK:腾讯地图是国内知名的地图服务提供商,其SDK提供了类似于高德地图和百度地图的功能,包括定位、导航、路径规划等。
Mapbox SDK:Mapbox是一家提供地图服务的公司,其SDK提供了全球范围的地图数据和功能,包括定位、导航、路径规划等。
这些定位地图SDK都提供了丰富的功能和接口,本项目中集成和使用了百度地图SDK。
智能巡检系统从总体功能划分主要包括用户管理,角色管理,菜单管理,权限管理,班组管理,巡检路线管理,巡检点管理,巡检记录等功能。
首先通过系统管理设置相关的组织机构,人员,角色分配对应的权限;其次设置巡检路线与巡检点信息,建立巡检班组;然后巡检人员开始巡检,进行打卡和上报;再然后就是查看、汇总巡检记录。业务流程图如下:
本系统采用B/S架构,服务器采用自有服务器或者其他云服务器,未来可根据具体需求动态扩展。使用者需要在有网络的情况下进行访问,如果自有服务器在局域网内,则需要用到地址映射相关技术。网络拓扑图如下:
系统页面由顶部logo及通知栏、左部菜单栏、中部内容区域栏等三部分组成。目前市面上的管理系统大体都是该页面布局方式,这种布局用户已经形成习惯,因此本系统页面布局还是采用该方式。下图为UI示意图:
智能巡检app导航页面,采用经典的标签式导航,是应用最广的一种导航样式。摆放的位置一般固定在底部,具有全局性,具有突出表现主要功能的作用。下面为UI示意图:
系统管理为本系统的基础功能模块,例如字典管理,字典分类管理,日志管理,菜单管理,角色管理,人员管理等等都属于系统管理模块下。
字典分类及字典管理是为了方便系统日后的扩展以及系统的相关统计功能,理论上所有需枚举的数据都应当放入到此模块中进行管理。
日志管理按照类别分又可分为登录日志、操作日志及错误日志,日志的追踪是运维系统的核心手段之一,需要对日志进行分类分级。
菜单管理也是系统管理的常规功能之一,随着时间的推移及业务的演进,未来将会纳入各种功能点到系统当中,因此功能菜单应该是灵活可配的。菜单管理的目的就是方便日后功能的扩展,菜单管理应该采用树型结构方式,基本属性字段应该有菜单名称,url,是否可用,描述,顺序,编号等等字段。
系统实际运行中,会存在各类人员使用本系统,随着系统的不断升级,角色可能会进行调整,因此需要对角色进行管理。角色和人员应该是多对多的关系。角色的属性字段包括角色名称,顺序,描述。另外角色管理功能下应该有人员绑定功能。
使用本系统的人员的管理,属性字段应该有姓名,性别,工号,账号,密码,手机号,email,状态,身份信息等等。
为满足不同的人员或角色使用不同的功能点,因此需要对系统的菜单进行权限分配。权限分为数据级权限和菜单级权限。菜单级权限相对比较好实现,数据级权限要看做到什么粒度,本系统暂时不考虑数据级的权限实现。
菜单级权限:简单讲就是是否能使用该功能菜单。
数据级权限:此权限管理比较复杂,例如张三能看见武汉的数据但不能看见北京的数据。
操作级权限:例如有些人员只能看相关数据而不能修改相关数据。
此处管理的日志是用户使用系统时所产生的操作型日志,该功能点主要是方便相关人员查询使用本系统的操作记录,不建议提供删除的功能。如果日志量非常大,需要考虑日志的存储,备份,检索问题。
此功能点是用来管理巡检班组人员,可以添加班组的名称、编号、描述等基本信息,选择班组成员;同时指定班组的类型。
本项目的核心功能,可以设置路线的名称、起止位置、状态、描述等基本信息,同时指定该路线的巡检班组,后期考虑增加巡检路线的类型,比如物业、管道、消防、交通、能源等。
本项目的核心功能,可以设置巡检点的编号、名称、位置、类型、状态等基本信息,同时指定所属巡检路线和打卡的范围和频率。后期考虑增加设备管理,即一个巡检点可对应多个巡检设备。
本项目的核心功能,通过指定日期、巡检路线、巡检点、记录类型等条件,可以查询巡检人员的巡检记录和上报内容,同上可以查看巡检人员的行程轨迹。
本项目的核心功能,巡检人员通过打开智能巡检app,前往指定巡检点自动进行打卡记录;另外,可以进行上报操作,上报巡检点的异常信息。
主要是技术选型上应该可以满足未来性能扩展的需求,尽量使用成熟的相关技术框架。例如内存数据库,消息队列,前后端分离等等。
根据前期的讨论,本系统拟采用前后端分离技术,spring boot框架技术,redis内存数据库技术,Ngnix集群部署技术,mysql数据库主从配置技术等满足现阶段的性能需求。未来如果性能出现瓶颈点,可考虑通过微服务的方式把更细节的功能集群化部署。
本项目使用时需通过https协议,保证数据传输过程中进行加密数据。另外从管理角度看,相关的参与人员需要签署相应的保密协议。
其他硬件的安全,网络的安全,操作系统的安全,中间件的安全等等可以考虑用云平台提供的服务。
通过集群部署方式保证平台的稳定性,另外如果需要保证非常高级别的可靠性,则考虑增加相关的硬件,同时需把平台部署到不同地点的云节点上。
扫码关注不迷路!!!
郑州升龙商业广场B座25层
service@iqiqiqi.cn
联系电话:400-8049-474
联系电话:187-0363-0315
联系电话:199-3777-5101