第九章 面向对象方法学(3)

今天公司的营业执照下来了,上午耽搁了学习时间,故更新的内容少一点(开心)。

3、OMT/Rumbaugh 方法

对象模型化技术OMT(Object Modeling Technique)曾扩展应用于关系数据库设计,1991年正式把OMT应用面向对象的分析和设计,该方法是在实体关系模型上扩展了类,继承和行为而得到的,开发工作的基础是对真实世界的对象建模,然后围绕这些对象使用分析模型来进行独立于语言设计。

OMT方法覆盖了分析、设计和实现3个阶段,它包括了一组相互关联的概念:类、对象、一般化(或称泛化)继承、链、链属性、聚合、操作、事件、场景、属于子系统模块等,主要用于分析系统设计和对象级设计分析的目的是:建立可理解的现实世界模型,系统设计确定高层次的开发策略,对象设计的目的是确定对象的细节,包括定义对象的界面、算法和操作。

OMT方法需从3个不同角度来描述系统建立3个模型:代表系统静态结构的对象模型,反映系统时间顺序操作的动态模型,和表现系统对象内部状态关系的功能模型。OMT方法对系统的分析描述示意图参见图9.16

OMT方法支持软件系统生存周期开发:其开发实施过程分为3个阶段:分析、设计和实现,分析主要是:建立问题领域、确定对象模型、动态模型、功能模型;设计阶段主要是:系统设计和对象设计,一般系统设计阶段将系统分解为几个子系统,将对象分成可以并行开发的对象组。对象设计阶段则通过反复分析,产生一个比较实用的设计,并且确定主要算法,对象代码等。实现阶段将设计转化为编程,OMT突出的特点是在分析阶段可以较为全面地描述系统的静态结构,比较适合于数据密集型的信息系统。

4、OOSE方法/也叫Jacobsou方法

OOSE主要包括下列概念:类、对象、继承、相识(Acquaintance)通信 (communication)激励(stimuli)操作、属性、参与者(Actor)用例、子系统、服务部(service package)块(BIOCK)对象模块(Object moduce)

相识:表示静态的关联关系、包括聚集关系

激励:通信传送的消息

参与者:是与系统交互的事物,表示所有与系统有信息交换的系统之外的事物,参与者是用户所充当的角色。

OOSE开车过程中会建立5种模型:这些模型是自然过渡和紧密耦合的

(1)需求模型:包括由领域对象模型和界面描述支持的参与者和用例,对象模型是系统的概念化的,容易理解的描述,界面描述刻画系统界面的细节,要求模型从用户的观点完整地刻画系统的功能需求,因此在需求模型基础上与最终用户交流比较容易。

(2)分析模型:在需求模型的基础上建立的主要目的是要建立在系统生命周期中可以维护,有逻辑性、健壮的结构、分析模型种有3种对象,界面对象刻画系统界面,实体对象刻画系统要长期管理的信息和信息上的行为,实体对象生存在一个特别的用例中,第三种是按特定的用例做面向事物的建模对象。

(3)设计模型:进一步精华分析模型并考虑当前的实现环境

(4)实现模型:实现块的代码,OOSE并不要求用面向对象语言来完成实现。

(5)测试模型:包括不同程度的保证,这种保证从低层的单元测试延伸到高层的系统测试。

5、Wirfs-Brock方法

主要包括以下步骤

(1)评估客户规约

(2)使用语言分析从规约中抽取候选类

(3)组合类以试图标识超类

(4)为每个类定义责任

(5)为每个类赋予责任

(6)标识类之间的关系

(7)定义类之间基于责任的协作

(8)构造类的层次表示以显示继承关系

(9)构造系统的协作图

6、上述5种方法的比较

Booch方法并不是一个开发过程,只是在开发面向对象系统时应遵循的一些技术和原则,是从外部开发逐步求精每个类,直到系统被实现,它是一种分治法、支持循环开发、缺点:不能有效地找出每个对象和类的操作。

OMT方法覆盖了应用开发的全过程,用几种不同的观念来适应不同的建模场合,适用于数据密集型的信息和系统的开发,是比较完善和有效的分析与设计方法。

OOAD方法中,OOA把系统的横向划分为5个层次,OOD把系统纵向划分为4个部分,形成一个清晰的系统模型,适用于小型系统的开发。

OOSE能够较好地描述系统的需求,是一种实用的面向对象的系统开发方法,适用于商务处理方面的应用开发。

Wirfs-Brock方法不明确区分分析和设计任务,从评估客户规格说明到设计完成是一个连续的过程。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值