基于Web聊天系统的设计与实现概要设计说明书.docx

上传人:b****6 文档编号:7330803 上传时间:2023-05-11 格式:DOCX 页数:23 大小:241.24KB
下载 相关 举报
基于Web聊天系统的设计与实现概要设计说明书.docx_第1页
第1页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第2页
第2页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第3页
第3页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第4页
第4页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第5页
第5页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第6页
第6页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第7页
第7页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第8页
第8页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第9页
第9页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第10页
第10页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第11页
第11页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第12页
第12页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第13页
第13页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第14页
第14页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第15页
第15页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第16页
第16页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第17页
第17页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第18页
第18页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第19页
第19页 / 共23页
基于Web聊天系统的设计与实现概要设计说明书.docx_第20页
第20页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于Web聊天系统的设计与实现概要设计说明书.docx

《基于Web聊天系统的设计与实现概要设计说明书.docx》由会员分享,可在线阅读,更多相关《基于Web聊天系统的设计与实现概要设计说明书.docx(23页珍藏版)》请在冰点文库上搜索。

基于Web聊天系统的设计与实现概要设计说明书.docx

基于Web聊天系统的设计与实现概要设计说明书

计算机学院

基于Web聊天系统的设计与实现

概要设计说明书

学生姓名:

组号:

41

年级班级:

2013级应用3、4班

指导教师:

刘魁(教师)

所在学院:

计算机学院

提交日期:

2015年12月9日

目 录

论文总页数:

1.引言

1.1.编写目的

本文档的编写是为了说明系统模块的划分、选择的技术路线等,整体说明软件的实现思路,并且需要指出关键技术难点等。

使系统开发人员能够在了解了系统的设计需求之后能够对软件的基础结构和数据结构有一定的认识,建立一定的开发框架、明确数据库的设计基准。

1.2.背景概述

1)待开发软件名称:

网页聊天系统

2)软件背景:

21世纪将是网络化、信息化的世纪,信息的融合已经成为社会发展的主流方向。

即时消息系统将不断与信息交流领域的系统相互集成和渗透,扩展其自己的功能和应用范围,满足未来话音,数据和视频的多媒体应用需要,使即时消息以更丰富的接入方法,更高的服务质量,更友好的面貌呈现在世人的面前。

  

从功能角度来看,即时消息系统向支持全媒体方向发展,随着多媒体技术在网络应用中的发展,即时消息系统承载的媒体,不再局限于原来的文字、语音和文件的信息交换,信息载体扩展到图形、图像和流媒体等多媒体业务上。

目前ICQ 和 QQ预设了部分简单的表情图像, 通过传输图像代码来传递表情图像,可以被视为即时消息开发商开发支持图形、图像为载体的即时消息软件的开端。

  

从应用范围角度来看,即时消息系统集中在 Internet 个人用户之间的信息交流应用,随着网络技术应用的发展,即时消息系统应用范围向园区化、集团化拓展,应用领域突破个人,而用于远程教学、远程医疗、远程演示、网络会议等领域。

3)软件功能描述:

用户通过网页登陆账号,利用服务器转发实现一对一和一对多聊天。

用户成功登陆之后可以添加好友、删除好友、查找好友,能够查看好友的登陆状态和好友资料以及聊天记录,并且可以选择是否保存用户的账号,便于下一次登陆;新消息来到时会将消息会话自动置顶并且有红点显示和声音提示,查看消息后红点消失,用户可以通过设置界面改变消息的提醒方式;在聊天窗口可以向对方发送文字、图片和表情这些信息,并且在每一条聊天记录之前会显示发送时间;用户可以申请新的账号、可以创建多人聊天的群组,创建者默认为管理员,管理员管理所有申请加入群组的请求,最后可以解散群组,所有成员自动退出。

聊天室的特点就是要求能够实时显示出聊天者所谈的内容。

即在同一个聊天室的使用者,可以在短时间内立刻看到其他聊天者的发言。

作为用户喜欢的Web应用程序,除了具有能够实时显示出聊天者所谈论的内容外,还应具有以多种方式发布信息的功能。

JSP正好可以满足聊天室的这种要求,它可以快速地创建和显示Web页面的动态内容。

总的来说,本聊天室主要实现了以下的功能:

 

●用户输入帐号,密码登录聊天室

●可以创建群组,多人聊天

