- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
六.用例分析与设计.doc
PAGE 1
PAGE 22
六.用例分析与设计
⒈目的和内容
·用例分析与设计用来描述系统内动作变化的时序过程;
·用例分析与设计的最基本概念是状态(State),状态将引出对象的值(Value)、事件(Events)和外界的刺激(Stimuli)等概念;
·用例分析与设计的表述工具是状态图(State diagram),每个类拥有一张用以表述其相应的动作责任和作用模式状态变化图;
⒉事件与状态
①对状态的认识
试阅读下述C程序段:
typedef struct Boolean
{ int b;}Bool;
void init(Bool x){x.b=0;}
void set_true(Bool x){x.b=1;}
void set_false(Bool x){x.b=0;}
int value(Bool x){return x.b;}
本例的状态变化可由下图表述:
②事件(Events)
一个事件是一个对象向另一个对象发出的独立的刺激信号。事件含有三个要素:
·事件是某一时刻发生的;
·两个以上的事件即可以是顺序的,也可以是并发的;
·每个事件具有一个的生成背景,可以将共同生成背景的事件构成一个事件类(层次结构);
例:
event(event attributes)
digit dialed(digit)
airline flight departs(airline, flight #, city)
③脚本(Scenarios)与事件流(Event traces)
·脚本是用来描述一个系统在特定运行时的事件的顺序;
·脚本即可以包括系统中的全部事件,也可以只描述系统的某些特地对象间的局部事件;
例:
caller lifts receiver
dial tone begins
caller dials digit(5)
dial tone ends
caller dials digit(5)
caller dials digit(5)
caller dials digit(1)
caller dials digit(2)
caller dials digit(3)
caller dials digit(4)
called pone begins ringing
ringing tone appears in calling phone
called party answers
called phone stops ringing
ringing tone disappears in calling phone
called party hangs up
phones are disconnected
caller hangs up
·事件流描述了事件发生的顺序及其发方和收方的对象。事件流可用事件流图表述;
例:同上例
④状态(States)
状态是描述对象间连接时的属性数值的抽象。
·状态具有区间;
·状态呈现在一个对象在接收到前后两个事件区间的间隔;
例:
⑤状态图(State diagrams)
由一个事件引起的状态的改变称为变迁(Transition)。状态图就是用来阐明由事件引起的状态的变迁的图形工具。状态图的基本成份是状态结点和事件方向线。其基本符号如下:
起始状态
?结束状态
事件方向线
状态结点
状态图依照事件顺序描述了相应的状态变化顺序,实际上也就是一个对象类的行为。一个类的所有对象都按照一个状态图变迁,但各自的状态值可以不同。
例:打电话的状态图(见下页图)
⑥条件(Conditions)
很多事件的发生是需要一定的条件的(如温度、压力、时间等)。条件通常具有一定的区间(但事件本身是没有区间的)。若一个引发变迁的事件包含条件,则称这个变迁为条件变迁(Guarded transition)。
⒊动作(Operations)
①基本定义
占用一定时间完成的一个活动(Activity)就称为动作。动作是与状态相联系的,既一个活动起自与之相联的一个状态的起点并止于与之相联的另一个状态的终点。
例:
如果存在一组活动的顺序,则其中的一个活动就会在引起状态改变的位置(箭头)终止。当一个对象接收到一个事件时所发生的一个立即的动作效果又称为作用(Action)。在状态图上常将作用和与其相关的事件放在一起。其通用的符号如下:
例:鼠标右键的一种击键行为
②状态图的折叠与展开(Nest State Diagram)
在实际应用中,状态图中的结点数和事件数可能是非常巨大的,已难以用一幅状态图来说明。需要对状态图中具有类似变迁的内容折叠为一个更抽象的状态及事件(即分层展开和折叠)。折叠状态图被称为高层状态图,仅把状态图中折叠部分单独展开后的状态图称为低层状态图。
例:(见下页)
此二者间的关系也可以描述成一
您可能关注的文档
最近下载
- ASMR简单介绍课件.pptx
- 瞭望&光大:2023商业银行数据资产估值白皮书.pdf VIP
- 2025年山西林业职业技术学院单招职业适应性测试模拟试题及答案解析.docx VIP
- 艾滋病合并肺孢子菌肺炎诊疗专家共识(2024年版).pptx VIP
- 2024年山西电力职业技术学院单招职业适应性测试模拟试题及答案解析.docx VIP
- 影视项目可行性研究报告.docx VIP
- 2024年山西职业技术学院单招职业适应性测试模拟试题及答案解析.docx VIP
- 十一人制足球规则.ppt VIP
- 中考语文阅读理解《石矶娘娘是什么岩石》含答案解析.docx VIP
- [特种设备高级考试]第四,五章 磁粉检测的器材和设备.pdf
原创力文档


文档评论(0)