Automated Drawing of UML Diagrams

翻译 2012年03月27日 16:59:36
UMLGraph allows the declarative specification and drawing ofUML class and sequence diagrams.The current featuresare part of an ongoing effort aiming to provide support forall types UML diagrams.An IEEE Software article titledOn the declarative specification of modelsexplains the rationale behind this approach.The tehnology behind UMLGraph was used to draw many of the diagramsappearing in the award-winning booksCode Quality: The Open Source Perspective (Addison Wesley, 2006) andCode Reading: The Open Source Perspective (Addison Wesley, 2003).In addition,the UMLGraphDoc doclet included in this distribution automaticallyadds UML diagrams to javadoc documentation.

Many programs build on UMLGraph; follow this linkfor more details.In addition,Martin Fowler, the author ofUML Distilled, writes:

I thought I'd send you a note saying how much I enjoyed discovering UML Graph.I've long fancied a text based way of describing UML diagrams,but never felt sufficiently time-rich to develop anything.

Class Diagrams

One specifies a class diagram using the Java syntax complemented byjavadoctags.Running the UmlGraph doclet on the specification will generateaGraphvizdiagram specification that can be automatically processed tocreate Postscript, GIF, SVG, JPEG, fig, or Framemaker drawings.

The following is an example of a class diagram specification and the resulting UMLdiagram:

class Person {
	String Name;
}

class Employee extends Person {}

class Client extends Person {}
Simple UML class diagram

Sequence Diagrams

One specifies a sequence diagram using pic macros to defineobjects and method invocations.The GNU plotutilspic2plot program can then process the sequence diagram to create aPNG, PNM, (pseudo)GIF, SVG, AI, Postscript, CGM, FIG, PCL, HPGL, Regis, or TEKdrawing.

The following is an example of a sequence diagram specification and theresulting UML diagram:

# Define the objects
object(O,"o:Toolkit");
placeholder_object(P);
step();

# Activation and messages
active(O);
message(O,O,"callbackLoop()");
create_message(O,P,"p:Peer");
message(O,P,"handleExpose()");
active(P);
return_message(P,O,"");
inactive(P);
destroy_message(O,P);
inactive(O);

# Complete the lifeline of O
step();
complete(O);
Simple UML sequence diagram

【UML】构件图Component diagram(实现图)

UML——构件图
  • sds15732622190
  • sds15732622190
  • 2015年10月11日 17:17
  • 2406

《火球——UML大战需求分析》(第1章 大话UML)——1.2 结构型的UML(Structure Diagram)

UML图分结构型和行为型两种图,本文将为你分享结构型(Structure Diagram)的UML图,让你在15分钟内就可以对类图(Class Diagram)、对象图(Object Diagram)...
  • u010825142
  • u010825142
  • 2013年09月01日 22:20
  • 2607

UML系列图——类图(Class Diagram)

擂鼓备战:     类图(Class Diagram)是最常用的UML图,可以显示出类、接口、以及它们之间的静态结构和关系;用于描述软件的结构化设计,要注意的是,类图不现实暂时性信息。下面就由小编带领...
  • jianghappyboy
  • jianghappyboy
  • 2017年01月02日 15:51
  • 420

UML总结—包图(Package Diagram)

一、什么是包 在面向对象的软件开发过程中,类显然是构建整个系统的基本构造块。但是对于庞大的应用系统而言,包含的类是成百上千的,再加上其间“阡陌纵横”的关联关系,多重性等,必然大大超出了人们可以处理的...
  • ggibenben1314
  • ggibenben1314
  • 2013年02月18日 20:34
  • 12914

《火球——UML大战需求分析》(第1章 大话UML)——1.3 行为型的UML(Behavior Diagram)

UML图分结构型和行为型两种图,这次将为你分享行为型(Behavior Diagram)的UML图,让你在15分钟内就可以对活动图(Activity Diagram)、状态机图(State Machi...
  • u010825142
  • u010825142
  • 2013年09月02日 16:02
  • 3033

uml类图(Class Diagram)中类与类之间的关系及表示方式

类之间大体分为5种关系: 1,依赖关系(Dependency) 2,关联关系(Association) 3,聚合关系(Aggregation) 4,组合关系(Composition) 5,继承关系(I...
  • a19881029
  • a19881029
  • 2013年05月21日 22:28
  • 17706

最全Pycharm教程(43)——Pycharm扩展功能之UML类图使用

1、什么是UML   UML类图能够快速检查代码结构。   2、主题   UML类图在Pycharm中的用法。   3、准备工作   (1)Pycharm版本为2.7或更...
  • u013088062
  • u013088062
  • 2015年12月18日 17:42
  • 11072

UML类图-时序图

前言        今天无意间看到了别人的代码,竟然还附带UML时序图讲解代码逻辑,实在是忒贴心了有莫有!于是乎,对这幅图产生了极大的好奇心。于是就做了下功课!下面,我们就一起来看看!什么是UML  ...
  • wangmeng951011
  • wangmeng951011
  • 2016年09月09日 22:01
  • 314

eclipse使用ModelGoon插件自动生成java类的UML图

ModelGoon 是一个 Eclipse插件,能将Eclipse中现有的java类生成类图,可以进行Java 包的依赖分析,基于UML图进行模型设计,以及逆向工程(即从已有源代码生成类图)。下载地址...
  • xyzjl
  • xyzjl
  • 2015年04月25日 12:14
  • 5305

docker 的自动构建

https://segmentfault.com/a/1190000007035504 为什么要使用自动构建 现在的产品和开发环境都依赖docker,在部署的时候发现修改线上镜像非常的...
  • liukuan73
  • liukuan73
  • 2016年12月30日 08:35
  • 570
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Automated Drawing of UML Diagrams
举报原因:
原因补充:

(最多只允许输入30个字)