基本信息
文件名称:软件工程导论第10章 面向对象分析.ppt
文件大小:929 KB
总页数:66 页
更新时间:2025-07-03
总字数:约3.88千字
文档摘要

第十章面向对象分析;10.1面向对象分析的根本过程;10.1面向对象分析的根本过程;10.1面向对象分析的根本过程;面向对象分析的过程

寻找类与对象

识别结构

定义属性

建立动态模型

定义效劳

;10.2需求陈述;;ATM机系统问题描述

;ATM机系统问题描述

;自动取款机〔ATM〕系统

ATM系统;10.3建立对象模型;10.3建立对象模型;;从陈述中找出所有名词,作为类和对象的初步候选者

;

一张现金兑换卡就是一张特制的磁卡,上面有分行代码,对应总行下的一个分行。卡号确定这张卡可以访问哪些账户。一张磁卡可以访问储户的假设干个账户,但仅属于一个储户所有。但是同一张卡可以有多个副本,因此必须考虑同时在假设干台ATM上使用同样的现金兑换卡的可能性。也就是说,系统应该能够处理并发的访问。

当用户将磁卡插入ATM后,ATM就与用户交互,以获取有关这次事务的信息,并与中央计算机交换关于事务的信息。ATM要求用户输入密码,ATM将密码和卡上的信息传给中央计算机,请求中央计算机核对这些信息并处理这次事务。中央计算机根据卡的分行代码委托分行验证用户密码,假设密码正确,那么ATM要求用户选择事务类型〔取款,查询等〕。当用户选择取款时,ATM请求用户输入取款额。最后ATM从现金口吐出现金,并且打印账单给用户。;10.3建立对象模型;找出候选类与对象;确定关联;;确定关联;直接提取动词短语得出的关联

ATM、中央计算机、分行计算机及柜员终端组成网络。

总行拥有多台ATM。

ATM设在主要街道上。

分行提供分行计算机和柜员终端。

柜员终端设在分行营业厅及储蓄所内。

分行分摊软件开发本钱。

储户拥有账户。

分行计算机处理针对账户的事务。

分行计算机维护账户。

柜员终端与分行计算机通信。

柜员输入针对账户的事务。

ATM与中央计算机交换关于事务的信息。

中央计算机确定事务与分行的对应关系。

ATM读现金兑换卡。

ATM与用户交互。

ATM吐出现金。

ATM打印账单。

系统处理并发的访问。

;确定关联;;隐含的关联

〔1〕总行由各个分行组成。

〔2〕分行保管账户。

〔3〕总行拥??中央计算机。

〔4〕储户拥有现金兑换卡。

〔5〕中央计算机与分行通信;10.3.3划分主题;10.3.4确定属性;10.3.4确定属性;经过筛选之后,得到ATM系统中各个类的属性,如以下图。;建立类间的继承是为了共享其公共性质/属性。

继承也对类按层次加以组织。

继承关系反映出一定深度的领域知识,需领域专家密切配合才能完成。

继承前人的成果是提高效率的重要方法,也是复用的根底。;两种建立继承(即泛化)关系的方式:

(1)自底向上:抽象出现有类的共同性质泛化出父类,这个过程实质上模拟了人类归纳思维过程。

例如,在ATM系统中,“远程事务〞和“柜员事务〞是类似的,可以泛化出父类“事务〞;类似地,从“ATM〞和“柜员终端〞泛化出父类“输入站〞。

(2)自顶向下:把现有类细化成更具体的子类或从类派生出一个新类,这模拟了人类的演绎思维过程:从一般到特殊。

带有形容词修饰的名词词组往往暗示了一些具体类。分析阶段应该防止过度细化。;增加了继承关系之后的ATM对象模型

;;1.分解“现金兑换卡〞类

“现金兑换卡〞有两个相对独立的功能,它既是鉴别储户及使用ATM的权限的卡,又是ATM获得分行代码和卡号等数据的数据载体。

因此,把“现金兑换卡〞类分解为“卡权限〞和“现金兑换卡〞两个类,将使每个类的功能更单一:前一个类标志储户访问账户的权限,后一个类是含有分行代码和卡号的数据载体。

多张现金兑换卡可能对应着相同的访问权限。;2.“事务〞由“更新〞组成

一个事务可包含对账户的假设干次更新。更新指的是对账户所做的一个动作(取款、存款或查询)。“更新〞有自己的属性(类型、金额等),应该独立存在,因此应该把它作为类。

3.把“分行〞与“分行计算机〞合并

区分“分行〞与“分行计算机〞,对于分析这个系统来说,并没有多大意义,为简单起见,把它们合并。类似地,应该合并“总行〞和“中央计算机〞。

以以下图给出了修改后的ATM对象模型,与修改前比较起来,它更简单、更清晰。;1、分解“现金兑换卡〞类为“卡权限〞和“现金兑换卡〞两个类;

2、“事务〞由“更新〞组成;

3、把“分行〞与“分行计算机〞合并

;对于仅存储静态数据的系统(例如数据库)来说,

动态模型并没有什么意义。

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

例如:收集输入信息是目标系统的主要工作。;遗漏常见的交互行为。建立动态模型的三步:

编写典型交互行为的脚本,包括