1引言
1.1 编写目的
作为用户与该系统软件开发维护人员共同遵守的软件需求规范说明,本《软件需求说明书》的主要目的是明确所要开发的软件所应具有的功能、性能,使系统分析人员和软件设计人员能清楚地了解用户的需求,并在此基础上进一步提出概要设计和完成后续设计与开发工作,为软件开发范围、业务处理规范提供依据,也是应用软件进行合同最终验收的依据。
客户登陆后可以通过服务器转发,实现一对一和多对多聊天,闪动托盘图标提示到来信息,实现呼叫功能,并播放不同音乐来提示。系统可以实时显示目前其它用户的状态,保存并能察看聊天纪录,并可以申请新的用户号码。用户登陆成功,将保存其号码,以便下次登陆时,不必再输入而可以直接选择,显示登陆时间。服务器端,向各个客户端发布系统消息。接受来自客户端的各种信息并分别处理。自动分配8位用户号码,并保存该用户,同时将信息返回给客户端。用户下线,将此用户下线消息发给各客户端,并改写用户在服务器端的状态。系统易用、美观的图形界面,可以实现系统托盘。
此外系统还涉及系统数据安全和用户管理的问题、各种代码使用和维护问题、数据安全和数据维护问题、聊天记录和输出等问题,因此还要求系统具有系统管理和事务处理功能。总而言之,要求通过系统的开发,达到系统项目的总体目标是:在整个系统的框架下,结合客户端与服务器端情况的需要实现对数据更新、数据查询、数据统计、数据分析等功能进行有效的管理。并提供用户友好接口,满足用户需求的软件。
预期的使用者就是各单位办公区、联系密切的同学朋友及家人、公司同事等,使用前仔细阅读此软件说明是很必要的,以便更好的使用、管理和维护此系统!
1.2 背景
a、待开发软件名称:模拟QQ聊天工具
b、本项目的任务提出者:夏小娜
好qq号开发者:傅晓荷、杜欣欣、董来稳、封娇、郝珍巍、周翼飞;
用户:所有使用QQ的用户。
实现软件的单位:曲师大08级软件工程1班第2小组
cQQ作为基础的聊天工具,方便所有计算机用户的交流。因此此系统在操作系统的基础上,结合数据库管理系统,运用JAVA来实现运行。
1.3 定义
      模拟QQ聊天工具  数据结构  JAVA语言程序设计
1.4 参考资料
《模拟QQ聊天工具需求分析文档》曲师大08级软件工程1班第2小组编写
《软件工程导论》(第五版)20082 张海藩编著清 华大学出版社
《数据库系统概论》(第四版)20065 王珊 萨师煊著    高等教育出版社
Java语言程序设计》 Y.Daniel Liang 机械工业出版社 2009.11出版
《数据结构》  王红梅、胡明、王涛著 清华大学出版社 2005.7出版
2任务概述
2.1目标
通过学习软件工程的设计方法,主要采用JAVA编程技术以及数据库应用,使用户可以使用具备登陆功能、聊天功能、查询功能、娱乐功能、账号管理功能、申请功能的软件,主要用于聊天交流与娱乐。
2.2用户的特点
用户申请后系统自动分配8位账号,密码不得包含特殊字符,由数字,字母等组成。
登陆,聊天,查询聊天纪录,接受信息提示。
2.3假定与约束
开发日期:20104月至2010年六月。
本系统开发人员为6人。
本系统适用于一般市面上的机型。
3需求规定
3.1对功能的规定
3.1.1根据各类用户的需求描述,系统应当具备登陆系统、聊天系统这两大主要功能。

登陆系统功能需求:
检查登陆信息是否正确,并向客户端返回登陆信息,如信息正确。就将在线用户发给该用户,并将该用户的状态发给各在线用户。同时在服务器端显示出来。建立与服务器的连接并登陆,能显示登陆错误信息   用户登陆成功,将保存其号码,以便下次登陆时,不必再输入而可以直接选择,显示登陆时间。因为每个用户的QQ号码和密码都是不相同的,因此必须要求后台管理系统能根据系统需求,动态的、准确的更新系统数据。
聊天管理功能需求:
与好友聊天,实现一对一和多对多聊天;有信息提示,闪动托盘图标提示到来信息,并播放不同音乐来提示,转发给消息指定的用户;能保存聊天纪录,并能察看聊天纪录。
根据系统用户的需求,将本系统按功能划分成两大功能模块:登陆系统、聊天系统,涉及到各类用户:例如学生、教师、系统管理员等。

1 登陆系统模块
本模块的功能是用户正确登陆的实现及管理,涉及各个类别的用户:例如学生、教师,进行QQ登陆的用户通过此功能模块进行QQ的登录及登录信息;预设系统在线审批QQ登录用户的信息及查看记录信息以及密码;预设系统在线审批学生长时间的请假及查看请假记录信息。
IPO
  系统:模拟QQ聊天系统                      作者:第二小组
  模块:登陆系统模块                       日期:2010422
  编号:NO1

