《ATM机系统分析及其设计应用.doc》由会员分享,可在线阅读,更多相关《ATM机系统分析及其设计应用.doc(37页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、ATM机系统分析和设计 班级: 07软件工程 学号: 姓名: 闫亚培第一章 系统需求 ATM机系统域描述以下: 在ATM机系统中,要为每名用户建立一个帐户,并给她们发放银行卡(银行卡能够提供卡号,用户姓名),账户中存放用户个人信息,存款信息,取款信息和余额信息,持有银行卡用户能够经过ATM自动取款机系统进行存款,取款,查询余额操作。在使用自动取款机时,需要插入用户银行卡,并依据系统界面显示输入密码,由系统判定该帐户是否有效(帐户密码是否正确),若密码输入不正确,则再次显示让用户输入密码,若3次输入密码均不正确,系统自动退出服务,若密码输入正确,则系统进入选择服务类型界面:1.存款,2.取款,3
2、.查询余额,然后系统依据服务类型进行对应操作,若选择取款操作,系统确定取款请求以后,会问询取款数额,系统界面显示输入数额请求,用户输入取款数额,系统接到信息后发出确定取款请求,用户选择确定,系统选择确定后会向点钞机发出钞请求,然后点钞机出钞,系统向用户发出去钞请求,用户取钞以后,系统统计此次取款并自动计算余额,更新帐户信息,然后系统界面进入是否选择继续服务界面,用户点击否,然后系统退出银行卡并提醒用户取卡,用户取走银行卡,至此,取款业务完成。若选择存款业务,系统确定存款请求以后,系统界面进入请放入存款界面,然后用户将存款放入存款口,系统提醒点钞机进行点钞,点钞完成后,系统统计存款操作并更新余额
3、,系统界面显示存款完成,然后系统界面进入是否选择继续服务界面,用户点击否,则系统退出银行卡并提醒用户取卡,用户取走卡后,存款业务完成。若用户选择查询业务,若查询余额,系统确定请求以后依据其账号信息查取余额,并在界面显示余额为多少。 对上述ATM机系统域描述进行分析,能够取得以下功效性需求:此软件设计将实现银行ATM系统基础功效。ATM系统一次服务一名用户。用户插入一张ATM卡并进入个人数字识别号码(PIN),系统进行验证,经过后用户 才能实施一个或更多操作。用户完成全部操作后,退卡。 ATM系统必需向用户提供以下服务: 1、用户能够做一次取款(取款金额必需是100元人民币整数倍),在现金被提取
4、之前,必需得到银行许可。 2、用户能够做一次存款,用户把存款量输入到ATM系统中,必需从银行得到许可。3、用户能够做一次转帐。 4、用户能够进行一次具体账户信息查询。 5、用户经过有效验证后能够更改密码。 6、用户能够在取回磁卡是选择是否得到统计操作打印凭条。 ATM系统将把每一处理传达成银行而且取得银行许可。假如银行确定用户PIN 是无效,用户将被要求再进入PIN。 假如用户不能在五次尝试以后成功地进入PIN,用户卡将被机器没收,而用户不得不联络银行取回它。 第二章 需求分析采取用例驱动分析方法分析需求关键任务是识别出系统中参与者和用例,并建立用例模型。在本系统中,参与者比较简单,不需要尤其
5、分析。2.1 识别参与者 经过对系统分析,系统存在三个参与者:(1)Custumer(用户)。 参与者描述以下: Custumer 描述:用户能够进行存款,取款,查询业务。 示例:持有银行卡任何个人或组织。(2)Bankserve(银行服务器) 描述:Bankserve管理机器。 示例:银行中央服务系统。 (3)Operator(银行服务人员) 描述:负责开/关机器和往机器中放现金。 示例:银行工作人员。 2.2 识别用例前面已经识别出了参与者,经过对需求深入分析,能够确定系统中有以下用例存在:(1)Session(会话) 当一名用户将一张ATM卡片插入机器时,一个Session开始,ATM系
6、统读卡(假如用户实施非法操作或卡片损坏,卡片将被退出,同时屏幕将显示犯错信息,而被Session异常中止)。进行验证用户密码登录功效。用户成功登录系统后,能够选择一个或多个操作,直至退卡。假如用户输入五次无效PIN,则Session被异常中止 ,ATM卡将被吞掉。 (2)Task(任务) Task是一个抽象用例,表示全部类型处理所共有行为,Task具体类型根据合适方法实施一定操作。依据Task(存款、取款,转帐,查询,更改密码)事件流描述给出具体处理。 (3)Deposit(存款) 提供存款到帐户功效。 (4)Withdraw(取款) 提供从账户取款功效。 (5)Transfer(转账) 提供
7、转账功效。 (6)QueryAccount(查询余额) 提供查询余额功效。 (7)ChangePIN(更改密码) 提供更改密码功效。 (8)PrintReceipt(打印凭条) 用户选择打印凭条,包含显示日期,时间,机器位置,操作,理由,数量,结果类型,受到影响原因和可供使用选择。 在识别出参与者和用例以后,要想建立用例图,还需要识别出她们之间关系,“Degonit” (存款),“ Withdraw” (取款),“ Inquire” (查询)这些动作是由Custumer(用户)实施,则在所以Custumer(用户)和“Degonit” (存款),“ Withdraw” (取款),“ Inqui
8、re” (查询)这些动作之间是依靠关系,系统用例图以下所表示: 图2.1 系统用例图2.3 用例事件流描述用例事件流是对完成用例行为所需事件描述。它描述系统应该做什么,而不是描述系统应该怎样做。开始,只是对实施用例常规流所需步骤简单描述。伴随分析进行,经过添入更多具体信息,步骤不停细化。最终,将例外流添加到用例事件流描述中。ATM机系统用例事件流描述以下:2.31用例1 Login(登录) 简明说明 本用例描述了用户怎样登录到系统中。 前提条件 无。 后置条件 若成功,则用户登录到系统中。不然,系统状态不变。 事件流 .主事件流 当用户插入ATM卡到机器中时,用例Session开启。 A. 系
9、统提醒用户输入密码。 B. 用户输入自己密码,提交。 C. 系统验证输入密码(E-1),用户登录成功。 .替换流 E-1:若密码输入无效,系统提醒错误信息, 用户能够重新输入或终止用例。 2.32 用例2 eposit(存款) 简明说明 本用例描述了用户怎样存款到机器中。 前提条件 在本用例开始前,用户必需已经登录到系统中。 后置条件 若用例成功,则用户账户中存款金额增加。不然,系统状态不变。 事件流 .主事件流 用户向系统输入存款金额并向机器输入现金时,用例开启。 A. 系统提醒用户输入账号和存款金额。 B. 用户输入后提交,系统确定账户存在并有效(E-1)。 C. 系统建立存款事件统计,并
10、更新账户相关信息。 .替换流 E-1: 若账户不存在或无效,系统显示信息,用户能够重新输入或终止用例。 2.33 用例3 withdraw(取款) 简明说明 本用例描述了用户怎样取款。 前提条件 在本用例开始前,用户必需已经登录到系统中。 后置条件 若用例成功,则用户账户中存款金额降低。不然,系统状态不变。 事件流 .主事件流 用户向系统输入取款金额时,用例开启。 A.系统提醒用户输入账号和取款金额。 B.用户输入后提交,系统确定账户存在并有效(E-1), 账户余额是否够支付(E-2)。 C.系统建立取款事件统计,并更新账户相关信息。 .替换流 E-1:若账户不存在或无效, 系统显示信息,用户
11、能够重新输入或终止用例。 E-2:若余额不足,系统显示信息, 用户能够重新输入或终止用例。 2.34 用例4 Thransfer(转账) 简明说明 本用例描述了用户怎样将资金从一个账户转到另一个账户。 前提条件 在本用例开始前,用户必需已经登录到系统中。 后置条件 若用例成功,则用户账户中存款金额改变。不然,系统状态不变。 事件流 .主事件流 用户向系统输入转帐命令时,用例开启。 A.系统提醒用户输入账号和转账金额。 B.用户输入后提交。 C.系统确定资金转出账户是否存在并有效(当账户信息和用户一致,且账户非冻结时有效)(E-1), 资金转出账户金额是否足够支付(E-2)。 D.系统为资金转出
12、帐户建立转账事件统计,并更新账户相关信息。 E.存放转账统计。 F.判定资金转入帐户和转出账户是否属于同一银行,如是,则实施分支流(S-1),如属于不一样银行,则实施(E-2). .替换流 E-1:若账户不存在或无效,系统显示信息, 用户能够重新输入或终止用例。 E-2:若余额不足,系统显示信息, 用户能够修改金额数目或终止用例。 第3章 静态结构模型深入分析系统需求,发觉类和类之间关系,确定它们静态结构和动态行为,是面向对象分析基础任务。系统静态结构模型关键用类图和对象图描述。3.1 定义系统对象 系统对象识别能够经过寻求系统域描述和需求描述中名词来进行。由分析可得,整个系统包含了帐户库、银
13、行储户库及ATM系统,这些全部是类图中候选对象。判定是否应该为这些候选对象创建类方法是:是否有和该对象相关身份和行为?该系统中包含类以下:边界类:(1)CcardReader a) 功效: 1. 告诉ATM机什么时候插进去卡 2. 接收卡 3. 读卡 4. 保留卡 b) 合作者: 1. ATM 2. Session 3. Card(2) CcashDispenser a) 功效: 1. 无现金交易 2. 保持大量现金可用。 3. 初始化现金额 b) 合作者: i. Clog ii. CTransaction (3) CCustomerConsole a) 功效: 1.显示消息 2.显示菜单并接
14、收选择 3.读入密码 4.接收现金 5.显示对话框接收用户操作 b) 合作者: 1.CTransaction 2.CSession 2、 CKeyboard a) 功效: 从键盘上读入操作 b) 合作者: CCustomerConsole 3、 CScreen a) 功效: 显示界面和字符 b) 合作者: CCustomerConsole 4、 CCashReceiver a) 功效: 从用户那里接收现金 b) 合作者: Clog 5、 Cbank a) 功效: 1.和银行联络 2.向银行发信息 3.接收银行信息 4.关闭同银行联络 b) 合作者: 1.Clog 2.CSession 3.Cm
15、essage 6、 CoperatorPannel a) 功效: 1.通知ATM系统已关闭 2通知 ATM系统已开启 3.通知点钞机初始化现金 b) 合作者: 1.CATM 2.CCashDispenser 7、 Cprinter a) 功效: 打印回单 b) 合作者: 1.CATM 2.CTransaction 3.Clog 4.CReceipt 实体类:1、 Clog a) 功效: 1.Write log message from bank 2.Write log message from cardreader 3.Write log message from session 4.Writ
16、e log message from Transaction b) Collaborations: 1.CBank 2.CCardreader 3.CTransaction 2、 Cmessage a) 功效: 保留发送到银行服务器信息 b) Collorations: 1.CBank 2.CTransaction 3、 Creceipt a) 功效: 保留被打印信息 b) 合作者: Cprinter 4、 CCard a) 功效: 保留银行卡内信息 b) 合作者: 1.CCardReader 2 CSession 5、 CAccount a) 功效: 保留余额信息 b) 合作者: CQueryAccount 控制类:1、 CSession a) 功效: 1.实施会话 2.不实施无效密码 3.许可用户选择交易 4.开始交易 b) 合作者: 1.CATM 2.CTransaction 3.CCustomerConsole 4.Clog 2、 CTransaction a) 功效: 实施转账 b) 合作者: 1.CCustomerConsole 2.Clog 3.CBank 4.Cprinter 5.CWithDraw 6.CDeposit 7.CWithDraw 8.CTransfer 9.CInquery 10.CChangePIN