基于TCP协议的通讯QQ聊天软件系统设计.docx
- 文档编号:29831581
- 上传时间:2023-07-27
- 格式:DOCX
- 页数:21
- 大小:502.47KB
基于TCP协议的通讯QQ聊天软件系统设计.docx
《基于TCP协议的通讯QQ聊天软件系统设计.docx》由会员分享,可在线阅读,更多相关《基于TCP协议的通讯QQ聊天软件系统设计.docx(21页珍藏版)》请在冰豆网上搜索。
基于TCP协议的通讯QQ聊天软件系统设计
摘要
基于TCP协议的通讯QQ聊天软件系统设计
摘要:
随着科技的快速发展,人们的日常通讯信方式也在不断地进步,从费时费力的利用马匹送信,到后来的利用交通工具送信,再到方便快捷的电报通信,一代又一代的更新发明,渐渐地就出现了电话等各种电子产品,极大地拉近了人与人之间的距离。
本设计是基于TCP协议的通讯QQ聊天软件系统设计,采用Client/Server结构进行设计,使用SQLServer2000构建数据库,通过基础的网络SOCKET编程,为即时通讯提供一个简单而安全的解决方案,使用TCP协议实现端到端的文件传输,实现即时通讯的功能,既能保证数据可靠传输,又能提高传输的效率。
该软件能实现用户之间的聊天和传输文机,类似QQ等软件,但此软件只有注册登录、聊天、收发文件等基本功能,不足之处仍需改进。
关键词:
Client/Server结构;即时通讯;TCP协议
第1章绪论
1.1研究背景和意义
1.1.1课题的背景分析
TCP/IP协议中文名为传输控制协议/因特网互联协议,也称为网络通讯协议,是Internet国际互联网络的基础和Internet最基本的协议,它定义了电子设备如何连接因特网以及数据如何在它们之间传输的标准。
协议采用了4层的层级结构,当TCP发现传输的问题,一有问题就发出信号并且要求重新传输,直到所有数据安全正确地传输到目的地。
IP是每一台联网设备的地址。
TCP提供了一种可靠的数据流服务,通过三次握手建立连接,通讯完成是要拆除连接,因此TCP只能用于端到端的通讯。
1.1.2本课题研究的意义
TCP是一种面向连接的、可靠的、基于字节流的传输层通信协议,作为一种可靠传输控制协议,其核心思想:
既要保证数据可靠传输,又要提高传输的效率,而用三次握手恰恰可以满足以上两方面的需求。
1.2开发目标和开发和环境
1.2.1开发目标
本课题目标是实现用户之间的即时交流和文件传输,通过基础的网络SOCKET编程,为即时通讯提供一个简单而安全的解决方案。
1.2.2开发环境
本系统采用Client/Server结构进行设计,使用SQLServer2000构建数据库,并使用SOCKET套接字开发一个基于TCP协议的通信软件,实现聊天、文件传输功能。
第2章
需求分析
2.1软件功能模块
(1)注册登录:
聊天者需要在登录界面进入注册界面注册账号,系统会自动分配账号,密码、确认密码、昵称、性别、年龄、地区需要用户自行选择或输入,完成注册返回登录界面输入账号、密码和服务器IP登录成功后才能操作软件的功能。
(2)聊天:
登录成功后,聊天者可以选择在线的好友进行聊天。
(3)收发文件:
聊天者可以在本地选择发送文件给好友。
(4)清空谈话内容:
聊天者可以随时清空当前聊天窗口的所有谈话内容。
(5)刷新列表:
聊天者可以手动刷新聊天者列表。
2.2软件用例分析
2.2.1软件用例图
图2-1软件用例图
此软件模仿了QQ部分功能,包括注册登录、文字聊天、收发文件、清空谈话内容、刷新列表、查看用户资料。
如上图2-1所示。
1.注册登录用例规约表
表2-1注册登录用例规约表
用例编号
1
用例名称
注册登录
功能描述
主要用于注册和验证登录者的身份
执行者
聊天者
前置条件
注册界面、登录界面
后置条件
登录成功
涉众利益
聊天者
基本路径
注册:
打开登录界面
点击“注册”进入注册界面
2.1输入密码;
2.2输入确认密码;
2.3输入昵称;
2.4选择性别;
2.5输入年龄;
2.6输入地区;
2.7点击“确定”或“取消”
2.7.1注册成功,给出随机用户号码;
2.7.2注册未成功,返回登录界面;
登录:
3、输入账号、密码和服务器IP
4、点击登录按键
4.1跟用户信息表进行匹配
4.1.1登录成功:
进入聊天者列表界面
4.1.2登录失败:
提示账号不存在或密码错误,返回操作3
扩展
注册阶段:
确认密码与密码不相同时提示“密码与确认密码不一致”;
当信息未填满而确认注册时,提示“请填充所有选项”;
登录阶段:
用户号码匹配失败时提示“该用户号码不存在”;
用户密码错误时提示“密码输入错误”;
服务器IP错误时提示无法连入该服务器。
输入密码后可以选择或取消记住密码
字段列表
用户信息:
用户账号、用户密码、用户昵称、性别、年龄、地区
业务规则
备注
注册和登录是最基本的部分,不完成注册和登录是无法实现软件的其他功能的,而注册和登录的用例规约表如上表2-1所示。
进入登录界面后,未曾注册的用户需要点击“注册”进入注册界面进行注册,输入用户密码、确认密码、用户昵称、年龄、性别、地区后点击确认注册,若用户密码与确认密码不一致会注册失败并出现提示,若信息未填全则无法注册并提示用户填全信息。
注册成功则返回登录界面、弹出提示框提示注册成功,并给出用户号码,而用户的信息会保存到用户信息表中。
回到登录界面后输入账号、密码和服务器IP后点击登录,与用户信息表匹配完毕,信息一致则登陆成功,进入聊天者列表;信息不一致则提示登录失败,账号或密码错误。
2.聊天用例规约表
表2-2聊天用例规约表
用例编号
2
用例名称
聊天
功能描述
登录成功后,聊天者可以选择在线的好友进行聊天
执行者
聊天者
前置条件
登录成功,且有在线的好友
后置条件
进行聊天等操作
涉众利益
聊天者
基本路径
1、双击选定要进行聊天的对象以打开聊天窗口;
2、输入信息;
3、点击发送;
4、信息记录到消息框。
扩展
字段列表
聊天者信息:
聊天者的昵称、信息类型
业务规则
发送的信息不可以是空格
备注
聊天功能仅限于文字信息的互相发送,聊天用例规约表如上表2-2所示。
用户通过聊天者列表进入聊天窗口,在消息框输入信息后点击发送信息,信息就会发送到对方用户的消息显示框中。
3.收发文件用例规约表
表2-3收发文件用例规约表
用例编号
3
用例名称
收发文件
功能描述
登录成功后,聊天者可以选择在线的好友进行文件发送
执行者
聊天者
前置条件
登录成功,并进入聊天窗口
后置条件
进行聊天等操作
涉众利益
聊天者
基本路径
发送文件:
1、打开聊天窗口;
2、点击发送文件;
3、在本地选择要发送的文件;
4、点击确认发送。
接收文件:
接收
1.1点击确认接收文件;
1.2选择文件保存在本地中的位置;
1.3点击确认保存。
2、拒收
2.1点击取消。
扩展
字段列表
聊天者信息:
聊天者的昵称、信息类型
业务规则
发送的文件可以中途停止发送
备注
收发文件功能是此软件使用到TCP协议的部分,需要聊天者双方确认才可以进行文件的发送,用例规约表如上表2-3所示。
用户进入聊天窗口后,点击“发送文件”,然后在本地选择要发送的文件,然后确认发送;而另一方收到有文件传输的消息后可选择接收或拒收,若接收则点击“确定”接收,并选择保存路径,然后确认保存。
4.清空谈话内容用例规约表
表2-4清空谈话内容用例规约表
用例编号
4
用例名称
清空谈话内容
功能描述
聊天者可以清空当前聊天窗口的所有谈话内容。
执行者
聊天者
前置条件
进入聊天窗口
后置条件
聊天窗口的谈话内容全部被清空,谈话内容重新积累
涉众利益
聊天者
基本路径
进入聊天窗口,点击清空谈话内容按键。
扩展
1、进入聊天窗口
2、发送聊天信息
3、点击清空谈话内容按键
字段列表
聊天内容的时间、聊天内容的类型
业务规则
已清空的谈话内容不可以在聊天窗口恢复
备注
清空谈话内容用例规约表如上表2-4所示。
用户进入聊天窗口聊天过后,可点击“清空记录”以清空当前聊天窗口的所有聊天信息,而已清空的谈话内容不可以在聊天窗口恢复。
5.刷新列表用例规约表
表2-5刷新列表用例规约表
用例编号
5
用例名称
刷新列表
功能描述
聊天者可以手动刷新在线人员列表
执行者
聊天者
前置条件
登录后才能刷新列表
后置条件
刷新列表成功
涉众利益
聊天者
基本路径
点击用户列表界面下的刷新按键
扩展
字段列表
好友昵称
业务规则
备注
刷新列表功能操作步骤如上表2-5所示。
聊天者登陆成功进入聊天者列表后,可点击“刷新”按键刷新聊天者列表以显示最新的在线用户。
6.查看用户资料用例规约表
表2-6查看用户资料用例规约表
用例编号
6
用例名称
查看用户资料
功能描述
聊天者可以查看对方的用户资料
执行者
聊天者
前置条件
进入聊天界面
后置条件
显示用户资料
涉众利益
聊天者
基本路径
1、进入聊天界面
2、点击查看资料
扩展
字段列表
用户昵称、性别、地区、年龄
业务规则
备注
查看用户资料用例规约表如上表2-6所示。
用户进入聊天窗口后可点击“查看资料”查看对方的用户信息,点击以后会自动从用户信息表中提取对应用户除密码以外的其他信息,并显示在消息显示界面。
以上为注册登录、聊天、收发文件、清空谈话内容、刷新列表、查看用户资料用例的用例规约表,包含了对用例的描述、执行者、前置和后置条件、涉众利益、基本路径、扩展等与用例相关的信息,通过规约表可大概地了解各用例的操作。
2.2.2软件实现类图
图2-2实现类图
此软件有显示信息界面、显示注册界面、显示登录界面、显示聊天者列表、显示聊天窗口这6个接口,接口相互连接并拥有各自的属性和操作。
如图2-2所示。
2.2.3软件顺序图
1.注册登录顺序图
图2-3注册登录顺序图
注册和登录是最基本的部分,不完成注册和登录是无法实现软件的其他功能的,而注册和登录的大概流程如上图2-3所示。
进入登录界面后,未曾注册的用户需要点击“注册”进入注册界面进行注册,输入用户密码、确认密码、用户昵称、年龄、性别、地区后点击确认注册,若用户密码与确认密码不一致会注册失败并出现提示,若信息未填全则无法注册并提示用户填全信息。
注册成功则返回登录界面、弹出提示框提示注册成功,并给出用户号码,而用户的信息会保存到用户信息表中。
回到登录界面后输入账号、密码和服务器IP后点击登录,与用户信息表匹配完毕,信息一致则登陆成功,进入聊天者列表;信息不一致则提示登录失败,账号或密码错误。
2.聊天顺序图
图2-4聊天顺序图
聊天功能仅限于文字信息的互相发送,步骤如上图2-4所示。
用户通过聊天者列表进入聊天窗口,在消息框输入信息后点击发送信息,信息就会发送到对方用户的消息显示框中。
3.收发文件顺序图
图2-5收发文件顺序图
收发文件功能是此软件使用到TCP协议的部分,需要聊天者双方确认才可以进行文件的发送,步骤如上图2-5所示。
用户进入聊天窗口后,点击“发送文件”,然后在本地选择要发送的文件,然后确认发送;而另一方收到有文件传输的消息后可选择接收或拒收,若接收则点击“确定”接收,并选择保存路径,然后确认保存。
4.清空谈话内容顺序图
图2-6清空谈话内容顺序图
清空谈话内容功能操作步骤如上图2-6所示。
用户进入聊天窗口聊天过后,可点击“清空记录”以清空当前聊天窗口的所有聊天信息。
5.刷新列表顺序图
图2-7刷新列表顺序图
刷新列表功能操作步骤如上图2-7所示。
聊天者登陆成功进入聊天者列表后,可点击“刷新”按键刷新聊天者列表以显示最新的在线用户。
6.查看用户资料顺序图
图2-8查看用户资料顺序图
查看用户资料功能操作步骤如上图2-8所示。
用户进入聊天窗口后可点击“查看资料”查看对方的用户信息,点击以后会自动从用户信息表中提取对应用户除密码以外的其他信息,并显示在消息显示界面。
2.2.4软件活动图
1.注册登录活动图
图2-9注册登录活动图
聊天者进入登录界面后,未曾注册的需要进入注册界面进行注册,注册时需要分别填写密码、确认密码、昵称、性别、年龄、地区,若注册失败则返回注册界面修改信息;若注册成功,这些信息会储存进用户信息表并自动随机地给出一个号码作为账号。
回到登录界面后输入账号密码和服务器IP后,系统将输入的账号和密码与用户信息表的信息进行匹配,若匹配成功则进入对应地址服务器的聊天者列表,若匹配失败则返回登录界面重新输入账号密码和服务器IP。
如上图2-9所示。
2.聊天活动图
图2-10聊天活动图
聊天者进入聊天者列表后可选择其他在线用户进入聊天窗口,然后输入聊天信息,点击发送,对方即可收到信息。
如上图2-10所示。
3.收发文件活动图
图2-11收发文件活动图
聊天者进入聊天者列表后可选择其他在线用户进入聊天窗口,然后点击发送文件,接着在本地选择要发送的文件并确定发送。
而另一方可选择接收或拒收文件,若接收文件则需在本地选择文件的保存位置,确认保存后开始文件的发送。
中途任意一方离线,文件发送都会失败。
如上图2-11所示。
4.清空谈话内容活动图
图2-12清空谈话内容活动图
聊天者进入聊天窗口进行聊天操作后,可以清空聊天窗口的所有谈话内容。
如上图2-12所示。
5.刷新列表活动图
图2-13刷新列表活动图
聊天者进入聊天者列表后可以点击刷新按键进行刷新操作,显示当前最新信息。
如上图2-13所示。
6.查看用户资料活动图
图2-14查看用户资料活动图
【说明】聊天者进入聊天者列表,再进入聊天窗口后可点击查看对方的资料(密码除外)。
如上图2-14所示。
2.2.52.2.5软件状态图
图2-15文件状态图
文件从选中开始是待发送状态,此状态中,对方可选择接收或拒收文件,若拒收文件则中止文件的发送操作,文件为已拒收状态;若接收文件,对方需要选择文件的保存路径方可开始文件的发送,发送后的文件为已接收状态。
如上图2-15所示。
2.2.6软件部署图
图2-16软件部署图
此软件为Client/Server结构,一个服务器可同时连接多个客户端,通过服务器,客户端可修改和获取数据库的数据。
如上图2-16所示。
第3章
系统设计
3.1服务器界面
服务器用来显示在线用户的信息及动态,信息包括账号密码和IP地址,不能对用户进行操作,只能启动和退出。
如下图3-1所示。
图3-1服务器界面
3.23.2注册界面
注册界面需要填写用户密码、确认密码、用户昵称、年龄、地区,并选择性别。
如下图3-2所示。
图3-2注册界面
3.33.3登录界面
登录界面包括了登录、取消和注册入口。
还有用户号码、用户密码、服务器IP三项,用户可以在登录前勾选是否保存密码。
如下图3-3所示。
图3-3登录界面
3.43.4个人信息界面
个人信息界面用来显示用户账号、用户昵称、性别、年龄和地区,此界面不可进行修改操作。
如下图3-4所示。
图3-4个人信息界面
3.53.5聊天窗口界面
聊天窗口界面包括显示信息栏、输入栏,还有清空记录、查看资料、发送文件、停止传送、发送消息等操作按键。
如下图3-5所示。
3-5图聊天窗口界面
第4章
系统实现
4.1注册
进入注册界面后用户需要分别填写用户密码、确认密码、用户昵称、性别、年龄和地区,填写完毕后确认注册,若用户密码和确认密码不一致则注册失败并出现提示,若信息未填全则无法注册并提示用户填全信息。
注册成功则返回登录界面、弹出提示框提示注册成功,并给出用户号码。
如下图4-1所示
图4-1注册界面
4.2启动服务器
服务器需要先启动客户端才可以连接服务器,服务器启动后可以更新用户的信息及操作,但不能对其进行操作。
如下图4-1所示。
图4-2服务器界面
4.3聊天
用户进入聊天窗口界面后可以进行发送信息、清空谈话内容、查看资料、收发文件,其中发送信息、查看资料、清空谈话内容只需要点击对应按键即可进行,而发送文件需要先在本地选择要发送的文件,再点击发送,而另一方需要先在本地选择文件保存路径,再点击接收。
如下图4-3所示。
图4-3聊天窗口界面
4.4查看信息
用户在聊天窗口界面点击查看资料后进入信息显示界面,此界面显示用户号码、用户昵称、性别、年龄、地区,在此界面中不可进行修改操作,只供查看。
如下图4-4所示。
图4-4信息显示界面
第5章
系统测试
5.1注册用例测试
打开此软件的服务器和客户端,启动服务器后,客户端首先进行注册,根据要求填写相关信息,填写完毕后确认注册,若注册失败会返回注册界面修改信息,若注册成功则弹窗给出用户号作为账号。
如表5-1所示。
表5-1注册测试用例
序号
测试功能
输入值
输出值
测试结果
1
注册功能
用户密码:
1234
确认密码:
1234
性别:
男
年龄:
10
地区:
广东
用户昵称:
小明
注册成功
用户账号:
1001
通过
5.2登录用例测试
注册完毕后回到登录界面填写账号密码和服务器IP进行登录,登陆成功会进入聊天者列表,列表中会显示当前在线的所有用户,在此界面可进行刷新操作以及时更新离线或上线的用户。
如表5-2所示。
表5-2登录测试用例
序号
测试功能
输入值
输出值
测试结果
2
登录功能
用户账号:
1001
用户密码:
1234
服务器IP:
192.168.88.107
登录成功
通过
5.3聊天用例测试
选择聊天者列表中除自己以外的其他用户可进入聊天窗口以进行聊天,仅限于收发文字消息,输入消息后无需双方同意即可发送。
如表5-3所示。
表5-3聊天测试用例
序号
测试功能
输入值
输出值
测试结果
3
聊天功能
“你好”
“你好”
通过
5.4收发文件用例测试
选择聊天者列表中除自己以外的其他用户可进入聊天窗口,收发文件需要双方同意后才能开始发送。
如表5-4所示。
表5-4收发文件测试用例
序号
测试功能
输入值
输出值
测试结果
4
收发文件功能
文件:
普通话报名表格.xls
文件:
普通话报名表格.xls
通过
5.5查看资料用例测试
在聊天窗口界面还可以进行清空谈话内容和查看资料操作,查看资料不包括对方的密码。
如表5-5所示。
表5-5查看资料测试用例
序号
测试功能
输入值
输出值
测试结果
5
查看资料功能
点击按键:
查看资料
用户账号:
1001
性别:
男
年龄:
10
地区:
广东
用户昵称:
小明
通过
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 TCP 协议 通讯 QQ 聊天 软件 系统 设计