目标如下:
1、一台电脑上能够同时登录多个不同的用户。
2、用户注册。用户通过填写基本资料进行注册,用户基本信息被数据库保存。
3、用户登录。用户使用注册时的用户名和密码登录系统。 4、聊天。用户登录成功后,可以向单个或所有在线好友发送消息。 5、文件传输。用户之间除了能够使用文字交流外,还能共享文件。
二、系统功能需求
1、注册
用户首先要进行注册。用户在注册时需要填写用户名、密码等相关信息。系统将该用户名作为登录的账号。
2、登录
① 登录时用户用注册的用户名进行登录。
② 用户点击登录按钮,客户端将用户信息发送到服务器,服务器对用户信息进行验证,返回相应的验证结果。若验证成功,用户进入主界面;若验证失败,则返回错误信息,用户回到登录界面。
3、聊天
该系统只能对在线好友进行聊天。聊天可以分为私聊和群聊。 ① 私聊:私聊就是两人之间的聊天,及一对一的聊天。 ② 群聊:群聊就是多人之间的聊天,及一对一的聊天。
4、文件传输
该系统文件传输可以分为发送文件和接收文件。
① 发送文件:用户通过本系统将本地文件发送给在线好友。
② 接收文件:用户接收好友分享的文件,并将文件保存在本地。
12
运行程序登录界面错误信息报告用户注册输入用户名和密码数据库匹配登录密码错误功能界面功能处理
图2.1 系统业务流程图
本章小结
本章主要对网络聊天系统的可行性、业务流和需求进行了分析。在需求分析中,分析了该系统的设计目标和功能需求,该系统的主要功能包括注册、登录、聊天和文件传输。
13
第三章 系统概要设计
第一节 系统总体描述
能够说明系统软件功能组成模块的就是系统体系结构,其中包括具体有哪些模块,系统由哪些功能以及结构组成。图3.1是本系统的体系结构图:
系统结构模块客户端服务器端注册模块登录模块聊天模块文件传输模块控制模块
图3.1 系统体系结构图
本系统总的来说包括两个部分:服务器端和客户端。在服务器端主要是服务器控制模块,接收客户端发来的连接请求,根据客户端的要求将信息准确的转发到客户端。客户端主要包括四个模块,用户在第一次进入系统时,必须首先进行注册,服务器将用户注册的信息存入数据库,以便用户再次进入系统时不再注册;用户注册后就可以直接点击登录,登录时客户端将用户填写的信息发送到服务器,服务器将用户信息与数据中的信息进行匹配,若用户未登录且信息存在,就返回登录成功;用户登录成功后就进入到主界面,用户可以看到在线好友,点击单个用户就可以进行私聊,点击所有人选项就可以群聊。
14
第二节 模块设计
一、注册模块设计
连接服务器以后,用户填写注册用户名、密码和性别,然后客户端向服务器端发送用户注册的基本信息,服务器接收到信息后,服务器将用户信息存储在数据库,并提醒用户注册成功。若用户注册失败,则返回用户注册失败。
二、登录模块设计
1、用户注册后,直接点击登录按钮,就可以直接进入主界面。若用户之前已经注册,那么登录时,用户需要填写用户名、密码和性别。
2、用户填写资料后,点击登录按钮。客户端向服务器发送登录请求。登录时,如用户点击退出按钮,则用户将退出登录系统;若不退出,服务器接收到客户端发送的登录请求后,将用户信息与数据库中存储的用户信息进行匹配。
3、服务器异常,若连接服务器失败,则显示错误,系统将停留在登录界面。 4、若通过验证,返回用户信息,同时向用户显示在线好友信息。
三、聊天模块设计
1、用户登录成功后,就进入到聊天页面。用户在用户列表中可以看到在线用户。
2、若用户需要进行私聊,则用户可以在用户列表中双击需要聊天的好友,然后必须勾选私聊框。
3、若用户私聊,还可以在界面下方的组合框中选择好友,也必须勾选私聊框。
4、若用户需要进行群聊,可以好友列表中选择所有人,或者在界面下方的组合框中选择所有人,不需要勾选私聊框。
5、在信息输入框中输入需要发送的信息,点击发送信息按钮,就可以发出信息。
6、用户在自己的聊天框中可以看到之前发送的信息以及发送对象。
四、文件传输模块
1、用户点击打开文件按钮,及可以弹出本地文件,用户可以在本地盘中选
15
择将要发送的文件。
2、选择好文件以后,点击打开,然后选择的文件就会出现在用户发送文件的框中。
3、用户在点击发送之前,必须先将发送文件框中的文件选中。 4、用户选择文件的接收对象。
5、点击发送文件,文件就会被发送出去。 6、好友将会收到系统发出的文件接受提醒。 7、好友选中用户发来的文件,点击接收文件按钮。
8、点击接收文件按钮之后,将弹出一个保存文件框,好友就可以将文件保存在电脑的本地盘中。
9、在接收文件时,需要对文件进行命名,好友在命名时必须在自己加上文件的后缀名,否则会打开失败。
10、好友接收文件后,若文件发送完成,在用户这边将进行提醒,然后将文件发送框进行清空。
第三节 数据库设计
一、设计原则
数据库在设计过程中会遇到很多数据的问题,如数据的丢失,数据的不正确,不匹配的数据和不准确的信息。一个差的数据库设计通常是这些类型的问题根本原因[15]。因此一个好的数据库就需要有一定的设计原则。
在数据库设计中,原始单据与实体之间可以是一对一、一对多、多对多的关系。主键与外键之间一般是一个实体既不能无主键也不能无外键,主键是实体的高度抽象,主键与外键的配对,表示实体之间的连接。在创建表时一定要注意表的原子性,即基本表中的字段是不能再分解;原始性,基本表中的记录是原始数据的记录;演绎行,基本表与代码表中的数据可以派生出所有的输出数据;稳定性,基础表的结构式相对稳定,表中的记录需要长期保存。
在设计过程中设计范式的要求[16]是:
1、第一范式(1NF):数据库中的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。
2、第二范式(2NF):要求数据库表中的每个实例或行必须可以被唯一区分。
16
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于Socket网络聊天系统的设计与实现(4)在线全文阅读。
相关推荐: