面向对象分析(OOA)

 

面向对象分析(OOA)的介绍

一、面向对象分析

1【定义】

Object Oriented Analyzing
OOA是一种将现实世界中的问题映射到问题域的方法。
2【目的、意义】
明确用户的功能需求,及满足用户所需的系统部件及其结构。
3 【输入】
用户需求。
4 【输出】
1 用例图:说明系统对外提供的功能及使用者
2 类图:说明系统应具有的对象,对象的属性、方法,及其对象之间的关系。
3 交互图:
3【标准】
1)为完成用户要求系统应提供哪些功能?
2)系统应有哪些对象构成?
3)每个对象应有哪些属性和服务?
4)对象间应有怎样的联系?
4【手段】
详见[1]。
5【边界】
OOA 使用面向对象的建模技术,将现实世界映射为完整的面向对象的模型。

二、领域分析

1【概览】
面向对象系统的分析可以在不同的抽象层次上进行。
1在商业或企业级,OOA技术可以同信息工程方法,(第 10 章)结合,来定义模拟全部业务的类、对象、
关系和行为,这个层次的 OOA类似于信息策略计划;
2在业务范围层次,可以定义一个描述某特殊的业务范围(或某产品或系统范畴)的工作的对象模型;
3在应用层次,对象模型着重于特定的客户需求,因为那些需求将影响应用的实现。
2【领域分析方法】【2】
软件的领域分析是在特定应用领域中标识、分析和规约公共需求,典型地是
在应用领域中多个项目间的复用。面向对象领域分析是以公共对象、类、子集合
和框架等形式在特定应用领域中标识、分析和规约公共的可复用的能力。
3【目标】
发现或创建那些可广泛应用的类,使得它们可以被复用。
4【过程】
1 界定将被调查的领域。分析员必须首先隔离感兴趣的业务范围、系统类型或产品范畴。接着,必须从中抽出OO 和非 OO 的“项”
2 将从领域中抽取出来的项分类。
3 收集领域中应用的代表性样本。
4 分析样本中的每个应用。
·标识候选的可复用对象。
·指明对象被标识为可复用的理由。
·定义对对象的适应性修改(可能也是可复用的)。
·估算在领域中可利用对象复用的应用的百分率。
·用名字标识对象,并运用配置管理技术(第 9 章)来控制它们。

三、分析模型的类属成分

包括 交互图、顺序图

四、OOA 过程

从理解系统的使用方式开始,如果系统是人机交互的,则考虑被人使用的方式;
如果系统是涉及过程控制的,则考虑被机器使用的方式;或者如果系统协调和控制应用,
考虑被其他程序使用的方式。定义了使用场景后,即开始软件的建模过程。
1 使用实例,确定角色。
2 类—责任—协作者建模
制品:指定类名,类的职责(属性和方法)和协作者
Ambler[AMB95]对 CRC 建模的描述如下:
CRC 模型实际上是一组表示类的标准的索引卡片的集合。卡片被分成三个部
分,在卡片的顶部为类的名字,在卡片体的左边列出类的责任,在右边列出协作者。
3 定义(类之间的)层次和结构
层次(一般-特殊结构gen-spec)
结构(whole-part)结构
4 定义主题和子系统【划分library 类库】
当类的某个子集相互协作以完成一组内聚的责任时,它们常被称为主题(subjects)[COA91] 或子系统[WIR90]。
(类库之间协作,以实现契约,就其封装性来说,类似于类)

五 对象-关系模型(确定多重性关系)

1 利用CRC的类与协作确定是否有关系。
2 根据职责确定多重性

六 对象-行为模型(状态图)

1.评估所有的使用实例(20.4.1 节)以完全地理解系统中交互的序列。
2.标识驱动交互序列的事件,理解这些事件如何和特定的对象相关联。
3.为每个使用实例创建事件轨迹[RAM91]。
4.为系统建造状态—变迁图。
5.复审对象—行为模型以验证精确性和一致性。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值