欢迎来到天天文库
浏览记录
ID:42047744
大小:37.50 KB
页数:4页
时间:2019-09-07
《软件工程导论教学资料-面向对象的开发方法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、面向对象的开发方法1.Booch方法Booch方法是面向对象开发方法的倡导者。Booch认为软件开发是一个螺旋上升的过程,上升的每个周期有固定的步骤。首先发现应用领域的对象和类,然后确定其含义,找出类之间的关系,说明界面和实现。这些步骤完成之后,又开始寻找新的对象和类等。Booch方法的过程包括以下步骤:(1)在给定的抽象层次上识别类和对象;(2)识别这些对象和类的语义;(3)识别这些类和対象之间的关系;(4)实现类和对象。这4种活动不仅仅是一个简单的步骤序列,而是对系统的逻辑和物理视图不断细化的迭代和渐增的开发过程。©•拓展提高:类和对
2、象的识别包括找出问题空间中关键的抽象和产生动态行为的重要机制。开发人员可以通过研究问题域的术语发现关键的抽象。语义的识别主要是建立前一阶段识别出的类和对象的含义。开发人员确定类的行为(即方法)和类及对象之间的互相作用(即行为的规范描述)。该阶段利用状态转移图描述对象的状态的模型,利用吋态图(系统中的吋态约束)和对象图(对象之问的互相作用)描述行为模型。在关系识别阶段描述静态和动态关系模型。这些关系包括使用、实例化、继承、关联和聚集等。类和对象Z间的可见性也在此时确定。在类和对彖的实现阶段要考虑如何用选定的编程语言实现,如何将类和对彖组织成
3、模块。在面向对象的设计方法中,Booch强调基于类和对象的系统逻辑视图与基于模块和进程的系统物理视图之间的区别,还区別了系统的静态和动态模型。然而,他的方法偏向于系统的静态描述,对动态描述支持较少。Booch方法的力量在于其丰富的符号体系,包括:(1)类图(类结构•静态视图);(2)对象图(对象结构■静态视图);(3)状态转移图(类结构■动态视图);(4)时态图(对彖结构-动态视图);(5)模块图(模块体系结构);(6)进程图(进程体系结构)。用于类和对象建模的符号体系使用注释和不同的图符(如不同的箭头)来表达详细的信息。Booch建议在
4、设计的初期可以用符号体系的一个子集,随后不断添加细节。对每一个符号体系还有一个文本的形式,由每一个主要结构的描述模板组成。符号体系由大量的图符定义。但是,其语法和语义并没有严格的定义。2.Coad方法Coad方法是1989年Coad和Yourdon提出的面向对象的开发方法,该方法严格区分了面向对象分析(00A)和面向对彖设计(00D)o该方法利用5个层次和活动定义记录系统行为、输入和输115。这5个层次的活动包括:(1)发现类及対象。描述如何发现类及对象。从应用领域开始识别类及对象,形成整个应用的基础,然后据此分析系统的责任。(1)识别结
5、构。该阶段分为两个步骤。第一,识别一般/特殊结构,该结构捕获了识别出的类的层次结构;第二,识别整体/部分结构,该结构用来表示一个对象如何成为另一对象的一部分,以及多个对象如何组装成更大的对象。(2)定义主题。主题由一组类及对象组成,用于将类及对象模型划分为同一内容、大的单位,便于理解C(3)定义属性。其屮包括定义类的实例(对彖)之间的实例连接。(4)定义服务。其中包括定义对象之I'可的消息连接。在面向对象分析阶段,经过5个层次的活动后的结果是一个分成5个层次的问题域模型,包括主题、类及对彖、结构、属性和服务5个层次,由类及对象图表示。5个
6、层次活动的顺序并不重要。而向对彖设计模型需要进一步区分以下4个部分:(1)问题域部分(PDC),面向对象分析的结果直接放入该部分;(2)人机交互部分(HIC),这部分的活动包括对用户分类、描述人机交互的脚本、设计命令层次结构、设计详细的交互、生成用户界面的原型、定义HIC类;(3)任务管理部分仃MC),这部分的活动包括•识别任务(进程)、任务所提供的服务、任务的优先级、进程是事件驱动还是时钟驱动、任务与其他进程和外界如何通信等;(4)数据管理部分(DMC),这一部分依赖于存储技术,是文件系统,还是关系数据库管理系统,还是面向对象数据库管理
7、系统。3.OMT方法OMT方法从3个视角描述系统,相应地提供了3种模型:对象模型、动态模型和功能模型。对象模型描述对象的静态结构和它们Z间的关系。主要的概念包括类、属性、操作、继承、关联(即关系)和聚集。©•拓展提高:动态模型描述系统中那些随时间变化的方面,其主要概念有状态、子状态和超状态、事件、行为和活动。功能模型描述系统内部数据值的转换,其主要概念有加工、数据存储、数据流。控制流和角色。该方法将开发过程分为4个阶段。(1)分析基于问题和用户需求的描述,建立现实世界的模型。分析阶段的产物有:1)问题描述;2)对象模型=对象图+数据词典;
8、3)动态模型=状态图+全局事件流图;4)功能模型=数据流图+约束。(2)系统设计结合问题域的知识和目标系统的体系结构(求解域),将目标系统分解为子系统。该阶段的主要产物是系统设计文档,即基本的
此文档下载收益归作者所有