P2:
等待用户输入各项信息。
P3:
若用户取消则返回。
P4:
判断分类名称是否为空。
P5:
若P4中分类名称为空,给出提示:
分类名称不能为空,返回P2。
P6:
保存记录至数据库。
P7:
返回。
删除模块:
功能:
完成删除功能。
输入工程:
无。
输出工程:
见输出项。
程序逻辑:
P1:
点“删除”按钮。
P2:
执行删除记录操作。
P3:
返回。
查询模块:
功能:
完成查询功能。
输入工程:
无。
输出工程:
见输出项。
说明:
相关大类小类显示在一起,生成类树形结构,查询小类时同一大类的小类之间不空行,不同大类的小类空一行
程序逻辑:
P1:
查询所需分类。
P2:
返回。
说明:
在查询时,如果有管理员权限,则输出的所有条目后面均添加修改和删除按钮,用于完成相应操作。
接口
提供查询分类接口,用于查询分类。
存储分配
无
注释设计
1.各个类首部有作者信息和类的含义的文档注释。
2.类的属性、方法有相应的作用注释。
3.关键逻辑有内容注释
限制条件
使用struts2、hibernate、JavaScript技术,支持IE内核浏览器,不支持IE6.0以下版本
测试计划
进行性能测试,查看系统执行时间
尚未解决的问题
多浏览器支持问题,ID修改优化问题
3.1.2.1热门管理功能程序描述
该模块是新闻管理的一个子模块,该模块实现了用户访问该网址时,在主页的一部分显示出热门新闻、热门空间、热门博文。
3.1.2.2功能
根据需求分析和概要设计对于热门管理的分析,热门管理的流程图如下:
图5热门管理模块流程图
3.1.2.3性能
这是显示在主页中的,要求用户访问该网页时,1-2秒内能查询并显示出来。
3.1.2.4输入项
如下的数据结构:
3.1.2.5输出项
在主页中显示:
1、热门新闻列表<按热门顺序显示)
2、热门博文列表<按热门顺序显示)
3、热门空间列表<按热门顺序显示)
3.1.2.6算法
热门管理模块主要是显示热门新闻、空间和博文,具体是算法设计如下:
●显示热门新闻
1.创建查找热门新闻过程:
核心语句:
select*fromnewsorderedbyclickRate。
2.在dao层创建查询方法queryHotNews(>。
3.采用struts标签在主页显示结果。
●显示热门空间
3.创建查找热门空间过程:
核心语句:
select*fromarticleorderedbyclickRate。
4.在dao层创建查询方法queryHotRooms(>。
3.采用struts标签在主页显示结果。
●显示热门博文
5.创建查找热门博文过程:
核心语句:
select*fromnewsorderedbyclickRate。
6.在dao层创建查询方法queryHotArticles(>。
3.采用struts标签在主页显示结果。
3.1.2.6流程逻辑
显示热门博客/新闻/空间
功能:
显示热门博客/新闻/空间
输入工程:
无;
输出工程:
无;
程序逻辑:
P1:
查找并排列热门博客/新闻/空间
P2:
将查找到的结果在主页上显示
热门管理用例图
热门管理活动图
热门管理时序图
3.1.2.8接口
用图的形式说明本程序所隶属的上一层模块及隶属于本程序的下一层模块、子程序,说明参数赋值和调用方式,说明与本程序相直接关联的数据结构<数据库、数据文卷)。
3.1.2.9存储分配
根据需要,说明本程序的存储分配。
3.1.2.10注释设计
说明准备在本程序中安排的注释,如:
1.加在模块首部的注释;
2.加在各分枝点处的注释;
3.对各变量的功能、范围、缺省条件等所加的注释;
4.对使用的逻辑所加的注释等等。
3.1.2.11限制条件
需要用户访问或登录;
系统运行状态良好;
网络无故障。
3.1.2.12测试计划
测试:
黑盒测试
输入:
用户访问主页
预期结果:
主页显示出热门空间、博文、新闻
进度安排:
单元测试时
人员职责:
该模块开放人员
桩模块:
无
驱动程序无
3.3新闻管理程序描述
新闻管理程序处理新闻的管理<增删查)。
新闻管理主要负责的功能是添加和删除新闻,包括新闻的生成,查询,删除。
本程序主要分为以下4个模块:
添加新闻,删除新闻和查询新闻模块,顶/踩新闻。
3.3.1添加新闻
3.3.1.1程序描述
进行新闻的编辑,编辑时管理员向文本框中输入标题,内容,作者,选择分类,最终生成一篇新闻,和对应的新闻表。
<见输出)。
3.3.1.3功能
图88添加新闻图
3.3.1.4输入项
基本流:
点击发布新闻按钮。
该输入后需要如下输入:
Ø选择新闻的分类
Ø输入新闻标题
Ø输入新闻的作者
Ø输入新闻的内容
Ø点击发布新闻按钮。
流分支:
1.在用户有未输入的新闻相关的信息,如标题内容等,点击发布新闻,提示用户继续输入。
2.在用户离开但未发布新闻时询问用户是否确认离开。
保存事件输入<除备注外,其他数据均不可为空)
标识
类型
格式
输入方式
新闻ID
Id
Int
系统生成
新闻发布
日期
publishDate
DateTime
xxxx-xx-xxxx:
xx:
xx
系统时间
新闻标题
title
varchar
键盘
新闻类型
categoryName
varchar
选择下拉框
新闻内容
content
varchar
fckeditor
表1添加新闻输入项
3.3.1.5输出项
点击发布新闻按钮:
添加成功,保存添加新闻内容至数据库中.跳转到添加成功页面。
失败,系统提示添加失败信息。
3.3.1.6算法
1.创建增加存储过程
2.创建NewsAction类,实现get和set方法,以及addNews,addCategory方法
3.创建NewsDao类.
4.在addNews.jsp页面实现添加新闻,提交并验证,验证不通过拒绝操作并弹出窗口提示。
3.3.1.7流程逻辑
图89添加新闻模块流程逻辑
3.3.2删除新闻模块
3.3.2.1程序描述
进行新闻的删除,管理员在新闻的后面点击删除按钮,最终删除新闻,和对应的新闻表。
<见输出)。
3.3.2.3功能
图88删除新闻图
3.3.2.4输入项
基本流:
Ø选择新闻
Ø点击删除新闻按钮。
流分支:
1.在管理员未选中新闻时,提示管理员先选择新闻再进行删除。
3.3.2.5输出项
点击发布新闻按钮:
删除成功,跳转到删除成功页面。
失败,系统提示添加失败信息。
3.3.2.6算法
1.创建删除存储过程
2.在类NewsAction里增加方法deleteNews方法
3.在类NewsDao里增加方法deleteNewsDao方法
4.在deleteNews.jsp页面实现删除新闻,提交并验证,验证不通过拒绝操作并弹出窗口提示。
3.3.2.7流程逻辑
图89删除新闻模块流程逻辑
3.3.3查找新闻
3.3.3.1程序描述
进行新闻的编辑,编辑时管理员向文本框中输入标题,内容,作者,选择分类,最终生成一篇新闻,和对应的新闻表。
<见输出)。
3.3.3.3功能
图88添加新闻图
3.3.3.4输入项
基本流:
点击发布新闻按钮。
该输入后需要如下输入:
Ø选择新闻的分类
Ø输入新闻标题
Ø输入新闻的作者
Ø输入新闻的内容
Ø点击发布新闻按钮。
流分支:
1.在用户有未输入的新闻相关的信息,如标题内容等,点击发布新闻,提示用户继续输入。
2.在用户离开但未发布新闻时询问用户是否确认离开。
保存事件输入<除备注外,其他数据均不可为空)
标识
类型
格式
输入方式
新闻ID
Id
Int
系统生成
新闻发布
日期
publishDate
DateTime
xxxx-xx-xxxx:
xx:
xx
系统时间
新闻标题
title
varchar
键盘
新闻类型
categoryName
varchar
选择下拉框
新闻内容
content
varchar
fckeditor
表1添加新闻输入项
3.3.3.5输出项
点击发布新闻按钮:
添加成功,保存添加新闻内容至数据库中.跳转到添加成功页面。
失败,系统提示添加失败信息。
3.3.3.6算法
1.在类NewsAction中添加方法queryByDate和qeuryByTitle.
2.在queryNews.jsp页面实现查找新闻,提交并验证,验证不通过拒绝操作并弹出窗口提示。
3.3.3.7流程逻辑
图89查找新闻模块流程逻辑
3.1.1.7流程逻辑
1.本功能所涉及到的逻辑流程以活动图描述如下:
图4往来单位流程逻辑活动图
2.本功能点,分为五个功能模块,分别对这五个功能模块描述如下:
7.增加模块功能:
完成增加功能。
输入工程:
图2-往来单位输入项类图。
输出工程:
图3-往来单位输出项类图。
程序逻辑:
P1:
产生增加记录页面P2:
等待用户输入各项信息。
P3:
若用户取消则返回。
P4:
若确定,则判断单位代码是不是唯一的4位有效整数。
P5:
若P4不成立,给出提示:
单位代码必须是唯一的4位有效整数,
返回P2。
P6:
判断单位名称是否为空。
P7:
若P6中单位名称为空,给出提示:
单位名称不能为空,返回P2。
P8:
保存记录至数据库。
P9:
调用ProviderInfoBLL.Query(>刷新记录。
8.修改模块功能:
完成修改功能。
输入工程:
见3.1.4输入项。
输出工程:
见3.1.5输出项。
程序逻辑:
P1:
产生修改记录页面P2:
等待用户输入各项信息。
P3:
若用户取消则返回。
P4:
若确定,则判断单位代码是不是唯一的4位有效整数。
P5:
若P4不成立,给出提示:
单位代码必须是唯一的4位有效整数,返回P2。
P6:
判断单位名称是否为空。
P7:
若P6中单位名称为空,给出提示:
单位名称不能为空,返回P2。
P8:
保存记录至数据库。
P9:
调用ProviderInfoBLL.Query(>刷新记录。
9.删除模块功能:
完成删除功能。
输入工程:
无。
输出工程:
见3.1.5输出项。
程序逻辑:
P1:
在输出项DataView中选中某一行。
P2:
点“删除”,则弹出“确定/取消”提示。
P3:
若取消,则返回主页面P4:
若确定,对数据库执行删除记录操作。
P5:
若删除失败,提示系统错误,返回主页面P6:
提示删除成功。
P7:
调用ProviderInfoBLL.Query(>刷新记录。
10.查询模块Ø模糊查询
功能:
完成查询功能。
输入工程:
单位名称,助记码,主营业务,联系人。
输出工程:
见3.1.5输出项。
说明:
实现即时响应的查询方式,即边输入边检索。
程序逻辑:
P1:
监控所有输入工程文本框。
P2:
若某个/某几个输入工程有动作,则提取信息,组合成查询语句,执行数
据查询操作。
P3:
调用ProviderInfoBLL.Query(>刷新记录,返回P1。
Ø数据过滤查询:
功能:
完成查询功能。
输入工程:
L1:
往来单位属性列表框<列出包括单位编号,单位名称等所有单位信息),
L2:
匹配符号<等于,大于,小于,包含,左匹配,可匹配),
L3:
根据前两项列出的所有待选结果,
L4:
与/或选择<可选项,选择之后会新增一行,表示行与行之间“且”和“或的关系)。
输出工程:
见3.1.5输出项。
程序逻辑:
P1:
采生数据过滤页面P2:
若用户取消,则返回。
P3:
等待用户输入信息。
P4:
若L1为空,给出提示:
请选择查询条件列名。
返回P3。
P5:
若L2为空,给出提示:
请选择查询条件列名。
返回P3。
P6:
若L3为空,给出提示:
请选择查询条件列名。
返回P3。
P7:
若选择L4项,则新增一列,返回P3。
P8:
确定,根据匹配条件组合成查询语句,执行数据库查询操作。
P9:
退出数据过滤页面P10:
调用ProviderInfoBLL.Query(>刷新记录。
说明:
在程序流程中,对于选择L4项操作之后,专门提供“增加”,“删除”按钮,来新增一条选项列,删除所选择的选项列。
11.打印模块功能:
完成打印功能。
输入工程:
需要打印的项<可勾选),纸张大小,字体大小,表头设置,显示缩放比例导出成Excel格式。
输出工程:
打印文档,Excel文档。
程序逻辑:
P1:
采生打印页面P2:
若取消,则返回主页面P3:
等待用户设置打印信息<若无输入,则采用默认设置)。
P4:
确定,起动打印操作。
3.1.1.8接口
无
3.1.1.9存储分配
无
3.1.1.10注释设计
说明准备在本程序中安排的注释,如:
1.加在模块首部的注释;
2.加在各分枝点处的注释;
3.对各变量的功能、范围、缺省条件等所加的注释;
4.对使用的逻辑所加的注释等等。
3.1.1.11限制条件
说明本程序运行中所受到的限制条件。
3.1.1.12测试计划
说明对本程序进行单体测试的计划,包括对测试的技术要求、输入数据、预期结果、进度安排、人员职责、设备条件驱动程序及桩模块等的规定。
3.1.1.13尚未解决的问题
说明在本程序的设计中尚未解决而设计者认为在软件完成之前应解决的问题。
3.3评论管理程序描述
评论管理程序处理评论的管理<增删查)。
评论管理主要负责的功能是添加和删除评论或者回复,包括评论的生成,查询,删除。
本程序主要分为以下3个模块:
添加评论和回复模块,删除评论和回复模块。
3.3.1添加评论和回复模块
3.3.1.1程序描述
进行评论的编辑,编辑时采用用户向文本框中输入文字或者插入表情符进行编辑,最终生成一篇评论,和对应的评论表。
<见输出)。
3.3.1.3功能
图88添加评论和回复模块类图添加评论活动图
查询评论时序图:
新闻评论时序图;
:
查看和删除评论
3.3.1.4输入项
a)评论按钮。
该输入后需要如下输入:
Ø输入评论内容
Ø点击评论按钮。
b>回复按钮。
该输入后需要如下输入
Ø选择一篇评论
Ø点击回复按钮。
Ø输入回复内容
Ø点击提交按钮
保存事件输入<除备注外,其他数据均不可为空)
标识
类型
格式
输入方式
评论(回复>ID
Id
Int
系统生成
评论(回复>
日期
CommentDate
timeStamp
xxxx-xx-xxxx:
xx:
xx
系统时间
用户编号
UserId
Int
自动获取
新闻(仅对评论>编号
NewsID
Int
自动获取
评论(回复>内容
Content
String
键盘
评论(仅对回复>编号
CommentId
int
自动获取
表1添加评论和回复输入项
3.3.1.5输出项
点击评论(回复>按钮:
评论(回复>ID:
添加成功,保存添加评论或回复内容至数据库中.跳转到添加成功页面。
失败,系统提示查询失败。
3.3.1.6算法
1.创建增删改查存储过程
2.创建CommentAction类,实现get和set方法,以及addcomment,addfeedback方法
3.创建CommentDao类.
4.在addComment.jsp页面实现增删改查事件,提交并验证,验证不通过拒绝操作并弹出窗口提示。
3.3.1.7流程逻辑
图89添加评论和回复模块流程逻辑
3.3.1.8接口
.1删除评论和回复模块
3.3.1.1程序描述
进行评论和回复的删除,删除时采用显示评论和回复列表信息,使用按钮事件对评论和回复进行删除。
<见输出)。
3.3.1.3功能
图88删除评论和回复模块类图
3.3.1.4输入项
b)查询按钮。
该输入后需要如下输入:
Ø输入查询条件
Ø点击查询按钮。
b>删除按钮。
该输入后需要如下输入
Ø鼠标点击选择一张评论或者回复信息。
Ø点击删除按钮。
保存事件输入<除备注外,其他数据均不可为空)
标识
类型
格式
输入方式
新闻编号
newsID
Int
键盘以及查询获取
用户编号
UserID
Int
键盘
关键字
String
键盘
评论(回复>编号
ID
Int
自动获取
表1删除评论和回复输入项
3.3.1.5输出项
1.查询评论或者回复时,验证成功,若操作成功,显示评论和回复内容列表,失败则提示用户重试。
2.删除退货单时,若操作成功,更新数据库,失