【TTool学习笔记】1:AVATAR建模方法(分析相关)

在TTool设计面板上右键,有选择New xxx Methodology,其中包括:

  • DIPLODOCUS,用来做嵌入式系统的划分
  • AVATAR,用来设计嵌入式软件
  • SysML-Sec,用来设计安全的(safe and secure)嵌入式系统

这篇了解一下其中的AVATAR建模方法中,和分析相关的一些图。

1 方法论(Methodology)

最开始要创建一个New AVATAR Methodology大面板,即AVATAR方法论的面板,这个面板可以整合其它的一些建模面板。
【TTool学习笔记】1:AVATAR建模方法(分析相关)_第1张图片
这里能清楚的看到整个流程思路,先是要给出假设,然后建立需求,从需求上又能得到性质和分析,然后是设计,最后是得到原型。

所有的面板都可以改名,用户后面创建各种类型的其它面板时,可以添加到这个方法论中对应于此类型的的块来,比如Assumption大面板就可以添加到上图中的Assumptions块里面。

感觉TTool对用户操作的一致性做的比较粗糙,如果添加进去的面板后面被改名了,这里不会自动改名,反倒是打开了之后自动被移除了。

2 假设图(Assumption Diagram)

添加New Modeling Assumption Diagram可以建立一个Assumption的大面板,在它下面再New AVATAR Modeling Assumption Diagram可以创建一个AVATAR相关的的子面板,用来画和AVATAR Assumption相关的的图。

添加建模元素和连线的操作都可以在子工具栏上进行,每种图都可以用Add a comment添加评注,然后用Comment connector把评注连接到块上,就起到一个注解的作用。

最主要的的是Assumption块,用来添加假设块,编辑它可以进行如下定制:
【TTool学习笔记】1:AVATAR建模方法(分析相关)_第2张图片

  • Type,假设的类型,分为系统假设(System Assumption)和环境假设(Environment Assumption),一般可以单独创建放这两种假设块的面板,而不用绘制在一张图里
  • Name,这个块的名称
  • 用自然语言描述假设
  • Durability:持久性,分为永久的(Permanent)和临时的(Temporary)
  • Source:源,分为直接用户(End-user),参与方(Stakeholder),建模方(Model creator)
  • Status,地位,分为AppliedAlleviated
  • Scope,作用域,分为语言(Language),工具(Tool),建模活动(Modeling activity),验证(Verification)

另外可以添加Diagram referenceElement reference,分别用于引用其它的面板(或者说是Diagram)和AVATAR建模元素。

【TTool学习笔记】1:AVATAR建模方法(分析相关)_第3张图片

连线的类型有:

  • Composite,合成,将一个复合命题分解成几个基本命题
  • Versioning,版本化,阐明对原始模型的更改
  • Impact,影响,这个是有向的连线,用来表达一方对另一方有影响
  • Composition connector,组合连接,用来连接Diagram referenceElement reference

3 需求图(Requirement Diagram)

需求图从New Requirement Diagram->New AVATAR Requirement Diagram创建,需求表达的是系统要达到的能力,或者要满足的条件,可以是功能方面的,也可以是性能方面的。

需求块可以进行如下定制:
【TTool学习笔记】1:AVATAR建模方法(分析相关)_第4张图片

  • 需求的自然语言描述
  • ID,需求块的编号
  • Type,需求的类型,分为功能性的(Functional),非功能性的(Non-functional),性能(Performance),隐私(Privacy),保密(Confidentiality),不可抵赖(Non-repudiation),访问控制(Controlled access)或者叫授权(Authorization),可用性(Availability),完整性(Integrity),数据源认证(Data origin authentication)或者叫数据源鉴别,新鲜度(Freshness),商务(Business),参与方需求(Stakeholder need),其它(Other)
  • Risk,风险级别,分为低中高
  • References,引用的建模元素

功能性需求通常可以通过用例图来表达,非功能性的需求可以用需求块中的自然语言来描述。

除了需求块,还可以添加Property块,但是它只能设置名字。另外还有通用的Comment块和Element Reference块,用来加注解和引用其它建模元素。
【TTool学习笔记】1:AVATAR建模方法(分析相关)_第5张图片
连线的类型有:
-Composition,组合,将需求块层次组合

  • DeriveReqt,不同抽象层面的同层次需求
  • Copy,连接主从需求
  • Refine,连接的需求块一个是另一个的精化
  • Verify,用来连接一个建模元素到需求,表示它验证了这个需求
  • Satisfy,从建模元素的Element Reference块连向需求块的,表达概念满足需求

4 用例图(Use Case Diagram)

用例图从New Analysis->New Use Case Diagram创建,用例图用参与者、用例等建模元素来建模系统的使用场景。

用例图比较熟悉,可以点Add a border添加边界,Actor添加参与者(人形的),Actor (box format)添加矩形的参与者,Add use case添加用例。
【TTool学习笔记】1:AVATAR建模方法(分析相关)_第6张图片

连线的类型有:

  • Actor <-> use case,连接参与者和用例
  • <> relationship,包含关系,连接功能和被它包含的子功能,即"has a"
  • <> relationship,扩展关系,是"is a",一般是扩展功能
  • specification,泛化关系,是"is a",要有继承关系

5 活动图(Activity Diagram)

活动图从New Analysis->New Activity Diagram创建,本质上就是一个流程图,表达系统执行的每一步。
【TTool学习笔记】1:AVATAR建模方法(分析相关)_第7张图片

这个基本可以当成一个带通信的状态机来用,它有单独的选择(Choice)建模元素,也有输入信号(Accept signal)和输出信号(Send signal)。一个Choice元素上可以支持三条分支,分支上要书写Guard条件。

6 序列图(Sequence Diagram)

序列图从New Analysis->New Sequence Diagram创建,表达流程关系。最基本的可以创建实体(Instance),同步消息(Synchronize message),异步消息(Asynchronous message)。实体上可以设定为是一个参与者实体,这样上面就会出现一个小人。连线上的消息可以编辑,但是仅仅是一个字符串。
【TTool学习笔记】1:AVATAR建模方法(分析相关)_第8张图片
还有一个重要的建模元素就是共区(coregion),它绘制一个能沿着实体上下滑动的白框,共区内的事件语义上是无序的,即便绘制的时候有上下关系。

序列图支持单独添加Action stateGuard,以及一些和时间相关的建模元素,这些时间相关的元素也可以在序列图实体上沿着轴线滑动,主要包括:

  • Timer setting,可以设置计时器的时刻和持续时间
  • Timer cancellation,表示取消计时器
  • Timer expiration,表示计时器到期了
  • Timer interval,计时器间隔,可以设置最小最大延时
  • Absolute time constraint,绝对时间间隔,可以设置最小最大时间间隔

你可能感兴趣的:(#,TTool,TTool,建模,嵌入式,AVATAR)