资源描述
十万个吐槽网站
——需求分析说明与概要设计书
拟 制 人 XXX___
审 核 人__XX______
批 准 人______________
[2015年4月4]
目录
1 引言 3
1.1目的 3
1.2 背景 4
1.3定义 4
1.4参考资料 5
2 任务概述 5
2.1目标 5
2.2用户的特点 5
2.3假定和约束 6
3 需求规定 6
3.1对功能的规定(功能性需求) 6
系统划分 6
用户功能 7
前台功能 8
后台功能 9
后台管理系统中的各个用例的事件流 10
3.2对性能的规定(非功能性需求) 11
3.2.1 网站整体要求 11
3.2.2 对性能的规定---精度 11
3.2.3 时间特性要求 11
3.2.4 灵活性 12
3.2.5安全性 12
3.3输人输出要求 12
3.3.1、系统后台与前台的统一设计 12
3.3.2 页面内容的分块设计 13
3.3.3 输入输出数据类型 13
3.4数据管理能力要求 14
3.4.1数据采集的要求 14
3.4.2数据采集的处理 14
3.4.3 数据容量 14
3.5故障处理要求 15
3.5.1正常使用时不应出错 15
3.5.2故障处理的方式 15
3.5.3 错误日志的要求 15
3.6其他专门要求 15
4 运行环境规定(环境需求) 16
4.1 硬件设备 16
4.2支持软件 16
4.3接口 17
4.4控制 17
第 16 页 共 16 页
1 引言
1.1目的
本文档对此次网站的功能需求、性能需求和其它非功能性需求进行了详细的描述。详尽说明了这一网站的需求和规格,这些规格说明是网站系统设计人员进行设计的基础,也是编写测试用例和进行系统测试的主要依据。同时,该文档也是用户确定软件功能需求的主要依据。
1.2 背景
说明:随着社会生活的高速发展,人们的生活压力也越来越大了。尤其是在经济高速发展的城市中生活的人,除了工作中的压力外,还会为还房贷、子女教育、照顾老人等诸多生活压力所迫。过大的压力不但会影响我们的心情,还会导致孤独症、抑郁症、自闭症以及心脏病、失眠和癌症等健康问题。因此心理健康越来越被社会重视,心理健康问题成为人们关注的焦点。倾诉,也就是现在流行语中的吐槽,作为一种治疗和缓解心理压力的办法之一,应积极地发挥作用。将生活中的不快乐以及一系列引发压力的问题倾诉出来,会有效缓解我们的压力并为我们营造一个更加舒适的生活工作环境。
系统名称:十万个吐槽网站系统
提出者:喻悦铭
开发者:老师,请给我们一百分小组全体成员
用户:社会上全体有倾诉欲望的网络使用者
1.3定义
1、JSP(JavaServer Pages)
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易
2、Struts只是一个MVC框架(Framework)
用于快速开发Java Web应用。Struts实现的重点在C(Controller),包括ActionServlet/RequestProcessor和我们定制的Action,也为V(View)提供了一系列定制标签(Custom Tag)。但Struts几乎没有涉及M(Model),所以Struts可以采用JAVA实现的任何形式的商业逻辑。
1.4参考资料
Ø 百度文库
2 任务概述
2.1目标
十万个吐槽网站作为一个匿名的论坛类网站的目的在于使用匿名保护用户个人隐私的基础上,让我们更好的打开自己的心扉进行倾诉,吐槽。宣泄自己的压抑,说出自己我们本性上存在,但是不想让人知道又不好意思对熟人说出的话。
十万个吐糟网站为大家提供一块公共电子白板,每个用户都可以在上面书写,可发布信息或提出看法。它是一个交互性强,内容丰富但是私密度高的电子信息服务系统,让有倾诉欲望的用户在网站上可以获得各种信息服务、发布信息、进行讨论、聊天等等。
但是比起一般的论坛网站,十万个吐槽网站是一个完全匿名的私密倾诉网站,使得其提供的内容更多、更有趣、在某种程度上也更加真实。让被压力围绕的人们把一切不能和家人朋友说的不快乐、不满意在这里找到了倾诉口。
2.2用户的特点
1、本软件的最终用户的特点
所有在社会生活中感受到压力,却因各种原因无法向身边人倾诉的上网用户在无需培训的情况下,按照网站页面提示即可使用网站的匿名吐槽、评论、聊天等功能。
2、后台管理和维护人员的教育水平和技术专长
本网站的后台管理和维护人员均是具有计算机专业知识的人员。
3、本软件的预期使用频度
无固定限制,可根据用户实际情况进行使用。
用户
版主
管理员
用户编号
m
n
m
n
版主编号
管理
管理
管理员编号
ID
ID
2.3假定和约束
假定本网站开发工作的开发期限为1个月,经费具体数目待定。
3 需求规定
3.1对功能的规定(功能性需求)
系统划分
该网站建设包含以下子系统
前台服务功能
后台管理功能
登录、注册、
查询等
管理个人的留言信息等
查看、评论、发帖、回复等
用户管理
十万个吐槽网站
管理员后台管理
版主后台管理
系统设置
帖子管理
广告管理
版块管理
用户功能
1、 普通(游客)用户
是该网站的一种用户,普通用户以游客身份登录本系统,只具有察看帖子的功能,不能进行发帖,评论等行为。
2、 注册用户
具备普通用户所有的能力。并且是已经注册了的用户,可以登录并且可以发帖,评论,回复,但不能修改个人信息。
3、 版主
具备注册用户所有的能力,其主要权限是对各论坛版块进行管理。
4、管理员
管理员登录以后可以对论坛系统进行管理,包括论坛的基本信息、用户设置,还可以修改管理员密码,进行广告管理等。
前台功能
1、注册
(1)说明
主要是指除管理员以外的用户角色(一般为游客),在网上在线填写一些会员的注册信息。注册后即可成为本网站会员。但在以后的网站应用过程中,用户真实注册的信息不会显示给其他用户,而是由系统随机分配昵称进行发帖等功能的使用。
(2)注册确认
用户通过网上在线注册后,由系统管理员收集相应的资料,核实后,进行用户注册确认,确认后用户成为会员正式生效,可以享受网站提供的各种服务。
2、登录
(1)说明
用户输入登录信息,如用户名、密码、验证码,以会员的身份进入本论坛。
(2)登录确认
用户通过网上在线输入用户的ID标识信息后,由后台系统收集相应的资料,并进行核实比较确认。
3、在线注销
会员登录成功后,可以在线注销。此后将不再拥有登录后的在线权限。
4、查询
游客或者登录成功的用户,可以选择自己感兴趣的分类版块,并察看其中所感兴趣的帖子(留言)。或可以按照系统所给定的各种查询选项选择自己感兴趣的查询条件,并察看其中检索到的所感兴趣的帖子(留言)。
5、发表帖子
(1)说明
注册用户登录成功以后,可以在某版块发表自己的帖子。
(2)发表确认
用户通过网上在线发表后,由后台系统收集相应的资料并正确地保存到数据库表中。
6、回复帖子
(1)说明
注册用户登录成功以后,可以在某版块针对某个帖子进行回复。
(2)回复确认
用户通过网上在线回复后,由后台系统收集相应的资料并正确地保存到数据库表中。
7、删除留言
用户登录成功以后,可以针对自己所发表的某个留言进行在线删除。
后台功能
1、 用户个人信息管理
1、 短消息管理,收件箱、发件箱、草稿箱中的信息删除、编辑等操作。
2、 论坛外观选择,选择自己喜欢的外观类型。
2、 版主后台
版主的管理界面除了个人后台的所有功能外,还包括以下的功能:
1、 帖子管理:对自己管理范围内的帖子进行删除、编辑操作。
2、 版块公告,广告发布:此权限需要管理员允许。
3、管理员后台
管理员后台拥有版主后台的所有内容,除此之外还包含以下权限:
1、 全论坛用户帐户的删除权限
2、 公告发布
3、 论坛设置(UBB,HTML支持等)
4、 版主设置(添加,更改,废除版主)
5、 后台帐户管理(密码修改)
6、 版块管理:添加版块/子版块,设置版块版主;
编辑版块/子版块,变换版主;
删除版块/子版块,同时废除版主;
7、 对违反论坛规则的用户拥有删除用户、禁言等功能;
后台管理系统中的各个用例的事件流
1、 系统管理员登陆
系统管理员提交用户名和密码,系统验证用户名和密码的合法性,系统显示系统管理员管理页面(包含管理员的信息)
2、 论坛基本信息管理
对网站参数、通行证设置、COOKIE设置、公告设置进行管理
3、 打开/关闭论坛
对论坛的打开或关闭进行管理。
4、 封锁中心
对封锁IP和文字过滤进行管理。
5、 发帖设置
对用户的帖子设置、上传文件设置、全文检索设置、缓存设置进行管理。
6、 邮件设置
对邮件用户名、密码进行管理。
7、 版区设置:
对各个版区进行管理。
8、 修改密码
对管理员的用户名和密码进行管理。
n 空间特性需求
(1)支持的终端数:<=100。
(2)支持并行操作的使用者数:<=300。
(3)处理的记录数:1000
3.2对性能的规定(非功能性需求)
3.2.1 网站整体要求
对于网站风格方面,应该尽量做到网站结构简单明了,结构条理清晰,页面精美、功能实用;而对于版面方面的要求,则应该设计构思力求精巧、布局要求简捷合理、网站整体设计风格统一。
(1)界面设计精美、友好,信息化设计,体现企业级应用的特色
(2)更快的信息访问速度、更加省时和智能化的用户界面-----网络响应速度应该尽量快
(3)更简便、智能化程度更高的浏览查询流程
(4)后台管理功能强大、录入效率高
3.2.2 对性能的规定---精度
(1)用户输入精度的要求取决于相应功能所需参数的精度要求
在用户浏览的页面内如果需要用户输入相关的信息或参数将给出详细的数据类型说明,并且如果用户在非恶意的情况下输入了错误的数据类型参数,系统将自动提示用户再次输入正确的参数。
(2)管理员输入的精度要求主要取决于数据库的相关数据类型要求
在数据库为系统管理员提供的多种视图中将有各类数据库对象的相关数据类型及精度要求。管理员工作过程中可以利用工具或查询有关数据库对象的精度信息已决定输入的参数。如果管理员输入的参数与要求不符将得到提示并重新进行操作。
3.2.3 时间特性要求
1、响应时间
由硬件条件的不同决定,但总体上客户端的请求处理响应时间不应多余10s
2、更新处理时间
由硬件条件及处理的数据量决定,但总体上向数据库添加和删除一条记录的时间不应多余10s
3、数据的转换和传送时间
根据具体的转换和传送数据不同所需的时间不同,总体不应超过10s
4、解题时间
用户身份认证的时间不应超过10s
3.2.4 灵活性
1、操作方式上的变化
不同平台对于网站功能的使用是没有影响的。
2、运行环境的变化
本系统可以利用部署配置文件来完成对系统的编译过程,并且这种部署是一次部署长久使用的,因此从运行环境来看有很好的可控性和灵活性。
3、精度和有效时限的变化
该系统的精度和有效时限依赖于开发过程中的整体设计可变性较小。
4、计划的变化或改进
该系统明确了必须完成的用户功能,对于额外的功能在规定的时间内提前完成的可能性比较小。
3.2.5安全性
由于网站涉及到用户的隐私信息,所以网络安全要达到国家三级标准。
3.3输人输出要求
3.3.1、系统后台与前台的统一设计
本系统设计是将后台部分的入口放在主页面上,以方便系统管理人员的通用化管理。当系统管理员登陆系统首页面时,在系统的最上方会出现管理员登陆的入口,可以从此进入后台管理页面。
同时在系统后台和前台的设计上,系统采用了共同的页面开发模式和组件调用模式,其中的文件头和文件尾等部分是相互通用的。
因此两个部分的设计,可以说是分离与结合的完美统一。
3.3.2 页面内容的分块设计
在系统主页中,从页面头、版面列表、推荐论坛、用户来访信息、论坛图例、文件尾等部分都进行了抽象提取,这样在需要用到某部分的页面时,只需要进行相关的包含或者利用模板技术来引用。
3.3.3 输入输出数据类型
(1)会员注册信息如下
信息
类型
描述
用户名
20个字符
须填写真实姓名且注册后不可修改
密码
20个字符
重复密码
20个字符
密码提示问题
50个字符
为了能够找回密码
密码提示答案
50个字符
验证提示问题
用户的电话号码
20个字符
用于验证用户或找回密码
(2)会员登录的信息
信息
类型
描述
用户名
20个字符
密码
20个字符
验证码
20个字符
(3)会员发表留言的信息应该包括下面的内容
信息
类型
大小
留言者
字符
系统随机分配
留言标题
字符
100个字符以内
留言摘要
字符
不限制
留言
字符
不限制
(4)会员回复留言的信息应该包括下面的内容
信息
类型
大小
回复者
字符
系统随机分配
回复留言标题
字符
100个字符以内
回复留言摘要
字符
不限制
回复留言的内容
字符
不限制
3.4数据管理能力要求
3.4.1数据采集的要求
1、输入源:手工键盘输入
2、输入介质和设备:键盘,磁盘
3、输出介质和设备:磁盘,打印纸
3.4.2数据采集的处理
1、JavaBean组件
2、JSP网页
3、浏览器编译
3.4.3 数据容量
本系统总共大概需要10张表,每个表纪录规模1万条记录,每张表使用的表空间1G左右,最多使用10G存储。增量数据非常少可以忽略不计。
3.5故障处理要求
3.5.1正常使用时不应出错
若运行时遇到不可恢复的系统错误,系统也必须保证数据库完好无损。
3.5.2故障处理的方式
1、 系统如果出现应用服务器关闭,数据库连接断开等软件异常,会给在log信息详细标示;
2、 如果事务处理过程出现故障,事务回滚,保证数据的完整性;
3、 如果多人同时访问一条记录,加锁该纪录避免脏数据。
4、 数据库采用增量备份法,出现数据库故障时数据库恢复。
3.5.3 错误日志的要求
应用程序应能提供易于查看的日志,便于系统的维护、调试、错误定位等,系统日志应该至少可以保存40000条程序运行记录。同时,由于是在多线程环境下运行,每条日志中应该打印出打印该日志的线程ID。
3.6其他专门要求
1、 应保证使用时的安全性,防止病毒破坏系统。
2、 安全性方面的具体要求:服务器安装防火墙和身份认证。
3、 性能方面:Web支持1000人同时在线浏览,数据库支持20个连接。
4 运行环境规定(环境需求)
4.1 硬件设备
本系统在本地机上进行开发、测试。然后部署到基于Tomcat服务器的远程服务中,设备主要是服务器和本地机。
1、服务器
(1)处理器型号及内存容量:内存1G及以上;
(2)外存容量、联机或脱机、媒体及其存储格式,设备的型号及数量:硬盘1000G及以上、声卡、显卡无要求;
(3)输入及输出设备的型号和数量,联机或脱机:考虑到数据的安全性问题,要求使用磁盘阵列。
(4)数据通信设备的型号和数量;
(5)功能键及其他专用硬件
2、本地机:
(1)处理器型号及内存容量:内存256M及以上;
(2)外存容量、联机或脱机、媒体及其存储格式,设备的型号及数量:硬盘40G及以上、声卡、显卡无要求;
4.2支持软件
1、操作系统:利用 Windows 操作系统进行开发(WinXP/Win2000/Win2003)
2、开发软件
(1)后台开发工具使用Eclipse +MyEclipse
(2)前台开发工具使用Macromedia Dreamweaver MX 2004。
(3)应用服务器选择为Tomcat6.0。
3、数据库系统
考虑到用户的数据流量,建议使用 Oracle 或 SQL Server 等大中型数据库并且使用Apache DHCP通用的数据库连接池和数据源来连接数据库。
4、测试支持软件
(1)JUnit测试软件进行普通的JavaBean组件的单元测试,并且采用Load Runner或者JMeter测试系统的承载量和性能。
(2)Cactus技术进行Servlet或者Filter、Listener和Tag等的单元测试
(3)StrutsTestCase技术进行Struts等相关的组件单元测试
(4)基于mock对象的Spring Web组件的单元测试
4.3接口
1、硬件接口:支持一般的PII或更高档微机,笔记本电脑。
2、软件接口:运行于Windows95及更高版本具有WIN32 API的操作系统之上。
3、数据通信协议:该软件同其他软件之间无明显接口,数据通信协议主要为TCP/IP协议。
4.4控制
键盘输入和鼠标点击。
展开阅读全文