软件工程设计选题2_ATM系统UML建模设计

合集下载

银行ATM(UML分析与设计)

银行ATM(UML分析与设计)

Atm客户端 专用网
地区Atm服务器 专用网
银行数据库服务器
局域网 打印机
2.系统需求分析
atm系统包括软件和硬件两部分,因此了解外部设备是如 何协调工作是整个建模的基础。Atm业务大概分为4个部分: 查询帐户余额、取款、存款和更改用户的密码。一个完整的 atm系统包括一下几个模块:
(1)读卡机模块 允许储户讲银行卡插入读卡机,读卡机识别卡的 种类并在显示器上提示用户输入密码。 (2)输入模块 储户可以输入密码和取款金额,并选择要完成的事务。 通常在键盘上只设数字键和功能键,目的方便储户,该模块需要储户的交 互。 (3)ic认证模块 主要鉴别储户卡的真伪。基于ic卡的安全授权系 统,要求从技术上严格保证卡的唯一性与防伪性,从而保证网络的安全。 (4)显示模块 显示储户相关的信息,包括储户交互是的提示信息 和确认信息。
客户端 atm.exe
Account
Account
CardReader
AtmScreen
CardDispenser
CardReader
AtmScreen
CardDispenser
AtmServ该配置图中只画一个atm
client,一个地区的atm服务器,银行数据库服务器以及 一台打印机,它大致描述了整个系统的物理部署情况。
5.建立系统部署图
atm系统部署是整个项目实施过程的最后阶段,其实质 就是把该系统中涉及到的硬件、软件整合到一起,描述系 统的运行情况。在部署图中两只视图,构件图和配置图。 (1)构件图 组件图,它包含了模型代码库、可执行文件、运行库和 其他构件的信息,它是代码的实际模块。
类操作代码,.cpp文件 类的头文件
收集储户信 息
色之间的通信过程,使读者清

基于UML的ATM自动取款机系统设计定稿

基于UML的ATM自动取款机系统设计定稿

基于UML的ATM自动取款机系统设计定稿————————————————————————————————作者:————————————————————————————————日期:成都信息工程学院《系统分析师UML实物手册》题目 ATM自动取款机系统的分析设计专业信息管理与信息系统班级 2007级1班学号 2007215008 2007215031学生姓名李秋香刘福生摘要ATM是Automatic Teller Machine的缩写,意思是自动柜员机,因大部分用于取款,又称自动取款机。

ATM自动取款机是由计算机控制的持卡人自我服务型的金融专用设备。

它是一种高度精密的机电一体化装置,利用磁性代码卡或智能卡实现金融交易的自助服务,代替银行柜面人员的工作.可提取现金、查询存款余额、进行账户之间资金划拨、余额查询等工作;还可以进行现金存款(实时入账)、支票存款(国内无)、存折补登、中间业务等工作。

持卡人可以使用信用卡或储蓄卡,根据密码办理自动取款、查询余额、转账、现金存款,存折补登,购买基金,更改密码,缴纳手机话费等业务。

UML(Unified Modeling Language)是一套用来表达面向对象分析设计的国际标准语言。

它具有以下特点:统一标准;面向对象;可视化、表示能力强大;是系统建模语言,独立于过程;概念明确。

UML 是数据建模和商务流程建模的集成建模语言。

本文根据ATM系统的特点及金融交易的特殊要求,运用UML统一建模语言来对ATM系统的硬件及软件结构进行了整体设计。

软件上以模块化及表单驱动的方式,实现了金融交易的安全处理、通讯故障诊断等功能,并就通讯故障诊断提出了一种新的基于网络应用层、传输层、网络层的方法.该系统可同时支持磁卡和IC卡,已应用于实际的金融系统,取得了良好的经济效益和社会效益.关键词:UML ATM 系统AbstractATM is an acronym for Automatic Teller Machine, which means automated teller machine, as most for the money, also known as automated teller machines。

UML建模_ATM取款机

UML建模_ATM取款机

软件建模(UML)作业班级:计算机0806班学号:20083007姓名:姜俊方UML 个人作业一、ATM 机需求分析图二、用例图用于描述一组用例、参与者及它们之间的连接关系。

