软件工程课程设计报告之概要设计说明.docx

上传人:b****5 文档编号:30182326 上传时间:2023-08-05 格式:DOCX 页数:14 大小:117.21KB
下载 相关 举报
软件工程课程设计报告之概要设计说明.docx_第1页
第1页 / 共14页
软件工程课程设计报告之概要设计说明.docx_第2页
第2页 / 共14页
软件工程课程设计报告之概要设计说明.docx_第3页
第3页 / 共14页
软件工程课程设计报告之概要设计说明.docx_第4页
第4页 / 共14页
软件工程课程设计报告之概要设计说明.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

软件工程课程设计报告之概要设计说明.docx

《软件工程课程设计报告之概要设计说明.docx》由会员分享,可在线阅读,更多相关《软件工程课程设计报告之概要设计说明.docx(14页珍藏版)》请在冰豆网上搜索。

软件工程课程设计报告之概要设计说明.docx

软件工程课程设计报告之概要设计说明

概要设计说明书

1.引言

1.1编写目的

在本即时聊天工具项目的前一阶段,也就是需求分析阶段,已经将系统用户对本系统的需求做了详细的阐述,这些用户需求已经在上一阶段中对不同用户所提出的不同功能,实现的各种效果做了调研工作,并在需求规格说明书中得到详尽得叙述及阐明。

本阶段已在系统的需求分析的基础上,对即时聊天工具做概要设计。

主要解决了实现该系统需求的程序模块设计问题。

包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。

在以下的概要设计报告中将对在本阶段中对系统所做的所有概要设计进行详细的说明。

在下一阶段的详细设计中,程序设计员可参考此概要设计报告,在概要设计即时聊天工具所做的模块结构设计的基础上,对系统进行详细设计。

在以后的软件测试以及软件维护阶段也可参考此说明书,以便于了解在概要设计过程中所完成的各模块设计结构,或在修改时找出在本阶段设计的不足或错误。

1.2项目背景

本即时聊天工具项目由两部分组成:

置于个用户PC机上的QQ客户端,以及置于实验室高性能服务器上的数据库服务器。

本软件与其他系统的关系如下:

:

:

                 

1.3参考资料

以下列出在概要设计过程中所使用到的有关资料:

1.21天学通Java2(第三版)        人民邮电出版社   2004/5

2.数据库系统开发         北京科海电子出版社   2009/4

3.需求规格说明书            《》软件开发小组   1999/3

4.用户操作手册(初稿)        《》软件开发小组 1999/4

5.软件工程及其应用   周苏、王文 天津科学技术出版社 1992/1

6.软件工程       张海藩      清华大学出版社   1990/11

7.Java程序设计   雍正海      清华大学出版社   2004/4

2.任务概述

2.1目标

2.2运行环境

本即时聊天工具项目由两部分组成:

置于个用户PC机上的QQ客户端,以及置于实验室高性能服务器上的数据库服务器。

根据调研得知客户端的计算机配置Pentum4级别以上,服务器PC应配备更高的配置,在Linux-Ubuntu或Windowsxp环境下运行。

2.3需求概述

现在网上有很多的聊天软件可供网民选择,如元老级的ICQ、中国人自己的ICQ——OICQ,又称QQ、Microsoft的MSN、网易163的网易泡泡等都是不错的网络聊天软件,各有不同的特点和长处,课满足不同人的各种需求。

但是在局域网中,可供选择的聊天工具少了很多,所以,制作一款自己趁手的局域网聊天工具就有了很大的应用前景。

系统要求实现局域网内部的自由交流,包括点对点以及群聊、文件的传输,方便局域网内部人员的交流。

3.总体设计

 

3.1总体结构和模块外部设计

下面以结构图来描述飞Q2012软件总体结构。

框内注明了模块的名字;方框之间的直线表示模块的调用关系。

3.1.1客户机部分

3.2.2服务器程序部分

3.3功能分配

各项模块的功能可参照3.1中的说明。

客户机程序主要有三大块:

