搜索
您的当前位置:首页正文

UML建模_ATM取款机

来源:欧得旅游网


软件建模(UML)作业

班级:计算机0806班 学号:20083007 姓名:姜俊方

UML个人作业

一、ATM机需求分析图

ATM自动取款读卡机模块 键盘输入模块 认证模块 显示模块 打印报表报表 吐钱机模块 IC监视器模块 二、用例图

用于描述一组用例、参与者及它们之间的连接关系。

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

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

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

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

椭圆:用例,是用户与计算机之间的一次典型交互作用。 人形:参与者(外部执行者)是指用户在系统中所扮演的角色。 ATM系统的用例图

存钱银行工作人员添加信息取钱客户修改密码维护硬件设备转账查询余额付款银行工作人员

ATM提款系统用例图

存款查余额用户付款信用取款验证用户更改密码

三、类图

用于描述一组类、接口、协作及它们间的静态关系。

在面向对象系统的建模中,类图最为常用,它用来阐明系统的静态结构。 类是对一组具有相同属性、操作、关系和语义的对象的描述,其中对类的属性和操作进行描述时的一个最重要的细节是它的可见性。

一个典型的系统模型中通常有若干个类图。一个类图不一定要包含系统中所有的类,一个类可加到几个类图中。

在类图中类用矩形框来表示,它的属性和操作分别列在分格中。 类之间可以多种方式链接(如关联、泛化、依赖和实现等)。

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

账户ATM屏幕ATM键盘ATM读卡器吐钱机数据库

ATM系统类图

四、顺序图(序列图)

顺序图表示对象之间传送消息的时间顺序。

顺序图用来描述对象之间消息发送的先后次序,阐明对象之间的交互过程以及

在系统执行过程中的某一具体时刻将会发生什么事件。

顺序图是一种强调时间顺序的交互图,可用来进行一个场景说明,即一个事务的历史过程。

顺序图中对象沿横轴排列,消息沿纵轴按时间顺序排列。

顺序图中的对象生命线是一条垂直的虚线,它表示一个对象在一段时间内存在。

由于顺序图中的大多数对象都存在于整个交互过程中,因此这些对象全部排列在图的顶部,它们的生命线从图的顶部画到图的底部。每个对象的正下方有一个小矩形条,它与对象的生命线相重叠,它表示该对象的控制焦点。

图中的消息可有序号,但由于该图上的消息已在纵轴上按时间顺序排序,因此消息序号通常省略。 个人用户取款的顺序图

显示数字键盘客户管理点钞机显示请求个人 : 用户插入ATM卡接受ATM卡询问PIN代码显示请求输入PIN代码PIN代码寻取数据库显示请求输入金额金额200现金可用性请求200元提供钱提供数据退卡

客户李明取款200元的ATM系统顺序图

提示输入密码李明 : 用户读卡号退卡客户李明取款机初始化屏幕打开账户提示输入密码输入密码123456验证密码提示选择事务选择事务取款提示输入金额输入金额200取款验款扣款提供超票提供发票

银行储户读卡机显示输入设备客户管理点钞机事务管理插入ATM卡接受ATM卡查询密码显示输入密码请求输入密码密码传递数据合法性确认确认数据的合法性出钞请求出钞取钞

五、协作图

协作图也是一种交互图,它强调收发消息的对象的组织结构。

协作图描述对象间的协作关系(与顺序图相似),显示对象间的动态合作关系。 在协作图中,直接相互通信的对象之间有一条直线,没有画线的对象之间不直接通信。附在直线上的箭头代表消息。消息的发生顺序用消息箭头处的编号来说明。

协作图是表示一个类操作的实现。

协作图可说明类操作中用到的参数和局部变量及操作中的永久链。

当实现一个行为时,消息编号对应了程序中嵌套调用结构和信号传递过程 李明取款的协作图

6: 输入密码12345611: 输入金额200ATM屏7: 验证密码4: 打开账户12: 取款14: 查询余额13: 卡扣钱9: 选择事务(取款)5: 提示输入密码李明 : 用户8: 提示选择事务10: 提示输入金额1: 插卡插卡3: 屏幕初始化2: 读卡号李明读卡机17: 退卡取款机15: 提供款16: 提供清单

