oolecture5Word格式.docx

上传人:b****2 文档编号:455152 上传时间:2023-04-28 格式:DOCX 页数:21 大小:546.15KB
下载 相关 举报
oolecture5Word格式.docx_第1页
第1页 / 共21页
oolecture5Word格式.docx_第2页
第2页 / 共21页
oolecture5Word格式.docx_第3页
第3页 / 共21页
oolecture5Word格式.docx_第4页
第4页 / 共21页
oolecture5Word格式.docx_第5页
第5页 / 共21页
oolecture5Word格式.docx_第6页
第6页 / 共21页
oolecture5Word格式.docx_第7页
第7页 / 共21页
oolecture5Word格式.docx_第8页
第8页 / 共21页
oolecture5Word格式.docx_第9页
第9页 / 共21页
oolecture5Word格式.docx_第10页
第10页 / 共21页
oolecture5Word格式.docx_第11页
第11页 / 共21页
oolecture5Word格式.docx_第12页
第12页 / 共21页
oolecture5Word格式.docx_第13页
第13页 / 共21页
oolecture5Word格式.docx_第14页
第14页 / 共21页
oolecture5Word格式.docx_第15页
第15页 / 共21页
oolecture5Word格式.docx_第16页
第16页 / 共21页
oolecture5Word格式.docx_第17页
第17页 / 共21页
oolecture5Word格式.docx_第18页
第18页 / 共21页
oolecture5Word格式.docx_第19页
第19页 / 共21页
oolecture5Word格式.docx_第20页
第20页 / 共21页
亲,该文档总共21页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

oolecture5Word格式.docx

《oolecture5Word格式.docx》由会员分享,可在线阅读,更多相关《oolecture5Word格式.docx(21页珍藏版)》请在冰点文库上搜索。

oolecture5Word格式.docx

事件含有三个要素:

事件是某一时刻发生的;

两个以上的事件即可以是顺序的,也可以是并发的;

每个事件具有一个的生成背景,可以将共同生成背景的事件构成一个事件类(层次结构);

例:

event(eventattributes)

digitdialed(digit)

airlineflightdeparts(airline,flight#,city)

③脚本(Scenarios)与事件流(Eventtraces)

脚本是用来描述一个系统在特定运行时的事件的顺序;

脚本即可以包括系统中的全部事件,也可以只描述系统的某些特地对象间的局部事件;

callerliftsreceiver

dialtonebegins

callerdialsdigit(5)

dialtoneends

callerdialsdigit

(1)

callerdialsdigit

(2)

callerdialsdigit(3)

callerdialsdigit(4)

calledponebeginsringing

ringingtoneappearsincallingphone

calledpartyanswers

calledphonestopsringing

ringingtonedisappearsincallingphone

calledpartyhangsup

phonesaredisconnected

callerhangsup

事件流描述了事件发生的顺序及其发方和收方的对象。

事件流可用事件流图表述;

同上例

 

④状态(States)

状态是描述对象间连接时的属性数值的抽象。

状态具有区间;

状态呈现在一个对象在接收到前后两个事件区间的间隔;

状态图(Statediagrams)

由一个事件引起的状态的改变称为变迁(Transition)。

状态图就是用来阐明由事件引起的状态的变迁的图形工具。

状态图的基本成份是状态结点和事件方向线。

其基本符号如下:

●起始状态

结束状态

事件方向线

状态结点

状态图依照事件顺序描述了相应的状态变化顺序,实际上也就是一个对象类的行为。

一个类的所有对象都按照一个状态图变迁,但各自的状态值可以不同。

打电话的状态图(见下页图)

⑥条件(Conditions)

很多事件的发生是需要一定的条件的(如温度、压力、时间等)。

条件通常具有一定的区间(但事件本身是没有区间的)。

若一个引发变迁的事件包含条件,则称这个变迁为条件变迁(Guardedtransition)。

⒊动作(Activity)

①基本定义

占用一定时间完成的一个周期性活动(Activity)被称为动作。

动作是与状态相联系的,既一个活动起自与之相联的一个状态的起点并止于与之相联的另一个状态的终点。

如果存在一组活动的顺序,则其中的一个活动就会在引起状态改变的位置(箭头)终止。

当一个对象接收到一个事件时所发生的一个立即的可感知的效果又称为响应(Action)。

在状态图上常将作用和

与其相关的事件放在一起。

其通用的符号如下:

鼠标右键的一种击键行为

②状态图的折叠与展开(NestStateDiagram)

在实际应用中,状态图中的结点数和事件数可能是非常巨大的,已难以用一幅状态图来说明。

需要对状态图中具有类似变迁的内容折叠为一个更抽象的状态及事件(即分层展开和折叠)。

折叠状态图被称为高层状态图,仅把状态图中折叠部分单独展开后的状态图称为低层状态图。

(见下页)

此二者间的关系也可以描述成一个综合关系(Generalization),该关系可由下述抽象图形表示:

汽车离合器的状态图

⒋并发(Concurrency)

在OO系统中动作是可以同时出现的,故称为并发。

并发有两种形式:

多重对象动作并发(Aggregationconcurrency)和单一对象内动作并发(Concurrencywithinasingleobject)。

①多重对象动作并发

在包容对象结构中,每个被包容的对象部件都有一个独立的状态图;

此种情形下的状态同步是依赖条件变迁而实现的;

②单一对象内动作并发

一个对象内可能含有多个属性集或者连接,则可用各自的子状态图表示;

与上一种并发的主要区别在于同一事件会引起两个以上子状态图内的变迁,即子状态图的动作不是独立的;

符号体系:

具有来电显示功能的电话机在收到“铃流”事件后进入“震铃”状态时,电话机内部的两组属性所呈现的两种状态。

③有关用例分析与设计的进一步的概念

⑴入口响应(Entryactions)

无论处于何种状态时,任意事件的到达都会变换至某个状态且出现相同的作用的效果被称为入口响应。

其符号如下:

⑵出口响应(Exitactions)

处于某种状态时,任意事件的到达都会产生状态的变迁且出现相同的作用的效果被称为出口响应。

⑶内部响应(Internalactions)

无任何状态的改变而产生的作用被称为内部响应。

自动变迁(Automatictransition)

没有事件触发而导致的变迁被称为自动变迁。

当一个与源状态有联系的活动完成或变迁的条件已经具备时自动变迁便会发生。

其符号

如下:

⑸与并发活动的分叉(Fork)和联结(Join)

符号如下:

一扇门由分别置于室内外的一组按钮控制。

当室内的人数小于4时,则处于室外的人按下室外按钮打开门后可以进入一人。

当室内的人数大于1是时,则处于室内的人按下室内按钮打开门后可以出去一人。

初始状态为室内无人。

试绘制出状态图。

解:

①列出状态(State):

0,1,2,3,4

②列出事件(Events):

按下室外钮(记作OBP-OutsideButtonPressed)

按下室内钮(记作IBP-InsideButtonPressed)

③列出响应(Action):

进一个人;

出一个人;

④绘制状态图(Statediagram)

⑤进一步的设想

若将开门和进、出时间考虑进去,则状态就可以新增为如下两个:

用i’表示开门且正在进一个人;

用(i-1)”表示开门且正在出一个人;

假设开门和进出一个人的时间不超过10秒,上述状态图便可重绘成以下形状:

⒌对象与用例分析与设计间的关系

①状态图描述了所给类的一个对象的部分或全部的行为

可以用下述等价关系来体现:

状态类的属性或连接的值;

事件动作;

②包容关系中的等价

组合状态(Compositestate)体现与包容关系之中。

③继承关系中的等价

一个派生类的状态图将继承其基类状态图中的所有状态。

⒍用例分析与设计的处理过程

此项处理过程将以一个汽车自动加油机的模型来讨论具体步骤。

该加油机的对象模型如下图所示:

①准备脚本

一个脚本是一个系统在某个特定的工作时间内所发生的全部事件的顺序描述。

其内容的编排如下:

⑴列出常规的处理脚本

首先确定常规处理脚本的前提条件,然后再按动作的发生顺序写脚本内容。

上述汽车自动加油机系统的常规脚本便有如下的内容:

-常规处理脚本的前提条件为:

顾客的信用卡能够被确认的;

自动加油机内有足量需要的油品;

-自动加油机的动作的发生顺序为:

加油机提请顾客选择付款方式;

顾客选择信用卡;

自动加油机提示顾客插入信用卡;

顾客将信用卡滑入自动加油机的信用卡插口;

自动加油机系统验核并认可信用卡信息后激活加油控制系统;

自动加油机提请顾客选择所加油料的级号;

顾客选择了Plus级;

自动加油机打开Plus级油泵阀门并提示加油机已待命的信息;

顾客从自动加油机箱上取下加油器喷头;

自动加油机计价器显示油料的单价和初始的总价;

顾客将自动加油器喷头插入油箱口后按下喷头开关;

自动加油机的油量表和计价器分别同步显示出油量和总价;

顾客关闭喷头开关后将喷头放回机箱;

自动加油机的油泵停止工作同时打印收据;

自动加油机提示顾客取走收据;

自动加油机提请顾客选择付款方式;

⑵列出特殊的处理脚本

主要内容有:

被忽略的输入顺序;

最大值与最小值;

重复数值;

⑶出错处理脚本

无效值;

故障响应;

可以对上述的自动加油机编制出如下的脚本:

顾客将信用卡插入自动加油机的信用卡插口;

自动加油机验核信用卡帐号后未予以认可;

自动加油机提示顾客信用卡已失效;

②标记事件

对脚本细致分析之后选出所有的外部事件。

外部事件通常包括有信号、输入、命令、中断等内容,但不包含内部的计算步骤。

自动加油机系统的事件可以在上述的常规处理脚本内标记如下:

自动加油机打开Plus级油泵阀门并显示加油机已待命的信息;

同理,对自动加油机系统的出错处理脚本亦可标记出下述的事件:

自动加油机校验核信用卡信息后未予以认可;

③为每个脚本绘制事件流图

根据对象模型和上述脚本便可以绘制出事件流图。

故而自动加油机系统的常规事件流图如下图所示:

而与出错处理脚本相对应的事件流图则如下图所示:

④建立状态图

所有的事件的终点是一个对象,而状态则是两个事件的间隔。

仍以自动加油机系统为例,按下述步骤绘制状态图:

⑴绘制常规处理状态图

⑵绘制加入出错处理后的状态图

(见下页图)

⑶绘制加入了作用和活动名的状态图

检查一致性

当分立类的状态图制作完成以后,必须从整个系统的角度检查所有概念的一致性。

如事件的收发对象是否一致、继承时出现的并发是否平衡等。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2