接收数据、网络通信及输出部分。

服务器程序主要也是由三大功能:

接收网络数据、数据库操作及发送网络数据部分。

服务器程序需与已建立的SQLSERVER数据库互连,其接口将于下面部分阐述。

4.接口设计

4.1外部接口

4.1.1用户界面

在用户界面部分,根据需求分析的结果,用户需要一个用户友善界面。

在界面设计上,应做到简单明了,易于操作,并且要注意到界面的布局,应突出的显示重要以及出错信息。

外观上也要做到合理化,考虑到用户多对WINDOW风格较熟悉,应尽量向这一方向靠拢。

在设计语言上,已决定使用Javase进行编程,在界面上可使用Java2se所提供的可视化组件,向WINDOWS风格靠近。

其中服务器程序界面要做到操作简单,易于管理。

在设计上采用下拉式菜单方式,在出错显示上可调用Java2se库中的错误提示函数。

总的来说,系统的用户界面应作到可靠性、简单性、易学习和使用

4.1.2软件接口

服务器程序可使用Java2se提供的对SQLSERVER的接口,进行对数据库的所有访问。

服务器程序上可使用SQLSERVER的对数据库的备分命令,以做到对数据的保存。

在网络软件接口方面,使用一种无差错的传输协议,采用滑动窗口方式对数据进行网络传输及接收。

4.1.3硬件接口

在输入方面,对于键盘、鼠标的输入,可用Java2se的标准输入/输出,对输入进行处理。

在输出方面,打印机的连接及使用,也可用Java2se的标准输入/输出对其进行处理。

在网络传输部分,在网络硬件部分,为了实现高速传输,将使用高速ATM。

4.2内部接口

内部接口方面,各模块之间采用函数调用、参数传递、返回值的方式进行信息传递。

具体参数的结构将在下面数据结构设计的内容中说明。

接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。

5.数据结构设计

5.1数据库数据结构设计

DBMS的使用上系统将采用SQLSERVER,系统主要需要维护3张数据表:

1.好友信息表

名称

别名

取值类型

长度

描述

位置

昵称

NC

Char

8

用户的昵称

用户信息表

ID

ID

Int

6到8位

惟一标识用户,Key,不可空

用户信息表,详细信息表,保护信息表,好友列表,聊天记录表

密码

Psw

Char

6-16

用户身份鉴定,不可空

用户信息表

问题NO

PswQst

Int

1-2

用于取回用户密码,可空

用户信息表,保护问题表

问题答案

PswAns

Char

20

用于取回密码的答案,可空

用户信息表

登录状态

UserStatus

Int

1

用于记录当前用户的登录状态,不可空

用户信息表,用户状态表

年龄

Age

Smallint

0-99

记录用户年龄

详细信息表

地区

Area

Char

20

记录用户地区,可空

详细信息表

性别

Sex

Char

2

用户性别,可空

详细信息表

签名

Sign

Char

100

用户签名,可空

详细信息表

说明

Detail

Char

255

用户说明

详细信息表

问题详细

QstDetail

Char

20

具体的密码保护问题

保护问题表

好友ID

FriendID

Int

6-8

好友的id

好友列表,聊天记录表

好友类型

FriendDivide

Int

1

好友的分类类型编号

好友列表,好友类型详细列表

好友分组

FriendGroup

Int

1

好友分组编号

好友列表,好友分组详细列表

备注

Note

char

10

用于备注好友姓名,可空

好友列表

好友类型详细

FriendDivDtl

Char

6

好友类型详细

好友类型详细列表

好友分组详细

FriendGrpDtl

Char

10

好友分组详细

好友分组详细列表

时间

ChatTime

Time

 

聊天时间

聊天记录表

日期

ChatDate

Date

 

聊天日期

聊天记录表

内容

ChatDetail

Char

255

聊天内容

聊天记录表

 

 

 

 

 

 

2.登录信息表

名称

登录信息

描述

用户登录时的账号密码检测

来源

用户

去处

