欢迎来到天天文库
浏览记录
ID:45058978
大小:550.00 KB
页数:45页
时间:2019-11-08
《软件工程—第6章 面向对象设计—OMT介绍》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第六章面向对象设计面向对象的主要方法Coad/Yourdon的方法Rumbaugh等的OMT方法Booch的方法Wirtf-Brock等的RDD方法此外,还有ESA的HOOD方法、Shlear和Mellor的OOSA方法、Wasserman的OOSD方法、Reenksang的OORASS方法、Embley的OSA方法、Gibon的OBA方法、Page-Jones和Weiss及Buhr的SYNTHESIS方法等Coad与Yourdon的方法Coad与Yourdon的方法是在信息模型化技术、面向对象程序设计语言及知识库系统的基
2、础上发展起来的,这个方法分为OOA和OOD两部分。面向对象的分析(OOA)Coad与Yourdon和其它描写面向对象方法的作者一样,认为OOA主要考虑与一个特定应用有关的对象及对象与对象之间在结构与相互作用上的关系。1.OOA的任务1)形式地说明所面对的应用问题,最终成为软件系统基本构成的对象,还有系统所必须遵从的,由应用环境所决定的规则和约束。2)明确地规定构成系统的对象如何协同合作,完成指定的功能。Coad与Yourdon的方法在OOA中,要建立分析模型来描述系统的功能第一个层次主要是识别类和对象,这是整个分析模型的基
3、础。第二层和第三层是属性层和服务层,用以说明前面已识别的类和对象。第四层是结构层,OOA允许两种类型的基本结构:一是整体与部分结构,也叫组装结构,组装结构表示聚合,即由属于不同类的成员聚合而成新的类;二是泛化与特化结构,也叫分类结构。其中,特化类是泛化类的子类,泛化类是特化类的父类。分类结构具有继承性,泛化类和对象的属性与服务一旦被识别,即可在特化类和对象中使用。第五层是主题层,是一些类和对象的特定组合表示,用来帮助和指导模型的读者。Coad与Yourdon的方法Coad与Yourdon的方法2.OOA的步骤1)找到类和对
4、象首先确定问题空间中包含哪些对象,有哪些操作,这些对象之间有什么关系,它们与操作又有什么关系。对象应该是实际问题域中有意义的个体或概念实体,具有目标软件系统所关心的属性,还应该以某种方式与系统发生关联,即对象必须与系统中其他有意义的对象进行消息传递,并提供外部服务。有关对象命名的重要原则:a.使用单个名词或名词短语;b.对象名称必须简洁、精确、易于理解;c.尽量使用用户熟悉的标准词汇。Coad与Yourdon的方法2)确定结构第一种结构是分类结构,代表了确定的类中的继承等级。另一种结构是组装结构,即由属于不同类的成员聚合而
5、成新的类。3)定义主题确定主题通过将类和对象划分成更大的单元来完成。主题是类和对象的组合。每个主题的规模按有助于读者通过模型理解系统来选择。Coad与Yourdon的方法4)定义属性对每个对象,确定划给该对象所需的属性。关键是识别与当前所处理的问题相关的属性。被确定的属性放到继承等级的正确层次。注意应避免冗余的或不正确的属性5)定义服务对象怎样进行消息通信是用消息的联系来确定的。这些都用来指定某一个操作。综上所述,OOA大体上可以按照这个顺序进行。但是,分析不可能严格地按照预定顺序进行,大型、复杂系统的模型需要反复构造多遍
6、才能建成。Coad与Yourdon的方法面向对象的设计(OOD)OOA到OOD实际上是一个逐渐扩充模型的过程。面向对象分析主要模拟问题空间和系统任务;而面向对象设计则是对其进行扩充,主要是增加各种组成部分。OOA识别和定义的类/对象,是一些直接反映问题空间和系统任务的;而OOD识别和定义的类/对象则是附加的,反映需求的一种实现。Coad与Yourdon在设计阶段中继续采用分析阶段中提到的五个层次,他们认为这有助于从分析到设计的过渡。不同的是,在设计阶段中,这五个层次是用于建立系统的四个组成成分上。这四个组成成分是:问题论域
7、,用户界面,任务管理和数据管理。Coad与Yourdon的方法问题论域部分包括与所面对的应用问题直接有关的所有类和对象。在其它的三个部分中,识别和定义新的类和对象。Coad与Yourdon的方法1.问题域部分(PDC)的设计OOA阶段得到的有关应用的概念模型描述了所要解决的问题。在OOD阶段,主要是对OOA产生模型中的某些类与对象、结构、属性、操作进行组合与分解,或者增加必要的类、属性和联系。Coad与Yourdon的方法1)复用设计根据问题解决的需要,把从现有的类库或其它来源得到的现存类增加到问题解决方案中去。2)把问题
8、论域的专用类关联起来3)为建立公共操作集合建立一般类4)调整继承级别Coad与Yourdon的方法2.用户界面部分(HIC)的设计通常在OOA阶段给出了所需的属性和操作,在设计阶段必须根据需求把交互的细节加入到用户界面的设计中,包括有效的人机交互所必需的实际显示和输入。Coad与Yourdon的方法1)
此文档下载收益归作者所有