详细设计说明书
本详细设计说明书是在机房收费系统概要设计的基础上进一步明确系统结构,详细地介绍系统的各个模块,为进行后面的实现和测试作准备。本详细设计说明书的预期读者为小组成员、系统测试维护人员。
A. 所建议开发的软件系统的名称:机房收费系统;
B. 本项目的任务提出者:米新江,蔡进龙,李黎敏;
开发者:王雅瑾;
用户:教师、学生、职工、机房管理员等
及实现该软件的计算中心或计算机网络:个人笔记本电脑、学校机房。
列出本文件中用到专门术语的定义和外文首字母组词的原词组。
张海藩 《软件工程》 北京清华大学出版社2006
李昭原 《数据库原理与应用》 科学出版社 2003
《软件需求说明书》
《详细设计说明书》
对于高权限、中权限、低权限的功能分配如图:
下面以高权限中的各个功能模块为划分标准继续以下描述。中权限和低权限的功能只是高权限中的部分。
上下机管理程序主要实现学生刷卡上机自动计费功能,非常驻内存,是可重人的。只要登录该系统就可以在此程序中进行操作。
说明该程序应具有的功能,可采用IPO图(即输入一处理一输出图)的形式。
金钱精确到0.5元,时间精确到分钟,其他数字均精确到整数位
名称 |
标识 |
数据类型 |
有效范围 |
输入方式 |
卡号 |
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 |
精确到秒 |
自动输入 |
名称 |
标识 |
数据类型 |
有效范围 |
卡号 |
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位字符以内 |
上机时刻和下机时刻之差算出上机时间,根据上机时间(分钟)换算成小时,然后计算出所用金额; 公式:上机金额=时间*单位金额(时间大于5分钟)
用图的形式说明本程序所隶属的上一层模块及隶属于本程序的下一层模块、子程序,说明参数赋值和调用方式,说明与本程序相直接关联的数据结构(数据库、数据文卷)。
与本程序直接关联的数据结构:学生注册表和学生上机记录表。
说明准备在本程序中安排的注释,如:
A.模块首部注释说明本模块开始编写的时间,编写人员,及其基本功能;
B.加在各分枝点的注释说明学生上机所要具备的条件;
C.对时间和费用变量进行说明,指出学生上机所用的时间和所消费的金额;
D.注释说明不同的情况对学生上机费用的收取规则不同,指出具体的计算方法。
必须保证程序正常地连接到服务器。
进行学生上机、下机测试,验证数据的准确性.
对不同的卡的类型收费标准不同;
查询程序可以查询到学生消费卡的余额、充值记录,学生的上机记录和上机状态等,还可以做到收取金额查询,金额退还信息查询,学生上机统计信息查询,工作记录查询。它是可重人的。
说明该程序应具有的功能,可采用IPO图(即输入一处理一输出图)的形式。
金钱精确到0.5元,时间精确到分钟,其他数字均精确到整数位
名称 |
标识 |
数据类型 |
有效范围 |
输入方式 |
卡号 |
Card_No |
Char |
20数字以内 |
手动输入 |
姓名 |
Stu_Name |
Char |
20字符以内 |
手动输入 |
日期 |
*Date |
Datetime |
精确到日 |
手动输入 |
时间 |
*Time |
Datetime |
精确到秒 |
手动输入 |
金额 |
Cash |
Money |
精确到0.5元 |
手动输入 |
名称 |
标识 |
数据类型 |
有效范围 |
卡号 |
Card_No |
Char |
20位数字以内 |
学号 |
Stu_No |
Char |
20位数字以内 |
姓名 |
Stu_Name |
Char |
20位字符以内 |
性别 |
Stu_Sex |
Char |
2位字符 |
班级 |
Class |
Char |
20位字符以内 |
年级 |
Grade |
Char |
20位字符以内 |
系别 |
Dept |
Char |
20位字符以内 |
余额 |
Cash |
Money |
精确到0.5元 |
日期 |
Date |
Datetime |
精确到日 |
时间 |
Time |
Datetime |
精确到秒 |
级别 |
Level |
Char |
20位字符以内 |
状态 |
Status |
Char |
20位字符以内 |
备注 |
Remarks |
Char |
20位字符以内 |
机房号 |
Room_No |
Char |
20位字符以内 |
机器号 |
Computer_No |
Char |
20位字符以内 |
实现查询功能主要就是查询语句:select … from … where …
用图表(例如流程图、判定表等)辅以必要的说明来表示本程序的逻辑流程。
用图的形式说明本程序所隶属的上一层模块及隶属于本程序的下一层模块、子程序,说明参数赋值和调用方式,说明与本程序相直接关联的数据结构(数据库、数据文卷)。
与本程序关联的数据结构有:学生注册表,充值表,学生上机记录表,上机状态表,退卡表,工作员记录表。
说明准备在本程序中安排的注释,如:
A.模块首部注释说明本模块开始编写的时间,编写人员,及其基本功能;
B.加在各分枝点的注释说明查询的条件;
暂无。
说明对本程序进行单体测试的计划,包括对测试的技术要求、输入数据、预期结果、进度安排、人员职责、设备条件驱动程序及桩模块等的规定。
暂无
本程序主要是实现了用户自主修改密码的功能。
说明该程序应具有的功能,可采用IPO图(即输入一处理一输出图)的形式。
名称 |
标识 |
数据类型 |
有效范围 |
输入方式 |
密码 |
User_PWD |
Char |
20位字符以内 |
手动输入 |
提示信息。
无
用图的形式说明本程序所隶属的上一层模块及隶属于本程序的下一层模块、子程序,说明参数赋值和调用方式,说明与本程序相直接关联的数据结构(数据库、数据文卷)。
根据需要,说明本程序的存储分配。
说明准备在本程序中安排的注释,如:
A.模块首部注释说明本模块开始编写的时间,编写人员,及其基本功能;
B.加在各分枝点的注释说明各种验证条件。
说明本程序运行中所受到的限制条件。
说明对本程序进行单体测试的计划,包括对测试的技术要求、输入数据、预期结果、进度安排、人员职责、设备条件驱动程序及桩模块等的规定。
无。
该程序的主要功能是添加用户或删除用户。
名称 |
标识 |
数据类型 |
有效范围 |
输入方式 |
用户名 |
User_ID |
Char |
20位字符以内 |
手动输入 |
用户级别 |
Level |
Char |
20位字符以内 |
手动输入/选择添加 |
用户姓名 |
User_Name |
Char |
20位字符以内 |
手动输入 |
用户密码 |
User_PWD |
Char |
20位字符以内 |
手动输入 |
名称 |
标识 |
数据类型 |
有效范围 |
用户名 |
User_ID |
Char |
20位字符以内 |
姓名 |
User_Name |
Char |
20位字符以内 |
无
用图表(例如流程图、判定表等)辅以必要的说明来表示本程序的逻辑流程。
用图的形式说明本程序所隶属的上一层模块及隶属于本程序的下一层模块、子程序,说明参数赋值和调用方式,说明与本程序相直接关联的数据结构(数据库、数据文卷)。
与本程序相直接关联的数据结构是用户信息表。
根据需要,说明本程序的存储分配。
说明准备在本程序中安排的注释,如:
A.模块首部注释说明本模块开始编写的时间,编写人员,及其基本功能;
B.加在各分枝点的注释说明各种条件。
说明本程序运行中所受到的限制条件。
说明对本程序进行单体测试的计划,包括对测试的技术要求、输入数据、预期结果、进度安排、人员职责、设备条件驱动程序及桩模块等的规定。
无
该程序的功能主要是给学生注册卡号和相关信息,以便上下机的管理。
说明该程序应具有的功能,可采用IPO图(即输入一处理一输出图)的形式。
名称 |
标识 |
数据类型 |
有效范围 |
输入方式 |
卡号 |
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位字符以内 |
手动输入 |
提示信息。
无。
用图的形式说明本程序所隶属的上一层模块及隶属于本程序的下一层模块、子程序,说明参数赋值和调用方式,说明与本程序相直接关联的数据结构(数据库、数据文卷)。
(图搞定)
本程序无下一层模块,相关联的数据结构是学生注册表。
根据需要,说明本程序的存储分配。
说明准备在本程序中安排的注释,如:
A.模块首部注释说明本模块开始编写的时间,编写人员,及其基本功能;
B.加在各分枝点的注释说明各种条件。
无
说明对本程序进行单体测试的计划,包括对测试的技术要求、输入数据、预期结果、进度安排、人员职责、设备条件驱动程序及桩模块等的规定。
无
本程序的主要功能是给学生的消费卡里进行充值管理。
名称 |
标识 |
数据类型 |
有效范围 |
输入方式 |
卡号 |
Card_No |
Char |
20位数字以内 |
手动输入 |
充值金额 |
Cash |
Money |
>5 |
手动输入 |
名称 |
标识 |
数据类型 |
有效范围 |
上次卡上余额 |
LastRemaincash |
Money |
>5 |
现在卡内余额 |
NowRemaincash |
Money |
>5 |
充值日期 |
Date |
Datetime |
精确到日 |
充值时间 |
Time |
Datetime |
精确到秒 |
充值老师 |
teacher |
Char |
20位字符以内 |
无。
用图的形式说明本程序所隶属的上一层模块及隶属于本程序的下一层模块、子程序,说明参数赋值和调用方式,说明与本程序相直接关联的数据结构(数据库、数据文卷)。
图:搞定;该程序的无下一层模块
本程序的相关联的数据结构是学生注册表和充值表。
根据需要,说明本程序的存储分配。
说明准备在本程序中安排的注释,如:
A.模块首部注释说明本模块开始编写的时间,编写人员,及其基本功能;
B.加在各分枝点的注释说明各种条件。
无
说明对本程序进行单体测试的计划,包括对测试的技术要求、输入数据、预期结果、进度安排、人员职责、设备条件驱动程序及桩模块等的规定。
无。
该程序的主要实现学生退卡功能。
说明该程序应具有的功能,可采用IPO图(即输入一处理一输出图)的形式。
名称 |
标识 |
数据类型 |
有效范围 |
输入方式 |
卡号 |
Card_No |
Char |
20位数字以内 |
手动输入 |
给出对每一个输出项的特性,包括名称、标识、数据的类型和格式,数据值的有效范围,输出的形式、数量和频度,输出媒体、对输出图形及符号的说明、安全保密条件等等。
无
用图的形式说明本程序所隶属的上一层模块及隶属于本程序的下一层模块、子程序,说明参数赋值和调用方式,说明与本程序相直接关联的数据结构(数据库、数据文卷)。
图搞定:本程序无下一层模块;与程序直接相关的数据结构:退卡表和学生注册表。
根据需要,说明本程序的存储分配。
说明准备在本程序中安排的注释,如:
A.模块首部注释说明本模块开始编写的时间,编写人员,及其基本功能;
B.加在各分枝点的注释说明各种条件。
无。
说明对本程序进行单体测试的计划,包括对测试的技术要求、输入数据、预期结果、进度安排、人员职责、设备条件驱动程序及桩模块等的规定。
无。
本程序主要实现对学生上机收入的结算功能,包括:日结和周结。
名称 |
标识 |
数据类型 |
有效范围 |
输入方式 |
日期 |
Date |
Datetime |
|
自动/手动 |
名称 |
标识 |
数据类型 |
有效范围 |
上期充值卡金额 |
RemainCash |
Money |
精确到0.01元 |
当日充值金额 |
RechargeCash |
money |
精确到0.01元 |
当日消费金额 |
ConsumeCash |
Money |
精确到0.01元 |
当日退款金额 |
CancelCash |
Money |
精确到0.01元 |
本期充值卡金额 |
AllCash |
money |
精确到0.01元 |
日期 |
Date |
datetime |
精确到0.01元 |
通过当日的工作员结账表计算日结。使用循环语句将每个工作员的结账记录累加起来。上期充值卡余额通过前一天的本期充值卡金额得到,今天的本期充值卡金额则通过算式得到:本期充值卡金额=上期充值卡金额+当日充值金额—当日消费金额—当日退卡金额。对于周结的算法同日结的大同小异。
用图的形式说明本程序所隶属的上一层模块及隶属于本程序的下一层模块、子程序,说明参数赋值和调用方式,说明与本程序相直接关联的数据结构(数据库、数据文卷)。
根据需要,说明本程序的存储分配。
说明准备在本程序中安排的注释,如:
A.模块首部注释说明本模块开始编写的时间,编写人员,及其基本功能;
B.加在各分枝点的注释说明各种条件。
无。
说明对本程序进行单体测试的计划,包括对测试的技术要求、输入数据、预期结果、进度安排、人员职责、设备条件驱动程序及桩模块等的规定。
无。
该程序的功能主要是实现了辨别用户身份,非三类管理者不能随意进入,确保了系统的安全性.
名称 |
标识 |
数据类型 |
有效范围 |
输入方式 |
用户名 |
User_ID |
Char |
20位字符以内 |
手动输入 |
密码 |
User_PWD |
Char |
20位字符以内 |
手动输入 |
提示信息.
无。
用图表(例如流程图、判定表等)辅以必要的说明来表示本程序的逻辑流程。
用图的形式说明本程序所隶属的上一层模块及隶属于本程序的下一层模块、子程序,说明参数赋值和调用方式,说明与本程序相直接关联的数据结构(数据库、数据文卷)。
无上一层模块,下一层模块连接主模块。
根据需要,说明本程序的存储分配。
说明准备在本程序中安排的注释,如:
A.模块首部注释说明本模块开始编写的时间,编写人员,及其基本功能;
B.加在各分枝点的注释说明各种条件。
无。
说明对本程序进行单体测试的计划,包括对测试的技术要求、输入数据、预期结果、进度安排、人员职责、设备条件驱动程序及桩模块等的规定。
无。