服务器用户表

组成

ID+密码

流程量

 

 

 

3.注册信息

名称

注册信息

描述

注册新账号

来源

用户

去处

服务器用户表

组成

密码+个人资料

流程量

 

 

 

4.机位信息表

名称

聊天信息

描述

用户聊天时发送信息

来源

用户

去处

聊天记录表

组成

发送方IP+接收方IP+消息内容

流程量

 

 

 

 

5.2物理数据结构设计

“登录服务”

名称

登录服务

编号

1.1

输入

用户操作

输出

服务器用户表

功能描述

用户身份检测。

加工处理

将用户输入内容与服务器用户表进行对比,若用户ID和密码相符则转入登录界面,不符则返回。

 

 

“注册服务”

名称

注册服务

编号

1.1

输入

用户操作

输出

服务器用户表

功能描述

用于注册一个新账号

加工处理

检查服务器用户表,随机产生一个新的账号

 

 

“添加好友”

名称

添加好友

编号

1.2

输入

用户希望的条件

输出

符合条件的账号表

功能描述

筛选出符合用户要求的账号列表

加工处理

用户输入条件,通过查询语句筛选出符合条件的账号列表

 

 

“消息发送模块”

名称

消息发送模块

 

将用户输入内容与服务器用户表进行对比,若用户ID和密码相符则转入登录界面,不符则返回。

 

 

 

 

“注册服务”

名称

注册服务

编号

1.1

输入

用户操作

输出

服条件的账号表

功能描述

筛选出符合用户要求的账号列表

加工处理

用户输入条件,通过查询语句筛选出符合条件的账号列表

 

 

“消息发送模块”

名称

消息发送模块

编号

2.3

输入

客户端

输出

聊天记录表——>接收方

功能描述

发送信息到目的地

加工处理

用户发送信息存储到聊天记录表中,通过发送机制发送给目的地

 

 

6.运行设计

7.

6.1运行模块的组合

客户机程序在有输入时启动接收数据模块,通过各模块之间的调用,读入并对输入进行格式化。

在接收数据模块得到充分的数据时,将调用网络传输模块,将数据通过网络送到服务器,并等待接收服务器返回的信息。

接收到返回信息后随即调用数据输出模块,对信息进行处理,产生相应的输出。

服务器程序的接收网络数据模块必须始终处于活动状态。

接收到数据后,调用数据处理/查询模块对数据库进行访问,完成后调用网络发送模块,将信息返回客户机。

6.2运行控制

运行控制将严格按照各模块间函数调用关系来实现。

在各事务中心模块中,需对运行控制进行正确的判断,选择正确的运行控制路径。

在网络传方面,客户机在发送数据后,将等待服务器的确认收到信号,收到后,再次等待服务器发送回答数据,然后对数据进行确认。

服务器在接到数据后发送确认信号,在对数据处理、访问数据库后,将返回信息送回客户机,并等待确认。

8.出错处理设计

7.1出错处理对策

所有的客户机及服务器都必须安装不间断电源以防止停电或电压不稳造成的数据丢失的损失。

若真断电时,客户机上将不会有太大的影响,主要是服务器上:

在断电后恢复过程可采用SQLSERVER的日志文件,对其进行ROLLBACK处理,对数据进行恢复。

在网络传输方面,可考虑建立一条成本较低的后备网络,以保证当主网络断路时数据的通信。

在硬件方面要选择较可靠、稳定的服务器机种,保证系统运行时的可靠性。

9.安全保密设计

由于数据的传输上需要通过网络传输,为了客户资料进行保密,需要在网络的传输过程中对数据进行加密。

这个工作主要是在准备网络包,及解开网络包这两个模块完成,它们各对数据进行加密及解密还原工作。

10.维护设计

维护方面主要为对服务器上的数据库数据进行维护。

可使用SQLSERVER的数据库维护功能机制。

例如,定期为数据库进行Backup,维护管理数据库死锁问题和维护数据库内数据的一致性等。

 

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

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1