Astah画类图——第八周作业

使用Astah画UML类图经验总结

  从学习需求工程与UML开始,就开始接触到Astah这款软件,但是当时完全是为了对UML各种图的了解加深才使用了这款软件。当时画图,都是完全凭借自己想,并没有考虑实际情况,而且画的图都是很简单的,甚至有些图是已经给定的,只要在软件上再画一遍来了解软件的使用。所以当时,对与这款软件并没有很好的使用。在最近进行软件项目管理的时候,需要画类图,我再次使用了这个软件。由于这次的工程涉及的类很多(和我之前遇到的相比),所以画了比较长的的时间,我也从这个软件中,摸索到了一些我以前没有发现的东西,在此分享给大家。

Astah的简单介绍

  首先简单介绍下Astah。Astah在官网http://astah.net/上就直接下载到。进入官网,点击右上角的Downloads如图1所示,就可以看到Astah的各种版本了,其中Community版本是免费使用的,我使用的就是这个版本。如果你是个学生也可以Astah for Student,但是需要申请,而且需要Academic Email Address(学术邮箱),我个人认为比较麻烦。但是Community版本版本有些功能是不能用的,这在画图中有时候会很麻烦。 Astah的安装也很简单,就是最基本的软件安装方法。

图1 Astah官网界面

  安装完成后就可以使用了,点击进入Astah,最开始出现的界面如图2所示,这里有各种可供选择的图,可以根据自己的需要选择不同的图例。当然你也可以在菜单栏的Diagram中选择要建的图如图3所示。

图2 Astah主界面

图3 Astah主界面上选择Diagram

Astah中画类图

  使用上面介绍的两种方法的任意一种进入Class Diagram中的画图界面,如图4所示。

图4 Class Diagram界面

画图的要了解的内容:

1、将鼠标放在图4所示的可选图标上,可以看到该图标代表的意思
2、图标右边带小三角形的可以点击,出现多个备选图标
3、关于表示关系的图标,只有关联的实体被画出之后才能使用
4、选择图标,然后在画图区域点击就可以将想要画的图给显示出来
5、当选择了表关系的图标后,想要取消可以点击箭头,如图4所示。

画图的经验总结

1、在类(class)或接口(interface)中快速添加新的attribute(属性;变量)或者 operation(操作;方法)。

  一般情况下添加方法,在绘图区建立一个类或者接口时,将鼠标放在要添加属性或者操作的类或者接口上会发现有一个黄色菱形和绿色矩形出现,如图5,图6所示。点击菱形和绿色矩形会分别添加新的属性和操作。

  

图5 Class添加属性和操作                图5 interface添加属性和操作

  但是这样,如果该类或接口的属性或者方法很多时,每次都要用鼠标来点击这两个按钮,然后再移到刚刚添加的属性或者操作的位置进行编辑,显然是很麻烦的。这个时候其实一个回车键就可以解决这个问题。当现在的属性编辑完确认后(以类为例),这个时候该属性周围有四个圆圈,如图7所示,这个时候按回车键就可以进入下一个属性的编辑,如图8所示。同样添加操作的方法也是一样的。在接口中添加方法和操作的方法也是一样的。

  

图7 快速添加属性1                图8 快速添加属性2

2、属性类型、方法返回类型、方法参数类型的编辑

  在Astah中属性类型、方法返回类型、方法参数类型都是写在属性、方法、方法方法参数的后面,并且使用冒号(:)隔开。如下所示是类图中的一个方法,该方法的返回值是PageResult,访问权限是pubulic的。其中三个参数:queryHelper,pageNo,pageSize的类型分别为QueryHelper,int,int。

  + getPageResult(queryHelper : QueryHelper, pageNo : int, pageSize : int) : PageResult

似乎每个都要自己手动输入,是不是觉得很麻烦。但是我画了几个类之后,还是发现了一些东西。
(1)属性和方法参数的类型默认都是int
(2)方法的返回类型默认为void
(3)方法的访问权限默认为public
(4)属性的访问权限默认为private。
所以如果你的要编写的恰恰就是默认的值的画,其实你可以不用写,系统就能够自动帮你加上。而且你在输入的时候,也会像在eclipse上编写java一样,给你一些提示,你可以直接选择,也可以自己按“Alt+/”看到提示。当然你也可以在下图所示的红色方框区域对属性,操作等进行编辑,我个人认为还不如自己在图形上输入方便。

图9 属性操作编辑区

3、接口和类的互相转换

  接口转换为类:将接口上面的<>删去即可;
  类转化为接口:选中该类或者将鼠标光标放在该类上,右击选择“Add Stereotype”并在出现的编辑框类输入interface,如图10所示。按回车键完成。
  转化完成后会看到右边的树状结构图区域相应的图标也发生了改变。

图10 类转化为接口

4、删除

  删除分为“Delete from Model”和“Delete from Diagram”。前者是彻底删除了,图中所有相关部件都会删除,而后者只是删除当前图标。

5、将某一自定义类的类型的参数类型全部改掉

  这一部分的意思是,比如你自己写的两个类,比如类1,类2,把本应该是类1类型的参数或属性类型全部写成了类2,而实际上类2是一个无用的类,完全可以删去。这个时候肯定不能将类2直接从模型中删去,直接删去的画,以类2为类型的参数类型都会变成默认值,这时候如果类很多,你再想全部改成类1就会很困难了。
  这个问题在professional版本的Astah中就很好解决,点击Edit->search on Diagram查找类2,然后将类型全部改为类1就好了。
  但是在Community版本的Astah中并没有这个功能。这个时候想要保证全部都改正过来了,可以点击树状结构区删除类2,如果diagram中还存在类2的话,系统会给出提示,如图11所示不存在的话就可以直接删除了。但是比较麻烦的是还是需要自己人工去寻找这些参数,并改正过来。

