1.【引言】
1.1 编写目的
设计软件结构的具体任务是将一个复杂系统按功能进行模块划分、建立模块的层次结构及调用关系、确定模块间的接口及人机界面等。数据结构设计包括数据特征的描述、确定数据的结构特性、以及数据库的设计。
此概要设计说明书是为了说明整个系统的体系架构,以及需求用例的各个功能点在架构中的体现,为系统的详细设计人员进行详细设计师的输入参考文档。
1.2 背景
说明:
a. 待开发软件系统的名称:机房收费系统
b. 此项目的任务提出者:米新江教授
c. 开发者:刘竞博
d. 用户以及将运行该软件的计算站(中心):廊坊师范学院机房电脑以及学生或教师个人笔记本电脑
1.3 定义
列出本文件中用到的专门术语的定义和外文首字母组词的原词组。
1.4 参考资料
列出有关的参考文件,如:
a. 软件需求说明书(GB856T-88)
b. 《软工视频》张洪志
c. 《SQL Server入门经典》敖富江译
2.【总体设计】
2.1 需求规定
功能 | 输入 | 处理 | 输出 |
注册 | 学生基本信息 | 添加到数据库 | 学生基本信息 |
添加管理员 | 管理员基本信息 | 添加到数据库 | 管理员基本信息 |
充值 | 充值卡号、充值金额 | 添加到数据库 | 充值金额、总余额 |
查询上机纪录(等记录) | 学号或卡号 | 查询数据库 | 学生上机纪录(等记录) |
退卡 | 卡号 | 删除数据库信息 | 退卡金额 |
2.2 运行环境
软件系统运行环境:Windows XP及以上系统
2.3 基本设计概念和处理流程
2.4 结构
用一览表及框图的形式说明本系统的系统元素(各层模块、子程序、公用程序等)的划分,扼要说明每个系统元素的标识符和功能,分层次地给出各元素之间的控制与被控制关系.
2.5 功能器求与程序的关系
| 管理端 | 学生(教师)端 |
学生基本信息表 | √ | √ |
校园卡账户余额信息表 | √ | √ |
|
|
|
2.6 人工处理过程
说明在本软件系统的工作过程中不得不包含的人工处理过程(如果有的话)。
2.7 尚未解决的问题
数据库中多个表与功能实现的详细联系不够全面,大体关系已掌握,后续优化中。
3.【接口设计】
3.1 用户接口
命令 | 语法 | 信息回复 |
确定 | OK,Click事件,默认键Enter | 实现输入的命令 |
查询 | Click事件,点击 | 出现所查询的内容 |
修改 | Click事件,点击 | 获取焦点,可进行修改 |
清除 | Click事件,点击 | 清空界面中数据 |
取消 | Cancel,Click点击 | 取消对数据的修改 |
3.2 外部接口
报表部分:连接打印机
上下机、工作纪录、上机纪录、充值记录等:输出Excel表
3.3 内部接口
系统内部与数据库接口为SQL链接
客户端通过配置数据源与服务器建立连接
4.【运行设计】
4.1 运行模块组合
1.管理员账户:添加删除管理员用户、基本数据设定、注册、充值、退卡、上机纪录查询、余额退还查询、修改密码、收取金额查询、结账、日(周)账单、报表生成模块等涉及到了数据库的查询和修改
2.学生(教师)账户:修改密码、查询余额、查询上机纪录、查询充值记录、充值等模块涉及到数据库的调用和修改
具体软件的运行模块组合为程序多窗口的运行过程中能较好的交换信息,处理数据
4.2 运行控制
1.用户登录时需要进行身份验证,用户名、密码和数据库中一致且根据用户类型不同而登录不同的环境
2.注册、充值、退卡需要核实信息后执行
3.结账时需要管理员核实
4.管理员登录后可以对系统进行设置和修改
4.3 运行时间
每个操作(点击)反映时间不超过0.5秒
5.【系统数据结构设计】
5.1 逻辑结构设计要点
1)值班信息(WorkLog_Info)
名称 | 标识符 | 数据类型 | 长度 |
用户名 | UserID | Char | 10 |
级别 | Level | Char | 10 |
登录日期 | LoginDate | Char | 10 |
登录时间 | LogoutTime | Char | 10 |
注销日期 | LogoutDate | Char | 10 |
注销时间 | LogoutTime | Char | 10 |
电脑名 | Computer | Char | 10 |
状态 | Status | Char | 10 |
2)退卡信息(CancelCard_Info)
名称 | 标识符 | 数据类型 | 长度 |
学号 | StudentNo | Char | 10 |
卡号 | CardNo | Char | 10 |
退卡金额 | CancelCash | numeric | (18,1) |
日期 | Date | Char | 10 |
时间 | Time | Char | 10 |
用户名 | UserID | Char | 10 |
状态 | Status | Char | 10 |
3)日结账单(CheckDay_Info)
名称 | 标识符 | 数据类型 | 长度 |
余额 | RemainCash | numeric | (18,0) |
充值金额 | RechargeCash | numeric | (18,0) |
消费金额 | ConsumeCash | numeric | (18,0) |
退卡金额 | CancelCash | numeric | (18,0) |
所有金额 | AllCash | numeric | (18,0) |
日期 | Date | Char | 10 |
时间 | Time | Char | 10 |
4)周结账单(CheckWeek_Info)
名称 | 标识符 | 数据类型 | 长度 |
余额 | RemainCash | numeric | (18,0) |
充值金额 | RechargeCash | numeric | (18,0) |
消费金额 | ConsumeCash | numeric | (18,0) |
退卡金额 | CancelCash | numeric | (18,0) |
所有金额 | AllCash | numeric | (18,0) |
日期 | Date | Char | 10 |
时间 | Time | Char | 10 |
5)上机信息(Online_Info)
名称 | 标识符 | 数据类型 | 长度 |
卡号 | CardNo | Char | 10 |
卡的类型 | CardType | Char | 10 |
学号 | StudentNo | Char | 10 |
学生姓名 | StudentName | Char | 10 |
系别 | Department | Char | 10 |
性别 | Sex | Char | 10 |
上机日期 | OnDate | Char | 10 |
上机时间 | OnTime | Char | 10 |
电脑 | Computer | Char | 10 |
6)充值记录(Recharge_Info)
名称 | 标识符 | 数据类型 | 长度 |
学号 | StudentNo | Char | 10 |
卡号 | CardNo | Char | 10 |
充值金额 | AddMoney | Numeric | 10 |
日期 | Date | Char | (19,4) |
时间 | Time | Char | 10 |
用户名 | UserID | Char | 10 |
状态 | Status | Char | 10 |
7)学生信息(Student_Info)
名称 | 标识符 | 数据类型 | 长度 |
学号 | StudentNo | Char | 10 |
卡号 | CardNo | Char | 10 |
学生姓名 | StudentName | Char | 10 |
系别 | Department | Char | 10 |
性别 | Sex | Char | 10 |
年级 | Grade | Char | 10 |
班级 | Class | Char | 10 |
金额 | Cash | Numeric | (10,3) |
备注 | Explain | Varchar | 50 |
用户名 | UserID | Char | 10 |
状态 | Status | Char | 10 |
是否结账 | IsCheck | Char | 10 |
日期 | Date | Char | 10 |
时间 | Time | Char | 10 |
8)基本数据设定(BasicData_Info)
名称 | 标识符 | 数据类型 | 长度 |
半小时费用 | HalfCharge | Char | 10 |
递增时间 | IncreaseTime | Char | 10 |
最少上机时间 | LeastTime | Char | 10 |
上机准备时间 | ReadyTime | Char | 10 |
卡内最少余额 | LeastCash | Char | 10 |
日期 | Date | Char | 10 |
时间 | Time | Char | 10 |
9)用户信息(User_Info)
名称 | 标识符 | 数据类型 | 长度 |
账号 | UserID | Char | 10 |
密码 | PWD | Char | 10 |
级别 | Level | Char | 8 |
用户名 | UserName | Char | 10 |
5.2 物理结构设计要点
由客户端输入的信息存入服务端的数据库中,访问方式根据操作人员而定
5.3 数据结构与程序的关系
1.系统的数据结构由标准数据库语言SQL生成
2.具体例如创建用户表格User_Info的程序
CREATE TABLE [dbo].[user_Info](
[user_ID] [char](10) NOT NULL,
[PWD] [char](10) NOT NULL,
…….
6.【系统出错处理设计】
6.1 出错信息
错误类型 | 错误提示 |
输入信息错误 | 信息输入错误,请重新输入 |
没有选择条件,就进行查询或修改 | 请选择要查询或修改的信息 |
程序运行错误 | 程序运行错误 |
6.2 补救措施
说明故障出现后可能采取的变通措施,包括:
a. 采用后备技术,当原始系统数据丢失时启动副本建立和启动技术,由于数据在数据库中已经有备份,故在系统出错后可以依靠数据库的恢复功能
b. 恢复及再启动技术,使软件从故障点恢复执行或使软件从头重新开始
6.3 系统维护设计
由于系统较小没有外加维护模块,所以维护工作比较简单,仅对数据库做一些基本维护即可