JAVA需求分析报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于C/S结构的JA V A聊天室系统
需求分析说明书
[V1.0(版本号)]
拟制人______________________
审核人______________________
批准人______________________
[二零零六年四月十二日]
需求说明书
1.引言
1.1编写的目的
JAVA以网络编程的优势著称于世,本系统就是一个基于C/S结构的聊天室系统,其目的就是帮助在线客户创造一个交流的平台,以友好,迅速的用户界面为载体,从而实现多人聊天和单人聊天功能,该说明书仅供项目研发小组领导及项目设计开发小组成员参阅。
.
1.2背景
a.待开发的系统的名称定义为:基于C/S结构的JAVA聊天室系统;
b.本项目的任务提出者为该项目的项目经理、开发者为该项目的项目小组成员、用户为
所有在线客户;
c.该系统同腾讯QQ无任何相互来往关系。
1.3定义
与系统有关的术语及解释:
TCP/IP:传输控制协议/网间协议
HTTP:超文本传输协议
Socket-based communication:基于Socket的通信方式
Stream Socket:流Socket
Datagram Socket:数据包Socket
TCP:传输控制协议
UDP:数据包协议
1.4参考资料
《软件工程导论》张海藩编著清华大学出版社;
《数据库原理及技术》刘方鑫编著电子工业出报社;
《TCP/IP协议族》 Behrouz A.Forouzan,Sophia Chung Fegan著清华大学出版社;
《JA V A编程案例精解》孙印杰刘斌孙玉强编著电子工业出报社;
《JA V A从入门到精通》(美)vanhelsuwe等著电子工业出报社,1997;
《JA V A编程与实例》(美)lalani,jamsa著电子工业出报社,1997;2.任务概述
2.1目标
本软件旨在为所有在线客户提供一个更方便,更快捷,更友好相互交流的空间,通过应用此系统,用户可以切身体会到该系统的易用,实用,以及操作起来简捷方便。因为本系统是面对所有在线客户,所以只要注册,登录就可使用,无须其他任何设置。再次声明本系统与腾讯QQ及任何聊天室系统无任何相互来往关系。
2.2用户的特点
使用本系统的用户非常之广泛,该系统简单,易学,适合任何具备阅读能力的用户。
本系统操作人员,维护人员皆具备大学本科学历且精通JAVA技术,部分人员具备JAVA 工程师级别认证。
预计本系统使用频度为中等偏高。
2.3假定和约束
考虑到该软件系统的大众化,因而应注意软件的可移植性,同时因本软件的代码公开,客户不可以在线发送信用卡帐号及密码,否则后果自负,所以因注意安全性防范工作。
3.需求规定
3.1对功能的规定
3.1.1首先,该聊天系统采用C/S架构,由服务器和客户端组成。
.聊天室服务器必须具备以下功能:
(1)启动服务,建立侦听并验证,接受客户端连接。
(2)接收,分析,转发聊天信息。
(3)向客户端发送系统信息。
(4)关闭服务,并向客户端发送服务器关闭信息。
为实现以上4个聊天服务器功能,需要建立以下4个类:
(1)用户信息链表类:该类提供一个链表数据结构及对一组链表的操作函数,用于保存登录用户信息;它提供了链表的添加,删除,查找等基本功能。
(2)服务器主框架类:主框架类不仅提供了服务器的人机交互界面,而且在其中实现了服务器的启动和关闭以及服务器系统消息的发送功能。
(3)服务器侦听线程类:该类的父类是Thread类,它负责侦听客户端的连接,并实现验证及响应用户登录功能。
(4)服务器接收线程类:接收线程类的父类是Thread类,它负责接收客户端的信息,并且对信息类型作出判断和相应的响应。比如,当它收到客户端下线信息,就会调用响应的函数,响应用户下线请求。
.聊天室客户端必须具备以下功能:
(1)连接服务器,发送用户登录请求。
(2)向服务器发送聊天信息。
(3)接收服务器转发的聊天信息。
(4)接收服务器发送的系统信息。
(5)响应服务器关闭通知信息。
为实现以上5个功能,需要建立以下两个类:
(1)客户端主框架类:客户端主框架类除了完成与用户的交互作用外,它还实现了用户的登录与下线功能,以及聊天信息的发送功能。
(2)客户端接收线程类:接收线程类的父类为Thread类,在该类中实现了信息接收的功能。该线程一经启动,就一直处于接收信息的状态,直到用户下线或服务器关闭。其中响应服务器关闭的功能也是在接收线程类中实现的。
.该系统稳定性强,容量庞大,支持的终端数量较多,并行用户响应较快。
3.1.2系统E-R图
分层图2
3.2 对性能的规定
3.2.1精度
该系统输入、输出数据精度的要求为:
所有用户用户名必须为字母,数字和下划线组成。
密码必须是ACCESS所支持的格式,可以是文本也可以是数字。
所有发送消息类型可以是任何文本及数字或者图片。
3.2.2时间特性要求
该系统的时间特性要求为:
由于系统容量较大,并行用户较多,所以对系统响应速度提出了更高的要求,本系统的响应时间最多为6秒。
3.2.3灵活性
该系统的灵活性的要求为:
当系统繁忙时,会发送“系统繁忙”的信息,这样用户可以暂停发送信息,从而缓解系统压力,该系统对这些变化的适应能力较强。