基于Linux的网络聊天室项目

  • 格式:doc
  • 大小:70.88 KB
  • 文档页数:10

精品文档

。 1欢迎下载 系统客户要求

需求分析是软件分析中的一个重要步骤。它的基本任务是要准确地分析出系统应用者的需要,以及系统目标必须具备哪些功能。这些功能必须准确地,完整地体现出用户的要求。

根据网络应用程序的特点,网络在线聊天系统应就有即时,快速的特点。服务器端和客户端应就有不同的功能特性。对于服务器端应能够正确地建立与客户端的连接并能正确地断开,能即时地接收、处理和发送接收到的数据。能及时地通知在线用户当前好友在线状况,能够处理非正常数据的能力。对于客户端应能够快速地检查是否能够连接到服务器端。能正确的获得和反映当前好友在线情况。能够正确的与特定好友交流。能及时地接收到服务器端地数据,并能即时处理数据,并能将处理结果反映给用户。

服务器端:

 能够正确地、无冲突地启动服务器。

 监听指定的端口,等待用户的连接。

 建立与客户端的逻辑连接,并能通知其他好友。

 向新进入的好友发出已上线的好友名单。

 接收客户端的消息请求,并能正确无误地处理消息,并能发出消息到客户端。

 反映当前在线人数和在线好友状况。

 及时地反映发出地消息和聊天消息。

 当好友断开与服务器端地连接时,服务器能够正确地断开连精品文档

。 2欢迎下载 接,并通知其他用户。

 当用户违反聊天系统规定时,服务器系统管理员能够断开与此用户的连接。

 当服务器关闭时,应通知所有用户。

客户端:

 能够正确启动应用程序,并能向服务器发出连接请求。

 反映当前好友在线情况。

 能够向群体或指定好友发出消息。

 能够及时接收好友发出消息,并通知用户。

 能够正确地断开与服务器端地的连接。

功能需求

该聊天工具是在linux平台下进行开发与实现的,它适合于局域网内所有人进行通信和交流。由于这个系统采用了tcp/ip协议和socket接口,所以主框架采用c/s架构。从总体来讲,该聊天系统主要包含服务端和客户端。

服务端功能实现模块:

(1) 保存新用户注册的相关信息(主要是用户名和密码)

(2) 验证登录用户的信息

(3) 接收和转发用户聊天信息功能(接收发信用户发来的信息,再将信息转发到收信用户) 精品文档

。 3欢迎下载 (4) 系统查看在线用户以及剔除指定用户

客户端功能实现模块:

(1) 选择操作模式(注册或者登陆)

(2) 输入指令进行相应的功能(私聊,群聊,发送文件)

(3) 客户端接收服务端的信息,然后通过消息队列发送到display端,让display终端显示出信息内容

(4) 客户端彼此发送文件时,对文件的内容进行加密处理

前面是服务端和客户端单独运行模块,下面是服务端和客户端共同完成通信:

(1) 客户端向服务端发送服务请求,验证用户信息

(2) 服务端验证完后向客户端发送响应信息

(3) 发信客户端向服务端发送指令信息,请求相应操作

(4) 服务端转发信息到收信客户端

精品文档

。 4欢迎下载 聊天室功能模块规划:

服务器端系统功能模块图

发出用户登陆成功消息 在线聊天系统服务器端启动

用户请求连接

接收消息

接收

连接请求

消息

接收传输数据消息 接收客户端退出消息 发出消息

发出用户重名消息 发出

传输数据消息 发出好友名单消息 发出添加好友消息 发出好友离开消息 发出聊天室关闭消息 精品文档

。 5欢迎下载

客户端系统功能模块图

模块划分

系统结构图如下:

聊天模块划分图 发出消息

发出用户注册登陆消息 发出连接请求消息 发出

传输数据消息 发出好友名单消息 发出文件传输消息 发出退出聊天室消息 接收消息

接收

连接请求

消息

接收传输数据消息 接收文件传输消息 在线聊天系统客户端 主模块

录 群

聊 传

件 聊

录 私

聊 精品文档

。 6欢迎下载 模块调用关系

模块在整体框架中的位置如下图:

模块位置关系图

系统总流程图

Socket编程几乎是采用的C/S模式,该模式是基于局域网内进行通信的基础架构,它可以使用任何的通信协议,并且在通信的过程中能充分发挥客户端的处理能力,使客户端响应速度加快。所以,该系统总体采用C/S模式。

未注册用户入口

已注册用户入口

登录

文件传输 私聊 群聊

聊天信息保存 精品文档

。 7欢迎下载

系统总流程图 开始

打开服务端,处于监听状态

客户端登陆

是否注册 注册

客户端之间进行交流

私聊 群聊 发送文件

信息保存文件

关闭交流

关闭客户端

关闭服务端 是 精品文档

。 8欢迎下载

根据调查和研究,得到系统所要处理的数据和流程,如图所示:

客户端数据流图

填写用户姓名

提交到服务器 用户名存在,重新填写

不存在同名,用户登陆到聊天室 用户运行客户端应用程序

接收服务器端的在线用户列表

发送消息给好友 接收好友消息 接收好友下线或登陆精品文档

。 9欢迎下载

服务器端数据流图

服务器端正常启动 等待接收用户连接若消息为用户登陆,则查看是否有同名用户登陆 若有,则发出此用户已存在消息,否则,发送登陆成功消息,并发送在线好友名单,

并发送此用户名称给已在线用户

若消息为用户通讯消息,则转发给该接收的用户

若消息为用户退出消息,这断开连接,同时发送其他用户此用户退出消息 精品文档

。 10欢迎下载

欢迎您的下载,

资料仅供参考!

致力为企业和个人提供合同协议,策划案计划书,学习资料等等

打造全网一站式需求