●可以添加、删除好友

●更改个人资料及系统设置

●把用户的聊天信息写入数据库

●多人共同聊天

●语言过滤功能,避免一些敏感词汇

●显示当前聊天客户列表 

●显示聊天室人员变动信息(进入聊天室、离开聊天室等)

●聊天系统接收实时消息

●退出下线

3)软件应用描述:

系统具有系统管理以及事务处理功能,能对用户的聊天记录和输出进行有效管理;系统有一定的数据安全策略,能够有效的管理用户数据以及用户的账号安全。

在整个系统的框架下,结合网页与服务器端的实际情况,实现对用户数据进行实时更新、查询、统计以及分析;软件提供用户友好的接口,满足用户日常使用需求。

1.3.术语

术语、缩略语

解释

MVC

模式——视图——控制器模式

迭代器

一种方法顺序访问一个聚合堆箱的各个元素

桩模块

软件测试技术的一种,主要用在单元测试阶段

Session

Session是服务器端实用的一种记录客户端状态的机制

URL

统一资源定位符

HTTP

超文本传输协议

TCP/IP

传输控制协议/网间协议

UDP

数据包协议

表1-3术语和缩略语

1.4.参考资料

[1]王红梅,胡明,王涛.数据结构.清华大学出版社,2005.7

[2]Y.DanielLiang.Java语言程序设计.机械工业出版社,2009.11

[3]张海藩.软件工程导论(第五版).清华大学出版社,2008.2

[4]王珊,萨师煊.数据库系统概论(第四版).高等教育出版社,2006.5

[5]弗里曼.O'Reilly:

HeadFirst设计模式(中文版).中国电力出版社,

2.总体设计

2.1.系统功能结构

图2-1系统运行流程图

2.2.运行环境

2.2.1.硬件环境

1)本软件运行对服务器、客户端的硬件要求:

服务器:

软件运行需要Tomcat服务器的支持。

运行环境:

各种主流浏览器例如火狐、谷歌、IE浏览器等。

客户终端:

最低要求2G内存的电脑、处理器1Ghz以上、

能够运行主流浏览器的操作系统例如:

Windows、Macos、Linux。

2)本软件运行所使用的外围设备,主要包括:

使用者需要用鼠标、键盘等输入设备操作软件,已到达相关的使用目的和便利性。

2.2.2.软件环境

1)操作系统

Windows、Macos、Linux

2)数据库系统

Oracle数据库

2)开发平台及工具

Myeclipse、Javajdk1.6、tomcat服务器、windows10操作系统

4)通信协议

Tcp/Ip协议

5)接口

本软件应用windowsApi实现对数据库的操作,基于ODBC数据库访问技术

6)其他软件

网页编辑器:

dreamweavercs6

测试浏览器:

IE内核的QQ浏览器

2.3.系统的关键技术

1)html/css网页的界面设计

2)jQuery/Ajax/javascript网页的交互设计

2)Servlet/Jsp服务器的部署,web程序的执行

3.构件设计

3.1.构件列表

序号

构件分类

构件名称

依赖关系说明

01

被封装的功能模块

系统用户入口

与02构件形成约束依赖关系

02

被封装的功能模块

点对点聊天

与01构件形成约束依赖关系

与03构件形成共享依赖关系

03

被封装的功能模块

多人聊天

与01构件形成约束依赖关系,

与02构件形成共享依赖关系

表3-1构件列表

3.2.构件集成说明

1)集成顺序:

01系统用户入口构件先被集成,04系统自定义设置在01之后被集成,03、04聊天构件在最后被集成

2)集成的策略:

采用自底向上的集成策略。

划分各个模块的优先秩序,确定模块间的依赖关系,由各个功能模块组成系统的四大构件,联合构件组成一个完整的系统,最后进行测试与维护。

3)集成就绪准则:

根据划分的软件构件之间的关系,以及构件内部的模块依赖关系,确定数据流,划分类别和优先级。

4)集成结束准则:

进行集成测试,看各个功能模块是否正常工作符合软件的功能需求,系统数据流向是否正确,是否村子数据泄露和符合安全性需求。

3.3.构件01

系统用户入口构件,类别为:

被封装的软件功能模块,构件包括:

用户登录模块、用户注册模块。

3.3.1.功能模块列表

构件

名称

模块

编号

模块

名称

对应需求

