沈阳理工大学学士学位论文
3 网络即时通信软件开发的系统需求分析
需求分析在软件设计中扮演着决策者的角色,所以在所有设计中起着非常重要的作用。
3.1 系统实现目标
本即时通信软件应该具有如下几个基本的功能:服务器端可以对所有客户端进行实时监控;客户端程序成功登录后,能够看到有那些用户在线,并能够与之通信;有新用户上线,能够及时地更新用户界面中的用户列表;用户之间能够实现文件传输的功能;双击用户列表后能够跳出对话框与在线用户进行即时通信。
3.2 功能性需求描述
网络即时通信软件的系统用例图如图3.1所示。
用户注册用户登录发送消息luinc消息传送de接收消息include用户文件传输include文件发送in用户信息查询clude文件接收个人信息修改查看在线成员 图3.1 网络即时通信软件的系统用例图
12
沈阳理工大学学士学位论文
客户端在连接服务端之后,用户可以根据需要进行不同操作。客户端的主要功能包括:用户注册、用户登录、用户信息查询、个人信息修改、查看在线用户、消息传送以及文件传输等;服务器端的主要功能包括:服务启动停止、用户信息管理和数据消息处理。
未注册用户可以进行用户注册;已注册用户登录后可以进行消息传送、文件传输、用户信息查询以及修改个人信息等功能,如图3.1所示。
(1)用户注册
本软件提供用户注册功能。用户只有通过注册的方式才可以与其他注册的用户进行信息的交流。注册的信息最重要的就是用户的昵称以及密码,当然还包括其他个人资料信息。用户唯一的标志是服务器提供的用户号码,当且仅当用户提出注册请求的时候,服务器才根据数据库中的信息提供新的用户一个用户号码,用户通过号码和个人密码进行后续的登陆操作。
(2)用户登录
本软件提供用户登录功能。用户只有通过登录的方式才可以进入主界面获取用户列表,然后才可以进行信息的交流和其他操作。
(3)用户信息查询
本软件提供用户信息查询功能。对于某个用户,客户端向服务器端发送查询该用户信息的请求,服务器操作数据库提取相关信息然后传送给客户端。客户端接收到用户信息后进行显示。
(4)个人信息修改
本软件提供个人信息修改功能。当用户需要修改自己资料的某一项时,比如自己的密码,自己的昵称等,用户将修改好的信息传送给服务器,服务器根据相关信息进行数据库的修改将该用户的资料更新。
(5)查看在线用户
用户可以通过刷新用户列表查看当前在线的所有用户。 (6)消息传送
消息发送是一个最基本的功能,即时通信最基础的要求就是要进行通讯信息的传送。具体表现为当一方客户需要向另一发客户发送消息的时候,只需要在用户列表中选择该用户,继而在弹出的对话框中输入通信内容,点击发送按钮后该消息将通过服务器的中转转发到接收方的客户端并弹出消息聊天对话框进行显示。
13
沈阳理工大学学士学位论文
(7)文件传输
文件传输也是基本的功能之一。登录成功后的双方用户为了某种要求需要进行文件的传输,显然文件传输应该是点对点的并且使用TCP连接才能保证文件传输的可靠性。一方用户A点击文件传输的选项继而选择要传输的文件名,此时在该用户实际已经建立起一个TCP监听套接字,在另一方的客户B将接收到对于文件传输的接收请求,同意或者拒绝接收文件。当客户B选择接收的时候即将调用connect()函数远程连接到客户A,然后进行文件的传输。
(8)启动停止服务器
用于服务器端的服务启动或者停止,用户在对话框中点击启动服务按钮,服务器端各项功能启动,等待客户端连接;在对话框中点击退出按钮,服务器端停止服务并退出。
(9)用户信息管理
用户按需求选择用户注册、用户登录、用户信息查询、个人信息修改等功能,服务器端收到请求,连接数据库,完成对数据的操作,保存并关闭。
(10)数据消息处理
该功能是整个网络即时通信软件的核心。服务器应该可以协调多用户的请求服务,当用户的请求消息来临时能够通过开辟线程的方式来进行并行处理,服务器对客户的应答应该时快速的,对用户来说不应该感觉到有延迟。
14
沈阳理工大学学士学位论文
4 网络即时通信软件开发的系统总体设计
系统总体设计是对有关系统全局问题的设计,也就是设计系统总的处理方案,又称系统概要设计。系统总体设计的主要任务是把需求分析得到的模型转换为软件结构和数据结构。本章将系统的设计思想和基本结构进行总体说明,对功能进行总体介绍,并对每个功能模块的使用和处理进行描述。
4.1 系统体系结构设计
本设计采用模块化原理,使软件结构清晰,容易设计而且易于阅读和理解。
客户端用户注册用户登录用户信息查询个人信息修改查看在线用户消息发送文件传输
图4.1 客户端的总体功能模块图
服务器启动停止服务用户信息管理数据消息处理
图4.2 服务器端的总体功能模块图
经过了对系统的可行性分析、需求分析和数据分析之后,根据用户的需求,考虑系统的实际情况,按照模块设计原则,得出客户端和服务器端的总体功能模块如图4.1和
15
沈阳理工大学学士学位论文
图4.2所示。
4.2 系统功能模块介绍
整个系统分为客户端和服务器,采取典型的C/S模式。
客户端分为7个模块,主要包括:用户注册模块、用户登录模块、用户信息查询模块、个人信息修改模块、查看在线人员模块、消息传送模块、文件传输模块。服务器端的功能模块主要包括:服务启动停止模块、用户信息管理模块和数据消息传送模块。
(1)用户注册:由用户输入用户名、密码、昵称等基本信息,由系统检测信息是否有效并加以存储。
(2)用户登录:用户在对应的编辑框中输入相应的注册名密码信息,由系统查询数据库中的用户信息表并核对,正确后登录。
(3)用户信息查询:用户双击想要查询信息的用户,点击查询按钮,由系统查询数据库中的用户信息表并显示。
(4)个人信息修改:用户点击个人信息修改按钮,在对应的编辑框中输入修改的密码、昵称等基本信息,由系统检测信息是否有效并加以存储。
(5)查看在线用户:用户登录成功之后,刷新列表可以在对话框中显示当前在线的所有用户昵称。
(6)消息发送:用户双击想要发送消息的用户,在弹出的对话框中输入想要发送的消息,消息通过系统发送给目标用户。
(7)文件传输:用户双击想要传输文件的用户,选择文件传输按钮,选择要发送的文件。目标用户选择接收文件。文件通过系统传输给目标用户。
服务器端分为3个功能模块,主要包括:服务启动停止模块、用户信息管理模块和数据消息处理模块。
(1)服务启动停止:用户运行服务器端后,可以在服务器端上进行操作,点击启动服务按钮,服务器端开启服务,进行监听并响应。点击停止服务按钮,服务器端停止运行。
(2)用户信息管理:服务器端接收客户端传来的信息,并根据信息对数据库进行操作。
(3)数据消息处理:客户端之间通过服务器端建立连接,并进行数据消息的传送。
16
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于VC++的网络即时通信软件的设计与实现(4)在线全文阅读。
相关推荐: