精华内容
下载资源
问答
  • 在用面向对象方法建立的模型
    2022-01-23 20:45:23

    一: 基本概念

    (1)对象模型

    面向对象分析的首要工作就是建立问题域的对象模型。对象模型表示静态的、结构化的系统的数据性质。它是对模拟客观世界实体的对象以及对象彼此间的关系的映射,描述了系统的静态结构。对象模型为建立动态模型和功能模型,提供了实质性的框架

    (2)先建立对象模型的原因

    • 静态数据结构对应用细节依赖较少,比较容易确定
    • 当用户的需求变化时,静态数据结构相对来说比较稳定

    (3)信息来源

    需求陈述、应用领域的专业知识、客观世界的常识,是建立对象模型时的主要信息来源

    (4)典型的建模步骤

    • 确定对象类和关联(对于大型复杂问题还要进一步划分出若干个主题);
    • 给类和关联增添属性,以进一步描述它们;
    • 使用适当的继承关系进一步合并和组织类

    二:确定类与对象

    (1)找出候选的类与对象

    A:客观事物分类

    对象是对问题域中有意义的事物的抽象,它们既可能是物理实体,也可能是抽象概念。客观事物可分为下述5类:

    • 可感知的物理实体;
    • 人或组织的角色;
    • 应该记忆的事件;
    • 两个或多个对象的相互作用;
    • 需要说明的概念

    B:非正式分析

    以用自然语言书写的需求陈述为依据,把陈述中的名词作为类与对象的候选者,用形容词作为确定属性的线索,把动词作为服务的候选者。这种方法确定的候选者是非常不准确的,其中往往包含大量不正确或不必要的事物,需要经过更进一步的严格筛选

    C:提取隐含的类与对象

    (2)筛选出正确的类与对象

    • 如果两个类表达了同样的信息,则应该保留在此问题域中最富于描述力的名称
    • 需要把与本问题密切相关的类与对象放进目标系统中
    • 系统无须记忆笼统的、泛指的名词信息,把这些笼统的或模糊的类去掉
    • 把描述的是其他对象属性的词从候选类与对象中去掉
    • 慎重考虑既可作为名词,又可作为动词的词,以便正确地决定把它们作为类还是作为类中定义的操作。本身具有属性,需独立存在的操作,应该作为类与对象
    • 应该去掉仅和实现有关的候选的类与对象

    三:确定关联

    (1)关联

    A:定义

    两个或多个对象之间的相互依赖、相互作用的关系就是关联。在需求陈述中使用的描述性动词或动词词组,通常表示关联关系

    B:确定关联的重要性

    分析确定关联,能促使分析员考虑问题域的边缘情况,有助于发现尚未被发现的类与对象

    (2)步骤

    A:初步确定关联

    • 直接提取动词短语得出的关联
    • 需求陈述中隐含的关联
    • 根据问题域知识得出的关联

    B:筛选

    筛选时主要根据下述标准删除候选的关联:

    • 已删去的类之间的关联:如果在分析确定类与对象的过程中已经删掉了某个候选类,则与这个类有关的关联也应该删去,或用其他类重新表达这个关联

    • 与问题无关的或应在实现阶段考虑的关联:应该把处在本问题域之外的关联与实现密切相关的关联删去

    • 瞬时事件:关联应该描述问题域的静态结构,而不应该是一个瞬时事件

    • 三元关联:三个或三个以上对象间的关联,可分解为二元关联或用词组描述成限定的关联

    • 派生关联:去掉那些可以用其他关联定义的冗余关联

    C:改进

    可以从以下几个方面进一步完善经筛选后余下的关联

    • 正名:仔细选择含义更明确的名字作为关联名
    • 分解:为了能够适用于不同的关联,必要时应该分解以前确定的类与对象
    • 补充:发现了遗漏的关联就应该及时补上
    • 标明重数:应该初步判定各个关联的类型,并粗略地确定关联的重数

    四:划分主题

    (1)定义

    在开发大型、复杂系统的过程中,为了降低复杂程度,把系统再进一步划分成几个不同的主题,即在概念上把系统包含的内容分解成若干个范畴

    (2)针对不同类型的方法

    • 规模小的系统:可能无须引入主题层
    • 含有较多对象的系统:首先识别出类与对象和关联,然后划分主题,并用它作为指导开发者和用户观察整个模型的一种机制
    • 规模大的系统:首先由高级分析员粗略地识别对象和关联,然后初步划分主题,经进一步分析,对系统结构有更深入的了解之后,再进一步修改和精炼主题

    (3)原则

    • 问题领域而不是用功能分解方法来确定主题
    • 按照使不同主题内的对象相互间依赖和交互最少的原则来确定主题

    五:确定属性

    (1)属性

    属性是对象的性质,借助于属性人们能对类与对象和结构有更深入更具体的认识

    • 注意:在分析阶段不要用属性来表示对象间的关系,使用关联能够表示两个对象间的任何关系,而且把关系表示得更清晰、更醒目

    (2)确定属性的步骤

    A:分析

    • 在需求陈述中用名词词组表示属性,用形容词表示可枚举的具体属性
    • 借助于领域知识常识分析需要的属性
    • 仅考虑与具体应用直接相关的属性,不要考虑那些超出所要解决的问题范围的属性
    • 首先找出最重要的属性,以后再逐渐把其余属性增添进去
    • 不要考虑那些纯粹用于实现的属性

    B:选择

    从初步分析确定下来的属性中删掉不正确的或不必要的属性。有以下几种常见情况:

    • 误把对象当作属性:如果某个实体的独立存在比它的值更重要,则应把它作为一个对象而不是对象的属性

    • 误把关联类的属性当作一般对象的属性:如果某个性质依赖于某个关联链的存在,则该性质是关联类的属性,在分析阶段不应把它作为一般对象的属性

    • 把限定误当成属性:如果把某个属性值固定下来以后能减少关联的重数,则应该考虑把这个属性重新表达成一个限定词。

    • 误把内部状态当成了属性:如果某个性质是对象的非公开的内部状态,则应该从对象模型中删除这个属性。

    • 过于细化:在分析阶段应该忽略那些对大多数操作都没有影响的属性

    • 存在不一致的属性:类应该是简单而且一致的。如果得出一些看起来与其他属性毫不相关的属性,则应该考虑把类分解成两个不同的类

    六:识别继承关系

    (1)建立继承关系的方式

    确定了类中应该定义的属性之后,就可以利用继承机制共享公共性质,并对系统中众多的类加以组织。可以使用以下两种方式建立继承关系

    • 自底向上:抽象出现有类的共同性质泛化出父类,这个过程实质上模拟了人类归纳思维的过程
    • 自顶向下:把现有类细化成更具体的子类,这模拟了人类的演绎思维过程。从应用域中常常能明显看出应该做的自顶向下的具体化工作

    (2)多重继承

    A:作用

    利用多重继承可以提高共享程度,但增加了概念上以及实现时的复杂程度

    B:要点

    • 指定一个主要父类,从它继承大部分属性和行为;
    • 次要父类只补充一些属性和行为

    七:反复修改

    (1)必要性

    软件开发过程就是一个多次反复修改、逐步完善的过程。仅仅经过一次建模过程很难得到完全正确的对象模型

    (2)面向对象在修改时的优点

    面向对象的概念和符号在整个开发过程中都是一致的,比使用结构分析、设计技术更容易实现反复修改、逐步完善的过程

    更多相关内容
  • 采用面向对象方法开发软件,通常需要建立三种形式的模型,它们分别是: 描述系统数据结构的 ( 1 ) ,该模型主要 ( 2 ) 来展现。 描述系统控制结构的 ( 3 ) ,该模型通常 ( 4 ) 来表示。 描述系统功能的 ...

    采用面向对象方法开发软件,通常需要建立三种形式的模型,它们分别是:
    描述系统数据结构的 ( 1 ) ,该模型主要用 ( 2 ) 来展现。
    描述系统控制结构的 ( 3 ) ,该模型通常用 ( 4 ) 来表示。
    描述系统功能的 ( 5 ) ,该模型通常用 ( 6 ) 来刻画。

    在这里插入图片描述

    展开全文
  • PowerDesinger快速建立面向对象应用模型以实践认知世界,以实事构架世界,PowerDesinger快速建立面向...该文档为PowerDesinger快速建立面向对象应用模型,是一份很不错的参考资料,具有较高参考价值,感兴趣的...
  • 3.3模型例化模型结构和模型事例 模型例化的三个层次 决策者依靠模型解决半...我们提出基于SML构模语言的方法来实现模型类与实际应用领域知识的结合并提出建立模型类模型结构和模型事例(有人称之为模型实例)三级例化
  • 文章目录一:建立动态模型(1)概念A:适用性B:步骤(2)编写脚本A:定义B:目的C:内容D:方法(3)设想用户界面A:重要性B:目的C:方法(4)画事件跟踪图A:必要性B:步骤①:确定事件(5)画状态图A:定义B:...

    一:建立动态模型

    (1)概念

    A:适用性

    • 对于仅存储静态数据的系统来说,动态模型并没有什么意义
    • 在开发交互式系统时,动态模型却起着很重要的作用
    • 收集输入信息是系统的主要工作时,则在开发时建立正确的动态模型是至关重要的

    B:步骤

    1. 编写典型交互行为的脚本
    2. 从脚本中提取出事件,确定触发每个事件的动作对象以及接受事件的目标对象
    3. 排列事件发生的次序,确定每个对象的状态及状态间的转换关系,用状态图描绘
    4. 比较各个对象的状态图,确保事件之间的匹配

    (2)编写脚本

    A:定义

    脚本是指系统在某一执行期间内出现的一系列事件。脚本描述用户与目标系统之间的一个或多个典型的交互过程。编写脚本的过程,就是分析用户对系统交互行为的要求的过程

    B:目的

    保证不遗漏重要的交互步骤,有助于确保交互过程的正确性、清晰性

    C:内容

    脚本描写的范围主要由编写脚本的具体目的决定,既可以包括系统中发生的全部事件,也可以只包括由某些特定对象触发的事件

    D:方法

    • 编写正常情况的脚本
    • 考虑特殊情况
    • 考虑出错情况

    (3)设想用户界面

    大多数交互行为都可以分为应用逻辑用户界面两部分,通常,系统分析员首先集中精力考虑系统的信息流控制流,而不是首先考虑用户界面

    A:重要性

    用户界面的美观程度、方便程度、易学程度以及效率等,是用户使用系统时最先感受到的。用户界面的好坏往往对用户是否喜欢、是否接受一个系统起很重要的作用

    B:目的

    这个阶段用户界面的细节并不太重要,重要的是在这种界面下的信息交换方式。目的是确保能够完成全部必要的信息交换,而不会丢失重要的信息

    C:方法

    快速地建立起用户界面的原型,供用户试用与评价

    (4)画事件跟踪图

    A:必要性

    用自然语言书写的脚本往往不够简明,而且有时在阅读时会有二义性。为了有助于建立动态模型,需要画出事件跟踪图

    B:步骤

    ①:确定事件

    1.提取出所有外部事件

    • 找出正常事件异常事件出错条件(传递信息的对象的动作也是事件)
    • 对控制流产生相同效果的事件组合为一类事件,并取一个唯一的名字

    2.画出事件跟踪图

    • 一条竖线代表一个对象
    • 每个事件用一条水平的箭头线表示
    • 箭头方向从事件的发送对象指向接受对象
    • 时间从上向下递增
    • 用箭头线在垂直方向上的相对位置表示事件发生的先后,不表示事件间的时间差

    在这里插入图片描述

    (5)画状态图

    A:定义

    状态图描绘事件与对象状态的关系。当对象接受了一个事件以后,它的下个状态取决于当前状态及所接受的事件。由事件引起的改变称为“转换”。一张状态图描绘了一类对象的行为,它确定了由事件序列引出的状态序列

    在这里插入图片描述

    B:适用性

    对于仅响应与过去历史无关的那些输入事件,或者把历史作为不影响控制流的参数类的对象,状态图是不必要的

    C:方法

    • 仅考虑事件跟踪图中指向某条竖线的那些箭头线。把这些事件作为状态图中的有向边,边上标以事件名
    • 两个事件之间的间隔就是一个状态,每个状态取个有意义的名字。从事件跟踪图中当前考虑的竖线射出的箭头线,是这条竖线代表的对象达到某个状态时所做的行为。
    • 根据一张事件跟踪图画出状态图后,再把其他脚本的事件跟踪图合并到该图中
    • 考虑完正常事件后再考虑边界情况和特殊情况,包括在不适当时候发生的事件

    (6)审查动态模型

    • 检查系统级的完整性一致性
    • 审查每个事件,跟踪它对系统中各对象所产生的效果,保证与每个脚本都匹配

    二:建立功能模型

    (1)定义

    功能模型表明了系统中数据之间的依赖关系,以及有关的数据处理功能,它由一组数据流图组成。在建立了对象模型和动态模型之后再建立功能模型

    (2)画出基本系统模型图

    基本的系统模型有下述两部分组成:

    • 数据源点/终点:数据源点输入的数据和输出到数据终点的数据,是系统与外部世界间交互事件的参数
    • 处理框:代表了系统加工变换数据的整体功能

    (3)画出功能级数据流图

    把基本系统模型中单一的处理框分解成若干个处理框,以描述系统加工、变换数据的基本功能,就得到功能级数据流图

    (4)描述处理框功能

    A:要点

    着重描述每个处理框所代表的功能,而不是实现功能的具体算法

    B:分类

    • 说明性描述(更为重要):规定了输入值和输出值之间的关系,以及输出值应遵循的规律
    • 过程性描述:通过算法说明“做什么”
    展开全文
  • PowerDesinger快速建立面向对象应用模型.pptx
  • 对象模型面向对象分析时,三个模型中最关键的一个模型,对象模型表示静态的,结构化的系统的数据性质,它是对客观时间实体中对象及其相互之间关系的映射,描述了系统的静态结构。建立对象模型是,首先确定类对象,...

    建立对象模型—
    确定类与对象

     

     

     

    常用的5类 1.物理或者具体对象 

      2 人或组织的角色

    3 应该记忆的事件  如销

    4.交易 如销售  、

    5.规则和政策 如保险政策

    1.下列不属于可感知的物理实体的是(  )。

    • A.

      飞机

    • B.

      教师

    • C.

    展开全文
  • 阶段构建 目标 阐明剩余的需求并基于已建立基线的构架完成系统开发 产品 完成有用的版本 动作原型说明 品质保证 系统和用户文档 产品化计划 下一个产品评估标准 * * CDM, PDM, and OOM models are intended for ...
  • 面向对象思想与模板的知识表达方式相融合,提出了面向对象工程模板,建立了设计与制造活动的有机联系,实现了几何信息与制造信息的集成和分离的对立统一,将复杂对象、层次结构及动态的数据结构相对简单且组织...
  • 各种煤矿监控类系统的通信协议对应不同数据结构,导致煤矿监控多系统融合运行时设备信息配置和...将面向对象的设备建模方法应用于图形组态中,使设备模型与图元绑定、设备实例与图形实例绑定,可快速配置数据可视化图形。
  • 使用UML对系统进行建模 面向对象的软件工程,同传统的面向过程的软件工程相比,需求的获取、系统分析、...这些模型包括用例模型、分析模型、设计模型,然后,我们需要使用具体的计算机语言来建立系统的实现模型
  • 文章目录一:面向对象方法学概述(1)定义(2)思想方法与原则(3)要点(4)优点二:面向对象概念(1)对象(Object)A:定义B:两个基本要素C:特点(2)类(class)(3)实例(4)消息(5)方法(6)属性(7)...
  • 利用PowerDesinger快速建立面向对象应用模型PPT教案学习.pptx
  • PowerDesinger 快速建立面向对象应用模型 张波 Boris.zhang@ 2 议程 了解现代信息系统变得日益复杂 回顾传统的C/S实现和3层以及分布计算的不同 学会通过设计技术来管理这些复杂的信息系统 掌握如何使用PowerDesigner...
  • 软件工程——面向对象建模方法

    千次阅读 2021-10-11 18:34:59
    建立领域模型 2.静态建模——领域模型与类图 领域模型(分析类图)->设计类图(类+关系+方法) 领域模型 概念类-名词 类之间的关系 属性 概念类 类名 属性 方法 例:医院病房监护系统 题目描述:...
  • 文章目录一:概念(1)定义(2)工具二:类图的基本符号(1)定义类A:表示B:命名规则(2)定义属性(3)定义服务三:表示关系的符号(1)关联A:定义B:...对象模型表示静态的、结构化的系统的数据性质。它是对模拟客
  • 分析了POSC石油组织建立的用于石油勘探开发行业的Epicentre公共模型的数据查询方法,构造出源实体-标识实体单向多级引用或源实体-核心实体正反向引用两种方法查询面向对象模型中的数据;对于更复杂的查询,均可通过...
  • **[面向对象 ** [M] ** ODEL OF ** [A] **使用 本文档使用语法编写。 如果您已经下载了SOMA,并且正在以纯文本格式阅读此文档,那么您将无法看到屏幕截图和突出显示的代码。 为了获得最佳的用户体验,请单击位于项目...
  • 第7章 面向对象模型

    2015-01-18 23:36:26
    运用PowerDesigner 16建立面向对象模型
  • 面向对象的分析(Object Oriented Analysis,OOA),运用面向对象方法对问题域和系统责任进行分析...抽象是面向对象方法使用最为广泛的原则。抽象原则包括过程抽象和数据抽象两个方面。(2)封装:就是把对象的属性和服
  • 面向对象分析三种模型

    千次阅读 2019-04-28 18:31:51
    模型 交互模型 状态模型
  • 结合ATM系统的实例,介绍建立动态模型方法 第一步编写脚本 脚本描述用户与目标系统间的一个或多个典型交互过程 1.正常情况脚本 2.异常情况脚本 3.错误情况脚本 从脚本提取所有外部事件,确定每类事件发送和接收...
  • 对电子政务系统模型综述的基础上,提出并构建了面向对象的电子政务系统模型。该模型中将电子政务系统分解为三个对象,即政府、企(事)业单位和公民,建立面向对象电子政务系统模型中各对象之间直接和间接的互动...
  • 尽管一些安全关键系统的国际标准强烈建议使用形式化方法(FMs),但是几乎所有有关FMs的现有工作都集中形式模型上,而形式模型只有内部不一致。 如何保证形式模型的外部一致性(或正确性),即满足用户的期望,是...
  • 面向对象方法学与结构化方法学的异同 面向对象方法与结构化方法都是...面向对象方法在上世纪八十年代中期开始被人们所关注的,而到了九十年代,面向对象方法学已经成为开发大型软件的首选范型。面向对象方法学的极大...
  • 对电子政务系统模型综述的基础上,提出并构建了面向对象的电子政务系统模型。该模型中将电子政务系统分解为三个对象,即政府、企(事)业单位和公民,建立面向对象电子政务系统模型中各对象之间直接和间接的互动...
  • 面向对象方法学的出发点和基本原则,是尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界解决问题的方法与过程,使描述问题的问题空间(问题域)与实现解法的解空间(求解域)结构上尽可能...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 175,223
精华内容 70,089
热门标签
关键字:

在用面向对象方法建立的模型