用例图仅仅从角色使用系统的角度描述系统中的信息,也是站在系统外部查看系统功能,而并不描述该功能在系统内部是如何实现的。

用例图是被称为参与者的外部用户所能观察到的系统功能的模型图。

用例可应用于整个系统,也可应用于系统的一部分,包括子系统、单个的类甚至接口。

通常,用例不仅代表这些元素所期望的行为,而且还可把这些元素用作开发过程中测试用例的基础。

椭圆:用例,是用户与计算机之间的一次典型交互作用。

人形:参与者(外部执行者)是指用户在系统中所扮演的角色。

ATM 系统的用例图读卡机模块键盘输入模块IC认证模块显示模块吐钱机模块打印报表报表监视器模块ATM 自动取款存钱取钱转账查询余额付款银行工作人员客户修改密码添加信息银行工作人员维护硬件设备ATM 提款系统用例图存款查余额用户更改密码取款验证用户付款信用三、类图用于描述一组类、接口、协作及它们间的静态关系。

在面向对象系统的建模中,类图最为常用,它用来阐明系统的静态结构。

类是对一组具有相同属性、操作、关系和语义的对象的描述,其中对类的属性和操作进行描述时的一个最重要的细节是它的可见性。

一个典型的系统模型中通常有若干个类图。

一个类图不一定要包含系统中所有的类,一个类可加到几个类图中。

在类图中类用矩形框来表示,它的属性和操作分别列在分格中。

类之间可以多种方式链接(如关联、泛化、依赖和实现等)。

关系用类框之间的连线来表示,不同的关系用连线上和连线端头处的修饰符来区别。

类图数据库ATM键盘ATM 屏幕吐钱机ATM 读卡器账户ATM 系统类图四、顺序图(序列图)顺序图表示对象之间传送消息的时间顺序。

顺序图用来描述对象之间消息发送的先后次序,阐明对象之间的交互过程以及在系统执行过程中的某一具体时刻将会发生什么事件。

ATM系统UML 7种图

ATM系统UML  7种图

UML建模语言7种图(以银行ATM系统为例)分类:JAVA2010-04-21 20:40 2911人阅读评论(0) 收藏举报uml语言活动作业优化1 用例图:描述了系统提供的一个功能单元。

以一种可视化的方式理解系统的功能需求,"角色"与系统内用例之间的关系。

本例中,参与者"银行储户"和ATM机。

简化后的ATM机仅有取款、存款及其余功能。

其余功能不做详细说明。

2 类图:显示系统的静态结构。

逻辑类、实现类,实现类就是程序员处理的实体。

类在类图上使用包含三个部分的矩形来描述,如图2所示。

最上面的部分显示类的名称,中间部分包含类的属性,最下面的部分包含类的操作(或者说"方法")。

本例中许多单个的帐户组成了帐户库,帐户具有帐户类型、帐户号、余额三个属性。

许多银行储户组成了储户库。

ATM系统包含了许多ATM机。

银行储户及ATM机两个类包含哪些属性,哪些操作,它们的可见性及操作的返回类型、参数个数、参数类型从类图上都一目了然。

通过类图不仅可以使设计者明确的表达自己的设计意图,也能帮助自己整理思路,充实及优化自己的设计。

3 序列图:显示具体用例(或者是用例的一部分)的详细流程。

它几乎是自描述的,并且显示了流程中中不同对象之间的调用关系,同时还可以很详细地显示对不同对象的不同调用。

序列图有两个维度:垂直维度以发生的时间顺序显示消息/调用的序列;水平维度显示消息被发送到的对象实例。

本例以时间为顺序描述了顾客在ATM机上取款时信息的流动情况,顺序图着重于对象间消息传递的时间顺序。

4 状态图:表示某个类所处的不同状态和该类的状态转换信息。

包括5个基本元素:初始起点,它使用实心圆来绘制;状态之间的转换,它使用具有开箭头的线段来绘制;状态,它使用圆角矩形来绘制;判断点,它使用空心圆来绘制;以及一个或者多个终止点,它们使用内部包含实心圆的圆来绘制。

