首页betway必威体育app官网 › betway必威体育app官网[转]统一修建模语言UML轻松入门的综合实例

betway必威体育app官网[转]统一修建模语言UML轻松入门的综合实例

作者: 宋宝华 出处: 天最开发

"例,比呢"(《说文》),本次连载将被来一个采取UML进行建模的圆实例,综合运用前面学到之知识,达到"举此以例其余"(元刘壎《隐居通议·欧阳公》)的目的。

在我国十年前ATM(自动取款机)还是一个不胜奇特的物,现在以都之四野随处可见。我们在日常生活中吗时不时和ATM打交道。本章我们用因为简化的ATM系统为例将前面几章中学至之之所以例图、类图、顺序图、状态图、活动图及合作图知识以到者例中。

5.1用例图

参与者"银行储户"和ATM机。简化后的ATM机仅发生取款、存款和任何功能。其余功能不开详细说明。

 


图5.1 自动取款机(ATM)系统用例图

银行储户在ATM机上完成取款、存款和另外作业。

5.2类图

图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机两单类似富含哪些性,哪些操作,它们的可见性及操作的回到路、参数个数、参数类型从类图上还了如指掌。更多之习性与操作都足以一一加上,使之类图更详细更完整,从而使与种的每个成员还能够凭歧义的知晓了整规划的切近的组织。同样对一个实在的银行系,这个类图过于简单。比如帐户类型我们好事先定义一个abstract
class,它蕴含一个帐户最核心的性能和操作。而略带操作先定义也abstract,如余额的计算。然后再持续这abstract
class,我们得生出saving account 和checking
account等等。不同的项户来例外之余额计算办法,我们可以增长具体的算法。对于不同之帐户可能还有部分其特有的操作,我们为得以添加,比如saving
account在储蓄达多少时得享机票打折的优胜。通过类图不仅可要设计者明确的发挥好之统筹意图,也克帮组自己收拾思路,充实和优化自己的宏图。


图5.2 银行系统类图

5.3顺序图

祈求5.3叙述了顾客在ATM机上取款时信息之流淌情况。以日吗顺序。因为只有是现身说法,所以整个过程是从未有过出现任何故障时之流程,并且仅写到了取款结束。通过者图,我们可见见消息是怎样在系统受到不同目标中开展交互。

经过流程图我们得以非常了解地收看网是如何做事之,系统各部分中的消息与控制是安发送的,整个流程是否成立。流程图对咱们的计划性于及了充分好的鼎力相助作用。注意在本图没有一个生命线终端有一个"X",这是因是流程中尚不碰到有对象生命终止。当起目标生命了时得以相应的生命线终端画"X",表明这目标在这时候吃销毁。

先是银行储户将ATM卡插入读卡机,读卡机将消息污染被客户管理,客户管理提出询问密码,显示有将输入密码要显示出来…..因为是顺序图于丰富,且颇清楚,即便是初大家也格外爱读懂,在这个就未对准本图做了多之诠释。


图5.3 ATM取款顺序图

5.4状态图

贪图5.4描述了消费者在ATM机上进展操作会经历的几乎种植状态,及各种状态里转换的规范。因为凡简化了底事例,所以除了等候买主插入磁卡的序幕状态与结束劳动之告一段落状态,顾客会处在输入密码、选择服务类型、存款和取款四种状态。


图5.4 ATM状态图

安插磁卡后登输密码状态,当密码输入正确时进入选择服务类型状态,当输入密码无得法时,停留在原本态,但假如三破不正确,服务结束。进入选择服务类型后因选择的不同,顾客可入存款与取款状态。存、取款结束后,顾客既可选取结束劳动到最后状态,也堪选继续服务回到选择服务类型状态。

经状态图我们得无歧义的刺探各个活动角色是怎当不同状况下换的,转换的标准是呀,是否会面冒出死锁现象,是否发生规则尚未考虑周全,是否生状态无法达标。状态图可以助我们发现问题,并及时改正。

5.5活动图

图5.5参阅了Randy Miller的《A Hands-On Introduction for
Developers》一软,5.3贪图备受之客户管理暨东西管理对应为5.5贪图被的Bank,图5.3遭到之宣读卡机、显示、输入设备和点钞机对应为5.5图被之ATM
Machina,银行储户就是Customer。初看活动图和各个图表达的含义很相近。但我们可小心到各个图要时间之一一,而活动图侧重于各组成部分内的互相制约,对于片相互的移动能有效之表示出来。例如5.5图被fork和join处,我们可以很清楚的来看有些互活动的有。

以此活动图为客插入卡吗始发,以消费者取卡结束。我们得以看到活动图的关键则非以时刻各个,但我们一样可获得时之信息。


图5.5 ATM银行系统活动图

5.6协作图

当第四节中我们知道协作图和一一图是好无音讯损失的并行转换,只是她的核心是无一样的。顺序图要为对象中消息传递的时日各个,协作图要为抒对象期间的静态连接关系。图5.6用5.3图转换为合作图。

  1. 插入ATM卡

  2. 接受ATM卡

  3. 询问密码

  4. 显输入密码要

  5. 输入密码

  6. 密码传送

  7. 伸手确认密码合法性

  8. 肯定密码合法性

  9. 询问服务门类

  10. 来得输入服务服务项目请求

  11. 输入取款请求

  12. 取款请求

  13. 摸底取款数额

  14. 显输入数额请求

  15. 输入取款数额

  16. 传送取款数额

  17. 问询取款数额确认

  18. 显示确认数额请求

  19. 输入确认

  20. 传送确认消息

  21. 数码合法性确认请

  22. 承认数额和法性

  23. 出钞请求

  24. 测算帐户余额

  25. 出钞

  26. 取钞

  27. 传送余额并询问是不是还索要另外服务

  28. 来得帐户余额并提示选择下的劳务  


图5.6 ATM系统协作图

自打图上我们得以视协作图的角色跟顺序图的对象是逐一对应的,而协作图上之各目标及之协作关系和顺序图上的消息传递是逐一对应之。

转载本站文章请注明出处:bway883.com https://www.piworx.com/?p=3046

上一篇:

下一篇:

相关文章

网站地图xml地图