详细设计说明书
1引言
1.1编写目的
本阶段在用户的需求分析的基础上,对机房收费系统做出概要设计。
编制的目的是说明对程序系统的设计考虑,包括程序系统的基本处理流程、程序系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为程序的详细设计提供基础。
在下一阶段详细设计中,程序员可参考此设计说明书,对系统进行详细设计。在测试软件和维护的时候也可以参考此文档。
本文档的读者是项目设计和编码人员
1.2背景
A.待开发软件名称:机房收费系统
B.项目提出者:米新江教授
开发者:孙东
用户:廊坊师范学院全体教职工和学生
实现该软件的计算中心或计算机网络:廊坊师范学院局域网
C.该软件系统同其他机构的基本的相互来往关系:由廊坊师范学院信息技术提高班做技术支持。
1.3定义
1.4参考资料
[1]《软件工程事务》刘学俊李继芳刘汉中编著 浙江大学出版社
[2]项目开发计划(GB8567——88)
[3]《SQL入门经典》敖富江译
[4]《VB程序设计课本》
[5]《数据库红皮书实例》
[6]《陈伟VB6.0视频》
2程序系统的结构
结构关系
权限关系
1.一般用户:主要负责查询相关学生信息以及上下机情况。
2操作员:负责学生注册、修改、充值、退卡等操作管理工作。
3管理员:负责整个系统基本数据的设定、对操作员和一般用户的管理以及账目管理工作。
3一般用户设计说明
3.1程序描述
上下机管理程序主要实现学生刷卡上机自动计费功能,非常驻内存,是可重人的。只要登录该系统就可以在此程序中进行操作
3.2功能
3.3性能
金钱精确到0.5元,时间精确到分钟,其他数字均精确到整数位。
3.4输入项
名称 | 标识 | 数据类型 | 有效范围 | 输入方式 |
卡号 | Card_No | Char | 20位数字以内 | 刷卡输入 |
学号 | Stu_No | Char | 20位数字以内 | 自动输入 |
姓名 | Stu_Name | Char | 20位字符以内 | 自动输入 |
系别 | Dept | Char | 20位字符以内 | 自动输入 |
性别 | Stu_Sex | Char | 2位字符 | 自动输入 |
年级 | Grade | Char | 20位字符以内 | 自动输入 |
班级 | Class | Char | 20位字符以内 | 自动输入 |
金额 | Cash | Money | >5 | 自动输入 |
备注 | Remarks | Varchar | 20位字符以内 | 自动输入 |
状态 | Status | Char | 20位字符以内 | 自动输入 |
用户ID | User_ID | Char | 20位字符以内 | 自动输入 |
注册时间 | Reg_Time | datetime | 精确到秒 | 自动输入 |
3.5输出项
名称 | 标识 | 数据类型 | 有效范围 |
卡号 | Card_No | Char | 20位数字以内 |
上机时间 | onTime | Datetime | 精确到秒 |
下机时间 | offTime | Datetime | 精确到秒 |
备注 | Remarks | Char | 20位字符以内 |
消费金额 | consumeCash | Money | 精确到0.5元 |
剩余金额 | remainCash | Money | 精确到0.5元 |
姓名 | Stu_Name | Char | 20位字符以内 |
用户ID | User_ID | Char | 20位字符以内 |
3.6算法
消费时间:下机时间-上机时间
消费金钱:一小时的费用*消费时间
固定用户和一般用户虽然每小时消费不同,但是计算方法相同
3.7流程逻辑
3.8接口
3.9存储分配
名称 | 标识 | 数据类型 | 长度 |
学号 | 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 |
上机时间 | Ontime | Date | 12 |
下机时间 | Offtime | Date | 12 |
3.10注释设计
说明准备在程序中安排的注释:
A、在模块首部注释说明模块开始编写的时间、编写人员及其基本功能
B、在变量声明阶段,大概说明变量的类型和用途
C、在个判断、循环或者顺序枝分点上注释说明程序代码的功能
3.11限制条件
保证系统安装成功,系统与数据库的连接正常。输入有效字符。
3.12测试计划
测试用例:使用一些特殊性、说明性比较强的数据来对系统进行测试
测试方法:用黑盒和白盒相结合的方法,对系统进行测试
3.13尚未解决的问题
暂无
4操作员设计说明
4.1程序描述
该模块主要是负责学生上下机的管理工作,包括注册、充值、修改信息、退卡,以及对操作员工作记录的查询工作。一般用户没有此权限。
4.2功能
4.3性能
软件的输入精度:小数点后保留两位有效数字
输出数据的精度:小数点后保留两位有效数字
传输过程中的精度:小数点后保留两位有效数字
4.4输入项
名称 | 标识 | 数据类型 | 长度 | 输入方式 | 安全保密 |
学号 | 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 | 手动 | 中 |
时间 | Time | Date | 12 | 自动 | 中 |
日期 | Date | Date | 12 | 自动 | 中 |
4.5输出项
名称 | 标识 | 数据类型 | 长度 | 输出方式 | 安全保密 |
学号 | StudentNo | Char | 10 | 自动 | 中 |
卡号 | CardNo | Char | 10 | 自动 | 中 |
姓名 | StudentName | Char | 10 | 自动 | 中 |
系别 | Department | Char | 10 | 自动 | 中 |
性别 | Sex | Char | 10 | 自动 | 中 |
年级 | Grade | Char | 10 | 自动 | 中 |
班级 | Class | Char | 10 | 自动 | 中 |
金额 | Cash | Numeric | (14,3) | 自动 | 中 |
状态 | Ischeck | Char | 10 | 自动 | 中 |
用户类型 | Type | Char | 10 | 自动 | 中 |
备注 | Explain | Varchar | 50 | 自动 | 中 |
上机时间 | Ontime | Date | 12 | 自动 | 中 |
下机时间 | Offtime | Date | 12 | 自动 | 中 |
充值金额 | Charge | Numeric | (10,3) | 自动 | 中 |
消费金额 | Consume | Numeric | (10,3) | 自动 | 中 |
余额 | Cash | Numeric | (10,3) | 自动 | 中 |
4.6算法
充值金额=注册时所交费用+之后充值的金额
消费时间=(下机时间-上机时间)-(准备时间+最少上机时间)
消费金额:固定用户消费=消费时间/60 * 2
临时用户消费=消费时间/60 * 3
4.7流程逻辑
4.8接口
4.9存储分配
名称 | 标识 | 数据类型 | 长度 |
学号 | 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 |
时间 | Time | Date | 12 |
日期 | Date | Date | 12 |
4.10注释设计
说明准备在程序中安排的注释:
A、在模块首部注释说明模块开始编写的时间、编写人员及其基本功能
B、在变量声明阶段,大概说明变量的类型和用途
C、在个判断、循环或者顺序枝分点上注释说明程序代码的功能
4.11限制条件
保证系统安装成功,系统与数据库的连接正常。输入有效字符。
4.12测试计划
测试用例:使用一些特殊性、说明性比较强的数据来对系统进行测试
测试方法:用黑盒和白盒相结合的方法,对系统进行测试
4.13尚未解决的问题
暂无
5管理员设计说明
5.1程序描述
管理员具有一般用户和操作员所有的功能并且管理员还可以进行结账、添加、删除用户查询值班老师、修改基本数据、还可对账单进行结账打印。
5.2功能
5.3性能
软件的输入精度:小数点后保留两位有效数字
输出数据的精度:小数点后保留两位有效数字
传输过程中的精度:小数点后保留两位有效数字
5.4输入项
名称 | 标识 | 数据类型 | 输入方式 | 安全保密 |
操作员 | operator | Char | 选择 | 中 |
用户类型 | Level | Char | 选择 | 中 |
用户名 | UserName | Char | 选择、输入 | 中 |
密码 | PWD | Char | 输入 | 中 |
日期 | Date | Date | 选择 | 中 |
5.5输出项
名称 | 标识 | 数据类型 | 长度 | 输出方式 | 安全保密 |
学号 | StudentNo | Char | 10 | 自动 | 中 |
卡号 | CardNo | Char | 10 | 自动 | 中 |
姓名 | StudentName | Char | 10 | 自动 | 中 |
系别 | Department | Char | 10 | 自动 | 中 |
性别 | Sex | Char | 10 | 自动 | 中 |
年级 | Grade | Char | 10 | 自动 | 中 |
班级 | Class | Char | 10 | 自动 | 中 |
金额 | Cash | Numeric | (14,3) | 自动 | 中 |
状态 | Ischeck | Char | 10 | 自动 | 中 |
用户类型 | Type | Char | 10 | 自动 | 中 |
备注 | Explain | Varchar | 50 | 自动 | 中 |
注册时间 | Logintime | Time | 20 | 自动 | 中 |
退卡时间 | Canceltime | Time | 20 | 自动 | 中 |
上机时间 | Ontime | Date | 12 | 自动 | 中 |
下机时间 | Offtime | Date | 12 | 自动 | 中 |
充值金额 | Charge | Numeric | (10,3) | 自动 | 中 |
消费金额 | Consume | Numeric | (10,3) | 自动 | 中 |
余额 | Cash | Numeric | (10,3) | 自动 | 中 |
5.6算法
充值金额=注册时所交费用+之后充值的金额
消费时间=(下机时间-上机时间)-(准备时间+最少上机时间)
消费金额:固定用户消费=消费时间/60 * 2
临时用户消费=消费时间/60 * 3
应收金额=充值金额-退卡金额
售卡数=注册数-退卡数
5.7流程逻辑
5.8接口
5.9存储分配
名称 | 标识 | 数据类型 | 长度 |
用户名 | UserID | Char | 12 |
日期 | Date | Date | 12 |
5.10注释设计
说明准备在程序中安排的注释:
A、在模块首部注释说明模块开始编写的时间、编写人员及其基本功能
B、在变量声明阶段,大概说明变量的类型和用途
C、在个判断、循环或者顺序枝分点上注释说明程序代码的功能
5.11限制条件
保证系统安装成功,系统与数据库的连接正常。输入有效字符。
5.12测试计划
测试用例:使用一些特殊性、说明性比较强的数据来对系统进行测试
测试方法:用黑盒和白盒相结合的方法,对系统进行测试
5.13尚未解决的问题
暂无