功能编号

所对应

需求功能

实现

优先级

系统用户

入口

XTYHRK_YHDL_01

用户登录

01

登录

XTYHRK_YHZC_02

用户注册

02

注册

表3-3-1模块列表

3.3.2.功能模块01

【模块编号】

XTYHRK_YHDL_01

【功能描述】

用户登录模块用于指定页面为用户提供进入系统的account和password输入接口,是系统运作的高优先级模块,由系统模块间的约束依赖决定。

当用户按规则输入以后,模块会接入数据库验证账号和密码,并且提供一定的安全保证策略,包括:

登录验证码、防止用户直接输入地址访问相应页面、对登录密码进行cookie存储加密。

只有在用户登录之后才能进行进一步的操作。

【前置条件】

数据库中已经存在用户账号数据,否则需要用户手动调用用户注册模块进行相关数据的录入和存储。

【操作者】

已经注册用户。

【界面】

图3-3-2登录界面

【输入】

1)账号,数据类型:

字符型,作用:

用户ID,格式:

1-10位的数字或字母组合。

2)密码,数据类型:

字符型,作用:

用户密码,格式:

1-10位的数字或字母组合。

3)验证码,数据类型:

字符型,作用:

验证登录,格式:

1-10位的数字或字母组合。

【处理流程及说明】

流程图:

图3-3-2登录流程

【输出】

1)账号,正常输出数据类型:

字符型,异常输出:

null,格式:

1-10位的数字或字母组合如rzet317。

2)密码:

正常输出数据类型:

字符型,异常输出:

null,格式:

1-10位的数字或字母组合如RZet317。

3)验证码:

正常的输出数据类型:

字符型,异常输出:

null,格式4位的字母和数字组合如RZET317。

3.3.3.功能模块2

【模块编号】

XTYHRK_YHZE_02

【功能描述】

用户注册模块用于为新用户建立账号数据存储,是系统运作的高优先级模块,由系统模块间的约束依赖决定。

当用户按规则输入注册信息以后,模块会接入数据库验证账号是否已经存在,如果不存在则创建账号成功,并跳转到登录界面,否则要求用户更改要注册的账号信息,并重新进行验证。

【前置条件】

数据库中已经不存在用户账号数据,否则不能创建注册信息。

【操作者】

未注册用户。

【界面】

图3-3-3注册界面

【输入】

1)账号,数据类型:

字符型,作用:

用户ID,格式:

1-10位的数字或字母组合。

2)密码,数据类型:

字符型,作用:

用户密码,格式:

1-10位的数字或字母组合。

【处理流程及说明】

流程图:

图3-3-3注册流程

【输出】

1)账号,正常输出数据类型:

字符型,异常输出:

null,格式:

1-10位的数字或字母组合如rzet317。

2)密码:

正常输出数据类型:

字符型,异常输出:

null,格式:

1-10位的数字或字母组合如RZet317。

3.4.构件02

点对点聊天构件,类型为多个模块的封装,包括好友聊天模块、点对点传输模块、添加好友模块。

3.4.1.功能模块列表

构件

名称

模块

编号

模块

名称

对应需求

功能编号

所对应

需求功能

实现

优先级

点对点聊天

DDDLT_HYLT_01

好友聊天

01

消息传送

点对点聊天

DDDLT_DDDCS_02

点对点传输

02

文件传输

点对点聊天

DDDLT_TJHY_03

添加好友

03

添加好友

表3-4-1模块列表

3.4.2.功能模块01

【模块编号】

DDDLT_HYLT_01

【功能描述】

好友聊天模块可以向指定的好友发起聊天,是系统运作的中优先级模块,优先级由系统模块间的约束依赖决定。

当用户选择要单独聊天的好友之后,模块会接入数据库,并与好友建立消息通道,同时通过数据库彼此可以查看对方的资料。

【前置条件】

聊天双方已经建立好友关系,数据库中有资料记录。

【操作者】

已经登录用户。

【输入】

1)聊天信息,数据类型:

字符型/jpeg图片,作用:

聊天沟通,格式:

数字或字母或是图片组合。

【处理流程及说明】

流程图:

图3-4-2好友聊天

【输出】

1)好友资料,数据类型:

字符型/jpeg,作用:

确定好友信息,格式:

字母和数字的组合。

2)消息回复,数据类型:

