- 1、本文档共61页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ATM机系统结构化分析及设计面向对象分析及设计
建立对象--关系模型 查询 建立对象--行为模型 提款 转账 更改密码 系统设计 一、子系统设计 1、划分子系统 人机交互界面子系统 选择操作子系统 信息验证子系统 取款子系统 查询子系统 转账子系统 更改密码子系统 信息读取子系统 2、处理并发操作: 本系统不存在并发问题,故不需考虑有关并发操作的处理。 3、描述子系统间通信 调用请求 读取信息错误重新输入请求 信息验证请求 信息验证子系统 信息读取子系统 选择操作子系统 查询子系统 取款子系统 转账子系统 更改密码子系统 二、人机交互设计: 1、本系统的界面面向所有认得汉字及英文的用 户,交互界面如下: 取款(Withdraw) 查询(Query) (ChangePassword)更改密码 (Transter)转 账 返回(Back) (Quit)退 卡 输入 取消 9 8 7 6 5 4 3 2 1 0 00 ? 取款子系统界面: 返回(Back) (Quit)退 卡 请输入你要提取的金额(本机只提供100元、50元的面额) ( Confirm)确 定 查询子系统界面: 返回(Back) (Quit)退 卡 您的账户余额为: (Confirm)确 定 可用余额为: 转账子系统界面: 返回(Back) (Quit)退 卡 请选择转入卡账户类型 (Confirm)确 定 银行卡(CreditCard) 存折(BankBook) 返回(Back) (Quit)退 卡 请输入转入卡卡号: (Confirm)确 定 更改密码子系统界面: 返回(Back) (Quit)退 卡 请输入新密码: (Confirm)确 定 三、任务管理设计: 1、识别由事件驱动和时间驱动的任务: 取款、查询、转账、更改密码及返回都是事件驱动的任务,只有在用户发出相应的请求是才处理;退卡即是事件驱动也是时间驱动,用户发出请求时及等待时间超过10秒钟时系统都会执行此操作。 2、识别关键性任务、任务优先级以及任务管理类: 退卡的优先级最高,其次是返回,再次是取款、 查询、转账、更改密码等操作。 3、定义任务: 取款任务:在用户发出取款请求时,根据 用户输入的取款金额吐出相应数额的钱币。 查询任务:在用户发出查询请求时, 在ATM显示屏上显示用户账户上的剩余金额。 转账任务:在用户发出转账请求时,将用户账户上用户要求的数量的金额转到用户指定的卡上。 更改密码:在用户发出更改密码请求时,提供给用户可以更改当前密码的功能。 返回任务:在用户发出返回请求时,系统可以及时回到选择操作界面,方便用户再次选择。 退卡任务:在用户发出退卡任务时,将用户插入ATM机的银行卡退出。 不管用户正在进行何种操作,只要用户发出 退卡请求,系统及时执行退卡操作。 一、协议描述: MESSAGE(ATM—Withdraw) 按下此按钮就进入取款的界面,并提示客户输入取款数额。 MESSAGE(ATM__ Query) 进入帐户查询界面,提示选择币种帐户类型。 当你选择其中一个帐户类型时就显示帐户信息。 如果该帐户不存在,提示出错并返回 上一层界面。 MESSAGE(ATM__Transfer) 进入转帐界面,提示用户选择转帐类型然后 要求两次输入目标帐户的帐号,之后再输入转帐金额。 对象设计 MESSAGE(ATM __ ChangePassword) 进入更改密码子系统界面提示用户输入原密码,然后两次输入新密码。 MESSAGE(ATM__Back ) 返回上一层界面。 MESSAGE(ATM__Quit)推出ATM机系统。 二、实现描述: 对象名:bankCard 类名: BankCard 私有数据结构: Integer:amount; printf(“input the amount of money you want!”); 三、算法设计、 1、取款操作算法描述(withdrawing()) 一级抽象描述 Withdarw the money you want。 二级抽象描述 Input the amount of money you want Compare it with your balance IF you balance is enough THEN DO withdraw money ELSE show message for no enough balance to withdraw 三级抽象描述 Scanf(“%d”,am
文档评论(0)