您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 97ATM系统UML
《UML基础与ROSE建模》——ATM系统建模学生成员:班级:BX074指导老师:二〇〇九年月日目录一需求规格说明书---------------------------------------------------11.1ATM系统的需求概述-------------------------------------------11.2ATM系统的需求要点-------------------------------------------11.3术语定义----------------------------------------------------21.4问题范围----------------------------------------------------2二需求分析---------------------------------------------------------22.1划分主题----------------------------------------------------32.2确定属性----------------------------------------------------42.3识别继承关系------------------------------------------------52.4建立动态模型------------------------------------------------62.5状态图------------------------------------------------------92.6基本系统模型图的建立---------------------------------------102.7功能级数据流图的建立---------------------------------------112.8系统问题域子系统结构---------------------------------------122.9ATM程序路径设计--------------------------------------------13三源代码----------------------------------------------------------14一、需求规格说明书1.1、ATM系统的需求概述图1-1ATM(自动取款机)系统ATMATMATM中央计算机行计算机柜员终端账户分行计算机账户账户账户储户储户柜员操作员操作员陪审员取款机银行卡读卡器会议客户控制台取款的客户收据打印处理中反馈给银行银行的网络服务发放钱标志封装接收器(以上由肖薇完成)(由陆铭君完成)1.2、ATM系统的需求要点拟开发一个自动取款系统(参考图1-1),它是一个由自动取款机、中央计算机、分行计算机及柜员终端组成的网络系统。ATM和中央计算机由总行投资购买。总行拥有多台ATM,分别设在全市各主要街道上。分行负责提供分行计算机和柜员终端。柜员终端设在分行营业厅及分行下属的各个储蓄所内。该系统的软件开发成本由各个分行分摊。银行柜员使用柜员终端处理储户提交的储蓄事务。储户可以用现金或支票向自己拥有的某个账户内存款或开新账户。储户也可以从自己的账户中取款。通常,一个储户可能拥有多个账户。柜员负责把储户提交的存款或取款事务输进柜员终端,接收储户交来的现金或支票,或付给储户现金。柜员终端与相应的分行计算机通信,分行计算机具体处理针对某个账户的事务并且维护账户。拥有银行账户的储户有权申请领取现金兑换卡。使用现金兑换卡可以通过ATM访问自OperatorSystemStartupSystemShutdownSessionTransactionextendWithdrawalInquiryDepositTransferInvalidPINATMSystemBankCustomer己的账户。目前仅限于用现金兑换卡在ATM上提取现金(即取款),或查询有关自己账户的信息(如余额)。将来还可能要求用ATM来办理转账、存款。所谓现金兑换卡就是一个特制的磁卡,上面有分行代码和卡号。分行代码唯一标识总行下属的一个分行,卡号确定了这张卡可以访问哪些账户。通常,一张卡可以访问储户的若干个账户,但是不一定能访问这个储户的全部账户。每张卡仅属于一个储户所有,但是,同一张卡可能有多个副本,因此,必须考虑同时在若干台ATM上使用同样的现金兑换卡的可能性。也就是说,系统应该能够处理并发的访问。当用户把现金兑换卡插入ATM之后,ATM就与用户交互,以获取有关这次事务的信息,并与中央计算机交换关于事务的信息。首先,ATM要求用户输入密码,接下来ATM把从这张卡上读到的信息以及用户输入的密码传给中央计算机,请求中央计算机核对这些信息并处理这次事务。中央计算机根据卡上的分行代码确定这次事务与分行的对应关系,并且委托相应的分行计算机验证用户的密码。如果用户输入的密码是正确的,ATM就要求用户选择事务类型(取款、查询等)。当用户选择取款时,ATM请求用户输入取款额。最后,ATM从现金口吐出现金,并且打印账单交给用户。1.3、术语定义账户。在银行中,事务应用的单个账户。账户可以为多种类型,但是至少包括支票和存款。每个顾客可以拥有多个账户。ATM。一个工作站终端,使得顾客能够使用现金卡在ATM上进行自己的事务处理。ATM同顾客进行交互,收集事务信息,并发送事务信息到中心计算机,由中心计算机确认和处理信息之后,将现金通过ATM提供给顾客。银行。一个金融机构,负责保存顾客的账户信息,执行授权卡通过ATM网访问账户。银行计算机。银行拥有的计算机,同ATM网和银行自己的现金工作站进行交互。银行可以拥有自己的内部计算机网处理账户,但是我们只关心同网络进行交互的计算机。现金兑换卡。每张卡提供给一个银行客户,授权客户可以使用ATM机访问自己的账户。每张卡包含一个银行代码和一个卡号,银行代码根据信用卡的国际标准进行编码,卡号确定卡能够访问的账户。一张卡不能访问客户的所有账户。每张卡只能有一个持卡人,但是多个复本可能存在,所以必须考虑从不同的ATM机同时使用相同卡的行为。客户。拥有银行的一个或者多个账户的人。客户可以包括一个人或者多个人,或者是公司。相同的人,拥有不同银行的账户被认为是不同的客户。事务。对单个客户账户的单个完整的操作请求。1.4、问题范围ATM的功能要求支持计算机银行网。二、需求分析分析需求陈述,从陈述中找出下列名词,可以把它们作为类一对象的初步的候选者:银行,自动取款机(ATM)系统,中央计算机,分行计算机,柜员终端,网络,总行,分行,软件,成本,市,街道,营业厅,储蓄所,柜员,储户,现金.支票,账户,事务,现金兑换卡,余额,磁卡,分行代码,卡号,用户,副本,信息,密码,类型,取款额,账单,访问。经过初步筛选,剩下下列类一对象:ATM、中央总行、分行、柜员、储户、账户、事务、现金兑换卡。经过初步分析和进一步筛选确定出下列关联:(1)直接提取动词短语得出的关联·总行拥有多台ATM。·分行提供分行计算机和柜员终端。·储户拥有账户。·分行计算机处理针对账户的事务。·分行计算机维护账户。·柜员终端与分行计算机通信。·柜员输入针对账户的事务。·ATM与中央计算机交换关于事务的信息。·中央计算机确定事务与分行的对应关系。(2)需求陈述中隐含的关联·总行由各个分行组成。·分行保管账户。·总行拥有中央计算机。·储户拥有现金兑换卡。(3)根据问题域知识得出的关联·现金兑换卡访问账户。·分行雇用柜员。软件设计是控制自动柜员机。有磁性读一个金融卡的斑纹,为和客户互动的客户控制台(键盘和展览),一个存放信封位置,一个提取现金的窗口(¥100.00的倍数),一台为印刷客户收据的打印机,和让一个操作员到开始或者停止机器的钥匙-操作开关。自动柜员机将会与在银行相对应的电脑相连。(在后者上的软件为这一个问题不是需求的一部份。)每次服务一个客户。一个客户必须先插入一个金融卡而且输入个人密码-两者都会作为确认每个交易的一部分送回到银行系统。客户然后可以进行下一步交易。那张卡直到交易结束才会退出自动柜员机。自动柜员机一定能够提供下列的服务给客户:1.一个客户的卡有对应的账户,可以从账户里取¥100.00的倍数的现金。2.一个客户可以通过卡存款到账户。客户将装有现金的信封塞入自动柜员机之内,确认信封由银行从自动柜员机中取出。3.一个客户一定能够在二个帐户之间的钱互相转移。4.一个客户一定能够从任何帐户查询金融卡。自动柜员机将会向银行传达每个被那银行确认交易。通常,一个交易是要经过银行的核准程序。在存款时,信息将会表明客户有将信封交给银行。(如果客户的存款信封没有放入,或改为取消,就没有信息送到那银行,那存款将不记入账户。)如果银行决定客户的密码错误,客户将会是必需再一次输入密码。如果客户不能够成功地输入密码,在尝试三次之后,那卡将被机器没收,直到客户连络那银行才能把它拿回来。如果除了密码错误之外交易不成功的理由,自动柜员机将会使其为无问题,然后会问客户是否他/她需要到做另外的一个交易。那自动柜员机将会为每个成功的交易提供印刷的收据,交易日期,时间,以机器制造位置,类型交易,帐户(s),数量,和终止和相对的帐户。自动柜员机将会有一个操作员到开始或者停止机器的钥匙-操作开关的维护。在转到ON位置,操作员将会经过查证而拿到现金。当它没有在客户服务的时候,机器才能被关掉。当那开关是移动对OFF位置,那机器停工,所以操作员取出存款信封,再装现金,空格收据,等等。自动柜员机也会维持一个交易的内在记录,促进解决从一个硬件失败而引起的不明交易。记录进入可能包含卡片数字和元数量,但是为安全永远不会包含密码。(以上由唐军杰,姚晓蕾翻译)2.1、划分主题在开发大型、复杂系统的过程中,为了降低复杂程度,人们习惯于把系统再进一步划分成几个不同的主题,也就是在概念上把系统包含的内容分解成若干个范畴。应该按问题领域而不是用功能分解方法来确定主题。此外,应该按照使不同主题内的对象相互间依赖和交互最少的原则来确定主题。ATM系统原始对象图可划分为“总行”、“分行”、“ATM”等三个主题,分别可标识为如下图2—2所示把ATM系统划分为三个主题(下图由鄢德龙完成)分行代码分行账户分行计算机柜员柜员终端柜员事务拥有通信拥有1+访问通信1+拥有1+1+输入1+1+雇佣修改1+通信1+组成1+总行储户中央计算机ATM远程事务现金兑换卡1+输入1+1+1+1+拥有修改输入保管2.2、确定属性属性是对象的性质,藉助于属性我们能对类---对象和结构有更深入、更具体的认识。注意,在分析阶段不要用属性来表示对象间的关系,使用关联能够表示两个对象间的任何关系,而且把关系表示得更清晰、更醒目。经过筛选之后,得到ATM系统中各个类的属性,如图2—3所示。图中还标出了一些限定词:“卡号”实际上是一个限定词。在研究卡号含义的过程中,发现以前在分析确定关联的过程中遗漏了“分行发放现金兑换卡”这个关联,现在把这个关联补上,卡号是这个关联限定词。“分行代码”是关联“分行组成总行”上的限定词。“账号”是关联“分行保管账户”上的限定词。“雇员号”是“分行雇用柜员”上限定词。“站号”是“分行拥有柜员终端”、“柜员终端与分行计算机通信”及“中央计算机与ATM通信”等三个关联上的限定词。ATM对象模型中的属性(由杨玉婷完成)2.3、识别继承关系如果一个一般化对象可能有多个特殊化对象,应当先考虑最简单的特殊化对象和最复杂的特殊化对象,然后再考虑中间其他的特殊化对象。①自底向上:抽象出现有类的共性泛化出父类远程事务+柜员事务=事务(父类)ATM+柜员终端=输入站②和自顶向下:把现有类更具体的子类资金余额,结算信息,消息状况登记册收据收据打印操作员座谈小组与银行联系网封装接受器现金发放器顾客控制台读卡器取款机银行卡会议处理交易撤消存款过户转帐查询帐目信息111111111111111111111111***带形容词的名
本文标题:97ATM系统UML
链接地址:https://www.777doc.com/doc-4342979 .html