《数字化智能评估系统》需求说明书.docx

上传人:b****1 文档编号:680398 上传时间:2022-10-12 格式:DOCX 页数:31 大小:1.05MB
下载 相关 举报
《数字化智能评估系统》需求说明书.docx_第1页
第1页 / 共31页
《数字化智能评估系统》需求说明书.docx_第2页
第2页 / 共31页
《数字化智能评估系统》需求说明书.docx_第3页
第3页 / 共31页
《数字化智能评估系统》需求说明书.docx_第4页
第4页 / 共31页
《数字化智能评估系统》需求说明书.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

《数字化智能评估系统》需求说明书.docx

《《数字化智能评估系统》需求说明书.docx》由会员分享,可在线阅读,更多相关《《数字化智能评估系统》需求说明书.docx(31页珍藏版)》请在冰豆网上搜索。

《数字化智能评估系统》需求说明书.docx

《数字化智能评估系统》需求说明书

 

《数字化智能评估系统》

需求说明书

 

路璐

 

2016/10/12

一、目的

编写详细设计说明书是软件开发过程必不可少的局部,其目的是为了使开发人员在完成概要设计说明书的根底上完成概要设计规定的各项模块的具体实现的设计工作。

二、软件总体设计

1、软件需求概括

本软件采用传统的软件开发生命周期的方法,采用自顶向下,逐步求精的结构化的软件设计方法。

本软件主要有以下几方面的功能:

创建管理知识库;

创建管理风评项目;

项目评分与上传;

评分结果汇总和导出;

账号管理和权限控制。

定义

本项目定义为一个风险评估软件。

它将实现知识库的创建、项目的评分和评分汇总整个风险评分流程的功能。

2、需求概述

●基于MongoDB的数据的持久化存储;

●知识库满足上传文件导入和后台直接编辑修改的需求;

●权限职责划分清晰,用户管理完善;

●汇总统计结果能进展评分筛选和项目筛选。

3、条件与限制

系统开发的条件是普通PC以与相对应的系统,本次程序server端所用的系统是WINDOWSERVER2003。

Client端需要win7与以上的64位处理器的环境。

4、技术架构

服务端:

本系统服务端基于node进展开发,使用express作为后端框架,使用MongoDB数据库进展数据的持久化存储。

Node.js是一个基于ChromeV8引擎的JavaScript运行环境。

Node.js使用了一个事件驱动、非阻塞式I/O的模型,轻量而高效。

Express是一个基于Node.js平台的极简、灵活的开源后端开发框架。

有丰富的HTTP快捷方法和任意排列组合的Connect中间件,能快速构建简洁、健壮的API。

MongoDB是一个开源的基于分布式文件存储的数据库。

由C++语言编写。

是目前最流行的非关系型数据库。

拥有稳定、高效、可拓展等诸多特性。

 

客户端:

本系统客户端采用React+Flux架构,并使用Electron打包为多平台桌面应用。

Electron是流行的跨平台应用开发平台,基于Node.js和Chromium。

操作系统支持情况如下:

●MacOS:

10.9与以上,64位处理器;

●Windows:

win7与以上,32位与64位处理器;

●Linux:

ubuntu12.04与以上;Fedora21与以上;Debian8与以上;

●MacOS:

10.9与以上,64位处理器;

●Windows:

win7与以上,32位与64位处理器;

●Linux:

ubuntu12.04与以上;Fedora21与以上;Debian8与以上。

ReactReact是Facebook推出的一个用来构建用户界面的JavaScript库。

实现了单向响应的数据流以与组件化开发。

从而减少了重复代码。

Flux是facebook推出的应用程序架构库。

适用于复杂应用的开发。

 

5、模块功能逻辑关系

系统详细的模块信息所示:

 

本系统采用C/S架构。

客户端〔client〕由知识库编辑模块、专家评分模块、账号管理模块和汇总统计模块组成;服务端〔server〕由业务模块、数据库模块组成。

6、设计和描述

本软件的主要功能是依据知识库实现项目评分和结果的汇总导出。

 

