【GitHub项目推荐--免费开源UML设计工具】【转载】

UML——统一建模语言,是一种使用标准化符号和标记的系统或软件设计的图形表示方法。它通过可视化的方式来表示系统中不同组件的结构、行为以及关系。

UML的用途如下:

(1)结构建模:UML类图用于通过定义类、属性、方法及其关系来表示系统的结构。帮助开发人员理解类的组织及其交互关系。

(2)行为建模:UML活动图和状态机图用于表示系统的行为。活动图显示活动和操作的流程,而状态机图表示对象或系统的不同状态和转换。

(3)用例建模:UML用例图用于识别和表示系统的不同用例。它们帮助利益攸关方从用户的角度理解系统的功能和互动。

(4)交互建模:UML序列图和通信图用于表示系统中对象或组件之间的交互。它们显示运行时的消息顺序和控制流。

(5)部署建模:UML部署图用于表示硬件节点上软件组件的物理部署。它们有助于理解系统中软件和硬件组件的分布和配置。

使用UML图来设计、记录、交流软件架构,有助于提高对系统需求的理解,促进利益相关者之间的协作,并在开发过程的尽量早地识别出潜在的设计缺陷。

本文收集并推荐一些适用于Windows、Linux或macOS的免费、开源UML设计工具。

01

Modelio

官网:

https://www.modelio.org/index.htm

源码:

https://github.com/ModelioOpenSource/Modelio

Modelio是一个开源建模工具,支持各种建模标准,如:UML、BPMN、ArchiMate和SysML等。为开发人员、分析师和架构师等职业而设计,在企业架构、流程建模、软件开发和系统工程等方面提供了广泛的功能。

Modelio采用Java开发,因此可以在Windows、Linux和macOS上安装和使用。

功能特性

  • UML建模:Modelio是一个建模工具,支持广泛的模型和图,并提供模型辅助和一致性检查功能。

  • 支持与UML集成的BPMN:Modelio将BPMN支持和UML支持结合在一个工具中,并使用专用的图表来支持业务流程建模。

  • Java代码生成器:Java Designer模块使用RCP/JavaScript风格的项目文件结构,支持Java代码生成和方向工程、Javadoc生成和Java自动化。

  • XMI导入/导出:Modelio提供了一个XMI导入/导出特性,使您能够在不同的工具之间交换UML2模型。

  • HTML模型发布:使用HTML Publisher模块,以HTML格式发布模型。

  • 系统扩展:Modelio可以扩展为任何语言,方法或建模技术,只需将模块添加到配置。可以使用现有的模块或开发自己的模块。

  • 脚本语言支持(Jython):Modelio为在线请求、小脚本和宏定义提供了对Jython脚本语言的集成支持。

02

Umlet

源码:

https://github.com/umlet/umlet


UMLet是一个非常棒的开源UML工具,它提供了友好的用户界面,用户可以轻松快速地绘制各种UML图来实现软件设计可视化。此外,它支持将图表导出为不同的文件格式,例如:eps、pdf、jpg、svg等,便于与他人共享、协作。

UMLet的突出特性之一是它可以与Eclipse的无缝集成。通过在Eclipse中使用UMLet,可以直接从Eclipse环境中轻松地访问和处理UML图,从而提高生产力、简化开发过程。

此外,UMLet提供了丰富的定制选项,允许创建独特的UML元素,以满足特定需求。这种灵活性使得用户能够设计准确地表示出软件体系结构的复杂性。

目前UMLet提供了一个桌面版本和一个Web版本。

03

JetUML

源码:

https://github.com/prmr/JetUML

JetUML是一个轻量级桌面应用程序,主要用于统一建模语言(UML)设计。使用JetUML,用户可以毫不费力地表达软件设计思想,并将其变为现实。JetUML提供了一个轻松的环境,无论是经验丰富的开发人员还是初学者都可以轻松绘制、完善软件架构。

从类图到序列图,从状态图到对象图,再到用例图,JetUML都涵盖了。可以轻松地表示软件系统不同组件之间的关系和交互。

除了直观的界面外,JetUML还提供了保存和共享图表功能。可以将图表保存为JSON格式,以便将来轻松检索和修改。此外,JetUML可以将图表导出为图像格式,从而实现与其他工具和平台集成。甚至可以将图表复制到系统剪贴板,从而轻松地将它们合并到项目文档或PPT中。

JetUML有两个版本可供选择。包括独立的桌面应用程序以及Java 归档文件版本,桌面应用程序便于独立体验使用。Java归档文件版本支持跨操作系统灵活使用。这两个版本都是在GNU通用公共许可证v3下授权开源。

04

Gophor

源码:

https://github.com/gaphor/gaphor

Gaphor是一个用Python编写的UML和SysML建模应用程序。它经过精心设计,功能强大、用户友好,完全兼容的UML 2数据模型。

