IC饭卡模拟系统课程设计报告1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
IC饭卡模拟系统课程设计报告1
目录
1. 前言 (7)
2. 需求分析 (7)
2.1. 用户需求 (7)
2.2. 方案分析 (7)
2.3.系统功能需求 (8)
2.3.1.信息输入: (8)
2.3.2. 信息存储: (8)
2.3.3. 统计收入: (8)
2.4.该系统的数据流图 (8)
3.系统结构 (8)
3.1模块功能分析及外部设计 (9)
3.1. 数据模型。
(9)
4.1. 数据类型定义 (10)
1.数据字典 (11)
2.动态数据 (11)
数据库描述 (11)
数据采集 (11)
3. 概要设计 (11)
3.3. 功能模块划分 (11)
3.3.1.结构框图 (12)
3.3.2.程序流图 (12)
3.3数据结构设计 (12)
1.逻辑结构设计 (12)
2.物理结构设计 (13)
3.4运行设计 (13)
1.运行模块的命名 (13)
3.5出错处理设计 (13)
3.6安全设计 (13)
4. 详细设计 (13)
模块描述如下表 (14)
2.运行模块控制 (14)
4.2. 主要模块内部设计 (14)
4.2.1.模块1设计 (15)
4.2.1.1.模块算法 (15)
4.2.1.2.流程图 (15)
4.2.2. 模块2设计 (15)
流程图 (16)
4.2.3. 模块3设计 (16)
流程图 (16)
4.2.3. 模块3设计 (16)
流程图 (16)
4.2.3. 模块4设计 (17)
流程图 (17)
5.实现与调试分析 (17)
5.1.实现环境 (17)
5.2.语言选择 (17)
5.3.调试分析 (17)
6.测试分析 (17)
6.1.测试用例 (17)
6.2.测试结果 (18)
运行时结果 (18)
空帐号时结果 (19)
正确卡号且大于余额的消费额结果 (19) 正确卡号且小于余额的消费额结果 (19) 正确卡号且等于余额的消费额结果 (19) 测试用例 (19)
测试结果 (19)
输入空卡号:结果如图20 (20)
结果,如图: (21)
正确卡号,结果如图 (22)
统计界面如图 (23)
7.用户手册 (23)
1)消费: (23)
2)统计: (23)
3)查询: (24)
参考文献 (24)
附录源程序文件名清单: (24)
1.前言
近年来,高校林立,各个食堂相应采用了现代管理技术,方便学生、食堂管理财务,所以,IC饭卡不失为一种有效的管理方式,也就使IC饭卡系统应运而生。
2. 需求分析
2.1.用户需求
该IC饭卡模拟系统—实现终端机管理和统计,需完成以下工作:(1)在终端机上输入消费金额并在刷卡后更新余额;
(2)在终端机上显示余额;
(3)在中心机房进行统计每月的收入以及消费情况;
2.2. 系统功能需求
2.2.1.待开发软件的功能需求
(1)信息输入:
由服务员在终端机上输入消费金额并由持卡者终端机上刷卡后更新余额,并显示余额;如果只是进行刷卡操作,则只显示余额,而不对数据库和卡信息进行更新。
(2)信息存储:
该系统需要数据库对每张卡的基本信息进行保存,以便于统计,和核对用户卡的余额是否可以进行消费。
(3)统计收入:
由中心机房管理员进行输入统计条件,由该系统按条件统计出收入,并在显示器上显示收入;
2.2.2. 方案分析
经分析,可知,该系统可以分为消费,和统计两个部分,在消费部分,实现由服务员输入消费额,由持卡者刷卡,更新卡信息,在统计部分专门实现统计,可以有效的实现。
2.2.
3.该系统的数据流图:(图2.1)
图2.1 2.2.4.系统结构。
见图2.2
图2.2
3.1模块功能分析及外部设计
1.主模块:统一对各个模块进行整合,管理,
2.输入接收模块:接收由服务员输入的消费额,或者,接收由管理员输入的统计条件
3.状态产生模块:根据刷卡操作前是否输入了消费额,产生相应的状态,状态只有两种,一:消费类,二:查询类。
4.显示模块:在终端显示器上显示用户的余额,或者,在中心机房的显示屏上显示统计条件对应的收入。
5.余额查询模块:根据状态接收模块接收的帐号,消费类,在数据库中进行查询,如果查到余额大于消费额,则返回可以消费的状态,否则返回不可以消费的状态,状态返回到状态接受消费
6.余额更新模块:由状态接受模块传入的帐号,余额,对数据库进行更新操作3.2. 数据模型。
见图3.1
4.1.1.上面涉及到的静态数据及其数据字典:见图4.1~4.4
卡片1
图4.1
卡片2 :
图4.2
卡片3 图4.3
3.4.
输入数据:终端输入的消费额、中心机房输入的统计条件、菜单
命令。
输出数据:显示屏上的余额,统计结果。
内部数据:操作产生的中间数据。
3.5. 数据库描述
本系统采用关系数据库。
数据采集
1.通过终端小键盘输入帐号、消费额;
2.通过中心机房的键盘读入统计条件
4. 概要设计
4.1. 功能模块划分
该系统模块化分如下:
4.1.1.结构框图,见图4.1
图4.1
4.1.2.程序流图,见图4.2
4.2数据结构设计
4.1.1.逻辑结构设计
所用数据类型、总长、数长、显长等方面进行全面的分析后,我们设计出了系统所用到的数据库的数据字典如下。
表 4.3
表4.3
2.物理结构设计
数据库中各表的文件物理结构采用顺序的记录文件。
4.3.运行设计
4.1.1.运行模块的命名
1.模块命名为Mx.y,x相同则为同一功能的模块。
2.运行模块时间响应
各模块运行时间控制在1至2秒内。
4.1.2出错处理设计
1.系统应具有相当健壮性,避免或降低由系统错误所造成的数据库损坏。
2.对关键性操作,如删除等提供警告和确认机制。
4.1.3安全设计
系统提供严格的身份验证机制和密码管理。
4.1.4维护设计
系统严格按照设计规范进行设计,并保持各阶段文档的完整性,为以后对软件的维护打好基础。
5. 详细设计
在以上工作的基础上,我们对有输出要求的全部数据进行属性分
析、存储分析、关联分析、查询统计分析、数据分类与处理功能分析,进一步研究了整个系统的人—机接口,提出了系统细化后的系统的层次方框图。
见图。
图5.1,层次方框图
5.2.运行模块控制
(1) 操作系统启动M0。
(2) M0启动M1,M2,M3,M4,M5。
(3) M1启动M1.1,M1.2,M1.3。
(4) M3启动M3.1,M3.2。
(5) M5启动M5.1,M5.2,M5.3。
(6) 进入消息驱动状态,M0通过事件驱动启动相应的功能模块,包括M2和M4。
5.3. 主要模块内部设计
5.3.1.模块1设计
5.3.1.1.模块算法
图5.2
5.3.1.2.流程图,见图5.3
图5.3
5.3.1.3. 模块2设计,见图5.4
图5.4
5.3.1.4.流程图,见图5.5
图5.5
5.3.1.5. 模块3设计,见图5.6
图5.6
5.3.1.
6.流程图,见图5.7
图5.7
5.3.1.7. 模块3设计,见图5.8
图
5.8
图5.9 5.3.1.8. 模块4设计
图5.10
图5.11 6.实现与调试分析6.1.实现环境
Windows 及以上版本
6.2.语言选择
Microsoft visual VC++6.0;
6.3.调试分析
7.测试分析
7.1.测试用例
7.2.测试结果
图7.2
运行时,结果如下:
空帐号时,显示账号错误,(如图7.3)
图7.3
正确卡号,大于余额的消费额,显示余额不足,如图图7.5
图7.5
结果:如图7.6
图7.6
正确卡号,小于余额的消费额,显示消费成功见图7.7
结果:如图7.8
图7.8
正确卡号,等于余额的消费额,显示消费成功,见图7.9
图7.9
结果:如图7.10
图7.10
6.1.测试用例
图7.11
6.2.测试结果
图7.12
运行时:
输入空卡号:结果如图7.13
图7.13
结果,如图
7.14
图7.14
正确卡号,结果如图7.15
图7.15
统计界面如图7.16
图7.16
7.用户手册
1)消费:
打开该软件,在第一个窗口中,填入帐号[相当于刷卡操作],在消费额框输入消费额,点击确定;
2)统计:
打开该软件,则在统计栏的年中输入需要统计的年,月,日。
如按年统计:单击按年统计
如按月统计:单击按月统计
如按日统计:单击按日统计。