聊天软件需求分析

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

T433-2计科七班聊天软件需求分析编号:__003____________版本:____1.0__________即时通讯需求分析说明书委托单位:软件工程课程承办单位计科七班小组编写签名______________2009年10月15日复查签名______________2009年10月16日批准签名__________________2009年月日T433-2计科七班聊天软件需求分析2聊天软件需求分析说明书1.引言1.1编写目的本需求规格说明书编写的目的是为了清晰地说明本小组开发《宅青春聊天软件》要实现的所有功能。同时也为软件使用者和软件开发者之间建立共同的需求目标,进行一定程度的交流沟通。同时对软件所需实现的功能模块做了全面的描述。它是后续开发工作和验收工作的依据文件。软件使用者和软件开发者以此为共同的基础。1.2项目背景随着网络的普及,人类生活越来越依赖网络,人与人之间的交也更多的是在网络上进行,于交流的实时性,即时通讯系统也被越来越多的人所使用。即时通讯系统除了普通的生活上的交流,也在商业交流中越来越受到重视,它可以是个很好的与客户之间即时交流的平台,在时间上它要比电子邮件更加具有实时性,而费用相对电话交流也要经济的多。在这种环境下,聊天软件作为一种即时通讯工具,得到了很好的发展。1.3任务描述1.3.1目标开发一个即时通讯软件,能够即时发送接受信息,操作简单,能良好的运行。1.3.2条件与限制开发时间:二个月开发环境:J2SESDK1.5,NetBeans5.5.1,JBuilder2006,MSSQLSERVER20051.3.3需求交流者身份的确定,即交流双方需要各自确定允许与对方交流才能交流;交流信息的加密,即不允许他人窃听双方的交流信息;点对点交流(私聊),一次对话的对象只是一个人;同时可以利用本系统形成的P2P(peertopeer,点对点)网络进行用户间的文件传输,进行资源的共享。2.功能描述T433-2计科七班聊天软件需求分析3即时通讯是指利用计算机网络,在几乎可以忽略传输时间延迟的情况下,实时的信息发送与接收,即在发送人发送出信息的同时,指定的接受者接收到信息。这样的交流有别于电子邮件会耽误一定的时间,减少因时间的耽误而引起的损失。而所谓P2P网络就是直接将人们联系起来,让人们通过互联网直接交互。P2P使得网络上的沟通变得容易、更直接共享和交互,真正地消除中间商。P2P就是人可以直接连接到其他用户的计算机、交换文件,而不是像过去那样连接到服务器去浏览与下载。P2P另一个重要特点是改变互联网现在的以大网站为中心的状态、重返“非中心化”,并把权力交还给用户。3.系统流程图事务用户登录程序数据库用户聊天程序用户注册程序T433-2计科七班聊天软件需求分析44.数据流图D基本信息好友添加1处理登陆信息登陆信息错误提示用户ID和密码聊天界面登陆信息用户2基本信息存储注册信息错误提示聊天界面好友发送的信息用户发送的信息注册信息好友发送的信息用户(好友)3聊天信息/文件传输用户发送的信息T433-2计科七班聊天软件需求分析55.系统数据模型(E-R图)mn用户(帐号,密码,昵称,个人介绍,IP,PORT,状态,电子邮件,性别,籍贯)好友聊天(帐号,帐号)6.数据字典电子邮件性别密码ipport个人介绍头像昵称用户籍贯状态好友聊天帐号T433-2计科七班聊天软件需求分析6名字:用户表别名:iUser描述:详细描述用户信息定义:用户表=账号+昵称+密码+个人介绍+IP+PORT+状态+电子邮件+性别+籍贯位置:数据库名字:帐号别名:ID描述:惟一标识用户身份的关键域定义:帐号={整型}位置:用户表名字:昵称别名:nickname描述:表明用户身份的一个方面定义:昵称=1{字符}6位置:用户表名字:密码别名:password描述:确定用户身份合法性定义:密码=1{字符}6位置:用户表名字:好友聊天表别名:friend描述:好友列表定义:好友聊天表=自己帐号+好友帐号位置:数据库名字:IP别名:描述:当前用户IP地址定义:IP=7{字符}20位置:用户表名字:PORT别名:描述:通讯所用端口定义:PORT=1{字符}6位置:用户表名字:状态别名:status描述:表明用户是否在线定义:状态={整型}位置:用户表T433-2计科七班聊天软件需求分析77.IPO表名字:个人介绍别名:info描述:用户相关个人信息定义:用户信息=0{字符}40位置:用户表名字:电子邮件别名:email描述:用户电子邮件地址定义:电子邮件=0{字符}35位置:用户表名字:性别别名:sex描述:用户性别定义:性别=0{字符}2位置:用户表名字:籍贯别名:place描述:用户籍贯定义:籍贯=2{字符}10位置:用户表IPO表系统:即时通讯作者:冰点模块:登录日期:编号:002IPO表系统:即时通讯作者:冰点模块:注册日期:编号:001T433-2计科七班聊天软件需求分析88.聊天软件功能说明8.1登陆以及身份确认(密码验证)功能的实现:用户在登录界面输入用户ID和密码,系统进行用户身份验证,如果通过用户身份验证则转入相应的工作界面,如果没有通过用户身份验证则显示下列信息:输入:用户ID,密码IPO表系统:即时通讯作者:冰点模块:添加好友日期:编号:004处理:连接服务器端进行身份验证输入:聊天内容输入:好友ID输入:用户注册信息处理:将用户填写的相关注册信息提交给服务器端然后加入数据库IPO表系统:即时通讯作者:冰点模块:聊天日期:编号:003处理:发出请求,询问对方是否愿意输入:聊天内容处理:发送到好友T433-2计科七班聊天软件需求分析9用户名与密码不符用户可以重新输入正确的ID和密码。验证用户身份:T433-2计科七班聊天软件需求分析10显示返回信息:8.2用户相关信息:用户身份验证结果Yesno显示聊天页面显示错误信息T433-2计科七班聊天软件需求分析11包括用户个人ID、自我介绍、好友列表、好友状态(是否在线),等等。8.3点对点即时通讯/文件传输功能:选择通讯对象后,如果是聊天则用户发送信息实时在交流对象的客户端显示。待有客户端反馈信息时,将会显示在用户相应工作界面中。如果是传输文件则再弹出对话框让用户选择需要传输的文件,并发送传输文件的请求信息,对方接受到请求信息,同意后建立文件传输的连接进行文件传输,同时显示文件传输的进度。8.4用户信息的加密:计算机网络安全最为重要的内容是为用户提供安全可靠的保密通信,其中最常用的手段是密码机制.在本系统中所采用的加密算法是报文摘要算法(MD5)。在用户注册,登陆以及用户与用户间的交流等一切信息均先经过MD5加密后形成密文才进行传输,接收方经过共享密钥进行解密后才能得到明文。8.4用户ID的保护:为了防止他人使用暴力破解的方式破解密码,限定每五次输入密码错误,必须等待半个小时才能重新登陆;修改密码时需要填写验证码。8接口说明T433-2计科七班聊天软件需求分析128.1用户界面1.用户登陆的界面:采用填文本框的方式填写ID和密码,以及确定、退出、注册按钮。2.用户注册界面:采用填写文本框方式填写用户的各项信息。3.用户对屏幕格式的控制操作方式:无4.出错信息及显示方式:采用弹出对话框提示或在出错位置输出出错提示。T433-2计科七班聊天软件需求分析138.2硬件接口无8.3软件接口系统服务器端与数据库通过JDBC与数据库进行连接,客户端之间或者与服务器端之间通过UDP进行连接,不提供与其他软件的接口。1.数据库与即时通讯系统之间:数据库中的所有表对相应系统处理程序都是开放的,即可以读取,也可以写入。9性能要求a.实时性:在一方发送信息后,另一方能够在最多15秒内接收到对方信息。b.可用性:系统应该要有非常好的交互性,能及时提供各类出错信息,而不会因为输入错误而影响整个系统或相关系统的运行。c.可靠性:系统应该防止第三方窃听到通讯双方通信内容,以及身份认证、防止密码的暴力破解。10运行需求用户界面简单易懂,一目了然,没用太多的烦琐,可以在任何安装了JDK/JRE的机器上运行。11故障处理T433-2计科七班聊天软件需求分析141、出错情况:用户输入数据的格式或长度错误;违反数据库的完整性约束条件。出错信息输出:系统将以对话框的形式或在出错位置提示的方式提醒用户。2、出错情况:文件传输中途断线。出错信息处理:重传时从断点处续传。12类图登录模块类图T433-2计科七班聊天软件需求分析15注册类图:T433-2计科七班聊天软件需求分析16服务器类图:服务器端算法描述:publicvoidrun()//继承Thread方法{监听客户端按钮ButtonClick事件响应;if(确定){与数据库连接;取得用户输入的ID和密码;和数据库中对应信息匹配验证;if(验证通过){告诉客户端验证成功;将用户表中对应的状态字属性值置1;}elseT433-2计科七班聊天软件需求分析17{if(用户输入ID不存在){告诉客户端ID不存在;}elseif(用户密码输入错误){告诉客户端密码错误;}}关闭数据库连接;}Elseif(取消){break;}Elseif(注册){与数据库建立连接;取得用户输入的相关注册信息;生成用户ID;将ID与取得的注册信息插入数据库;向客户端返回ID和注册成功信息;关闭数据库连接;}if(添加好友){连接数据库;取得用户1输入的用户2的1ID;取得用户2的响应信息;If(同意){T433-2计科七班聊天软件需求分析18将用户2ID添加到用户1ID据库中的好友表中;将用户1ID到用户2ID库中的好友表中;}Else告诉用户1对方拒绝成为其好友;关闭数据库连接;}}If(删除好友){连接数据库;删除好友表中双方对应的元组;关闭数据库连接;}}If(退出){连接数据库;将用户表中对应的状态字属性值置0;关闭数据库连接;}}

1 / 18
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功