软件工程设计选题2ATM系统UML建模设计.docx

上传人:b****4 文档编号:3500766 上传时间:2022-11-23 格式:DOCX 页数:11 大小:87.03KB
下载 相关 举报
软件工程设计选题2ATM系统UML建模设计.docx_第1页
第1页 / 共11页
软件工程设计选题2ATM系统UML建模设计.docx_第2页
第2页 / 共11页
软件工程设计选题2ATM系统UML建模设计.docx_第3页
第3页 / 共11页
软件工程设计选题2ATM系统UML建模设计.docx_第4页
第4页 / 共11页
软件工程设计选题2ATM系统UML建模设计.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

软件工程设计选题2ATM系统UML建模设计.docx

《软件工程设计选题2ATM系统UML建模设计.docx》由会员分享,可在线阅读,更多相关《软件工程设计选题2ATM系统UML建模设计.docx(11页珍藏版)》请在冰豆网上搜索。

软件工程设计选题2ATM系统UML建模设计.docx

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

ATM系统

1、ATM系统总体需求与功能模块

ATM系统是一个复杂的软件控制硬件的系统,各功能模块协调工作。

以具体业务为出发点对它进行建模,一个功能齐全的ATM系统包含以下几个模块:

(1)读卡机模块客户银行卡插入读卡机,读卡机识别卡在显示器提示输入密码。

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

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

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

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

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

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

 

图1ATM系统功能模块需求

 

2、ATM系统需求分析与用例建模

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

结果可以用一个业务用例(BusinessUseCase)框图表达,分以下几个步骤:

参与者分析;用例分析;创建参与者-用例关系图。

2.1参与者分析

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

考察ATM系统服务对象可以确定参与者:

■客户(使用ATM进行现金交易)

■银行官员(更改ATM设置,放置现金,维护机器等)

■信用系统(作为外部角色参与整个交易过程)

2.2用例分析

用例是参与者启动的,基于这样的考虑,ATM系统根据业务流程大致可分为以下几个用例:

■客户取款

■客户存款

■客户查询余额

■客户转帐

■客户更改密码

■客户通过信用系统付款

■银行官员修改密码

■银行官员为ATM添加现金

■银行官员维护ATM硬件

■信用系统启动来自客户的付款

2.3参与者-用例关系图

在参与者与用例之间存在交互关系,客户、银行官员和信用系统这3个参与者都有各自的用例关系图。

综合所有参与者的用例关系,可以建立如下整个ATM系统的用例关系图:

图2ATM系统用例关系图

模型中的活动者代表外部与系统交互的单元,包括客户、银行官员和信用系统;业务用例框图是对系统需求的描述,表达了系统的功能和所提供的服务,包括客户现金交易子系统、银行管理维护子系统、客户服务子系统、信用子系统。

 

3、静态结构模型

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

3.1ATM系统包图

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

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

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

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

Hardware包内包括四部分内容:

屏幕ATMScreen、读卡器CardReader、吐钱机Dispenser、键盘Keyboaed。

 

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

在Logic包内包含两部分内容:

帐户Account和数据库连接DatabaseConnector。

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

图3系统包图图4Hardware包内类

图5Logic包内类

 

3.2ATM系统类模型

类图全面描述类中存在的属性和方法,类图中的类是针对时序图和协作图中每种对象而建立的。

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

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

图6系统类图

4、ATM系统动态建模

动态模型包括许多框图:

活动图、状态图、时序图和协作图。

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

是对用例图的补充。

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

4.1状态机图

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

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

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

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

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

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

图7帐目状态图

 

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

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

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

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

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

图8“开户”活动图

4.2交互图

交互图用来表达对象之间的交互关系,分为两种:

时序图和协作图。

时序图强调消息发送的时间顺序,协作图则强调接收和发送消息的对象的组织结构。

两者在语义上是等价的,可等价转换,更改其中一个框图时,另一个框图回发生同步变化。

这里对部分用例事件流程进行建模。

如图9所示以取500RMB位例的“取款”时序图,显示“取款”用例中的功能流程。

时顺图中靠箭头在各个对象间传递消息,这些箭头要么水平,要么自反。

箭头的方向表示里信息的流向,可以流向其它对象,也可以流向自己本身的对象。

步骤用数字来标志。

取款用例从用户插入读卡机开始,读卡机读卡号,打开Allen的帐目对象,并初始化屏幕。

屏幕提示输入PIN,Allen输入PIN(1234),然后屏幕验证PIN与帐户对象,发出相符的信息。

屏幕向Allen提供选项,Allen选择取款。

然后屏幕提示Allen输入金额,他选择500RMB。

然后从帐户中取钱,启动一系列帐目对象要完成的过程。

首先,验证Allen的帐目中至少有500RMB,然后从中扣掉500RMB,再让吐钱器提供500RMB现金。

另外,还需要让吐钱机提供收据,最后让读卡机退卡。

图9“取款”时序图

图9所示时序图对应的协作图如图10所示。

图10“取款”协作图

5、ATM系统部署与物理模型

ATM系统部署是整个项目实施过程的最后阶段,把系统中涉及到的软硬件郑和到一起,并且让整个系统运行起来。

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

5.1组件图

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

ATM系统组件图包括两部分:

Server和Client。

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

图11ATM系统Server组件图

 

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

CardReader、ATMScreen、CardDispenser。

图12ATM系统Client组件图

 

5.2配置图

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

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

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

图13ATM系统的配置图

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1