功能设计## 标题
文档模板地址:
一、引言
1.1 编写目的
本详细设计说明书是针对网络信息体系结构的课程作业而编写。目的是对该项目进行详细设计,在概要设计的基础上进一步明确系统结构,详细地介绍系统的各个模块,为进行后面的实现和测试作准备。本详细设计说明书的预期读者为本项目小组的成员以及对该系统感兴趣,在以后想对系统进行扩展和维护的人员
1.2 背景
系统C.系统用户∶企业财会处及各部门管理人员。名称;工资查询系统。D.开发平台: MySQL
1.3 术语定义及说明
SQLserver 数据库管理软件
DBMS 数据库管理系统
JSP 软件开发语言
IIIS 网络信息服务
表1-3
1.4参考资料
《软件工程 》《实用软件工程》《软件系统详细说明书》
二、详细设计说明
2.1硬件环境
硬件环境:
硬盘: 1G 以上剩余空间;
内存: 64M 以上;
处理器1.60GHZ以上;内存在4GB 以上;
2.2软件环境:
Windows 8版本(或以上)
数据库系统:SQLServer 2008
开发工具: VS 2017 powerdeginer IIS office办公软件
2.1登录模块
描述 用户登录
操作者 管理员和一般用户
前置条件 用户名以及密码正确
后置条件 成功操作
功能
一、 登录
1用户登录账号和密码,如果为空,将会弹出提示相应提示框
2登录成功,进入页面。
示例图;
表2-1
2.2日志模块
描述 日志管理
操作者 管理员
前置条件 成功登录页面并点击日志管理
后置条件 成功操作
功能
一、查询
1系统进入该页面,自动传值给页面,成功检索出日志信息
2页面刷新,显示数据
示例图
表2-2
2.3用户模块
描述 用户管理
操作者 管理员
前置条件 成功登录页面并点击用户管理按钮
后置条件 成功操作
功能 一、查询
1系统进入该页面,在输入框输入相应的用户名,并点击搜索
2页面刷新,显示数据
二、 添加
- 系统进入该页面,点击添加按钮,则出现另一个页面,进行用户的添加, 添加成功则返回用户管理的页面。
三、 删除 - 管理员可以选中表中的复选框,并点击删除按钮
- 删除成功后,刷新页面,显示数据
四、 修改 - 管理员选中需要修改的那一行数据,点击修改,弹出新页面,修改完毕后,点击确定。
- 页面刷新,显示数据
示例图
表2-3
部署设计
一、引言
1.1 编写目的
通过本文档对项目任务及实施过程进行描述,使读者、和开发人员对系统部署内容、部署成果等方面取得共识。
1.2 背景
说明此软件或系统的项目背景、需求背景、开发目的等,还可以列出参与人员等相关信息。1.3参考资料
1.3 术语定义及说明
SQLserver 数据库管理软件
DBMS 数据库管理系统
JSP 软件开发语言
IIIS 网络信息服务
表1-3
1.4参考资料
《软件工程 》《实用软件工程》《部署安装》
二、部署安装
2.1部署图
图2-1
2.2硬件环境
- 路由/负载均衡器:1台
- 缓存数据服务器:1台
- 接口应用服务器:2台
- 数据库服务器:2台
- 服务器要求:2CPU、8G内存、200G存储
2.3软件环境:
Windows 8版本(或以上)数据库系统:SQLServer 2008极其以上
开发工具: VS 2017 VS2013、 PowerDeginer、Office办公软件
三、系统部署
3.1配置系统环境
(1) 点击Windows键,并搜索控制面板 如图3-1-1
图3-1-1
(2) 点击程序 如图3-1-2
图3-1-2
(3)点击启用或关闭windows功能如图3-1-3
图3-1-3
(4)选中.Net Framework3.5以及Internet Information Services
并点击确定如图3-1-4
图3-1-4
(5)点击生成好的数据库脚本,导入数据库,并点击执行如图3-1-5
图3-1-5
(6) 右键刷,并新建好的数据库,再点击表,就可以看到已经建好的数据库表了 如图3-1-6
图3-1-6
3.2项目打包
- 打开项目程序
- 右键启动项目,选择发布
- 点击新建配置文件
- 选择文件夹
- 点击发布
3.3发布IIS - 打开IIS
- 点击网站
- 再点击右边的基本设置
- 选择物理物理路径
- 点击确定
- 到这一步,IIS配置步骤基本结束,而后要做的事情是将你的域名解析到本台服务器上即可
四、部署详细步骤
阶段 ID 任务 日期 开始时间 结束时间 执行人 负责人
部署准备 1 服务器、网络部署完成 2020-xx-xx 09:00 09:20
2 数据准备
3 数据库脚本生成及检查 2020-xx-xx 09:20 09:25
4 系统初始化参数确认 2020-xx-xx
5 部署版本准备
6 各应用版本确认 2020-xx-xx
7 程序打包 2020-xx-xx
正式部署 8 数据库脚本执行
9 SQL_SCRIPT.SQL执行脚本 2020-xx-xx
10 应用版本部署
11 应用服务器启动 2020-xx-xx
测试验证 12 系统健康检查 2020-xx-xx
13 系统业务验证 2020-xx-xx
五、项目URL地址
系统架构设计
一、引言
1.1 编写目的
本文档将从构架方面对系统进行综合概述,其中会使用多种不同的构架视图来描述系统的各个方面。它用于记录并表述已对系统的构架方面做出的重要决策,以便于开发人员高效的开发和快速修改和管理。
1.2 背景
本文档用于oto项目组目前正在开发的android app电器管家2.0和已经发布的1.0的开发或修改
1.3 术语定义及说明
SQLserver 数据库管理软件
DBMS 数据库管理系统
JSP 软件开发语言
IIIS 网络信息服务
1.4参考资料
《软件工程 》《实用软件工程》
二、系统架构及说明
2.0硬件环境
硬件环境:
处理器1.60GHZ以上;内存在4GB 以上;
软件环境: Windows 8版本(或以上)数据库系统:SQLServer 2008
辅助工具: VS 2017
2.1表示层
图2-2
说明: 用于展示前台用户看到的内容。
2.2业务逻辑层
图2-2
说明: 用于处理前台页面传来的用户操作,返回操作执行结果。
2.3数据访问层
图2-3
说明: 用于置界与数据库进行交互,交换数据
2.4架构优势
优点 说明
安全 避免了表示层直接访问数据访问层,表示层只和业务逻辑层有联系,提高了数据安全性
接口设计需要符合对扩展开发,对修改关闭的原则,增强了系统的安全性
速度快 有利于系统的分散开发,每一个层可以由不同的人员来开发,只要遵循接口标准,利用相同的对象模型实体类就可以了,这样就可以大大提高系统的开发速度。
方便系统的移植 果要把一个 C/S 的系统变成 B/S 系统,只要修改三层架构的表示层就可以了,业务逻辑层和数据访问层几乎不用修改就可以轻松的把系统移植到网络上
维护性好 项目结构更清楚,分工更明确,有利于后期的维护和升级。
耦合性 高内聚、低耦合,可以降低层与层之间的依赖。
依赖性 各层互相独立,完成自己该完成的任务,项目可以多人同时开发,开发人员可以只关注整个结构中的其中某一层。
复用性 利于各层代码逻辑的复用
表2-4
三、系统功能模块设计
加分项
一、引言
1.1 编写目的
说明编制的目的是,大体上介绍一下软件系统中各层次中模块或子程序、以及数据库系统的设计考虑,表明此文档是主要是为编码人员提供服务,并且其他类型的项目参与人员也可以通过此文档对软件/项目有更深入了解。
1.2 背景
说明此软件或系统的项目背景、需求背景、开发目的等,还可以列出参与人员等相关信息。1.3参考资料
1.3 术语定义及说明
SQLserver 数据库管理软件
DBMS 数据库管理系统
JSP 软件开发语言
IIIS 网络信息服务
表1-3
1.4参考资料
《软件工程 》《实用软件工程》
二、加分项
2.1前后端分离
功能名称 前后端分离
功能所在文件 aspx.cs
功能说明 1)前后端解耦: 前端服务器使用nginx,放一些css,js,图片等一系列静态资源,nginx负责页面引用,跳转,调用后端的接口.
2)出错更好定位: 页面逻辑,跳转错误,浏览器兼容,页面样式等问题,全部由前端工程师负责.接口数据出错等全部由后端工程师来解决.
3)精准拓展服务器: 在高并发情况下,我们可以按需同时拓展前后端服务器,听说淘宝用了2000台前端服务器做集群来抗住日均不知多少亿的pv,同理,后端也可以根据需求无限拓展,并且不会因为一方压力大而整体拓展服务器.
4)减少后端服务器的请求压力: 除了接口以外的所有http请求全部转移到前端服务器nginx上.
5)容灾: 即使后端服务器暂时超时或者宕机了,前端页面也能正常访问,只不过刷不出来数据而已.
示例图
图2-1
2.2单点登录
功能名称 单点登录
功能所在文件 BLL.Login.cs
功能说明 SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统
示例图 部分代码截图:
1.
图2-2
2.3数据实时备份
功能名称 数据实时备份
功能所在文件 BLL.BackUp.cs
功能说明 数据库备份可以有效防止因不可抗力造成的网站数据丢失
示例图
图2-3
2.4记录系统操作痕迹
功能名称 记录系统操作痕迹
功能所在文件 BLL.Log.cs
功能说明 记录网站访问痕迹可以方式用户进行违规操作,方便追责,防止黑客入侵等
示例图
图2-4
2.5防止直接登录
功能名称 防止直接登录
功能所在文件 BLL.Login.cs
功能说明 防止用户不登录帐号密码,直接访问登录后的页面,造成系统安全
示例图
图2-5
2.6防止sql注入
功能名称 防止直接登录
功能所在文件 BLL.Login.cs
功能说明 SQL注入一直是危害网络安全的大问题,防止SQL注入工作可以在很大程度上避免系统信息泄露。
示例图
部分代码截图:
图2-6
数据库设计
一、引言
1.1 编写目的
作为软件设计文档的重要组成部分,本文档主要对该软件后台数据库的概念模型设计和物理模型设计作出了统一的规定,同时确定了每个表的数据字典结构。它是开发人员,测试人员编码及测试的重要参考依据。
1.2 背景
数据库的设计是为了以后编码、测试以及维护阶段的后台数据的存储做准备。应用于系统开发前期,为后期数据库设计指引方向。预期的读者:系统开发人员、系统测试人员和系统维护人员
1.3 术语定义及说明
SQLserver 数据库管理软件
DBMS 数据库管理系统
JSP 软件开发语言
IIIS 网络信息服务
表1-3
1.4参考资料
《软件工程 》《实用软件工程》《SqlServer2017》《数据库系统概论》,王珊,萨师煊,高等教育出版社。《SQL Server编程篇》,本书编委会编著,电子工业大学出版社《数据库原理与应用》,安忠,中国铁道出版社
二、数据库详细设计
2.1 E-R图
说明 用来描述项目数据库的实体类型、属性和联系的方法, 用概念模型来描述信息世界中的常用概念。
示例图
表2-1
三、数据字典
3.1用户表
数据库名称 用户表(User)
说明 此表主要用来存取用户信息,用户名以及密码,在注册、登录以及用户管理模块用到此表,可以进行 增删等操作。
示例图
1.字段截图:
图3.1
3.2日志表
数据库名称 日志表(Log)
说明 此表主要用来存取日志信息,方便管理员查看系统操作痕迹
示例图
1.字段截图:
图3.1