字符型/jpeg,作用:

好友消息,格式:

字母,数字,图片的组合。

3.4.3.功能模块02

【模块编号】

DDDLT_DDDCS_02

【功能描述】

点对点传输模块可以向指定的好友发送文件,是系统运作的低优先级模块,优先级由系统模块间的约束依赖决定。

当用户选择要发送文件的好友之后,模块会与好友建立通信通道,对方接受后即可接收好友的文件。

【前置条件】

传送双方已经建立好友关系,数据库中有资料记录。

【操作者】

已经建立好友关系的用户。

【输入】

1)文件,数据类型:

二进制字节流,作用:

信息载体,格式:

text/doc等

【处理流程及说明】

图3-4-3好友传输文件

【输出】

1)文件,数据类型:

二进制字节流,作用:

信息载体,格式:

text/pdf/doc等类型文件。

3.4.4.功能模块03

【模块编号】

DDDLT_TJHY_03

【功能描述】

添加好友模块可以允许用户添加好友,当用户搜索要添加的好友之后,可以查看资料并与其建立好友关系,同时数据库存入好友数据。

【前置条件】

双方均已经在系统中注册。

【操作者】

已经登录用户。

【输入】

1)好友账号,数据类型:

字符型,作用:

查找依据,格式:

1-10为的数字或字母组合。

【处理流程及说明】

图3-4-3好友传输文件流程

【输出】

1)好友资料,数据类型:

字符型,作用:

确定好友信息,格式:

字母和数字的组合。

3.5.构件03

多人聊天构件,类型为多个模块的封装,包括群组聊天模块和创建群组模块。

3.5.1.功能模块列表

构件

名称

模块

编号

模块

名称

对应需求

功能编号

所对应

需求功能

实现

优先级

多人聊天

DRLT_QZLT_01

群组聊天

01

消息传送

多人聊天

DRLT_CJQZ_02

创建群组

02

群创建

表3-3-1模块列表

3.5.2.功能模块01

【模块编号】

DDDLT_HYLT_01

【功能描述】

群组聊天模块可以在群聊天室中发起多人聊天,是系统运作的中优先级模块,优先级由系统模块间的约束依赖决定。

当用户进入群组轴,模块会接入数据库,个人发送的消息会发布在群聊天界面,每个成员进入群组聊天界面后都可以接受消息,同时通过数据库彼此可以查看群组的资料。

【前置条件】

向群组发起聊天的人必须先加入群组,数据库中有资料记录。

【操作者】

已经加入群组的用户。

【输入】

1)聊天信息,数据类型:

字符型/jpeg图片,作用:

聊天沟通消息,格式:

数字或字母或是图片组合。

【处理流程及说明】

流程图:

图3-5-2群聊天流程

【输出】

1)群组消息,数据类型:

字符型/jepg图片,作用:

聊天沟通信息,格式:

字母或数字或图片的组合。

3.5.3.功能模块02

【模块编号】

DRLT_CJQZ_02

【功能描述】

创建群组模块可以允许使用者创建群组,是系统运作的中优先级模块,优先级由系统模块间的约束依赖决定。

当用户输入群的基本信息,模块会接入数据库,群组信息会被存入数据库,创建者默认为管理员,管理员可以邀请用户加入群组。

【前置条件】

用户必须先登录。

【操作者】

已经登录的用户。

【输入】

1)群资料,数据类型:

字符型,作用:

描述群的信息,格式:

数字或字母的组合。

【处理流程及说明】

图3-5-3创建群组流程

【输出】

1)群资料,数据类型:

字符型,作用:

描述群的信息,格式:

数字或字母的组合。

2)创建者账户,数据类型:

字符型,作用:

添加群管理员信息,格式:

数字或子母的组合。

4.接口设计

构件名称

接口编号

接口名称

接口类型

说明

系统用户入口

01

注册账号数据库接口

外部

注册账户时需要与数据库连接

02

登录账号数据库接口

外部

登录账户时需要与数据库连接

03

鼠标、键盘输入接口

用户

用户向系统输入控制信息

04

构件内部模块间接口

内部

模块之间的连接

点对点聊天

05

添加好友数据库接口

外部

添加好友时需要与数据库连接

06

查看好友资料数据库接口

外部

查看好友时需要与数据库连接

07

传输文件接口

内部

传输文件时与好友建立连接

08