使用Gaphor,可以毫不费力地可视化设计系统,以最高的精度构建全面、复杂的模型。

首次使用Gaphor时,可以从5种可用的模版中进行选择,包括:Generic、UML、SysML、RAAML和C4 Model。这些模板为软件系统架构设计和风险分析提供了不同的建模语言。

Gaphor支持用于Windows、Linux和macOS。

05

UMLDesigner

官网:

https://www.umldesigner.org/

下载:

https://www.umldesigner.org/download/

UMLDesigner提供了一系列用于UML2.5模型的图。它的主要目标是简化从UML到特定领域建模的转换,使用户能够操作现有的UML模型,并无缝地开始使用DSL。此外,用户还可以灵活地重用图形,并在UML和DSL模型上进行协作。

功能特性:

  • 支持包的层次结构

  • 类图

    组件图

  • 复合结构图

  • 部署关系图

  • 用例图

  • 活动图

  • 状态机

  • 序列图

  • 外廓图

06

Sirius

官网:

https://eclipse.dev/sirius/

下载:

https://www.obeodesigner.com/en/download

Sirius是一个Eclipse插件,用于在Eclipse上进行建模(如EMF和GMF)。它为基于模型的架构工程提供了一个通用的工作台,可以根据特定的要求进行定制。它提供了一个桌面版本和一个Web版本。

07

PlantUML

源码:

https://github.com/plantuml/plantuml


PlantUML是一个免费的开源UML工具,可以根据文本描述生成UML图。它提供了一种简单直观的语言来定义图,如:序列图、用例图、对象图、组件图等。既可以使用嵌入式PlantUML的在线解决方案,也可以在本地安装软件来设计UML图表。

它可以输出为PNG、SVG或LaTeX等图像格式,还支持为序列图生成ASCII艺术图,提供JSON数据、YAML数据和工作分解结构(WBS)图表等功能。

功能特征:

  • 编写序列图

  • 编写用例图

  • 编写对象图

  • 编写组件图

  • 编写JSON数据和YAML数据

  • 编写工作分解结构图(WBS)

08

Crystal Facet Uml

源码:

https://sourceforge.net/projects/crystal-facet-uml/

下载:

https://sourceforge.net/projects/crystal-facet-uml/files/latest/download

crystal-facet-uml可以用于创建软件架构图。为用例、需求、结构视图、行为和部署视图的绘制提供了一致的图表。该工具可以以json、xmi等各种格式导出图表。

它提供了一个图形用户界面,用于创建、修改和删除图、UML/SysML元素和关系。支持撤销和重做功能,并且提供多窗口模式,可以显示UML模型的不同部分。

09

NClass

下载:

https://nclass.sourceforge.net/

NClass提供全面的C#和Java语言支持。精心设计的用户界面,简单易用,便于快速无缝开发。它为属性、枚举、委托等语言元素提供了完整的支持,所有这些都具有严格的语法和语义验证。

只需点击几下,就可以轻松地设计应用程序。这个工具的主要目标是提供一个既简单易用又强大的类设计器。可用的图表样式使您能够创建与Visual Studio或其他高端产品中的图表类似的专业外观的图表。此外,您可以选择从模型生成代码或从现有的.NET程序导入类。

该应用程序可用于Windows系统,也可以编译为Linux和macOS。

功能特征

  • 完整的C#和Java支持,具有许多语言特定的元素

  • 简单易用的用户界面

  • 具有语法分析器的内联类编辑器,可轻松快速地进行编辑

  • 源代码生成

  • 支持从.NET程序集进行逆向工程

  • 可配置的逻辑示意图样式

  • 打印/保存到图像

  • 多语言用户界面

  • 支持非Windows用户的Mono

10

Umbrello UML Modeller

网站:

https://uml.sourceforge.io/

下载:

https://uml.sourceforge.io/installation.php

Umbrello UML Modeller是一个用于创建软件的统一建模语言(UML)的免费开源程序。

Umbrello支持XMI 1.2文件导入和导出,目前正在支持XMI 2.0。它还支持从Argo UML、Enterprise Architect、NSUML for NetBeans、Poseidon for UML、IBM/Rational Rose和Unisys XMI for Rational Rose导入文件。

Umbrello是KDE软件编译的一部分,这意味着它可以随所有GNU/Linux发行版一起提供。您可以使用普通软件安装应用程序(Muon,Software Centre,Yast等)或命令行软件包管理器(yum,up 2date,yast,zypper,apt-get,emerge等)安装它。

Umbrello支持许多现成的Linux系统,如:Debian、Ubuntu、Fedora、Arch Linux和Manjaro等。也支持FreeBSD、macOS和Windows操作系统。

原文链接:

10个免费开源UML设计工具 

  • 10
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值