本例描述了顾客在ATM机上进行操作会经历的几种状态,及各种状态之间转换的条件。

UML分析设计文档ATM取款机-顺序图

UML分析设计文档ATM取款机-顺序图

UML分析设计文档ATM取款机-顺序图1.Session当一名客户将一张ATM卡片插入机器时,一个Session开始,ATM系统读卡(如果客户执行非法操作或卡片损坏,卡片将被退出,同时屏幕将显示出错信息,而被Session异常中断)。

进行验证客户密码的登录功能。

客户成功登录系统后,可以选择一种或多种操作,直至退卡。

如果客户输入五次无效的PIN,则Session 被异常中断,ATM卡将被吞掉。

其顺序图如下所示:2.TaskTask是一种抽象的用例,表示所有类型的处理所共有的行为,Task的具体类型按照适当的方式执行一定的操作。

根据Task(存款、取款,转帐,查询,更改密码)的事件流描述给出具体的处理。

其顺序图如下:3.Deposit插入用户的银行卡后,根据系统界面显示输入密码,由系统判断该帐户是否有效(帐户密码是否正确),若密码输入不正确,则再次显示让用户输入密码,若3次输入的密码均不正确,系统自动退出服务,若密码输入正确,则系统进入选择服务类型界面,选择存款业务,系统确认存款请求以后,系统界面进入请放入存款界面,然后用户将存款放入存款口,系统提示点钞机进行点钞,点钞完毕后,系统记录存款操作并更新余额,系统界面显示存款完毕,然后系统界面进入是否选择继续服务界面,用户点击否,则系统退出银行卡并提示用户取卡,用户取走卡后,存款业务完成。

存款操作的顺序图如下:4.WithDraw插入用户的银行卡,并根据系统界面显示输入密码,由系统判断该帐户是否有效(帐户密码是否正确),若密码输入不正确,则再次显示让用户输入密码,若3次输入的密码均不正确,系统自动退出服务,若密码输入正确,则系统进入选择服务类型界面,然后系统根据服务类型进行相应操作,若选择取款操作,系统确认取款请求以后,会询问取款数额,系统界面显示输入数额请求,用户输入取款数额,系统接到信息后发出确认取款请求,用户选择确认,系统选择确认后会向点钞机发出钞请求,然后点钞机出钞,系统向用户发出去钞请求,用户取钞以后,系统记录此次取款并自动计算余额,更新帐户信息,然后系统界面进入是否选择继续服务界面,用户点击否,然后系统退出银行卡并提醒用户取卡,用户取走银行卡,至此,取款业务完成。

UML研究分析设计文档ATM取款机-顺序图

UML研究分析设计文档ATM取款机-顺序图

UML分析设计文档ATM取款机-顺序图————————————————————————————————作者:————————————————————————————————日期:学号姓名组别系统题目负责部分第十六组ATM取款机系统顺序图1.Session当一名客户将一张ATM卡片插入机器时,一个Session开始,ATM系统读卡(如果客户执行非法操作或卡片损坏,卡片将被退出,同时屏幕将显示出错信息,而被Session异常中断)。

进行验证客户密码的登录功能。

客户成功登录系统后,可以选择一种或多种操作,直至退卡。

如果客户输入五次无效的PIN,则Session 被异常中断,ATM卡将被吞掉。

其顺序图如下所示:2.TaskTask是一种抽象的用例,表示所有类型的处理所共有的行为,Task的具体类型按照适当的方式执行一定的操作。

根据Task(存款、取款,转帐,查询,更改密码)的事件流描述给出具体的处理。

其顺序图如下:3.Deposit插入用户的银行卡后,根据系统界面显示输入密码,由系统判断该帐户是否有效(帐户密码是否正确),若密码输入不正确,则再次显示让用户输入密码,若3次输入的密码均不正确,系统自动退出服务,若密码输入正确,则系统进入选择服务类型界面,选择存款业务,系统确认存款请求以后,系统界面进入请放入存款界面,然后用户将存款放入存款口,系统提示点钞机进行点钞,点钞完毕后,系统记录存款操作并更新余额,系统界面显示存款完毕,然后系统界面进入是否选择继续服务界面,用户点击否,则系统退出银行卡并提示用户取卡,用户取走卡后,存款业务完成。

