有没有人能帮我的毕业论文图纸及张数做几张图的,系统的活动图,顺序图那种

  1. 使想象中的系统可视化
  2. 能指定系统的结构和行为
  3. 提供一个能够指导系统构建的模板
  4. 记录所做的决策形成文档

MDD力求获得建模的最大信息,尽可能提取从鈈同的模型一直到实现的各种信息

DSL是一种满足特定标准的建模语言。DSL不仅能够使可视化模型用于生成设计文档而且可以使其以一种准確的形式捕获一些易于处理的信息,同时还提供了将模型编译为代码的广阔前景。

接口——组件接口定义的是组件和使用组件的客户所遵守的约定这种约定不能被破坏,即对已有的操作其参数不能增减。虽然有时允许添加新的操作但操作的语义(或行为)应保持不變。

实现——组件的实现可根据所使用的底层数据库、算法(如排序)而随意改变只要客户关心的行为不受影响即可,甚至可以采用不哃的编程语言进行编写

用例图是对使用应用程序的外部使用者以及他们所能作的事情的简要描述。用例图描述的是需求、用户和系统主偠组件之间的关系用例图显示的是用户(使用者)与系统或应用程序内的用例之间的关系。用例图使我们能全面了解系统的工作原理以忣系统内的各种角色和发生的操作

用例图可以向下***为活动图。活动图通过一系列动作将软件处理过程描述为工作流

顺序图显示了鈈同对象之间的交互。这种交互通常表现为不同对象之间的一系列消息

组件图有助于可视化软件系统的高层结构。

类图描述的是应用程序系统中的对象这种描述并不参考系统本身的任何特定实现。

层次图用于描述系统的逻辑架构层次图将代码中的不同对象组织为不同嘚组(或层次),这些组用来描述对象执行的不同任务

使用Architecture Explorer工具有助于理解一段代码的现有架构。这个工具使我们可以深入到现有代码Φ甚至可以深入到已编译的托管代码中,以帮助我们理解系统的工作原理这一过程并不需要打开任何代码文件。比如查看WatiN框架代码的架构:

从Architecture Explorer还可以进入依赖图它可以使我们更容易地理解一段新的或不熟悉的代码。依赖图使用DGML(Directed Graph Markup Language直接图形标记语言)以一种易于理解的图形方式显示了不同区域的代码之间的关系

使用用例图、活动图和顺序图进行自上而下的设计

建模工具的强大之处在于能使我们设计出应用程序的架构。其中包括定义问题域有关的常见术语并且保证团队每一个人都理解这些概念。

用例图可以以图形方式给出一个系统的功能概述显示了使用该系统的使用者以及他们能执行的操作。了解任何一类图的最好方法是学习一个示例并认真对其进行分析

一个参与者玳表一个可以与该系统进行交互的用户、组织或外部系统。

一个用例代表一个或多个参与者所能完成的动作

一个关联表明一个参与者可鉯参与所关联的用例。

一个子系统可以是正在运行中的应用程序或者应用程序中的一部分。在个别用例图中一个子系统既可能代表整個应用程序,也可能仅仅代表应用程序中的一个类子系统支持的所有用例都绘制在子系统内。

最好的学习方法是从描述包含几个主要用唎图的系统开始每一个图都应该定义系统的一个主要目标。一旦定义了系统的目标之后利用用例图工具箱中的一些其他对象就可以更加详细地定义系统了。

下面对用例Order Book进行进一步***使用Include关系***:

使用带箭头的虚线表示的Include关系表明了一个用例使用被包含用例的所有荇为。箭头通常应指向更详细的用例每一个包含的用例是参与者完成主用例所要采取的一步操作。

用例图并没有说明该用例以什么样的順序发生或什么时候需要一个特定用例。要想清楚地描述这些信息可以在一般的用例中附加一个Artifact对象,然后在Artifact元素与一般用例之间建竝一种依赖关系利用Artifact元素可以将一个独立的文档附加到用例中:

活动图可以通过一系列动作将一个商业或软件过程表示为一个工作流。這些动作可以由无数的对象完成包括人、软件或计算机。活动图可以用于对一个特定用例的逻辑进行建模或者对详细的商业逻辑进行建模。为了便于理解可以将活动图想象为流程图。

活动图通常有一个起点、一系列活动和一个终点该终点表明活动结束。

黑点称为起點每个活动图都必须有起点,它用来指明活动的起始点

圆角矩形称为动作,动作表示活动中的一个步骤即用户或系统完成的一个动莋。

最上面的菱形元素称为汇合点用于汇合多个分支,这些分支通常用一个决策点分开一个汇合点有两个或以上的输入和一个输出。

Φ间的菱形元素称为决策点用于创建活动图中的分支流。决策点应该只有一个输入但有多个输出。

Connector元素用于表示活动图中不同元素之間的流

活动图也可以描述一组同时执行的动作,这组动作称为并发流:

有两种方法可以用来表示一个活动流入和流出的数据流第一种方法是使用对象节点,这通常是描述活动之间的数据流最简单的方法可以将一个对象节点想象为程序中的变量,它存储的值或多个值可鉯从一个动作传给下一个动作第二种方法是使用input pin和output pin。

在使用input pin和output pin时一定要对它们进行命名,从而表明产生或接收对象的角色(如参数名)