协作图与顺序(序列)图二者同构,可以互相转换。

在多数情况下,协作图主要用来对单调的、顺序的控制流建模,但它也可以用来对包括迭代和分支的复杂控制流程进行建模。 如果强调时间和顺序,则使用顺序图; 如果强调上下级关系,则选择协作图。

六、状态图

状态视图是一个类对象所经历的所有历程的模型图。 状态由对象的各个状态和连接这些状态的变迁组成。

每个状态对一个对象在其生命周期中满足某种条件的一个时间段建模。 当一个事件发生时,它会触发状态间的变迁,导致对象从一种状态转化到另一种新的状态。

与变迁相关的活动执行时,变迁也同时发生。状态用状态图来表达。 在UML中,状态图可用来对一个对象按事件排序的行为建模。 存取款状态图

存款密码输入不正确选择存款选择退出系统选择继续服务插入磁卡输入密码密码输入正确选择服务类型选择取款选择继续服务取款选择退出服务输入密码3次不正确,系统退去

Account(账户)对象(ATM系统)状态图

取钱[结余小于0]OPEN存款[结余小于0]客户请求关闭检查结余[结余小于0达30以上天]透支通知客户CLOSE

七、活动图

活动图是状态图的一种特殊情况,其中几乎所有或大多数状态都处于活动状态,而且几乎所有或大多数变迁都是由源状态中活动的完成而触发的。

活动图本质上是一种流程图,它描述从活动到活动的控制流。 活动图显示了系统的流程,可以是工作流,也可以是事件流。 开户的活动图

在屏幕上显示磁盘满磁盘满打印清单空闲磁盘空间在屏幕上显示打印查处屏幕上的提示信息打印产生附录文件

ATM系统活动图

收集客户信息建立新的信用账户:Account/屏[Initialixing]设置信用限制/检查客户信用历史检查客户信用历史拒绝账户批准账户:Account/[Denied]:Account/[Approved]接受信用条件:Account/[Opened i:]签发

八、组件图

用于描述一组(构)件之间的组织和依赖关系,用于建模系统的静态实现视图。组(构)件用虚线连接,表示组(构)件间的相关性。

组(构)件可以是可执行程序、库、表、文件和文档等,它包含了逻辑类或者逻

辑类的实现信息,因此逻辑视图和实现视图之间存在映射关系。

组(构)件间也存在依赖关系,利用它可方便地分析一个组(构)件的变化会给其他组(构)件带来怎样的影响。

组(构)件图中也可包括包或子系统,它们都用于将模型元素组织成较大的组块。

ATM系统构件图

ATM.exeCardReaderCardDiapenserATMScreen

ATM客户机的组件图

ATM.exe读卡机显示点钞机读卡机显示点钞机

在C++组件图中:每个类有自己的体文件和头文件,框图中每个类映射自己的组件。如,显示类映射ATM显示组件,阴影组件称为包体,表示C++中显示类的体文件(.cpp)。

无阴影组件称为包规范,表示C++类的头文件(.H)。 组件ATM.exe是任务规范,表示处理线程(可执行程序)。

组(构)件间的相关性:如,读卡机类与显示类相关,即必须有显示类才能编译读卡机类。编译所有类后,即可创建可执行文件ATMClient.exe。

九、部署图

定义系统中软硬件的物理体系结构。

部署(配置)图可显示实际的计算机和设备(节点,立方体图形)以及它们间的连接关系,也可显示连接的类型及组(构)件间的依赖性。

在节点内部,放置可执行组(构)件和对象以显示节点与可执行软件单元的对应关系。

ATM系统的部署图

打印机ATM客户机局域网地区ATM服务器局域网ATM客户机2专用网银行数据库服务器

ATM系统部署(配置)图

银行数据库服务器地区ATM服务器打印机ATMClient1.exeATMClient2.exeATM系统采用三层结构,分别针对数据库、地区ATM服务器和客户机。 ATM客户机的可执行文件在不同地点的多个ATM上运行。 ATM客户机通过专用网与地区ATM服务器通信。 ATM服务器的可执行文件在地区ATM服务器上执行。

地区ATM服务器又通过局域网与运行Oracle的银行数据库服务器通信。

打印机与地区ATM服务器连接。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top