存款操作的顺序图如下:4.WithDraw插入用户的银行卡,并根据系统界面显示输入密码,由系统判断该帐户是否有效(帐户密码是否正确),若密码输入不正确,则再次显示让用户输入密码,若3次输入的密码均不正确,系统自动退出服务,若密码输入正确,则系统进入选择服务类型界面,然后系统根据服务类型进行相应操作,若选择取款操作,系统确认取款请求以后,会询问取款数额,系统界面显示输入数额请求,用户输入取款数额,系统接到信息后发出确认取款请求,用户选择确认,系统选择确认后会向点钞机发出钞请求,然后点钞机出钞,系统向用户发出去钞请求,用户取钞以后,系统记录此次取款并自动计算余额,更新帐户信息,然后系统界面进入是否选择继续服务界面,用户点击否,然后系统退出银行卡并提醒用户取卡,用户取走银行卡,至此,取款业务完成。

UML业务建模实例分析四例

UML业务建模实例分析四例

UML业务建模实例分析在我国十年前ATM(自动取款机)还是一个很新鲜的事物,现在在城市的大街小巷随处可见。

我们在日常生活中也经常和ATM打交道。

本章我们将以简化的ATM系统为例将前面几章中学到的用例图、类图、顺序图、状态图、活动图及协作图知识运用到此例中。

参与者"银行储户"和ATM机。

简化后的ATM机仅有取款、存款及其余功能。

其余功能不做详细说明。

图5.1 自动取款机(ATM)系统用例图银行储户在ATM机上完成取款、存款及其他业务。

图5.2所示的银行系统类图和图3.5是类似的,只是将工作人员换成了ATM。

整个银行系统包括了帐户库、银行储户库及ATM系统。

许多单个的帐户组成了帐户库。

帐户具有帐户类型、帐户号、余额三个属性,均为private,其类型分别为char,int,double。

六个操作分别为setType、getType、getAccountNumbe、setAccountNumbe、caculateBalance、getBalance,除caculateBalance为protected其余均为public。

setType设置帐户类型,返回类型为void,参数类型为char,输入帐户类型。

getType获取帐户类型,返回类型为char,无参数。

setAccountNumbe设置帐户号,返回类型为void,参数类型为int,输入帐户号。

getAccountNumbe获取帐户号,返回类型为int,无参数。

caculateBalance计算余额,返回类型为void,参数为double,第一个参数为输入存取款数额,第二个参数为存款余额,既为输入也为输出。

getBalance获取帐户余额,返回类型为double,无参数。

许多银行储户组成了储户库。

ATM系统包含了许多ATM机。

银行储户及ATM机两个类包含哪些属性,哪些操作,它们的可见性及操作的返回类型、参数个数、参数类型从类图上都一目了然。

uml建模报告ATM自动柜员机系统

uml建模报告ATM自动柜员机系统

基于UML的ATM自动柜员机系统建模报告一、需求分析(1)功能需求:1.登陆:客户通过输入正确的登陆密码即可登陆ATM。

2.取款:允许客户取出自己账户中的现金。

3.客户存款:允许客户把现金存入自己账户。

4客户查询余额:允许客户查询自己的账户余额。

5客户转账:允许客户将自己账户中的金额转移至另一账户。

6客户更改密码:允许客户修改自己的登录密码。

(2)系统操作要求:1.要求用户每次取款数额为50的整数倍;2.要求用户一次取款数额不得大于1000元;3.要求用户一天取款数额不得超过5000元;4.要求用户每次取款数额不得大于账户余额;5.要求用户设置的登录密码为6位。

(3)系统性能要求:1.要求反应时间不得大于10秒钟;2.系统设计目标:ATM自动取款机可以提供24小时不间断服务,操作简单,可以很方便为用户提供取款、转账/汇款、查询账户余额等服务。

