《数字化智能评估系统》需求说明书.docx
《《数字化智能评估系统》需求说明书.docx》由会员分享,可在线阅读,更多相关《《数字化智能评估系统》需求说明书.docx(34页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、优质文本?数字化智能评估系统?需求说明书路璐2016/10/12一、 目的编写详细设计说明书是软件开发过程必不可少的局部,其目的是为了使开发人员在完成概要设计说明书的根底上完成概要设计规定的各项模块的具体实现的设计工作。二、 软件总体设计1、 软件需求概括本软件采用传统的软件开发生命周期的方法,采用自顶向下,逐步求精的结构化的软件设计方法。本软件主要有以下几方面的功能:创立管理知识库;创立管理风评工程;工程评分与上传;评分结果汇总和导出;账号管理和权限控制。定义本工程定义为一个风险评估软件。它将实现知识库的创立、工程的评分和评分汇总整个风险评分流程的功能。2、 需求概述l 基于MongoDB的
2、数据的持久化存储;l 知识库满足上传文件导入和后台直接编辑修改的需求;l 权限职责划分清晰,用户管理完善;l 汇总统计结果能进行评分筛选和工程筛选。3、 条件与限制系统开发的条件是普通PC以及相对应的系统,本次程序server端所用的系统是WINDOW SERVER2003。Client端需要win7及以上的64位处理器的环境。4 、技术架构效劳端:本系统效劳端基于node进行开发,使用express作为后端框架,使用MongoDB数据库进行数据的持久化存储。Node.js 是一个基于Chrome V8引擎的JavaScript运行环境。Node.js使用了一个事件驱动、非阻塞式I/O的模型,
3、轻量而高效。Express 是一个基于 Node.js 平台的极简、灵活的开源后端开发框架。有丰富的 HTTP 快捷方法和任意排列组合的 Connect 中间件,能快速构建简洁、健壮的API。MongoDB是一个开源的基于分布式文件存储的数据库。由 C+ 语言编写。是目前最流行的非关系型数据库。拥有稳定、高效、可拓展等诸多特性。客户端:本系统客户端采用React+ Flux架构,并使用Electron打包为多平台桌面应用。Electron是流行的跨平台应用开发平台,基于Node.js和Chromium。操作系统支持情况如下:l MacOS:10.9及以上,64位处理器;l Windows:wi
4、n7及以上,32位及64位处理器;l Linux:ubuntu 12.04及以上;Fedora 21及以上;Debian 8及以上;l MacOS:10.9及以上,64位处理器;l Windows:win7及以上,32位及64位处理器;l Linux:ubuntu 12.04及以上;Fedora 21及以上;Debian 8及以上。ReactReact是 Facebook 推出的一个用来构建用户界面的 JavaScript 库。实现了单向响应的数据流以及组件化开发。从而减少了重复代码。Flux是facebook推出的应用程序架构库。适用于复杂应用的开发。5、模块功能逻辑关系系统详细的模块信息所
5、示:本系统采用C/S架构。客户端client由知识库编辑模块、专家评分模块、账号管理模块和汇总统计模块组成;效劳端server由业务模块、数据库模块组成。6、设计和描述本软件的主要功能是依据知识库实现工程评分和结果的汇总导出。三、 软件功能描述1、 登陆功能流程描述使用本软件需要首先进行登陆操作,输入项为用户名和密码,账号信息的验证在后端进行,将验证结果返回客户端后,客户端执行相应操作。在本系统中,用户名可以看做是唯一标识,不同用户之间的用户名不可重复。但是在客户端与后台进行交互通信时,使用的是用户账号的uid来进行的。2、账号管理功能流程描述本软件账号系统为封闭性,只能通过管理员操作进行用户
6、管理。在用户管理界面,管理员可以进行用户的创立、修改和删除操作。在用户执行修改操作时,即使对用户名进行了修改,该用户与其评分的关联仍然存在如果该用户为专家用户。删除用户后并不会删除该用户提交过的评分数据。3、知识库创立操作本软件中知识库的创立时非常重要的工作,知识库是所有功能和操作的根底。在知识库管理界面可以点击创立按钮建立新的知识库,知识库的指标数据可通过规定格式的csv文件上传导入,也可以手动编写。需保证所有指标的权重之和为100才能通过数据验证并在server端保存。此外还需要填写等级描述和元信息。点击知识库列表项即可进入知识库修改的界面,进行修改后不会保存为新的知识库记录而是覆盖原有的
7、知识库记录。4、 风险评分工程创立操作流程评分工程的创立在工程管理界面进行,工程名为必填项,密码为选填项,工程名并不是唯一标识。工程在删除之后,不会影响该工程收到的评分,但是会同时删除该工程之前获得评分的统计结果。5、工程配置在创立完工程后还需要进行工程配置工作。首先要选择唯一的知识库与工程相关联,知识库与工程的关联是一对多的关联,即可能多个工程公用一个知识库。此外还需要上传定量指标的预处理得分,上传完后点击开启评分的开关按钮即完成工程配置工作。6、工程评分操作流程在创立好工程后专家即可对工程开始评分。在进入评分界面时,如果工程设有密码需要对工程密码进行验证操作,在对工程评分时,只有填写完所有
8、的评分项才能进行提交或者对结果进行汇总查看。专家可以在评分结束后直接上传评分结果,也可以在汇总统计界面确认统计结果后再提交结果。7、工程评分汇总查看操作流程在收到专家评分后,管理员和工程管理可在工程界面对工程评分的所有结果进行汇总查看,同时可以筛选专家评分和工程对统计结果进行筛选修改。筛选专家能修改本次评分分数,筛选工程能对排行榜和图表的结果产生影响。四、 接口设计1、人机接口本系统的人机接口即用web制作的人机交互界面。在封装打包成可执行应用程序之后,用户能够在pc端翻开运行。因为web的交互友好性,用户能够方便的通过鼠标键盘进行操作。此外本程序对原生点击和滑动事件进行了优化,对弹出层和提示
9、层等UI组件进行了优化。在UI 和布局上使用了Material设计,以React为视图层框架进行开发。2、内部接口本程序客户端与后台之间通过RESTFUL API进行通信,完成数据存储和调用。主要api接口如下:接口名请求类型功能返回类型getProjectListPOST获取所有工程列表ArraysaveProejctPOST保存工程ObjectupdateProjectPOST更新工程数据ObjectsaveLibPOST保存知识库ObjectupdateLibPOST更新知识库ObjectdeleteLibPOST删除知识库ObjectgetLibsPOST获取所有知识库数据ArrayL
10、oginPOST登陆ObjectsaveUserPOST创立用户ObjectdeleteUserPOST删除用户Object3、平安与稳定出错输出信息本程序在运行出错时会通过弹出框的方式对用户进行提醒,同时记录日志,后台程序运行故障时会自动重启。最大可能保证程序的稳定性。程序视图层有错误提示交互组件,配个后台api返回信息进行错误提醒。平安性:本应用从防止SQL注入、XSS、CSRF三个方面来保证应用平安性。SQL注入 SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,其主要原因是程序没有细致地
11、过滤用户输入的数据,致使非法数据侵入系统。根据相关技术原理,SQL注入可以分为平台层注入和代码层注入。前者由不平安的数据库配置或数据库平台的漏洞所致;后者主要是由于程序员对输入未进行细致地过滤,从而执行了非法的数据查询。基于此,SQL注入的产生原因通常表现在以下几方面:l 不当的类型处理;l 不平安的数据库配置;l 不合理的查询集处理;l 不当的错误处理;l 转义字符处理不适宜;l 多个提交处理不当。本程序采取的措施如下: l 对用户的输入进行校验,通过正那么表达式,限制长度,对单引号和双-进行转换等,防止在输入环节嵌入恶意代码。l 不使用动态拼装sql,本次采用参数化的sql进行数据查询存取
12、。l 不使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数据库连接。l 不直接存放机密信息,对关键信息进行加密,hash掉密码和敏感的信息。l 应用的异常信息应该给出简短提示,对错误信息进行了自定义封装。l 检查Referer字段 HTTP头中有一个Referer字段,这个字段用以标明请求来源于哪个地址。在处理敏感数据请求时,通常来说,Refere字段应和请求的地址位于同一域名下。l 添加校验token 由于CSRF的本质在于攻击者欺骗用户去访问自己设置的地址。可维护性:本应用以下面几个方面来控制代码的可维护性。可理解性:其他人可以接手代码并理解它的意图,无需原开发人员花太多时间解释
13、。可读性性:代码中可以让人快速上手,尽管其操作过程复杂。可适应性:代码以一种数据上的变化不要求完全重写方法。可扩展性:在代码架构上可对核心功能的扩展。可调式性:出错时,代码可以给你足够的信息来直接确定问题所在。函数和方法 :描述其目的和参数代表,返回值等。Hack :因各浏览器的差异,javascript的hack用于解决的问题进行描述。 变量和函数的命名变量名以名词开始:如car,person函数名以动词开始:如getName(),返回布尔类型值的函数一般以is开头,如: isEnable();此外,本程序在开发过程中保持松散耦合原那么:l 解耦HTML/JavaScript 在web应用中
14、,html专注于展示数据,css专注于样式,javascript专注于行为交互;l 解耦CSS/Javascript在现代web应用中常常需要javascript来更改样式,我们采用修改CSS类名的方式来控制样式的改变;l 解耦应用逻辑和事件处理程序。五、系统说明硬件环境:CPUP3 800 MHz 以上,建议P4 1.8GHz内存 256 MB以上,建议512MB显卡 标准VGA,24位真彩色 其它 键盘、鼠标、网卡、能连通互联网。软件环境:Windows2000及以上;编程语言:开发: nodejs 和 javascript;打包编译:electron;源程序量:8000行。主要功能和技术
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字化智能评估系统 数字化 智能 评估 系统 需求 说明书
限制150内