2 聊天系统模块
本系统的功能是聊天功能的实现、查看以及管理。用户可以和在线好友聊天并且留言给不在线的好友,以及查看或者是删除聊天记录
系统:模拟QQ聊天系统                      作者:第二小组
  模块:聊天系统模块                       日期:2009422
  编号:NO2
   
3 后台管理模块
  本模块的功能实现整个系统数据的同步更新及维护,只涉及系统管理员用户。系统管理员动态的管理用户信息、聊天记录的保存及删除等信息,是整个系统实现的基础。
IPO
系统:模拟QQ聊天系统                      作者:第二小组
模块:后台管理模块                      日期:2009422
编号:NO2
3.1.2 用户需求描述
1.用户的需求描述
用户对本系统的主要需求是:可以申请账号,设置密码以及修改密码。可以给自己的账户设置昵称,填写个人资料。任何在线用户都可以和处于在线状态的好友进行聊天,以及留言给不在线的好友,也可以呼叫在线好友,双方进行语音聊天。可以查看任何好友的基本资料,可以查看,以及删除聊天记录(包括聊天时间,聊天内容以及聊天对象)。
其它需求:查看本人的基本信息,如本人的的昵称,性别,年龄,生日,星座,生肖,血型,所在城市等。在线状态和离线状态要有明显的区别,要有消息提示以及呼叫提示功能。
2.系统管理员用户需求描述
系统管理员有系统的最高权限,负责系统所需所有数据的动态同步更新以及维护,根据系统针对用户的设计,基本功能需求如下:
1)、管理本系统所有聊天记录(包括聊天时间,聊天内容,以及聊天对象),并且根据用户的需求进行保存或者删除。
2)、管理申请有本系统账号的所有用户的基本资料。
3.1.3  数据表描述
    用户信息表(用户名、密码、验证信息等)
    聊天记录(聊天时间、聊天内容、聊天对象等)
    用户登录信息(用户名、密码、登录时间、下线时间等)
3.1.4  E_R
3.1.5 功能模型---数据流图(DFD
功能模型表明一个计算如何从输入值得到输出值,它不考虑计算的次序。功能模型由多张数据流图组成)
系统级流图
数据流图
3.2对性能的规定
3.2.1精度
在进行输入输出时必须清晰的列出所有输入状况及数据,不能马马虎虎,要考虑到尽可能达到的范围,以使输入输出完整准确。
3.2.2时间特性要求
  查询服务部分:用户通过电脑提交命令到返回结果不超过5秒钟。
  数据管理部分:提交某一数据录入到结果返回不超过5秒钟。
3.2.3灵活性
  操作方式:            支持Windows2000及以上的操作系统。
  同其他软件接口:      设计连接Access数据库的软件包。
  精度和有效时限的变化:用户自己设定。
3.3输入输出要求
  要符合精度的设定。
3.4数据管理能力要求
1)聊天号信息:聊天号,大小为6个字符,只能为数字; 
2)聊天记录信息:不能存在非法语言
3)用户名信息:不能超过20个字符
4)密码信息:6个字符
5)管理员:用户编号:大小为10个字符;用户名:不超过20字符;用户密码:不超过12字符;用户权限:2个字符。
对用户信息、管理员信息等内容的存储的各表至少需要100M以上空间,即至少需要500M空间进行数据的存储,并至少需要2G空间对增长的数据进行保存。
3.5 故障处理要求
1)磁盘碎片过多、数据库存储空间不够,引起数据库访问变慢等问题需要对磁盘进行扩展和维护。
2)执行程序非正常退出,响应确实,修改源代码前应备份。
3)数据库没启动引起访问问题,须启动数据库服务器。
4)其他具体问题,再做具体分析。多查多问。
3.6 其他专门要求
    在程序的开发过程中,应遵循结构化的程序设计原则,精心设立运行日志,从而加强系统的可维护性;另一方面要注重系统的界面友好性、保持各程序模块界面的统一。
4运行环境规定
4.1设备
4.1.1最低配置
服务器端:
1)硬件需求:处理器  Intel Pentium III  内存 128M  硬盘  20G
2)软件需求:简易聊天系统服务器端
Access 数据库 
客户端
1)硬件需求:处理器 CPU PIII 800Mhz 内存 128M 显卡GeForce2(显存16M) 声卡 支持Direct Sound的声卡 操作系统 WindowsXP 硬盘100MB
2)软件需求:简易聊天系统客户端
4.1.2 建议配置
服务器端:
1)硬件需求:处理器  Intel Pentium IV 2.8G 内存 256M 硬盘  40G
2)软件需求:简易聊天系统服务器端
ACCESS 数据库      简易聊天系统服务器端
客户端
1)硬件需求:处理器 PIII 1GMhz或更高 内存256M或更高
操作系统 WindowsXP  硬盘  1G
2)软件需求:简易聊天系统客户端
4.2 支持软件
操作系统: windoows 2000
编译程序:JAVA  Access
测试程序:JAVA
4.3接口
本软件应用Windows Api实现对数据库的操作,基于ODBC数据库访问技术。
本产品的用户一般需要通过终端进行操作,进入主界面后点击相应的窗口,分别进入相对应的界面(如:输入界面、查询界面)。用户对程序的维护,最好要有备份。