三、软件功能描述

1、登陆功能流程描述

使用本软件需要首先进展登陆操作,输入项为用户名和密码,账号信息的验证在后端进展,将验证结果返回客户端后,客户端执行相应操作。

在本系统中,用户名可以看做是唯一标识,不同用户之间的用户名不可重复。

但是在客户端与后台进展交互通信时,使用的是用户账号的uid来进展的。

 

2、账号管理功能流程描述

本软件账号系统为封闭性,只能通过管理员操作进展用户管理。

在用户管理界面,管理员可以进展用户的创建、修改和删除操作。

在用户执行修改操作时,即使对用户名进展了修改,该用户与其评分的关联仍然存在〔如果该用户为专家用户〕。

删除用户后并不会删除该用户提交过的评分数据。

 

3、知识库创建操作

本软件中知识库的创建时非常重要的工作,知识库是所有功能和操作的根底。

在知识库管理界面可以点击创建按钮建立新的知识库,知识库的指标数据可通过规定格式的csv文件上传导入,也可以手动编写。

需保证所有指标的权重之和为100才能通过数据验证并在server端保存。

此外还需要填写等级描述和元信息。

点击知识库列表项即可进入知识库修改的界面,进展修改后不会保存为新的知识库记录而是覆盖原有的知识库记录。

 

4、风险评分项目创建操作流程

评分项目的创建在项目管理界面进展,项目名为必填项,密码为选填项,项目名并不是唯一标识。

项目在删除之后,不会影响该项目收到的评分,但是会同时删除该项目之前获得评分的统计结果。

 

5、项目配置

在创建完项目后还需要进展项目配置工作。

首先要选择唯一的知识库与项目相关联,知识库与项目的关联是一对多的关联,即可能多个项目公用一个知识库。

此外还需要上传定量指标的预处理得分,上传完后点击开启评分的开关按钮即完成项目配置工作。

 

6、项目评分操作流程

在创建好项目后专家即可对项目开始评分。

在进入评分界面时,如果项目设有密码需要对项目密码进展验证操作,在对项目评分时,只有填写完所有的评分项才能进展提交或者对结果进展汇总查看。

专家可以在评分完毕后直接上传评分结果,也可以在汇总统计界面确认统计结果后再提交结果。

 

7、项目评分汇总查看操作流程

在收到专家评分后,管理员和项目管理可在项目界面对项目评分的所有结果进展汇总查看,同时可以筛选专家评分和项目对统计结果进展筛选修改。

筛选专家能修改本次评分分数,筛选项目能对排行榜和图表的结果产生影响。

 

四、接口设计

1、人机接口

本系统的人机接口即用web制作的人机交互界面。

在封装打包成可执行应用程序之后,用户能够在pc端打开运行。

因为web的交互友好性,用户能够方便的通过鼠标键盘进展操作。

此外本程序对原生点击和滑动事件进展了优化,对弹出层和提示层等UI组件进展了优化。

在UI和布局上使用了Material设计,以React为视图层框架进展开发。

 

2、部接口

本程序客户端与后台之间通过RESTFULAPI进展通信,完成数据存储和调用。

 

主要api接口如下:

接口名

请求类型

功能

返回类型

getProjectList

POST

获取所有项目列表

Array

saveProejct

POST

保存项目

Object

updateProject

POST

更新项目数据

Object

saveLib

POST

保存知识库

Object

updateLib

POST

更新知识库

Object

deleteLib

POST

删除知识库

Object

getLibs

POST

获取所有知识库数据

Array

Login

POST

登陆

Object

saveUser

POST

创建用户

Object

deleteUser

POST

删除用户

Object

3、安全与稳定

出错输出信息

本程序在运行出错时会通过弹出框的方式对用户进展提醒,同时记录日志,后台程序运行故障时会自动重启。

最大可能保证程序的稳定性。

程序视图层有错误提示交互组件,配个后台api返回信息进展错误提醒。

 

安全性:

