一、概述
1.1 编写目的
此项目开发规划书的编写主要是为《UPS SNMP卡网络监控系统》中配套使用的关机软件做主要的规划和整合,在开发过程中起到引导作用,以及给使用者提供简要的说明。
1.2 项目背景
关机软件是UPS网络监控适配器项目监控层的组成部分,整体项目初期为研发公司自有的UPS SNMP网络监控卡、监控层软件。其中监控层包括可通过PC浏览SNMP卡本身的web网页和相关的配套PC软件,即集中上位机监控软件、SNMP卡搜索软件、服务器关机软件等等。
1.3 软件实现的功能
关机软件为UPS辅助的关机程序,可安装于连接网络的windows系统计算机上,通过SNMP网口转换卡与UPS相连,在完成关机软件与网络的硬件设定后,当关机软件通过固定IP和端口接收到由网络上的UPS所送出的市电故障,电池故障和UPS故障等讯息时,可保存和记录文档后,安全的关机。其主要功能有:
1、支持RFC1628的SNMP协议远程监控UPS;
2、可监控UPS的各种故障信息,功能使能设置和关机时间设置;
3、可选择关闭系统前自动保存重要文档,进入休眠状态等方式;
4、在关机或者休眠之前若故障解除可自动恢复正常;
5、可实时记录故障事件信息,用户可查询记录、打印、保存;
6、可以记录关机前文档档案,用户可通过关机档案查询记录;
7、支持任务栏隐藏模式运行,告警后可弹出告警信息;
8、联机断开后可自动连接,并且有开机自动启动功能;
1.4 已有类似产品分析
1.4.1 易事特的iSmartMate
易事特的iSmartMate界面设计观感良好,在XP 32bit OS、Win7 64bit OS和linux32bit和64bit OS上都能正常运行。主窗口可显示网络的连接状态和UPS的运行状态,并且状态栏显示了时间日期和关机、agent连接等事务状态。采用的SNMP协议版本支持V1、V2、V3,并通过输入具体IP地址连接SNMP卡。
1.4.2 鼎坚的ClientMate
鼎坚的ClientMate在IP的网络连接设置稍显负载,能够添加多个IP地址并存储,并且还具有搜索软件具备的自动搜索SNMP卡IP的功能。软件支持XP 32bit 和Win7 64bit 系统,能够设置密码,在只有输入原设定密码后方可更改软件的内设定值。
1.5 使用环境
该软件的使用环境如下所示:
二、系统需求
2.1 环境
2.1.1 系统环境
(1)硬件环境包括:
1. 计算机需求:服务器PC主机,支持RS232或者USB通信。
2. 连接线需求:UPS专用RS232 的9PIN串口线或者USB连接线,对于使用RS-232串口通讯的客户,将母的一端接在系统上的RS-232通讯口上;对于使用USB通讯的客户, 只需用专用的USB数据通讯线将电脑与UPS连接即可。
3. UPS需求:支持串口协议通信的UPS。
4.SNMP卡代理需求:支持RS232通信和RJ45网络通信。
(2)操作系统支持:
本软件要求能够正常运行于Windows 32位及64位系统,Linux 32位及64位系统系统,支持多语言的切换。
2.1.2 开发平台
根据系统环境的要求,选择支持跨平台、多语言的开发平台QT。
2.2 工作模式
本软件是一个监控类型的软件,分为窗口界面模式和任务栏模式。窗口界面模式在需要的时候设置和查看日志,任务栏模式隐藏运行,方便后台运行并关机。
2.3 功能性需求
2.3.1 主窗口界面
网络通断状态、UPS连接状态、实时事件记录和状态栏当前时间、关机倒计时等显示功能。
2.3.2 设置
IP,SNMP版本,关机保存路径,关机运行外部命令,关机时间,开机自动运行程序选择和弹出报警对话框的设置。
2.3.3 关闭
上次关机的时间、程序以及保存的文件。
2.3.4 日志
查询联机实时记录的事件日志和故障信息。
2.4 非功能性需求
1、以“查找”自动搜寻欲联机的地址(有搜索软件功能的需求);
2、局域网信息广播,设定是否启动局域网信息广播功能(服务器平台使用);
3、设定密码,当更改netagent内设定值需要输入原设定的密码才能更改设定值。
三、软件实现方案
3.1 主窗口界面
界面部分 | 功能分类 | 详细说明 | |
网络状态 | IP | 被监控UPS对应的IP地址 | |
UPS状态 | 市电故障 | 当市电断开,UPS进入到电池模式 | 红色:告警 绿色:正常 灰色:未使能 |
电池电压低 | 在电池模式下,电池电压或容量低 | ||
UPS故障 | UPS出现故障的告警 | ||
实时事件 | 联机实时记录 | 实时记录联机的时间,联机状态,IP | |
状态栏 | 当前时间 | 显示当前实时时间信息 | |
关机倒计时 | 显示关机倒计时的时间 | ||
代理和UPS的状态 | 显示代理和UPS的连接状态 |
3.1 设置功能
SNMP设置的实现主要为SNMP协议的实现,使用现有开源SNMP包在QT中进行编译,生成LIB库,在QT主程序中调用函数接口,来设置具体IP并搜索连接;采用QT文件保存编程、关机选项设置按钮等实现电源设置功能。
3.2 关闭功能
记录上次关机时间和关闭程序,采用QT调用操作系统关机函数接口实现。
3.3 日志功能
对代理发送的MIB故障信息进行记录,使用QT自带的SQL数据库功能,实现200条实时事件的记录。
3.4 帮助功能
显示软件的版本、公司信息,可链接用户使用手册。
四、软件总体设计架构
本项目从功能划分,主要分为以下几个模块:
(1)操作界面模块
这部分是与用户交互的程序界面,即所谓的UI。主要由故障和连接状态图标、实时事件显示列表、功能选项按钮等组成。
(2)数据处理模块
数据处理模块是本软件的核心部分,主要包括SNMP的收发处理、SNMP的数据处理和IP、电源设置处理,其中SNMP数据处理又包括代理的MIB变量读取、日志记录和关机处理。SNMP建立在TCP/IP之上,是一个应用层协议,采用UDP方式通信,该软件通过收发处理实现对代理MIB的访问和控制,对采集到的故障信息进行归类处理,然后将这些数据信息显示在监控界面上并使用数据库进行日志记录,同时,管理进程发送指令给PC、服务器,命令其关机、关闭进程、文档保存等。
五、项目开发进度规划
(1)项目总体规划
项目名称: | |
实现功能 | 具体IP的SNMP卡连接、实时事件记录、故障关机并保存已打开程序 |
项目预计周期 | |
人员配备 | |
分项目安排 | |
项目风险 | |
系统成本 | |
备注: |
六、项目提交资料
本项目应提交以下资料(但不限于):
- 项目规划书;
- 软件架构设计说明书;
- 产品说明书。