您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 软件测试技术 > 测试用例 > 正文

UML实践 UML活动图和用例图解析

发表于:2019-01-14 作者:zengjibing 来源:CSDN
  本节就和大家一起学习一下UML实践中UML用例图和活动图。在使用UML的过程中,经常会用到UML图的问题,所以有必要对UML图进行深入的学习。下面是关于UML实践中UML图的详细介绍。
  UML实践--UML用例图和活动图
  面向对象的问题的处理的关键是建模问题。建模可以把在复杂世界的许多重要的细节给抽象出。许多建模工具封装了UML(也就是UnifiedModelingLanguage?),这篇课程的目的是展示出UML的精彩之处。
  UML中有九种建模的图标,即:
  用例图
  类图
  对象图
  顺序图
  协作图
  状态图
  活动图
  组件图
  配置图
  本课程中的某些部分包含了这些图的细节信息的页面链接。而且每个部分都有一个小问题,测试一下你对这个部分的理解。
  为什么UML很重要?
  为了回答这个问题,我们看看建筑行业。设计师设计出房子。施工人员使用这个设计来建造房子。建筑越复杂,设计师和施工人员之间的交流就越重要。蓝图就成为了这个行业中的设计师和施工人员的必修课。写软件就好像建造建筑物一样。系统越复杂,参与编写与配置软件的人员之间的交流也就越重要。在过去十年里UML就成为分析师,设计师和程序员之间的“建筑蓝图”。现在它已经成为了软件行业的一部分了。UML提供了分析师,设计师和程序员之间在软件设计时的通用语言。
  UML实践被应用到面向对象的问题的解决上。想要学习UML必须熟悉面向对象解决问题的根本原则――都是从模型的建造开始的。一个模型model就是根本问题的抽象。域domain就是问题所处的真实世界。
  模型是由对象objects组成的,它们之间通过相互发送消息messages来相互作用的。记住把一个对象想象成“活着的”。对象有他们知道的事(属性attributes)和他们可以做的事(行为或操作behaviorsoroperations)。对象的属性的值决定了它的状态state。
  类Classes是对象的“蓝图”。一个类在一个单独的实体中封装了属性(数据)和行为(方法或函数)。对象是类的实例instances。
  用例图
  UML实践中用例图Usecasediagrams描述了作为一个外部的观察者的视角对系统的印象。强调这个系统是什么而不是这个系统怎么工作。
  用例图与情节紧紧相关的。情节scenario是指当某个人与系统进行互动时发生的情况。下面是一个医院门诊部的情节。
  “一个病人打电话给门诊部预约一年一次的身体检查。接待员找出在预约记录本上找出最近的没有预约过的时间,并记上那个时间的预约记录。”
  用例Usecase是为了完成一个工作或者达到一个目的的一系列情节的总和。角色actor是发动与这个工作有关的事件的人或者事情。角色简单的扮演着人或者对象的作用。下面的图是一个门诊部MakeAppointment用例。角色是病人。角色与用例的联系是通讯联系communicationassociation(或简称通讯communication)
  角色是人状的图标,用例是一个椭圆,通讯是连接角色和用例的线。
  一个用例图是角色,用例,和它们之间的联系的集合。我们已经把MakeAppointment作为一个含有四个角色和四个用例的图的一部分。注意一个单独的用例可以有多个角色。
  UML实践中用例图在三个领域很有作用。
  决定特征(需求)。当系统已经分析好并且设计成型时,新的用例产生新的需求
  客户通讯。使用用例图很容易表示开发者与客户之间的联系。
  产生测试用例。一个用例的情节可能产生这些情节的一批测试用例。
  活动图
  UML实践中活动图activitydiagram是一个很特别的流程图。活动图和状态图之间是有关系的。状态图把焦点集中在过程中的对象身上,而活动图则集中在一个单独过程动作流程。活动图告诉了我们活动之间的依赖关系。
  对我们的例子来说,我们使用如下的过程。“通过ATM来取钱。”
  这个活动有三个类Customer,ATM和Bank。整个过程从黑色圆圈开始到黑白的同心圆结束。活动用圆角矩形表示。
  活动图可以被分解成许多对象泳道swimlanes,可以决定哪些对象负责那些活动。每个活动都有一个单独的转移transition连接这其他的活动。
  转移可能分支branch成两个以上的互斥的转移。保护表达式(在[]中)表示转移是从一个分支中引出的。分支以及分支结束时的合并merge在图中用菱形表示。
  转移也可以分解fork成两个以上的并行活动。分解以及分解结束时的线程结合join在图中用粗黑线表示。

 相关文章