UML课程作业要求绘制十种UML图,选择Enterprise Architecture作为绘图工具,每次绘制图都要上网找教程,感觉十分麻烦,而且有些图没有找到具体教程,靠自己摸索找到了绘制方法,现在总结一下使用Enterprise Architecture如何绘制这十种图,方便大家使用。(写完博客后发表发现图都没了,坑爹的CSDN,大家按照文字描述的步骤也能顺利完成)
首先这十种图分别是:
概念类图,活动图,状态机图,用例图,顺序图,通讯图,设计类图,包图,组件图,部署图。
先来介绍一下前五种图的绘制:
EA的安装应该不用介绍吧,没有任何需要配置的东西,是傻瓜式安装软件。
概念类图:
1.File->New Project,新建一个project,输入project的名字后首先选择模型
选择Domain Model,并确定
2.打开Domain Model,看到如下图:
删掉上面的提示标签,否则最后生成的图中会有多余的标签。
画图用到的工具在左侧栏中,其中class栏是画图时用到的元素,class relationship是元素之间添加关系的标签,common类基本不用
3.绘图方法:
首先是class的添加:点击左栏中的class标签,在绘图区任意位置点击,此时自动弹出一个可以完善类信息的对话框,在概念类图中比较常用的是常规栏里的名称信息和详细信息栏里的添加变量,这是概念类图要求的描述类的两个方面。在详细信息栏里点击变量可添加变量,在弹出的对话框中可以完善变量的信息,包括可见性,类型等等,想要完善的信息都有,无须赘述。
关联的添加:在class relationship中可以添加类之间的关联,选择第一个工具Associate,连接有关联的类,连接完成后,在两个类直接产生了一条直线,双击直线,弹出Associate属性对话框,可以完善关联的属性信息。在常规栏中可以添加属性名称,定义关联的方向,以及样式,所谓的样式即连线的形状。另外概念类图常常需要定义源类和目的类的数目对应关系,在Source Role和Target Role栏中可以定义约束,在约束中填写个数限制即可。
活动图:
1.File->New Project,新建一个project,输入project的名字后首先选择模型
注意这里活动图的模型名称为Dynamic Model,而在选择模型中默认显示的模型是common型的,因此需要在选择类型哪里改为 所有:
打开这个Dynamic View,左栏中工具变化为活动图需要的工具:
3.绘图方法:
泳道的绘制:要注意的是绘图用到的泳道不在工具栏中(不知道为什么这么设置),在绘图区单击右键,选择泳道与矩阵,弹出如下对话框:
点击新建可以再添加用到,注意新添加的泳道是直接向右排在原来泳道旁边的,而且是紧邻的,边界重合的,点击修改可以修改泳道的信息:
其他工具在左栏中应有尽有,需要任何类型结点都有,自取即可,需要修改节点信息则均是双击结点在弹出的对话框中进行修改,无需赘述。
状态机图:
这是我觉得EA比较坑爹的地方,很多图的绘制都藏起来。
1.File->New Project,新建一个project,输入project的名字后首先选择模型,这里选择Use Case Model即可
2.选择菜单栏中的Project:
选择其中的Add Diagram,弹出如下对话框:
左栏中选择第二项UML Behavior,在右侧栏中现则State Machine:
这样,就完成了状态机图的创建
3.此时左栏中是绘制状态机图需要的工具:
要用到的各种结点在左栏中均有,根据需求自取即可
用例图:
File->New Project,新建一个project,输入project的名字后首先选择模型,这里选择Use Case Model即可
打开Use case model这个图,左栏中就有相应的工具,即可绘图
顺序图:
1.File->New Project,新建一个project,输入project的名字后首先选择模型,这里选择Use Case Model即可
2.选择菜单栏中的Project:
选择其中的Add Diagram,弹出如下对话框:
左栏中选择第二项UML Behavior,在右侧栏中现则Sequence:
这样,就完成了顺序图的创建
3.此时左栏中是绘制顺序图需要的工具:
要用到的各种结点在左栏中均有,根据需求自取即可
注意顺序图中的message有的要求是一个返回值,箭头是虚线,此时双击message连线,在消息属性中生命周期底下是否返回进行勾选,则消息变为虚线
通讯图:
感觉这个图的创建是最艰辛的,可能EA是从建立工程的角度出发,所以如果想单独绘制某个图就比较麻烦了。
1.File->New Project,新建一个project,输入project的名字后首先选择模型,这里选择Use Case Model即可
2.此时左栏中是Use Case Model对应的结点类型,点击左栏最上方More tools,选择communication,此时左栏工具变为通讯图要使用的结点
3.注意此时左栏中的工具虽然是绘制通讯图的工具,但是实际是无法进行通讯图绘制的,因为此时在各个对象之间的连接仍然是Use Case Model的连接,你会发现连接两个对象之后是无法在属性中添加消息的,也就是无法添加通讯图要求的那种箭头+消息序号+消息内容那种类型的信息。
4。此时在右栏选择刚刚创建的通讯图中的对象,比如选择Actor1,右键点击,选择添加->interaction->with communication diagram,此时在Actor1中添加了一个真正可用的通讯图模型。
5.点开这个名为Interaction的通讯图,将之前在Use Case Model中建立好的各通讯图元素依次直接拖进绘图区,注意在拖动Actor1时都会自动弹出一个名为粘贴原件的对话框,在粘贴原件到图表中选择“作为原件的Instance”也就是第二项,点击确定,相应的对象就被粘贴到绘图区了。
6.此时创建连接,选择左栏第一个连接工具,连接相应对象,连接完成后,在连接上点击右键,选择Add message from:Source to Target,即可添加消息!可以看到,添加的效果是出现了一个带消息方向箭头,消息序号,消息内容的标签,而如果在第二步中创建连接,是不能添加这种标签的,而这种标签是通讯图必不可少的元素。
7.注意创建消息的顺序,最好按照顺序图的活动顺序进行添加,因为消息的标号是根据消息创建顺序自动添加的,也就是序号顺序为:1,1.1,1.2,1.3,等等
也就是说某个消息序列需要按照顺序创建,小标号是无法修改的。
8.那么如果想创建新的消息序列该怎么办呢?只需要双击新建的标签,注意是标签不是连接,在消息属性的序列表述中选择开始新组即可。
设计类图:
1.File->New Project,新建一个project,输入project的名字后首先选择模型
选择Domain Model,并确定
2.打开Domain Model,在左栏中选择class,并放置在绘图区,双击该class,弹出设置类属性的对话框,可以在常规中设置类名,在详细信息中添加类的变量和方法,并可以对属性和方法的一切信息进行修改。
3.类之间的关联用第一个链接工具,链接后双击链接可以在常规中设置链接的名称和方向,可以在Source Role和Target Role中设置个数约束。
包图:
1.File->New Project,新建一个project,输入project的名字后首先选择模型,选择Domain Model,并确定
2.包的建立选择左栏中的package,输入名称后在弹出的新建图表中选择Package,然后就生成了相应的包,可以向包中添加类,接口,等等元素,在绘制图标时按需选择即可
组件图:
1.File->New Project,新建一个project,输入project的名字后首先选择模型,选择Component,并确定
2.此时左栏中是组件图图对应的工具,在绘制图标时按需选择即可
部署图:
1.File->New Project,新建一个project,输入project的名字后首先选择模型,选择Deployment,并确定
2.此时左栏中是部署图对应的工具,在绘制图标时按需选择即可
PS:在连接不同的类时常常会发现连线方式不理想导致图片效果不理想,能不能手动调节连线呢?你会发现直接拖拉根本不行。此时选中连接,点击右键->线条样式->Tree-Style Vertical(Horizontal),此时线条变成几段的形式,然后再选中该连接,点击右键->线条样式->自定义线条,就可以按照你想要的连接方式进行拉拽了,这样画出的图要美观的多。
用Enterprise Architecture绘制十种UML图,布布扣,bubuko.com