基于web聊天系统的设计与实现需求规格说明书.docx
- 文档编号:9158436
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:21
- 大小:241.18KB
基于web聊天系统的设计与实现需求规格说明书.docx
《基于web聊天系统的设计与实现需求规格说明书.docx》由会员分享,可在线阅读,更多相关《基于web聊天系统的设计与实现需求规格说明书.docx(21页珍藏版)》请在冰豆网上搜索。
基于web聊天系统的设计与实现需求规格说明书
计算机学院
基于Web聊天系统的设计与实现
需求规格说明书
学生姓名:
学号:
2013051243
年级班级:
2013级应用4班
指导教师:
刘魁(教师)
所在学院:
计算机学院
提交日期:
2015年12月1日
论文总页数:
20页
1.引言
1.1.编制目的
用于用户与系统软件开发维护人员共同遵守的软件需求规格说明,主要目的是明确所要开发的软件所应具有的功能、性能,使系统开发维护人员能清楚了解到用户的需求,并在此基础上进一步提出概要设计和完成后续设计与开发工作也是应用软件进行合同最终验收的依据。
1.2.范围
1)待开发软件名称:
网页聊天系统
2)软件背景:
21世纪将是网络化、信息化的世纪,信息的融合已经成为社会发展的主流方向。
即时消息系统将不断与信息交流领域的系统相互集成和渗透,扩展其自己的功能和应用范围,满足未来话音,数据和视频的多媒体应用需要,使即时消息以更丰富的接入方法,更高的服务质量,更友好的面貌呈现在世人的面前。
从功能角度来看,即时消息系统向支持全媒体方向发展,随着多媒体技术在网络应用中的发展,即时消息系统承载的媒体,不再局限于原来的文字、语音和文件的信息交换,信息载体扩展到图形、图像和流媒体等多媒体业务上。
目前ICQ 和 QQ预设了部分简单的表情图像, 通过传输图像代码来传递表情图像,可以被视为即时消息开发商开发支持图形、图像为载体的即时消息软件的开端。
从应用范围角度来看,即时消息系统集中在 Internet 个人用户之间的信息交流应用,随着网络技术应用的发展,即时消息系统应用范围向园区化、集团化拓展,应用领域突破个人,而用于远程教学、远程医疗、远程演示、网络会议等领域。
3)软件功能描述:
用户通过网页登陆账号,利用服务器转发实现一对一和一对多聊天。
用户成功登陆之后可以添加好友、删除好友、查找好友,能够查看好友的登陆状态和好友资料以及聊天记录,并且可以选择是否保存用户的账号,便于下一次登陆;新消息来到时会将消息会话自动置顶并且有红点显示和声音提示,查看消息后红点消失,用户可以通过设置界面改变消息的提醒方式;在聊天窗口可以向对方发送文字、图片和表情这些信息,并且在每一条聊天记录之前会显示发送时间;用户可以申请新的账号、可以创建多人聊天的群组,创建者默认为管理员,管理员管理所有申请加入群组的请求,最后可以解散群组,所有成员自动退出。
聊天室的特点就是要求能够实时显示出聊天者所谈的内容。
即在同一个聊天室的使用者,可以在短时间内立刻看到其他聊天者的发言。
作为用户喜欢的Web应用程序,除了具有能够实时显示出聊天者所谈论的内容外,还应具有以多种方式发布信息的功能。
JSP正好可以满足聊天室的这种要求,它可以快速地创建和显示Web页面的动态内容。
总的来说,本聊天室主要实现了以下的功能:
●用户输入帐号,密码登录聊天室
●可以创建群组,多人聊天
●可以添加、删除好友
●更改个人资料及系统设置
●把用户的聊天信息写入数据库
●多人共同聊天
●语言过滤功能,避免一些敏感词汇
●显示当前聊天客户列表
●显示聊天室人员变动信息(进入聊天室、离开聊天室等)
●聊天系统接收实时消息
●退出下线
3)软件应用描述:
系统具有系统管理以及事务处理功能,能对用户的聊天记录和输出进行有效管理;系统有一定的数据安全策略,能够有效的管理用户数据以及用户的账号安全。
在整个系统的框架下,结合网页与服务器端的实际情况,实现对用户数据进行实时更新、查询、统计以及分析;软件提供用户友好的接口,满足用户日常使用需求。
1.3.预期的读者和阅读建议
开发人员阅读建议:
开发人员通过阅读本文档对软件结构和功能模块以及软件的应用范围会有一定的了解,开发人员应当着重对文档中软件开发的功能介绍、应用范围和模块结构进行重难点分析,在开发前期对软件所要求的知识技能有一定的了解。
测试人员阅读建议:
测试人员阅读本文档可以了解软件的基本结构和应用背景,可以在前期为软件的测试工作做充分的准备,对各个软件测试模块预先进行构思和模拟。
文档编写人员阅读建议:
文档编写者阅读本文档应当要理清需求规格说明书脉络,对文档中所描述的专业术语和结构特征进行了解和分析,为编写后续文档做理论参考和知识储备。
1.4.术语和缩略语
术语、缩略语
解释
MVC
模式——视图——控制器模式
迭代器
一种方法顺序访问一个聚合堆箱的各个元素
桩模块
软件测试技术的一种,主要用在单元测试阶段
Session
Session是服务器端实用的一种记录客户端状态的机制
URL
统一资源定位符
HTTP
超文本传输协议
TCP/IP
传输控制协议/网间协议
UDP
数据包协议
表1-4术语和缩略语
2.项目概述
2.1.目标
系统具有系统管理以及事务处理功能,能对用户的聊天记录和输出进行有效管理;系统有一定的数据安全策略,能够有效的管理用户数据以及用户的账号安全。
在整个系统的框架下,结合网页与服务器端的实际情况,实现对用户数据进行实时更新、查询、统计以及分析;软件提供用户友好的接口,满足用户日常使用需求。
聊天系统在生活中有着广泛的应用,聊天客户端通常要进行安装才能使用,而网页版的聊天工具能够实时接受消息而且基于web,它的灵活性和效率都不会差。
2.2.范围
该软件立足于通信协议和服务器机制,能够应用于基本的一对一网页聊天和一对多的网页群组聊天,用户通过软件能够建立自己的人际交往圈子,实现即使得通信和联系。
该聊天系统包括的模块有登陆、注册模块,个人聊天模块,群组聊天模块,修改资料模块,查找、添加好友模块。
2.3.用户的特点
作为一款立足于网页通信聊天的软件,其用户具有:
数量庞大、对信息即时性要求很高、对系统运行性能敏感和对系统使用便利性要求高的特点。
软件操作人员应当对网络协议和后台服务器、框架等有充分的理解,要有可针对不同的需求人群对软件结构和工作方式做出适应性调节的能力。
软件维护人员要充分了解软件的工作流程和工作原理,要具有迅速对软件运行过程中出现的故障做出反应和提出有成效的修改和调试的能力。
该软件在使用频度上会出现一定的规律性变化,往往在晚上和周末用户的使用频度会比平时更高,软件在使用高峰期更要注意对性能的掌控,因为通常通信软件都应在多线程处理和消息转发、接收上具有很高的可靠性和稳定性。
2.4.假定条件和约束限制
软件使用者应当具有一定的社交工具使用经验和对电脑浏览器的操作经验,他们应当熟知注册账户和管理账户的能力。
软件运行需要浏览器、网络和服务器的支持。
2.5.运行环境
2.5.1.硬件环境
1)本软件运行对服务器、客户端的硬件要求:
服务器:
软件运行需要Tomcat服务器的支持
运行环境:
各种主流浏览器例如火狐、谷歌、IE浏览器等
客户终端:
最低要求2G内存的电脑、处理器1Ghz以上、
能够运行主流浏览器的操作系统例如:
Windows、Macos、Linux。
2)本软件运行所使用的外围设备,主要包括:
使用者需要用鼠标、键盘等输入设备操作软件,已到达相关的使用目的和便利性。
2.5.2.软件环境
1)操作系统
Windows、Macos、Linux
2)数据库系统
Oracle数据库
2)开发平台及工具
Myeclipse、Javajdk1.6、tomcat服务器、windows10操作系统
4)通信协议
Tcp/Ip协议
5)接口
本软件应用windowsApi实现对数据库的操作,基于ODBC数据库访问技术
6)其他软件
网页编辑器:
dreamweavercs6
测试浏览器:
IE内核的QQ浏览器
3.业务分析
3.1.用户登录数据流图
用户进入到登陆界面后,在输入框内输入用户账号和用户密码,点击登陆后经由数据库执行查询后,若密码和账号匹配,则登陆成功进入下一个操作界面,否则返回登陆界面,提示登陆失败的信息。
图3-1用户登录
3.2.用户注册数据流图
点击注册,加载用户注册界面,提示用户输入注册信息,系统判断用户输入的信息是否符合格式要求,若格式不符合规范则系统给出提示,并要求重新输入。
若格式正确,查询数据库中是否已经存在同名账户,若满足要求则继续添加用户信息到数据库中,用户注册成功,给出注册成功提示,否则提示存在相同的账号,并返回主次界面。
图3-2用户注册
3.3.个人信息管理数据流图
用户点击网页元素,加载个人信息,并且在网页上将用户信息显示出来。
用户点击网页元素,修改个人信息,系统判断用户输入的信息是否符合格式要求,若格式不正确给出提示,并要求用户重新输入。
若格式正确,则上传数据到数据库中更新相应账户的个人资料信息,显示修改成功的提示,否则修改失败。
图3-3个人信息
3.4.收发消息数据流图
用户在聊天界面输入需要发送的消息,添加到数据库中。
由接受消息的用户在数据苦衷查找是否有消息,如果有,则显示消息,否则不显示。
图3-4收发消息
3.5.用户查找数据流图
点击进入查找界面,用户在查找框输入查找关键字,验证关键字格式是否正确。
若正确,则在数据库中查找相对应的信息,并将查找的结果在页面显示。
否则给出提示,要求用户重新输入查找关键字。
图3-5用户查找
3.6.添加删除好友数据流图
用户点击进入管理好友的页面,输入要添加的好友账号,查询数据库若存在该账号,则系统发消息给该账号以确认,对方确认后彼此建立好友关系,同时提交确认数据到数据库中;输入要删除的好友账号,查询数据库若好友数据中存在该账号则提示是否确认删除,否则提示不存在好友,确认删除后彼此的好友数据将在己方和对方的列表中删除,好友关系成功接触。
图3-6添加、删除好友
3.7.创建群组数据流图
加载用户群创建界面,提示用户输入用户群组基本信息,判断用户输入的信息是否符合格式要求。
若格式不正确则给出提示,并要求用户重新输入。
若格式正确,则继续添加用户群组信息到数据库中,若添加成功,则用户群创建成功,给出创建成功提示,否则创建失败。
图3-7创建群组
3.8.收发群信息数据流图
用户输入需要发送的消息,添加到数据库中;由用户群中的其他用户查找是否有群消息,如果有,则显示消息,否则不显示。
图3-8收发群消息
3.9.用户群管理数据流图
加载用户群信息,并且在页面上将用户群信息显示出来,用户修改,判断用户是否是群管理员,权限通过后检查用户输入的信息是否符合格式要求。
若格式不正确则给出提示,并要求用户重新输入。
若格式正确,则修改数据库中的用户群组信息,否则修改失败。
图3-9用户群管理
4.数据描述
序号
数据
数据描述
数据所属部门
1
账号
用户的登陆的一段字符
软件用户
2
密码
用于匹配用户账号的一段字符
软件用户
3
聊天表情包
用于聊天输入信息的一组图片
软件
4
用户资料
用于描述用户基本信息的文字
软件用户
5
聊天记录
用于记录用户聊天的信息
软件用户
表4数据表
5.功能需求
5.1.功能需求总述
5.1.1.功能需求总表
编号
功能需求名称
优先级别
1
用户登陆
高
2
用户注册
高
3
查找、添加好友
中
4
查看、删除好友
中
5
发起聊天
高
6
创建、解散群组
中
7
查看、修改个人资料
中
8
软件基本设置
高
表5-1-1功能需求表
5.1.2.角色、权限需求
序号
角色
功能
权限
1
普通用户
用户能够向好友发起聊天、创建群组、查找添加好友、修改个人资料、注册新账户
具有查询权限、修改个人资料权限、管理个人创建的群组权限
表5-1-2角色权限分配表
5.2.功能分析
5.2.1.用户登陆
1)功能概述
通过网页用户登陆界面登陆服务器,获取个人账户相关信息。
2)操作者
普通用户
3)场景
a.用户进入网页的用户登陆界面
b.用户输入自己的账号
c.用户输入自己的密码
d.登陆确认
e.登陆成功:
进入主页面,更新好友列表和消息通知
f.登陆失败:
输出提示信息,再次载入登陆页面
4)异常
a.没有联网
b.密码或账号输入不正确
c.用户不存在
d.服务器故障
5.2.2.查找、添加好友
1)功能概述
用户成功登陆后,通过添加好友界面查找好友,并且可以发送添加好友的请求,被添加者收到请求信息可以执行同意或者拒绝的操作。
2)操作者
普通用户,被添加用户
3)场景
a.用户打开添加好友界面
b.通过输入账号查找数据库中存在的用户信息
c.系统返回被查找用户资料
d.确认添加,发送添加请求
e.等待被添加用户验证请求
f.验证通过:
添加为好友,并更新个人好友列表
g.验证被拒绝:
提示添加失败
4)异常
a.没有联网
b.为匹配的账号用户不存在
c.服务器故障
5.2.3.查看、修改个人资料
1)功能概述
用户登陆后通过点击自己头像,然后可以弹出自己的账号信息,包括帐户名和密码以及一些相关的资料介绍。
通过点击编辑按钮可以进入编辑模式,编辑完成后点击确认即可保存已修改的信息。
2)操作者
普通用户
3)场景
a.用户点击个人头像
b.弹出网页加载个人账户资料
c.点击编辑按钮
d.弹出资料编辑界面
e.用户编辑资料
f.确认修改并保存
4)异常
a.没有联网
b.服务器故障
c.资料输入格式不正确
5.2.4.软件基本设置
1)功能概述
用户登陆后,可以打开设置面板修改基本的软件设置项目,例如:
消息提示方式、消息发送快捷键等。
2)操作者
普通用户
3)场景
a.打开软件设置页面
b.用户选择想要修改的基本软件设置项目
c.点击完成修改
4)异常
a.没有联网
b.服务器故障
5.2.5.创建、解散群组
1)功能概述
用户登陆后,可以在再主页面点击创建群组;创建成功后,可以在群组列表中点开群组聊天窗口,并且可以选择添加多个好友进入群组,多个好友同意后将好友加入群组。
群主在群组设置窗口中可以修改该群组资料,解散该群组,群组解散后所有成员将自动退出该群组。
2)操作者
群主,该群组中的成员用户,被请求加入群组的用户
3)场景
a.用户双击群组列表中想要进行聊天的群组名
b.弹出聊天窗口
c.在消息的输入框中输入想要发送的消息,点击发送,并在消息显示框中显示
d.接收到群组其它成员发送的信息在消息显示框中显示
e.关闭聊天窗口
4)异常
a.消息发送失败
b.服务器故障
5.2.6.发起聊天
1)功能概述
用户通过聊天页面与好友进行聊天,并显示最近输入的消息和最近好友发送的消息。
2)操作者
普通用户,聊天的双方
3)场景
a.用户双击好友列表中想要进行聊天的好友用户名
b.弹出聊天窗口
c.在消息的输入框中,输入想要发送的消息,点击发送,并在消息显示框中显示
d.接收到好友发送的信息在消息显示框中显示
e.关闭聊天窗口
4)异常
a.消息发送失败
b.服务器故障
5.2.7.查看、删除好友
1)功能概述
用户查看好友个人信息,并可以在该功能页面下删除好友。
2)操作者
普通用户
3)场景
a.用户在聊天窗口,点击查看好友资料选项
b.弹出好友资料框
c.完成查看好友资料框
d.可以选择关闭好友资料窗口回到聊天窗口,或选择删除好友
4)异常
a.服务器故障
b.没有联网
5.2.8.用户注册
1)功能概述
用户在用户登陆页面点击注册用户,弹出用户注册页面,用户按规范输入注册信息,完成账号注册。
2)操作者
新用户
3)场景
a.新用户进入网页的用户登陆界面
b.新用户点击用户注册
c.新用户按规范输入注册信息
d.系统检查是否已经存在相同的账号
e.注册成功:
进入登陆页面,输入账号密码
f.注册失败:
输出提示信息,再次载入注册页面
4)异常
a.没有联网
b.未按照规范输入注册信息
c.服务器故障
5.2.9.注销登录
1)功能概述
用户在主页面点击注销用户,弹出确认注销信息,确认后系统发出下线信息并记录用户处于离线的状态,完成注销操作。
2)操作者
用户
3)场景
a.用户进入主页
b.用户点击注销登录
c.弹出注销确认
d.确认后完成注销
4)异常
a.没有联网
b.服务器故障
6.非功能需求
6.1.性能需求
数据处理能力:
oracle数据库的最大连接数缺省值是100,建库时默认值是150,主要受processes这个系统参数(实际还应受操作系统限制),这是个静态参数,修改后必需重启数据库才能生效。
时间特性:
此网页聊天系统具有即时反应的特性,查询服务的响应时间、更新处理时间应当小于3S,否则会严重影响用户体验。
6.2.安全保密需求
本系统利用数据库来存放大量保密性数据,其中包括用户的账号和密码、用户的聊天记录,用户的个人资料;并且通过服务器上的防火墙来提高数据访问的安全性能;在用户登陆时,系统会自动检测用户账号、密码是否非法,若用户帐号、密码非法,将提示用户账户不存在或者密码错误,并返回登陆界面提示用户注册新的账号或重新输入密码;登录模块有一个防止暴力破解密码的功能,当输入错误的密码达到8次后,系统会锁住该账号24小时,24小时后解除锁定;
6.3.扩展性需求
1)功能拓展:
用户在线隐身功能;可以修改列表中好友的备注(仅自己可见),以便于标记和查找经常联系的好友
2)应用需求及可扩展性需求:
由于本系统采用MVC的设计模式,即模式-视图-控制器模式,所以后期非常方便进行功能拓展。
并且模块之间的耦合度会做到尽可能的低,方便后期模块的增删和改动。
7.界面要求
7.1.图形要求
图7-1功能模块图
参考文献
[1]王红梅,胡明,王涛.数据结构.清华大学出版社,2005.7
[2]Y.DanielLiang.Java语言程序设计.机械工业出版社,2009.11
[3]张海藩.软件工程导论(第五版).清华大学出版社,2008.2
[4]王珊,萨师煊.数据库系统概论(第四版).高等教育出版社,2006.5
[5]弗里曼.O'Reilly:
HeadFirst设计模式(中文版).中国电力出版社,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 web 聊天 系统 设计 实现 需求 规格 说明书
![提示](https://static.bdocx.com/images/bang_tan.gif)