前些日子整理文档,需要补充程序结构流程图,一直没有想到怎么样能够清晰直观描述清楚现在的解决方法,直到我知道了 UML 语言。最早对于 UML 的了解也只是停留在一本书上,他们开发使用 UML 分解任务,做成任务卡片,好分析开发时间。

现在才发现原来 UML 很强大。

StarUML 是个开源软件,画基本的 UML 图是基本够用了,而且可以保存工程以便后续修改,还可以自动导入现有工程进行分析,感觉用来辅助编写文档再合适不过了。

1.下载安装

网址:http://staruml.io/

安装选择评估就行

2.界面说明

基本界面可以被分为 6 块:

[1] 菜单栏

[2] 显示你已经打开的所有设计图

[3] 是绘图模块,鼠标选中,直接点到 [4] 上就可以放到画布上了

[4] 画布

[5] 是工程,右键可以添加删除设计图和模块

[6] 绘图模块属性,可以重命名和修改属性

软件自带工程:C:\Program Files (x86)\StarUML\samples 下

3.结构图

3.1.继承

class B extends A

使用 Generalization

3.2.实现

class A extends I

使用 Interface Realization

3.3.依赖

import A;

使用 Dependency,在 stereotype 属性中可以填写一些说明,比如 use,create 等。

3.4.连接

从上到下依次关系越来越紧密,分别是 Directed Association,Aggregation 和 Composition。

参考:http://developer.51cto.com/art/201007/209616.htm

4.时序图

水平方向列出所有对象,垂直方向从上到下表示时间增长。

各对象之间通过消息传递信息,消息包括同步和异步之分。

使用 CombinedFragment 可以表示逻辑,包括选择,循环,并行等。

参考:http://m.blog.csdn.net/blog/pashanhuxp/41982285

5.快捷键

5.1.导入工程

安装相应语言的工具,Tools->Extension Manager->Java->install

安装成功后 Tools 下就会多出你刚刚安装语言的选项。

Tools->Java->Configure 配置载入或生成代码的规则。

载入工程,Tools->Java->Reverse Code,选择你的工程,StarUML会自动分析。

5.2.格式

Format->…

连线样式:斜线「Ctrl+B」,直线「Ctrl+L」

文字颜色:Font->…

[工具]StarUML的更多相关文章

  1. Ubuntu 16.04安装UML工具StarUML 2

    StarUML 2是一个商业软件,但是没有时间限制,就像Sublime Text 3一样.而且具有跨平台,支持Mac.Windows. 这个软件曾经08年的时候在老D的博客上有推荐过,参考:http: ...

  2. 强大的UML建模工具——StarUML

    用例图: usecase          生成时序图,协作图,活动图等            生成的时序图:           反向工程以及生成代码:          类图:           ...

  3. UML工具-1-StarUML下载及破解

    UML工具-StarUML   下载地址   http://staruml.io/  

  4. Java程序员拥有这些工具,还怕干不出好活

    老话说,工欲善其事,必先利其器. 那么,作为编程人员,你都用过哪些“兵器”呢?你的”兵器“够”锋利”吗? 近期,有很多新朋友问,都有什么画流程图的工具,给推荐推荐? 索性,就静下来,好好梳理一下,从事 ...

  5. [Design Patterns] 3. Software Pattern Overview

    When you're on the way which is unknown and dangerous, just follow your mind and steer the boat. 软件模 ...

  6. java设计模式类图大全

    近来在看书实现GoF的23个设计模式,自己一点点地用建模工具按照自己的理解画出类图(是比较符合我个人思考理解的,个人觉得比通用类图更详细些),碰巧找到了一个挺好用的UML建模工具StarUML,也刚好 ...

  7. 2017-2018-1 Java演绎法 第八周 作业

    团队任务:UML设计 团队组长:袁逸灏 本次编辑:刘伟康 团队分工 第一次使用泳道图,感觉非常方便,从图中的箭头和各个活动框中可以清晰地看出分工流程: 不过既然是博客园,分工就不能只贴图,markdo ...

  8. 20135119_涂文斌 实验二 Java面向对象程序设计

    北京电子科技学院(BESTI) 实  验  报  告 课程: Java        班级:1351           姓名:涂文斌          学号:20135119 成绩:         ...

  9. [Arch] 03. Practice UML in project

    参考列表: 搜索:跟我学UML建模工具StarUML 系列文章 第一部分,下载和安装及破解StarUML工具软件 第二部分,StarUML工具软件的主要功能界面和UML图的创建示例 [Design P ...

随机推荐

  1. NPOI导出Excel及使用问题

    NPOI导出Excel及使用问题 因为最近公司质管部门提出了一个统计报表的需求:要求导出一个2016及2017年度深圳区域的所有供应商的费用成本计算--一个22列的Excel表,其中还包括多列的合并单 ...

  2. 理解JVM之垃圾收集器概述

    前言 很多人将垃圾收集(Garbage Collection)视为Java的伴生产物,实际1960年诞生的Lisp是第一门真正使用内存动态分配与垃圾手机技术的语言.在目前看来,内存的动态分配与内存回收 ...

  3. MySQL设计之三范式的理解

    转自:https://blog.csdn.net/wangqyoho/article/details/52900585 设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要 ...

  4. HDU3829(KB10-J 二分图最大独立集)

    Cat VS Dog Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 125536/65536 K (Java/Others)Total ...

  5. 图片链接转成base64

    一半需要我的图像转换为base64字符串,这样我们可以把我的形象到服务器.现在我们提供一个js: function convertImgToBase64(url, callback, outputFo ...

  6. Angular4.x 自定义搜索组件

    Angular4 随笔(三)  ——自定义搜索组件 1.简介 本组件主要是实现了搜索功能,主要是通过父子组件传值实现. 基本逻辑: 1.创建一个搜索组件,如:ng g component  searc ...

  7. Vue.js $nextTick

    最近在学习vue.js.了解1.x的基础上再学习2.x的vue.两个版本的确是不会像angular这样1.x和2.x相差甚远.所以学习起来其实还是有很大的关联.但是,终归来说.两者还是有语法上的细微差 ...

  8. IDEA项目搭建四——使用Mybatis实现Dao层

    一.引入mybatis及mysql的jar包 可以从阿里云上面查找版本,db操作放在dao层所以打开该层的pom.xml文件,找到<dependencies>节点增加两个引入 <de ...

  9. OSGI企业应用开发(六)细说Blueprint & Gemini Blueprint(一)

    上篇文章介绍了如何使用Blueprint將Spring框架整合到OSGI应用的Bundle中,从上篇文章中我们大概了解了Blueprint与Gemini Blueprint的关系,简单的说,Bluep ...

  10. Kubernetes+Docker的云平台在CentOS7系统上的安装

    Kubernetes+Docker的云平台在CentOS7系统上的安装 1.运行VirtualBox5. 2.安装CentOS7系统. 注意:选择Basic Server类型 安装过程略. 3.修改计 ...