对象行为模型(Object behaviour modelling)是指面向对象系统或产品的动态行为。为达到此目标,我们必须将系统的行为表示为特定事件和时间的函式。
对象行为模型指明面向对象系统如何相应外部时间或激励。
基本介绍
- 中文名:对象行为模型
- 外文名:Object behaviour modelling
- 定 义:面向对象系统或产品的动态行为
- 套用学科:计算机原理术语
概念
对象行为模型(Object behaviour modelling)是指面向对象系统或产品的动态行为。为达到此目标,我们必须将系统的行为表示为特定事件和时间的函式。
对象行为模型指明面向对象系统如何相应外部时间或激励。为了创建该模型,分析员必须完成下面几个步骤的工作。
(1)评估所有的用例以完全地理解系统中互动的序列;
(2)标识驱动互动序列的事件,理解这些事件如何和特定的对象相关联;
(3)为每个用例创建事件轨迹;
(4)为系统建造状态——变迁图;
(5)複审对象——行为模型以验证精确性和一致性。
工作原理
用用例标识事件
用例(use case)表示了涉及参与者和系统的一些列活动。通常,当面向对象系统和参与者(注意,参与者可以是人、设备甚或外部系统)交换信息时,引发一个事件。事件是布尔量,即,事件不是已经被交换的信息,而是信息已经被交换这样一个事实。
在面向对象分析模型的语境内,参与者会发生一个事件给系统相关部分,这个事件可被称为申请节约;传送的信息是参与者的基本信息及申请信息,但这不是行为模型的本质构成部分。
一旦标识完所有事件,它们即被分配给所涉及的对象。参与者(外部实体)和对象负责生成事件。
状态表示
在面向对象系统语境内,须考虑两种不同的状态特徵:
(1)当系统执行其功能时每个对象的状态;
(2)当系统执行其功能时从外部观察到的系统的状态。
一个对象的状态有被动和主动两种特徵。被动状态仅是简单的对象所有属性的当前状况,必须发生某一事件(有时称为触动)来促使对象从一个主动状态过渡到另一个主动状态。对象行为模型的组成成分仅仅对对象的主动状态及促使对象于不同的主动状态间转变的事情(触发)的简单表示。
通常,转变的保护条件依赖于对象的一个或多个属性的值,换句话说,保护条件依赖于对象的被动状态。
动作和转发并发或作为转变的结果而发生,并且通常涉及对象的一个或多个操作(责任)。
OOA行为表示的第二种类型考虑对整体产品或系统的状态表示,它包含一个用以指明时间如何引起从对象到对象的转变的简单的事件1模型,以及一个描述每个对象的处理行为的状态转变图。
一旦已经为用例标识出事件后,分析员要创建一个对事件如何导致从一个对象到另一个对象的流的表示,称为事件轨迹,该表示式用例的简化版本,它表示了引致行为从对象流向对象的关键对象和事件。
一旦确定完全的事件轨迹后,所有引致系统对象间的转变的事件可以被分为输入事件集和输出事件集(从一个对象),这可以使用事件流图来表示。所有流入和流出某对象的事件以序列图的方式标注。可以用状态变迁图来表示和每个类的责任相关联的行为。