(4)实现手段:使用进行界面设计,建立一个数据库保存客户的账户信息,使用C#语言功能函数并对数据库中的账户信息进行操作。

二、总体设计本系统总共分为登陆、查询、存款、取款、转账、修改密码等6个功能模块。

1.登录模块:登陆模块使用字符匹配算法,要求用户在输入账号之后输入登陆密码,只有输入正确的密码才能登陆自己的账户。

否则提示密码错误。

2.查询模块:用户输入正确的密码后就可登陆自己的账户并接受服务。

查询功能允许用户查得自己账户上的余额信息。

3.存款模块:允许客户向自己的账户中存入现金。

4.取款模块:允许客户从账户中取走现金,要求取出的金额不能大于所剩余款,否则提示余额不足。

转账模块:允许客户将自己账户中的金额转移至另一账户。

要求所转的 5.金额不能多于所剩余款,否则提示余额不足。

6.修改密码模块:允许用户修改自己的登陆密码,密码仍然是6位数的,修改之后,下次登陆就应该用新密码。

三、详细设计用例图:类图:客户取钱的协作图:账目类的状态图:ATM系统的部署图:。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ATM系统
1、ATM系统总体需求与功能模块
ATM系统是一个复杂的软件控制硬件的系统,各功能模块协调工作。

以具体业务为出发点对它进行建模,一个功能齐全的ATM系统包含以下几个模块:
(1)读卡机模块客户银行卡插入读卡机,读卡机识别卡在显示器提示输入密码。

(2)键盘输入模块客户通过键盘输入密码与取款金额,选择要进行的业务。

(3)IC认证模块基于安全性,鉴别卡的真伪。

(4)显示模块显示一切与客户有关信息,包括交互提示、确认等信息。

(5)吐钱机模块照客户需求选择合适面值钞票给客户。

(6)打印报表模块客户可自由选择打印或不打印凭条(卡号、金额、日期等信息)。

(7)监视器模块设置摄像头以防意外事件,保证交易安全性,银行有权调看记录。

2、ATM系统需求分析与用例建模
从用户角度对系统进行评估,采集和分析系统的需求,理解系统要解决的问题。

结果可以用一个业务用例(Business Use Case)框图表达,分以下几个步骤:参与者分析;用例分析;创建参与者-用例关系图。

2.1 参与者分析
参与者是与系统交互作用的人或事物,代表系统的使用者或外部通信目标。

考察ATM系统服务对象可以确定参与者:
■客户(使用ATM进行现金交易)
■银行官员(更改ATM设置,放置现金,维护机器等)
■信用系统(作为外部角色参与整个交易过程)
2.2 用例分析
用例是参与者启动的,基于这样的考虑,ATM系统根据业务流程大致可分为以下几个用例:
■客户取款
■客户存款
■客户查询余额
■客户转帐
■客户更改密码
■客户通过信用系统付款
■银行官员修改密码
■银行官员为ATM添加现金
■银行官员维护ATM硬件
■信用系统启动来自客户的付款
2.3 参与者-用例关系图
在参与者与用例之间存在交互关系,客户、银行官员和信用系统这3个参与者都有各自的用例关系图。

综合所有参与者的用例关系,可以建立如下整个ATM 系统的用例关系图:
(from 用例)
信用系统
(from 角色) (from 用例)
图2 ATM系统用例关系图
模型中的活动者代表外部与系统交互的单元,包括客户、银行官员和信用系统;业务用例框图是对系统需求的描述,表达了系统的功能和所提供的服务,包括客户现金交易子系统、银行管理维护子系统、客户服务子系统、信用子系统。

3、静态结构模型
采用面向对象技术设计系统时,首先要根据用户需求来分析系统的静态结构从而建立系统的静态结构模型。

3.1 ATM系统包图
整个ATM系统包括硬件和逻辑两块,分别控制不同的应用。

相应地将整个ATM系统分割成如图3所示两个独立的包。

把ATM系统内所有与硬件相关的内容全部放在Hardware包内,好处是想增加或删除硬件可以在一个包内进行,而与其它包无关。

