四 、概要设计说明书
1.1 编写目的
此说明书文档的读者对象是:编程人员,测试人员和维护人员
对本《概要设计》进行评审和确认的有关业务,技术人员;
参加编码阶段工作的全体小组成员;
参加系统测试的全体小组成员;
参加试运行的全体小组成员;
1.2 背景
开发软件名称::通讯簿管理系统
任务提出者: 客户
项目开发者:OnceTry开发小组
用户: 个人及企事业
项目与其他软件、系统的关系:本项目采用瀑布模型,采用Microsoft公司的SQL SERVER 2000 数据库。
系统将由两部分组成:前台用户界面以及后台程序和数据库系统。
1.3 定义
[专门术语]:
SQL SERVER 2000: 系统服务器所使用的数据库管理系统(DBMS)。
SQL: 一种用于访问查询数据库的语言
事务流:数据进入模块后可能有多种路径进行处理。
主键(码):数据库表中的关键域。值互不相同。
外部主键:数据库表中与其它表主键关联的域。
1.4 参考资料
以下列出在概要设计过程中所使用到的有关资料:
《数据库设计说明书》
2 总体设计
2.1 目标
l 使通讯信息管理工作规范化,系统化,程序化。
l 避免通讯信息管理的随意性。
l 提高信息处理的速度和准确性。
l 能够及时、准确、有效的查询和修改通讯情况。
l 在现在社会节奏加快,通讯簿能够及时,方便的查阅能节约很多宝贵的时间,所以,我们开发出来的通讯簿就是能够方便人们的生活
2.2 运行环境
操作系统: Microsoft Windows 98 / Me / 2000 / XP / Server 2003 / Windows “Longhorn”
组件需求:SQL Server 2000,JCreater, JDBC API,AWT,Swing
2.3 需求概述:
通讯簿管理系统是为方便用户更好的对他们的联系人的个人信息进行管理。
用户可以添加有关信息,包括姓名、性别、年龄、家庭电话、手机号码、工作单位电话、E-mail地址等基本信息。
用户也可以依据个人需要对联系人的信息进行查询、修改、删除和备份。为了对信息进行安全性和完整性有一个好的支持,用户还可以对信息的修改及删除设置密码!
要求系统能有效、快速、安全、可靠和无误的完成上述操作。界面要简单明了,易于操作。
2.4 基本设计概念和处理流程
本系统分两部分,第一部分是信息管理,包括所有联系人的信息。需要能够添加、查询、修改和删除相关资料。第二部分是安全性管理,用户可以为自己的通讯录设置密码,确保信息在不被允许的情况下不能被修改或删除。以上两个部分均由逻辑层调用数据库实现.
具体的数据处理流程如下图所示:
2.5 功能分配
界面部分主要完成获取用户输入和简单输入检测、并显示返回信息。系统程序主要是数据库操作。系统程序需与已建立的SQL SERVER 2000 数据库互连,其接口将于下面部分阐述。
3 接口设计
3.1 用户接口
3.1.1 用户界面
在用户界面部分,根据需求分析的结果,为方便使用者查询、修改、添加分组、删除等操作。在界面设计上,需做到简单明了,易于操作,并且要注意到界面的布局,突出地显示各种重要信息以及错误提示。外观上也要做到合理化,考虑到使用者的实际需求。在设计语言上,已决定使用JAVA以及相关设计语言进行编程。
总的来说,系统的用户界面应作到可靠性、简单性、易学习和使用。
3.1.2 软件接口
用户界面使用已封装的逻辑中间层通过JDBC调用SQL SERVER 2000 数据库接口以及编写好的存储过程,进行数据库的所有访问。
3.2 内部接口
内部接口方面,各模块之间采用方法调用、参数传递、返回值的方式进行信息传递。具体参数的结构将在数据结构设计的内容中说明。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。
4 系统数据结构设计
4.1 数据库数据结构设计
系统将采用 SQL SERVER 2000 数据库, 系统主要需要维持1张tbPersonalmasg表 和User表。
数据库详细设计可参见《数据库设计说明书》。
4.2 物理数据结构设计
物理数据结构设计主要是设计数据在模块中的表示形式。在此介绍主要的数据结构,详细设计可参见《数据库设计说明书》。
默认的表如下:
字段名 | 字段代码 | 类型 | 允许 为空 | 码 键 | 默认值 | 其他属性 | 备注 |
姓名 | Name | nvarchar(50) | N | 主码 |
|
|
|
性别 | Sex | int | N |
|
|
| 此字段只能取值“男”或“女” |
家庭电话 | FaPh | nvarchar(50) | Y |
|
|
|
|
手机号码 | Phone | nvarchar(50) | Y |
|
|
|
|
工作单位电话 | OffPh | nvarchar(50) | Y |
|
|
|
|
家庭地址 | AD | nvarchar(50) | Y |
|
|
|
|
E-mail地址 | EM | nvarchar(50) | Y |
|
|
|
|
QQ号码 | | int | Y |
|
|
|
|
与用户的关系 | Relation | nvarchar(50) | N |
|
|
|
|
系统日志:
记录数据库进行的每一步操作,防止误操作或意外错误造成不可逆的损失。
表名:SystemLog
字段名 | 字段代码 | 类型 | 允许 为空 | 码 键 | 默认值 | 其他属性 |
索引 | ID | Int | N | 主码 |
| auto_increment |
操作时间 | CreateDate | Datatime | N |
|
|
|
操作类型 | OperateSummary | Nvarchar(50) | Y |
|
|
|
操作描述 | Description | Nvarchar(256) | Y |
|
|
|
备注 | Memo | Nvarchar(256) | Y |
|
|
|
4.3 数据库调用与逻辑接口设计
用户在此系统上所作的操作均需要对数据库进行操作,也就是对数据库进行查询和修改、删除等。数据库记录下相关的用户的操作、联系人信息以及各种备注信息。
为简化、规范系统的开发,增强系统的逻辑结构,保证整个项目的开发进度,界面层通过逻辑层与底层数据库进行交互。逻辑层中对相关物理数据表对象和数据库操作进行了封装了,界面仅需将数据对象传入逻辑层,即由逻辑层通过调用底层存储过程对数据库进行相关的操作。逻辑接口的设计是以数据库表结构为基础,将物理数据结构进行面向对象的封装,并为对象的操作留下调用接口。
4.4 运行模块的组合
用户可以查询信息、并可以进行信息的修改或删除等操作。不论哪种操作,都是通过界面层和逻辑层交互,逻辑层和数据库交互这两种模块组合来完成。逻辑层接收到界面发送来的相关参数后对其进行格式化、并对其进行相关检测。然后进行数据处理和数据库查询,并将从数据库获取的数据进行格式化后传回到界面。界面获取到相关信息后解析并进行显示。
4.5 运行控制
用户本人对通讯簿拥有全部权限,而对应于用户本人以外的其他人则只可执行查询。运行控制将严格按照用户级别来实现权限管理。
若用户需要修改、删除联系人信息,需要在有设置密码的功能上输入密码,中间层会检测其信息,从数据库信息来判断其密码信息是否正确,以及是否拥有权限进行修改及删除操作。以保护用户本人的联系人信息的完整性。
4.6 运行时间
在软件的需求分析中,对运行时间的要求为必须对作出的操作有较快的反应。由于此系统采取C/S架构,响应时间:一般操作时间<3秒,复杂操作15秒左右,最长不超过半分,硬件对本系统的速度也会产生很大的影响。
5 出错处理设计
5.1 出错输出信息
程序在运行时主要会出现两种错误:
1、输入信息出错,称为软错误。
2、由于硬件受损而引起的错误,称为硬错误。
对于软错误,须在界面层和逻辑层联合进行初步判断,如果涉及到数据库操作,需要在数据库中进行判断,再生成相应的错误提示语句,并在用户界面上作出相应提示。数据处理流程中的每一步都需要进行相关错误处理,防止未处理错误的出现。
对于硬错误,及时更换新硬件重新输入信息,并将程序重置。返回输入阶段。
5.2 出错处理对策
对于误操作等人为原因,可以依靠数据库中保存的系统日志和相关备份数据进行恢复。
在硬件方面要选择较可靠、稳定的机器,保证系统运行时的可靠性。
6 维护设计
维护方面主要对数据库数据进行维护。可使用 SQL SERVER 2000 的数据库维护功能机制。例如,定期为数据库进行Backup,维护管理数据库死锁问题和维护数据库内数据的一致性等。
(未完待续)