鼠标、键盘输入接口

用户

用户向系统输入控制信息

09

构件内部模块之间的接口

内部

模块之间的连接

多人聊天

10

创建群组数据库接口

外部

创建群组时需要与数据库连接

11

构件内部模块之间的接口

内部

模块之间的连接

12

群组资料数据库接口

外部

查看群资料时需要与数据库连接

13

鼠标、键盘输入接口

用户

用户向系统输入控制信息

表4-1构件接口列表

4.1.外部接口

4.1.1.数据库接口

接口名称

数据库接口

接口说明

与数据库建立连接,向数据库读取或写入数据

数据来源

内部模块

调用者

内部模块

输入

数据库语句

输出

数据库中表的数据项

调用方式说明

执行数据库语句

表4-2数据库接口说明

4.2.内部接口

4.2.1.构件内部模块接口

接口名称

构件内部模块接口

接口说明

模块之间的衔接

数据来源

各个内部模块

调用者

各个内部模块

输入

连接时传输的参数

输出

连接时传输的参数

处理流程

用户执行功能模块,模块之间通过接口协同工作

表4-2-1构件内部模块接口说明

4.2.2.传输文件接口

接口名称

传输文件接口

接口说明

用与用户之间文件的传输

数据来源

用户的本地磁盘

调用者

用户

输入

文件

输出

文件

处理流程

用户通过接口建立数据传输通道传输文件

表4-2-2传输文件接口说明

4.3.用户接口

4.3.1.键盘、鼠标输入接口

接口名称

键盘、鼠标输入接口

接口说明

用户向系统传递控制信息

数据来源

键盘、鼠标

调用者

用户

输入

键盘、鼠标的控制信号

输出

字符和控制信息

处理流程

用户通过键盘、鼠标向系统输入数据和控制信息来调用系统功能模块

表4-3-1键盘、鼠标输入接口说明

5.数据库设计

5.1.数据库逻辑设计

表5-1数据库实体关系ER图

5.2.数据库物理设计

序号

属性

含义

类型

长度

1

Account

账号

Varchar

10

2

Password

密码

Varchar

10

3

Name

用户昵称

Varchar

10

4

Information

用户信息

Varchar

50

5

Status

在线状态

Int

2

表5-2-1用户信息表

序号

属性

含义

类型

长度

1

Account

账号

varchar

10

2

User-friend

好友账号

Varchar

10

表5-2-2好友关系表

序号

属性

含义

类型

长度

1

Group-number

群账号

Int

2

Group-admin

创建人账号

Varchar

10

3

Group-name

群名称

Varchar

10

4

Group-Information

群信息

Varchar

50

表5-2-3群组表

序号

属性

含义

类型

长度

1

Group-account

群成员账号

Varchar

10

2

Group-number

群账号

Int

表5-2-4群成员表

6.系统出错处理

6.1.出错信息

错误分类

子项及其编码

错误名称

错误代码

备注

数据库错误

数据库连接出错

连接超时

100001001

连接断开

100001002

数据库本身错误代码

数据库本身错误代码

100002+数据库错误代码

TCP连接错误

TCP连接出错

连接超时

101001001

连接断开

101001002

socket自身错误代码

Socket自身错误

101002+socket错误代码

表6-1可能故障一览表

6.2.补救措施

1)后备技术

●数据库错误:

以一个月为周期为数据库文件建立本地文件副本。

●TCP连接错误:

重新建立TCP连接。

2)降效技术

●数据库错误:

手动记录数据库中的数据,以备数据的恢复。

●TCP来连接错误:

本地文件保存TCP连接错误时的状态。

3)恢复及再启动技术

●数据库错误:

软件终止运行,本地保存未存入数据库的数据,开启线程等待数据库连接后重新启动系统或是由用户直接结束软件运行。

●TCP来连接错误:

软件终止运行,开启线程等待TCP的连接,待TCP连接建立好后软件从故障处继续运行或是由用户直接结束软件运行。

6.3.系统维护设计

为了最后能维护项目,设置了专门对系统运行强度进行测试的单独模块,只需要系统的单个模块接口,就能自动生成数据进行压力测试;设置了对数据库操作的模块,随着用户量的增加,周期性对数据库的运行效率进行统计,画出折线图,分析效率的变化情况,方便后期进行数据库结构的优化。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 其它课程

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2