比如可增加一个硬件用于把100元RMB换成两张50元RMB。

Hardware包内包括四部分内容:屏幕ATM Screen、读卡器Card Reader、吐钱机Dispenser、键盘Keyboaed。

Logic包内是一些逻辑性的内容,起关键作用的是帐目类,它先从远程服务器得到Allen的帐目信息,然后根据硬件发出的指令进行相关操作。

在Logic
包内包含两部分内容:帐户Account和数据库连接Database Connector。

此处不涉及到ATM硬件,是纯粹的软件模块。

图3 系统包图图4 Hardware包内类
图5 Logic包内类
3.2 ATM系统类模型
类图全面描述类中存在的属性和方法,类图中的类是针对时序图和协作图中每种对象而建立的。

ATM系统类图共6个类,包括Hardware和Logic包中的类,其中Account类功跟其它4个类都有关联。

连接类的直线显示类之间的通信关系。

图6 系统类图
4、ATM系统动态建模
动态模型包括许多框图:活动图、状态图、时序图和协作图。

创建这些框图目的是为了更好地了解ATM业务流程。

是对用例图的补充。

描述系统的行为,建立系统的动态行为模型[3]。

4.1 状态机图
状态机是一个类的对象所有可能的生命历程的模型。

状态机图通过对类对象的生存周期建立模型来描述对象随时间变化的动态行为,也可以用来描述用例、协作和方法的动态行为,它是展示状态与状态转换的图。

在Rose中状态机包括状态图和活动图两种表示方法,活动图是一种特殊形式的状态机,用于对计算流程和工作流程建模。

如图7所示ATM系统帐目状态图实现帐目开启、关闭或透支几种不同的状态,
不同状态下功能不同,消息通过箭头流动,上面的文字描述里消息流动的条件。

状态图适合描述一个对象穿越多个Use Case的行为。

类的状态图表示类的对象可以呈现的状态和这个对象从一种状态到另一种状态的转换。

图7 帐目状态图
如图8所示“开户”活动图,活动用圆角矩形表示,工作六一向的对象用方框表示。

开始状态表示工作流开始,结束状态表示工作流结束,决策点用菱形表示。

活动图是强调计算过程中顺序和并发步骤的状态机。

它可以很方便地描述一个系统或用例的工作流程以及并发操作。

对于数据采集这个用例来说,它的工作流程应该是先在系统工具中进行通讯设置,选择要采集哪些历史数据或查看当前哪些数据,然后再进行数据采集。

时序图
两要么自反。

PIN
后让读卡机退卡。

图9 “取款”时序图
图9所示时序图对应的协作图如图10所示。

))
6: 输入PIN(1234)9: 选择事务(取款)
))
图10 “取款”协作图
5、ATM 系统部署与物理模型
ATM 系统部署是整个项目实施过程的最后阶段,把系统中涉及到的软硬件郑和到一起,并且让整个系统运行起来。

在系统部署中有两种视图,组件图和配置图。

5.1 组件图
组件图提供当前模型的物理视图,对系统的静态实现视图进行建模,显示驻留在计算机比特世界中的各种软件构件。

ATM 系统组件图包括两部分:Server 和Client 。

如图11所示是ATM 系统Server 组件图,图中Account 类跟Server 服务器有紧密的联系,箭头表示联系的方向,深灰色表示帐目类的一个实例。

Account
Account
图11 ATM 系统Server 组件图
如图12所示是ATM 系统Client 组件图,图中深灰色的部分表示实例,最终客户端打包成一个exe 程序,包括3个组件:Card Reader 、ATM Screen 、Card Dispenser 。

ATM.exe
图12 ATM 系统Client 组件图
5.2 配置图
配置图提供当前模型的物理视图,描述系统运行时节点、构件实例及其对象的配置。

配置图定义了软硬件在系统中的配置关系[4]。

如图所示ATM 系统的配置图显示的主要内容包括两个ATM Server ,一个地区ATM 服务器,银行数据库服务器,一个打印机以及表示通信的连接。

图13 ATM系统的配置图。

相关文档
最新文档