类图、时序图、状态图-ATM系统教学文稿.ppt 立即下载
2024-12-03
约4.8千字
约55页
0
843KB
举报 版权申诉
预览加载中,请您耐心等待几秒...

类图、时序图、状态图-ATM系统教学文稿.ppt

类图、时序图、状态图-ATM系统教学文稿.ppt

预览

免费试读已结束,剩余 50 页请下载文档后查看

10 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第10章面向对象分析10.1面向对象分析的基本过程10.1面向对象分析的基本过程面向对象分析的过程
寻找类与对象
识别结构
识别主题
定义属性
建立动态模型
建立功能模型
定义服务

10.2需求陈述ATM机系统问题描述
银行网络中包含柜员和ATM,ATM被共享中心所分享。
每家银行利用自己的计算机维护自己的账户并处理账户所属的交易,这些交易包括存款和取款。
某些银行拥有自己的柜员站,柜员站直接和该银行的计算机通信,柜员键入账户数据和交易数据。
ATM和中心计算机通信,中心计算机再和银行清账。
ATM接受金融卡,要求用户做些操作后和中心计算机通信,执行交易给予现金和打印收据。
系统要求保留交易记录和严守安全规定。
能同时存取客户的相同账户。







自动取款机(ATM)系统







ATM系统
10.3建立对象模型10.3建立对象模型10.3建立对象模型10.3建立对象模型10.3建立对象模型10.3建立对象模型直接提取动词短语得出的关联
ATM、中央计算机、分行计算机及柜员终端组成网络。
总行拥有多台ATM。
ATM设在主要街道上。
分行提供分行计算机和柜员终端。
柜员终端设在分行营业厅及储蓄所内。
分行分摊软件开发成本。
储户拥有账户。
分行计算机处理针对账户的事务。
分行计算机维护账户。
柜员终端与分行计算机通信。
柜员输入针对账户的事务。
ATM与中央计算机交换关于事务的信息。
中央计算机确定事务与分行的对应关系。
ATM读现金兑换卡。
ATM与用户交互。
ATM吐出现金。
ATM打印账单。
系统处理并发的访问。

10.3建立对象模型10.3建立对象模型10.3建立对象模型10.3建立对象模型10.3建立对象模型10.3建立对象模型10.3建立对象模型经过筛选之后,得到ATM系统中各个类的属性,如图所示。
建立类间的继承是为了共享其公共性质/属性。
继承也对类按层次加以组织。
继承关系反映出一定深度的领域知识,需领域专家密切配合才能完成。
继承前人的成果是提高效率的重要方法,也是复用的基础。两种建立继承(即泛化)关系的方式:
(1)自底向上:抽象出现有类的共同性质泛化出父类,这个过程实质上模拟了人类归纳思维过程。
例如,在ATM系统中,“远程事务”和“柜员事务”是类似的,可以泛化出父类“事务”;类似地,从“ATM”和“柜员终端”泛化出父类“输入站”。
(2)自顶向下:把现有类细化成更具体的子类或从已知类派生出一个新类,这模拟了人类的演绎思维过程:从一般到特殊。
带有形容词修饰的名词词组往往暗示了一些具体类。分析阶段应该避免过度细化。
增加了继承关系之后的ATM对象模型
一次建模过程很难得到完全正确的对象模型。
有些细化工作(例如,定义服务)是在建立了动态模型和功能模型之后才进行的。
由于面向对象的概念和符号在整个开发过程中都是一致的,因此远比使用结构分析、设计技术更容易实现反复修改、逐步完善的过程。
建模的步骤并不一定按照前面讲述的次序进行。
它给初学者提供了一个指南。
下面以ATM系统为例,讨论可能做的修改:
1.分解“现金兑换卡”类
“现金兑换卡”有两个相对独立的功能,它既是鉴别储户及使用ATM的权限的卡,又是ATM获得分行代码和卡号等数据的数据载体。
因此,把“现金兑换卡”类分解为“卡权限”和“现金兑换卡”两个类,将使每个类的功能更单一:前一个类标志储户访问账户的权限,后一个类是含有分行代码和卡号的数据载体。
多张现金兑换卡可能对应着相同的访问权限。2.“事务”由“更新”组成
一个事务可包含对账户的若干次更新。更新指的是对账户所做的一个动作(取款、存款或查询)。“更新”有自己的属性(类型、金额等),应该独立存在,因此应该把它作为类。
3.把“分行”与“分行计算机”合并
区分“分行”与“分行计算机”,对于分析这个系统来说,并没有多大意义,为简单起见,把它们合并。类似地,应该合并“总行”和“中央计算机”。
下图给出了修改后的ATM对象模型,与修改前比较起来,它更简单、更清晰。修正:
总行/分行的通信,
储户输入事务(ATM)
ATM读卡
拥有/通信

修改后的ATM对象模型对于仅存储静态数据的系统(例如数据库)来说,
动态模型并没有什么意义。

但是若开发交互式系统时,动态模型却起着很重要的作用。

例如:收集输入信息是目标系统的主要工作
建立动态模型的三步:
编写典型交互行为的脚本,不遗漏常见的交互行为。
从脚本中提取出事件,确定触发每个事件的动作对象以及接受事件的目标对象。
排列事件发生的次序,确定每个对象可能有的状态及状态间的转换关系,并用状态图描绘它们。
最后,比较各个对象的状态图,检查它们之间的一致性,确保事件之间的匹配。脚本:是指系统在某一执行期间内出现的一系列事件。
脚本功能:描述用户(或
查看更多
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

类图、时序图、状态图-ATM系统教学文稿

文档大小:843KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用