本应用从防止SQL注入、XSS、CSRF三个方面来保证应用安全性。

SQL注入SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,其主要原因是程序没有细致地过滤用户输入的数据,致使非法数据侵入系统。

根据相关技术原理,SQL注入可以分为平台层注入和代码层注入。

前者由不安全的数据库配置或数据库平台的漏洞所致;后者主要是由于程序员对输入未进展细致地过滤,从而执行了非法的数据查询。

基于此,SQL注入的产生原因通常表现在以下几方面:

●不当的类型处理;

●不安全的数据库配置;

●不合理的查询集处理;

●不当的错误处理;

●转义字符处理不适宜;

●多个提交处理不当。

本程序采取的措施如下:

●对用户的输入进展校验,通过正如此表达式,限制长度,对单引号和双〞-"进展转换等,防止在输入环节嵌入恶意代码。

●不使用动态拼装sql,本次采用参数化的sql进展数据查询存取。

●不使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数据库连接。

●不直接存放信息,对关键信息进展加密,hash掉密码和敏感的信息。

●应用的异常信息应该给出简短提示,对错误信息进展了自定义封装。

●检查Referer字段HTTP头中有一个Referer字段,这个字段用以标明请求来源于哪个地址。

在处理敏感数据请求时,通常来说,Refere字段应和请求的地址位于同一域名下。

●添加校验token由于CSRF的本质在于攻击者欺骗用户去访问自己设置的地址。

 

可维护性:

本应用以下面几个方面来控制代码的可维护性。

可理解性:

其他人可以接手代码并理解它的意图,无需原开发人员花太多时间解释。

可读性性:

代码中可以让人快速上手,尽管其操作过程复杂。

可适应性:

代码以一种数据上的变化不要求完全重写方法。

可扩展性:

在代码架构上可对核心功能的扩展。

可调式性:

出错时,代码可以给你足够的信息来直接确定问题所在。

函数和方法:

描述其目的和参数代表,返回值等。

Hack:

因各浏览器的差异,javascript的hack用于解决的问题进展描述。

变量和函数的命名

变量名以名词开始:

如car,person函数名以动词开始:

如getName(),返回布尔类型值的函数一般以is开头,如:

isEnable();

此外,本程序在开发过程中保持松散耦合原如此:

●解耦HTML/JavaScript在web应用中,html专注于展示数据,css专注于样式,javascript专注于行为交互;

●解耦CSS/Javascript在现代web应用中常常需要javascript来更改样式,我们采用修改CSS类名的方式来控制样式的改变;

●解耦应用逻辑和事件处理程序。

五、系统说明

硬件环境:

CPUP3800MHz以上,建议P41.8GHz存256MB以上,建议512MB显卡标准VGA,24位真彩色其它键盘、鼠标、网卡、能连通互联网。

软件环境:

Windows2000与以上;

编程语言:

开发:

nodejs和javascript;

打包编译:

electron;

源程序量:

8000行。

主要功能和技术特点:

行业风险动态评估系统是针对行业的风险而开发的一款动态评估软件,是国首个智能风评系统,主要服务于多个行业的量化风险评估、风险点跟踪监测、执行方案决策。

1、模块说明

本系统主要由四个功能模块组成:

专家评分模块,知识库管理模块,项目管理模块,用户管理模块。

专家评分模块主要功能是进展项目评分,专家在选择一个待评项目进入后通过勾选选项的方式对该项目的定性指标进展评分,评分完毕后可以查看汇总结果和进展提交。

知识库管理模块负责知识库的创建、修改和删除。

知识库创建的时候可以上传CSV文件导入知识库;已保存知识库在进展修改时会覆盖原有的知识库。

项目管理模块负责项目的创建、删除以与项目评分流程的控制。

项目创建的时可以选设密码;项目创建后需要选择知识库和上传定量指标结果,并勾选开启评分,之后专家方可对该项目进展评分和提交操作。

再汇总统计中对结果进展保存之后方可开启下一轮平分。

用户管理模块负责用户账号的创

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1