uml业务建模实例分析四例

uml业务建模实例分析四例

ID:8453955

大小:612.50 KB

页数:26页

时间:2018-03-28

uml业务建模实例分析四例_第1页
uml业务建模实例分析四例_第2页
uml业务建模实例分析四例_第3页
uml业务建模实例分析四例_第4页
uml业务建模实例分析四例_第5页
资源描述:

《uml业务建模实例分析四例》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、UML业务建模实例分析  在我国十年前ATM(自动取款机)还是一个很新鲜的事物,现在在城市的大街小巷随处可见。我们在日常生活中也经常和ATM打交道。本章我们将以简化的ATM系统为例将前面几章中学到的用例图、类图、顺序图、状态图、活动图及协作图知识运用到此例中。  5.1用例图  参与者"银行储户"和ATM机。简化后的ATM机仅有取款、存款及其余功能。其余功能不做详细说明。图5.1自动取款机(ATM)系统用例图  银行储户在ATM机上完成取款、存款及其他业务。  5.2类图  图5.2所示的银行系统类图和图3.5是类似的,只是将工作人员换成了

2、ATM。整个银行系统包括了帐户库、银行储户库及ATM系统。  许多单个的帐户组成了帐户库。帐户具有帐户类型、帐户号、余额三个属性,均为private,其类型分别为char,int,double。六个操作分别为setType、getType、getAccountNumbe、setAccountNumbe、caculateBalance、getBalance,除caculateBalance为protected其余均为public。  setType设置帐户类型,返回类型为void,参数类型为char,输入帐户类型。  getType获取帐户类

3、型,返回类型为char,无参数。  setAccountNumbe设置帐户号,返回类型为void,参数类型为int,输入帐户号。  getAccountNumbe获取帐户号,返回类型为int,无参数。  caculateBalance计算余额,返回类型为void,参数为double,第一个参数为输入存取款数额,第二个参数为存款余额,既为输入也为输出。  getBalance获取帐户余额,返回类型为double,无参数。  许多银行储户组成了储户库。ATM系统包含了许多ATM机。银行储户及ATM机两个类包含哪些属性,哪些操作,它们的可见性及操

4、作的返回类型、参数个数、参数类型从类图上都一目了然。更多的属性及操作都可以一一加上,使这个类图更详细更完整,从而使参与项目的每个成员都能无歧义的明了整个设计的类的结构。同样对于一个真正的银行系统,这个类图过于简单。比如帐户类型我们可以先定义一个abstractclass,它包含一个帐户最基本的属性及操作。而有些操作先定义为abstract,如余额的计算。然后再继承这个abstractclass,我们可以有savingaccount和checkingaccount等等。不同的帐户有不同的余额计算方法,我们可以加上具体的算法。对于不同的帐户可能

5、还有一些它特有的操作,我们也可以加上,比如savingaccount在存款达到多少时可以享受机票打折的优惠。通过类图不仅可以使设计者明确的表达自己的设计意图,也能帮组自己整理思路,充实及优化自己的设计。图5.2银行系统类图  5.3顺序图  图5.3描述了顾客在ATM机上取款时信息的流动情况。以时间为顺序。因为仅是示例,所以整个过程是没有出现任何故障时的流程,并且只画到了取款结束。通过这个图,我们可以看出消息是如何在系统中不同对象之间进行交互。  通过流程图我们可以很清楚地看到系统是如何工作的,系统各部分之间的信息及控制是如何发送的,整个流

6、程是否合理。流程图对我们的设计起到了很好的帮助作用。注意在本图没有一个生命线终端有一个"X",这是因为这个流程中还未遇到有对象生命结束。当有对象生命结束时需在对应的生命线终端画"X",表明这个对象在这时被销毁。  首先银行储户将ATM卡插入读卡机,读卡机将信息传给客户管理,客户管理提出查询密码,显示部分将输入密码请求显示出来…..因为这个顺序图较长,且很清晰,即便是初学者也很容易读懂,在此就不对本图做过多的解释。图5.3ATM取款顺序图 图5.4描述了顾客在ATM机上进行操作会经历的几种状态,及各种状态之间转换的条件。因为是简化了的例子,所

7、以除了等待顾客插入磁卡的起始状态和结束服务的终止状态,顾客会处于输入密码、选择服务类型、存款及取款四种状态。插入磁卡后进入输密码状态,当密码输入正确时进入选择服务类型状态,当输入密码不正确时,停留在原状态,但如果三次不正确,服务结束。进入选择服务类型后根据选择的不同,顾客可进入存款和取款状态。存、取款结束后,顾客既可以选择结束服务到最终状态,也可以选择继续服务回到选择服务类型状态。通过状态图我们可以无歧义的了解各个活动角色是如何在不同状况下转换的,转换的条件是什么,是否会出现死锁现象,是否有条件没考虑周全,是否有状态无法达到。状态图可以帮助

8、我们发现问题,并及时改正。5.5活动图图5.5参考了RandyMiller的《AHands-OnIntroductionforDevelopers》一文,5.3图中的客户管理和事

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。