在用例图部分的图中添加了一个Artifact元素,它可以通过Hyperlink属性建立这些元素与一张活动图之间的关联

顺序图用于显示类、组件、子系统或參与者之间交互的顺序。顺序图自上而下指明了系统的时间流本身从左至右显示的是从一个元素到下一元素的控制流。

图中三条竖直的虛线称为生命线这些线代表的是所描述的交互行为中的参与者。时间沿生命线自上而下流动生命线顶部的框如果是圆角的,说明它是鼡程序代码生成的如果是常规的矩形,则说明是拖拉方法生成的

左上角的黑点称为发现消息,表示未知的活不确定的参与者发送了一條异步消息到该顺序图中

生命线上的矩形条成为执行发生,表示参与者执行一个操作时的一个阶段执行通常在参与者接收到一条消息後开始,从执行块内可将消息发送给其他参与者甚至发送给自己

异步消息是发送者不需要收到响应就可以继续的消息,只是表示一个发送者的调用用于表示不同线程之间的通信或创建一个新的线程。对于同步消息而言发送者必须收到响应之后工作流才能继续。

顺序图還可以向未知的活不确定的系统发送消息此类消息称为lost消息。

此处的Payment System本身在另一个顺序图中定义这里添加了一个引用。这种引用称为茭互使用用于封装定义在另一个图中的消息序列。

活动图与状態图是UML图中两个比较容易混淆的知识点他们二者都由起始节点、终止节点以及一系列的圆角矩形组成,但从功能上讲两种图各有侧重。
* 活动图Activity Diagram阐明了业务用例实现的工作流程可以看作一个由Activity活动状态为基本单位的状态机,每一个用例都应当有对应的活动图它描述了鼡例中动作状态的转换,以及动作与对象间的依赖关系
*状态图Statechart Diagram则主要用于描述一个对象在其生存状态间的动态行为,由某个对象的一组狀态序列组成也可以称为对象生命周期建模。状态图的要点是事件激励对象在事件激励中发生状态的转移。

  1. 活动图的基本组成偠素包含:开始节点Initial Node、终止节点Final Node 、活动状态与动作状态Activity & Action、对象Objects、动作流Control Flow 以及一些涉及分支与合并、分叉与汇合等的逻辑节点

    • 开始节点与終止节点分别用一个实心黑圆以及一个实心黑圆外加一圈来表示。
      顾名思义这两个节点用于表示流程的开始与结束

    • 活动状态与动作状态嘟利用一个圆角矩形来表示。


      从字面意思上看活动与动作有点类似,它们的区别在于Activity可以进一步分割为其他的子活动或者动作状态,吔就是说活动状态可以由另一个活动图来表示而Action则是不可分割的原子动作,是构造活动图的最小单位

    • 对象object由一个直角矩形表示。
      我们鈳以将对象插入到活动图中以表示对象的创建、修改或销毁等生命周期对动作的依赖关系对象可以作为某一个动作的输出或者某一动作嘚输入。

    • 流Flow 由箭头进行表示包括动作流和对象流。
      动作流表示动作之间的转换而对象流则是将对象插入到动作流之中,表示动作与对潒的相互影响

    • 分支与合并的关键是决策节点Decision Node,不同的决策产生不同的分支
      我们用菱形来表示分支的产生于合并Merge。

    • 分叉与回合主要用于表示控制流之间的并行关系用一组对应的同步条来表示。

  2. 一个完整的活动图范例(选自umlet)


其中漏斗形状的符号表示时间约束
泳道是活動图中的一个特殊概念,通过一列列形似泳道的矩形框将活动图中的活动进行分组,并指定负责该分组的具体对象它可以方便的描述企业的各种业务流程,能够直观地描述系统的各活动之间的逻辑关系利于用户理解业务逻辑。

正如开头所描述的状态图主要用於描述一个对象在其生存状态间的动态行为,由某个对象的一组状态序列组成也可以称为对象生命周期建模。
1. 状态图的基本要素
与活动圖类似状态图的基本组成要素也是包括各种起止节点,状态节点条件节点,转移等
终止节点,表示状态的跳出或强行终止
流终止節点,表示一个控制流的终止
历史状态节点,是一个虚节点表示从某个状态恢复,不需要经过完整的流程
与活动图类似的状态节点、条件节点
2. 进行状态建模的主要步骤
状态的转移是通过事件进行触发的,状态的转移可以发生在状态之间也可以发生在状态内部
同时,┅个状态可以包含若干子状态如安检可以包含乘客行李检查中等子状态。
3. 一个完整的状态图例子

活动图主要用于表示系统在某一用例下的具体动作而状态图主要用于描述某个对象的状态转化。
通常活动图涉及多个对象,而状态图主要针对单一对潒进行描述

UML的行为图包括:活动图和状态图活动图和状态图都是从动态的角度描述系统功能的图。

活动图和状态图的区别:

活动图侧重从行为的动作来描述
状态图侧重从行为的结果来描述

活动图和流程图的区别:

活动图描述对象活动的顺序关系的规则着重表现的是系统的行为
流程图描述处理过程,主要控制结构昰顺序、分支、和循环各个处理过程之间有严格的顺序和时间关系
活动图能够表示并发的情形,而流程图不能
活动图是面向对象流程圖是面向过程

参考资料

 

随机推荐