JAVA需求分析报告

基于C/S结构的JAVA聊天室系统

需求分析说明书

[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著 清华大学出版社; 《JAVA编程案例精解》 孙印杰 刘斌 孙玉强 编著 电子工业出报社; 《JAVA从入门到精通》 (美)vanhelsuwe等著 电子工业出报社,1997; 《JAVA编程与实例》 (美)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灵活性

该系统的灵活性的要求为:

当系统繁忙时,会发送“系统繁忙”的信息,这样用户可以暂停发送信息,从而缓解系统压力,该系统对这些变化的适应能力较强。

3.3输入输出要求

本系统中涉及到的用户数据信息如下:

用户名:字母,数字和下划线组成(6-20位) 性别:男/女

密码:文本也可以是数字(6-40位) 邮编:数字(6-15位)

Email: 字母,数字和下划线组成(6-40位) 地址:汉字,字母或数字(6-40位)

3.4数据管理能力要求(针对软件系统)

本系统要管理的数据报表有两张: 1. 管理员表

2. 用户表

管理员报表增长速度不会很快,管理不必太频繁。

用户表的增长速度是非常快的,所以要经常加以管理及更新,以免发生数据冗余等造成系统性能降低。

3.5故障处理要求

使用本系统正常情况下不会出错。若运行时遇到不可恢复的系统错误时,也应保证数据库的完整性;遇到系统阻塞,可以重启系统;遇到硬件如硬盘故障时,要留有备份文件;遇到逻辑故障时系统会自动提醒,如非法字符输入等。

3.6其他专门要求

保密性:要求提供用户身份验证,只允许通过身份验证的用户使用该系统;对于服务器,也只有验证通过的管理员可登录。

可靠性;该系统应具有良好的稳定性。

易用性:该软件系统界面应符合目前最流行的界面规范,简单,易用。

可移植性:本系统是用JAVA编写,先天就具有良好的移植性,可在不同的操作系统间运行。

3.7 运行环境的规定

3.7.1设备

3.7.1.1 cpu型号及内存容量

P2或更高,或笔记本电脑。 内存容量:3MB以上。 磁盘空间:5MB以上。 3.7.2 输入/输出设备的型号及数量

.数据采集时,采用键盘和鼠标直接输入 .所需各项设备数量均为1,型号不限。

3.8支持软件

.中文/英文 windows 98/2000/xp

.该系统采用JDBC-ODBC桥接驱动-ACCESS数据库

3.9控制

该系统信息来源键盘与鼠标

基于C/S结构的JAVA聊天室系统

需求分析说明书

[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著 清华大学出版社; 《JAVA编程案例精解》 孙印杰 刘斌 孙玉强 编著 电子工业出报社; 《JAVA从入门到精通》 (美)vanhelsuwe等著 电子工业出报社,1997; 《JAVA编程与实例》 (美)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灵活性

该系统的灵活性的要求为:

当系统繁忙时,会发送“系统繁忙”的信息,这样用户可以暂停发送信息,从而缓解系统压力,该系统对这些变化的适应能力较强。

3.3输入输出要求

本系统中涉及到的用户数据信息如下:

用户名:字母,数字和下划线组成(6-20位) 性别:男/女

密码:文本也可以是数字(6-40位) 邮编:数字(6-15位)

Email: 字母,数字和下划线组成(6-40位) 地址:汉字,字母或数字(6-40位)

3.4数据管理能力要求(针对软件系统)

本系统要管理的数据报表有两张: 1. 管理员表

2. 用户表

管理员报表增长速度不会很快,管理不必太频繁。

用户表的增长速度是非常快的,所以要经常加以管理及更新,以免发生数据冗余等造成系统性能降低。

3.5故障处理要求

使用本系统正常情况下不会出错。若运行时遇到不可恢复的系统错误时,也应保证数据库的完整性;遇到系统阻塞,可以重启系统;遇到硬件如硬盘故障时,要留有备份文件;遇到逻辑故障时系统会自动提醒,如非法字符输入等。

3.6其他专门要求

保密性:要求提供用户身份验证,只允许通过身份验证的用户使用该系统;对于服务器,也只有验证通过的管理员可登录。

可靠性;该系统应具有良好的稳定性。

易用性:该软件系统界面应符合目前最流行的界面规范,简单,易用。

可移植性:本系统是用JAVA编写,先天就具有良好的移植性,可在不同的操作系统间运行。

3.7 运行环境的规定

3.7.1设备

3.7.1.1 cpu型号及内存容量

P2或更高,或笔记本电脑。 内存容量:3MB以上。 磁盘空间:5MB以上。 3.7.2 输入/输出设备的型号及数量

.数据采集时,采用键盘和鼠标直接输入 .所需各项设备数量均为1,型号不限。

3.8支持软件

.中文/英文 windows 98/2000/xp

.该系统采用JDBC-ODBC桥接驱动-ACCESS数据库

3.9控制

该系统信息来源键盘与鼠标


相关内容

  • Java软件工程师转正申请书
  • 第1篇第2篇第3篇第4篇第5篇更多顶部 目录 第一篇:Java软件工程师转正申请书 第二篇:it员工和Java软件工程师转正申请书 第三篇:Java软件工程师介绍 第四篇:Java软件工程师如何学习 第五篇:Java软件工程师 更多相关范文 正文 第一篇:Java软件工程师转正申请书 尊敬的公司领导 ...

  • 企业管理系统毕业论文
  • 北 京 青 年 政 治 学 院 毕 业 论 文 题 目 系 别 专 业 姓 名 学 号 指导教师 目录 1. 绪论 ............................................................ 1 1.1应用目的与重要性.................. ...

  • 酒店管理系统需求分析
  • 目 录 文档总页数:15页 1 引言 ................................................................. 1 1.1 开发背景 ...................................................... ...

  • 网上书店系统详细设计说明书
  • 郑州华信学院 课程设计说明书 题目: 姓 名: 秦金磊 院 (系): 信息工程系 专业班级: 计算机科学与技术 学 号: 0801110164 指导教师: 杨杨 成 绩: 时间: 年 月 日至 年 月 日 数据库与信息管理课程设计 目录 摘 要 ........................... ...

  • 毕业论文---oracle数据库巡检报告自动生成工具
  • 题 目:oracle 数据库巡检报告自动生成工具 目 录 摘 要: .................................................................................................................... ...

  • 美容美发管理系统毕业论文
  • 本科学生毕业论文 论文题目: 学 院: 年 级: 专 业: 姓 名: 学 号: 指导教师: 美容美发管理系统的设计与实现 软件学院 2010级 软件工程 魏悦明 20103921 玄萍 2014年 5月 10日 摘要 随着国内经济形势持续发展,国内餐饮业进入了市场发展高峰期.在信息高度发达的今天,非 ...

  • 基于Android平台的新闻客户端的设计与实现
  • 摘 要 随着智能手机世界范围内的迅速发展,智能手机的操作系统之间的竞争也是越来越激烈.为了让智能手机用户能够十分便利地了解当前世界的实时资讯,一种高效的办法就是将查看新闻的功能拓展到手机终端上.因此,开发出一款智能手机的新闻客户端将有广阔的前景. 本文是基于android 操作系统,开发出一款and ...

  • 毕业论文--汽车票订票系统
  • 摘 要 随着我国铁路交通的不断发展,简单的窗口售票模式已经不能满足方便人们出行的目的.采用先进的网络技术开发出方便快捷的网上订票系统是现代客运业务发展的必然需求.本次设计的火车票网上订票系统通过访问主页,可以实现个人信息注册.车次车票价格查询.在线订票退票等基本功能,为用户提供方便快捷的订票服务. ...

  • 数据库课程设计_员工薪资管理系统
  • **理工学院 数据库课程设计报告 --员工薪资管理系统 学 专 业:计算科学与技术 课 程:数据库原理及应用 班 级:** 级 计 科 * 班 组 员: 学 号:*********** 3. *****8. **********9 指导教师: 2014/07/02 *摘 要* 企业员工薪资管理是公司 ...