图11 图中存在的对象被删除时

  以上就是我这次在画图中的一些经验,可能有些都东西一时没想起来,后期想起来的画或者有新的发现也会及时的更新。当然这些东西只是我自己总结出来的,可能存在一些问题

时间: 2024-10-12 18:39:53

Astah画类图——第八周作业的相关文章

2017-2018-1 JAVA实验站 第八周作业

2017-2018-1 JAVA实验站 第八周作业 团队分工 UML 用例图 类图 活动图 状态图 工具选择 windows系统自带的画图软件 ProcessOn

2018-4-29 第八周作业

2018-4-29 第八周作业 网络攻防环境搭建 第八周作业: =网络攻防环境搭建 教材学习: 本次介绍了linux基本架构,Linux的远程攻防技术,Linux系统结构. 具体可以参考一下链接. =linux基本架构 =linux系统结构 kali视频课: SET工具的使用 嗅探欺骗,中间人攻击: 原文地址:https://www.cnblogs.com/nalanruntu/p/8970433.html

vscode用yuml画类图

vscode用yuml画类图 最近在找画类图的工具,发现vscode一款插件很好用,还支持markdown.vscode插件中直接搜索yuml安装即可. 文件后缀.yuml. 文件开头第一行这样写// {type:class},大概是表示类图的意思,不写会报错. 依赖 依赖关系在yuml中用"[A]1^*[B]"来表示 // {type:class} [A||A();Function(B b)]1-.-*>[B] 关联 关联关系在yuml中用"[A|B*b;|]1-*&

软件工程_东师站_第八周作业

一.PSP Date Type Job Start Interrupt(min) End Total(min) 20160417 助教 黄金点 20:00 5 21:00 55 20160418 助教 黄金点 19:00 12 21:00 108 20160419 助教 黄金点 18:45 100 23:00 155 20160420 助教 团队作业 10:00 35 11:20 45 20160425 结对编程 四则运算 19:00 5 19:30 25 ? 二.进度条 ? 代码行数 博客字数

软件项目与过程管理第八周作业

内容:软件项目与过程管理课程内容总结 经过八周时间的学习,软件项目与过程管理课程已经逐渐接近了尾声.通过这八周的学习,我对软件项目与过程管理课程有了更深的理解. 一.关于团队项目. 团队项目是本次软件项目与过程管理课程中最重要的一部分.我们团队项目是作业管理系统.在项目开发的整个过程中,我们在项目经理的带领下,项目团队的每一个成员团结合作.相互沟通,团队成员之间相互学习彼此的优点和技术,在每个成员的共同努力下,基本完成了此次软件开发项目. 通过这次团队项目, 我的总结如下: 1.在项目的开发过程

2017-2018-2 20179215《网络攻防实践》第八周作业

<网络攻防实践> 第八周 学习总结 一.第八章教材内容总结 Linux 操作系统简介 Linux 系统特点: 兼容UNIX :API 兼容,管理命令和各种工具: 源码开放 支持各种硬件平台,支持多CPU Linux 平台上存在大量的应用软件,以及应 用开发工具 多种不同发行版: RedHat(RHEL,Fedora, CentOS, -),Ubuntu,Debian, - 2.Linux 操作系统: 不是微内核系统,但具有某些微内核特征 Intel 版本:i386 的保护模式,特权级 内核态(

画类图的使用工具----转载

StarUML是一种生成类图和其他类型的统一建模语言(UML)图表的工具.这是一个用Java语言描述的创建类图的简明手册. StarUML(简称SU),是一种创建UML类图,并能够自动生成Java的“stub code” 的工具.SU也可以做JAVA逆向工程,以产生相应的UML图表. 在本教程中,我们将使用SU设计一个pizza饼.执行下列步骤,可以创建如下面所示的UML图.SU可以生成反映类结构的代码,而不是任何对象的具体行动.因此,在使用SU创建图表后,你会为此stub code添加剩余的功

软件过程与项目管理第八周作业

软件过程与项目管理第8周作业 关于未来实体商城会不会消失的问题 现在网上购物.电子商务越来越流行.普遍,极大的方便了大众的生活,同时也给实体店带来巨大的压力.尽管如此,我认为实体商城不会有消失的那天. 不管未来物流达到如何发达的程度,实体商城仍然有其不可取代的价值.下面就举几个例子: 比如说服装店,虽然说在网上买衣服可以足不出户,也不用考虑天气.但对于很多女孩子来说,逛街(绝大部分是在逛服装店)绝不是为了单纯的去买衣服,也有很多人很享受逛的这个过程,试衣服的过程,或者和同伴消磨休闲时间,促进感情

20170908工作日记--UML画类图、HTTP协议、Volley源码走读

随手搜了一下,Android studio居然能够自动帮追我们生成UML的类图,简直太棒了http://www.gcssloop.com/course/UsePlantUMLInAS(Win),具体做法博客地址. 试了一下并不是根据Java文件自动生成的,而是需要自己写dot语法的相关代码,效果图如下,遂放弃 1.UML绘制类图 使用在线网站 https://www.processon.com/ 进行类图绘制.掌握基础绘制,如接口实现,继承关系等. 类之间的几种关系: 1.泛化--子类和父类的继