论坛首页 综合技术论坛

UML发展了很多年了,为什么用的人还是这么少?

浏览 65556 次
精华帖 (0) :: 良好帖 (3) :: 新手帖 (0) :: 隐藏帖 (5)
作者 正文
   发表时间:2009-09-07  
hsy008 写道
“请问要多大面积的纸?"
亏你还是编程的。 你不会用电脑来看啊。 你知道这个世界上有电脑软件的东西吗?
我下面给出一些商业的UML 工具. 有大有小的。
如果说UML没有用的话,那下面这些软件工具,又是被人开发出来,然后拿来卖钱是干什么用的!!你也自己可以去google或者wiki一下。

当然如果你觉得,没用的必要,那我也没话说了。。



List of Commercial/Proprietary UML tools

Potential users can freely download versions of most of the following tools; such versions usually impose limits in capability and/or by a time-period.
AgileJ StructureViews: custom reverse-engineered class-diagrams — Java/Eclipse/XP. (Formerly marketed as "Modelistic".)
Altova UModel: GUI UML editor, supports UML 2.2, code engineering in Java, C#, and Visual Basic, imports and exports XMI
Apollo for Eclipse:supports UML 2.0 and Java 5. Integrates with the Eclipse IDE
Artisan Studio: multi-user, multi-site modelling; supports UML 2.1 and OMG SysML 1.1; code synchronization for C, C++, C#, Java, Ada, SPARK Ada; supports MDA and simulation of dynamic behavior
Avolution: ABACUS 3.x is a general modeling tool that supports UML amongst many other open standards and notations.
BLU AGE: an MDA compliant software workbench that enables 100% automated transformation of your UML 2.X diagrams into Java EE and .Net Enterprise business applications.
Blueprint Software Modeler: An integrated software-modeling environment with UML 2.1 modeling, OCL 2.0, meta-modeling and profiles; based on Eclipse
Borland Together: UML modelling tool, integrated with Eclipse and with MS VS.NET 2005. Supports UML 2.0 and MDA, OCL, MOF.
Cadifra UML Editor: UML diagram editor for Windows
CaseComplete: Use Case and Requirements management tool including Use Case diagrams
ConceptDraw 7: diagramming tool for Windows and Mac, supports UML 2.0
Creately - Online Diagramming: a web-based collaboratively UML tool for Windows, Linux and Mac that sports a WYSIWYG interface
Enterprise Architect – UML 2.1 tool with forward- and reverse-engineering and integration with Visual Studio 2005 and Eclipse. Extensible through addins and modeling technologies.
eRequirements: free web-based requirements-management tool
Fooboard - free web based UML diagramming and collaboration tool
GatherSpace: Online/On-Demand Use Case and Requirements Management
Gliffy: Desktop application feel in a web-based UML diagramming solution
idungu: web-based UML diagramming solution
Imagix 4D - C, C++ and Java reverse engineering / program comprehension tool generating UML Class Diagrams.
JUDE: object-oriented analysis and design with UML and Mindmap. JUDE/Community, though free to use, does not provide open source.
Konesa: Canyon Blue's collaborative modelling tool
MacA&D: UML and requirements-management for Mac OS X
MagicDraw UML: UML 2.0 tool with forward- and reverse-engineering and support for many plugin products for MDA. Integrates with many IDEs, including Eclipse and NetBeans. Supports SysML.
MasterCraft (software): a suite of tools from Tata Consultancy Services Limited which support object-oriented analysis and design using UML for development of MDA-based application-software. The tool-suite consists of IDE-based modelers which allow for UML-based modeling.
Metamill: a round-trip UML tool for C++, C# and Java. Runs under Windows and Linux.
MicroGOLD WithClass: UML modeling tool that can generate code and reverse engineer C++, Java, Delphi, VB, IDL, Perl, PHP, C#, and VB.net. Works with EJB.
Microsoft Visio:– a diagramming tool that also supports UML (Stencil and Template for UML 2.2)
MyEclipse: An Eclipse-based IDE. Professional Edition includes UML solutions.
North State Software: NSF is a highly extensible, software development framework for implementing UML 2.0 State Machines, including run-time engine with threading, timer, and trace utilities.
Objecteering: provides complete coverage of model-driven development (UML 2.0, MDA). A free (as in beer) edition is available.
OmniGraffle: for Mac OS X.
OptimalJ: a model-driven development environment for Java.
Pacestar UML Diagrammer: supports UML 2.0
Poseidon for UML: commercial version of ArgoUML - supports UML 2.0
PowerDesigner: by Sybase; supports UML 2.0, data-modeling, business-process modeling - round trip engineering
Rational Rose: by Rational Software (sold to IBM in 2003); supports UML 1.x.
Rational Rose XDE: an "eXtended Development Environment" in the tradition of Rational Rose; supports UML 1.x
Rational Software Architect: Eclipse-based UML 2.0 tool by the Rational Division of IBM
SDMetrics: a UML-design quality-measurement and design-rule-checking tool
Select Architect: a BPM/UML/MDA platform for Microsoft Windows, running on a scalable repository it integrates with Eclipse and VS.NET
sinelaboreRT - generates human readable c-code from state-charts especially targeting embedded systems
SmartDraw: UML-diagram tool for Microsoft Windows
System Architect: supports UML integrated with other notations and methods in an Enterprise Architecture environment.
Telelogic Rhapsody: supports UML 2.0 and SysML for embedded and real-time systems markets
Telelogic TAU: supports UML 2.0 and SysML
TopCoder UML Tool tool designed and developed entirely by the TopCoder Community to model sequence, class, use case, and activity diagrams. Free and open-source but with a specific license agreement.
Trace Modeler: an easy-to-use and smart editor for UML sequence diagrams. It's lightweight, portable and ensures diagrams are always visually pleasing and structurally correct.
Use Case Studio: a use-case authoring tool by Rewritten Software. Free for educational use.
Visustin: reverse-engineers UML activity-diagrams and flow-charts
Visual Paradigm for UML: supports UML 2.1, data modeling, business modeling and reverse engineering of source code and databases
Visible Analyst for UML: supports UML 2.1, enterprise architecture, strategic planning, structured analysis and design, data modeling, real-time modeling business modeling and forward and reverse engineering of source code and databases; common repository and multi-user by design, www.visible.com
WinA&D: UML and requirements management for Microsoft Windows
yalips: modeling tool that also supports brainstorming and gantt project management
Visual Use Case: Use Case and Diagramming tool
Model Realization: A Java code generation tool. It supports UML 2.0 and Java 5
Zeligsoft CX: An adaptive, non-prescriptive toolkit utilizing domain-specific modeling and code generation. An Eclipse plugin.


存在的东西是合理的。
但是是不是对大部分的人都有价值就值得考虑了。

好的东西与合理的东西是两个不同的概念。
病也是合理的。但是不是好的东西呢?
0 请登录后投票
   发表时间:2009-09-07  
糊涂虫3000 写道
JBeans 写道
糊涂虫3000 写道
就我个人而言,我觉得代码更加直接。
画UML图与写代码之间的联系太少了。
写代码本身就是一种创造性的活动。
而UML图到代码又是一个创造性的活动。
所以我觉得成本太高。
对于中小企业来说,这样的成本有点高。

但是光代码的话,与非程序员的交流会非常的困难。
所以还是需要一个比代码更加形象的,更加直观表达方式。
在这一点上,UML的产生似乎适应了这种需求。
但UML对于非程序员来说,要理解UML也是很困难的。
最多只能做为一种辅助的工具。

所以UML的地位感觉还是有点尴尬。

国内软件的生产力等级造就现阶段的开发主要还是编码,大多数人都是代码工人,一些“高手”也是,楼主可以去看看UML的诞生发展史以及应用范围,就知道不仅仅是软件工程领域在用UML,UML的应用领域十分的广泛,他是一种客观现实描述的标记语言,通过直观的方式反映大脑思维,和头脑风暴有些类似。因为人的大脑思考有限,对于大型和巨型的应用没有图是不可想象的。任何行业都存在分工,建筑行业里你是看不到带着安全帽上工地施工的设计师的。国内企业级开发有几个能称得上是真正的大型或者巨型呢?盖厕所就不用劳烦设计师了,瓦工就能搞定。这个和国内软件发展的现状是一致的


那么没有使用UML开发出来的UNIX与WINDOWS怎么解释呢?
UML的作用能与设计图纸一致起来吗?
程序开发语言的多样性是砖头可以比?
程序员开发所需要的智慧,砖瓦工能比?
不讲面向对象的方法是不是具有通用性。
就算面向对象,实现的方式上不同的语言从逻辑上也好,还是实现上也好有很大的不同。
形式也不同。这难道是砖头能比的?
同样。砖头能做出来的建筑能与程序设计所设计出来的产品的多样性比吗?

UML能在一定程度上说明问题,但是到了程序设计阶段,转化的过程会发现困难重重。
一切的设计的最终是代码。
当代码的实现都实现不了时,设计就是摆设。

从软件开发的实际来看,用了UML并没有挺高软件开发的速度,也没有提高软件开发的可理解性,更没有提高软件的质量。
想反,程序员通看代码直接就明白了程序的实现方式与程序的关系。
而面对大多的UML图,程序员除了茫然还有茫然。

UML不是必须的,也不是决定性的。我觉得UML是被夸大的一种技术。

那么如果说UML很重要的话,请给一个利用UML开发作为基础开发成功的开源项目吧。
或者我列举几个项目,您来帮我找一下他们的UML设计图?

1.eclipse(这是UML主推厂家,希望那位高手能帮我找到)
2.netbeans
3.apache
4.tomcat
5.jquery
6.dojo
7.mysql
9.linux
10.vim
11.emacs
12.firefox
13.chrome
14.fictx
15.scim
16.mplayer
....
如果还有,可以帮我列出来。

请阁下以后认真看帖再大发厥词,我说的UML的应用领域不仅仅局限于软件工程领域,而且阁下明显对于设计图纸缺乏认知,UML的诞生和设计图纸是一致的!设计图纸是贯穿整个软件工程生命周期活动内的,它对于量化管理有很重大的意义,如果盖楼的设计图纸仅仅是画出来摆在那儿是没有意义的,作为一个基线可以控制整座大楼的质量!它并不是孤立存在的,是贯穿整个盖楼这个活动的生命周期内的,并且是可以被量化被测试的!这个才是图纸存在的意义,是为了保证工程质量的!要知道软件如果有bug损失的是金钱和时间!而如果大楼有质量问题恐怕损失的就是生命了!不知道这么说能不能让阁下明白UML存在的意义,以及应用的范围。UML只是一种标记语言,请别想当然的把它和软件工程联系起来,现在的公司之所以强调UML大多都是为了能够量化管理,就像建筑工程一样变得易于掌控。所以我说你我是瓦工你也别不服气,再有就是问问阁下你列出的那些东西哪一个是你这样的瓦工能写得出的?如果不行还是乖乖的学好看图纸画图纸在别人的指挥下老实搬砖的为好
2 请登录后投票
   发表时间:2009-09-07  
呵呵,设计为何物。
0 请登录后投票
   发表时间:2009-09-08   最后修改:2009-09-08
JBeans 写道
糊涂虫3000 写道
JBeans 写道
糊涂虫3000 写道
就我个人而言,我觉得代码更加直接。
画UML图与写代码之间的联系太少了。
写代码本身就是一种创造性的活动。
而UML图到代码又是一个创造性的活动。
所以我觉得成本太高。
对于中小企业来说,这样的成本有点高。

但是光代码的话,与非程序员的交流会非常的困难。
所以还是需要一个比代码更加形象的,更加直观表达方式。
在这一点上,UML的产生似乎适应了这种需求。
但UML对于非程序员来说,要理解UML也是很困难的。
最多只能做为一种辅助的工具。

所以UML的地位感觉还是有点尴尬。

国内软件的生产力等级造就现阶段的开发主要还是编码,大多数人都是代码工人,一些“高手”也是,楼主可以去看看UML的诞生发展史以及应用范围,就知道不仅仅是软件工程领域在用UML,UML的应用领域十分的广泛,他是一种客观现实描述的标记语言,通过直观的方式反映大脑思维,和头脑风暴有些类似。因为人的大脑思考有限,对于大型和巨型的应用没有图是不可想象的。任何行业都存在分工,建筑行业里你是看不到带着安全帽上工地施工的设计师的。国内企业级开发有几个能称得上是真正的大型或者巨型呢?盖厕所就不用劳烦设计师了,瓦工就能搞定。这个和国内软件发展的现状是一致的


那么没有使用UML开发出来的UNIX与WINDOWS怎么解释呢?
UML的作用能与设计图纸一致起来吗?
程序开发语言的多样性是砖头可以比?
程序员开发所需要的智慧,砖瓦工能比?
不讲面向对象的方法是不是具有通用性。
就算面向对象,实现的方式上不同的语言从逻辑上也好,还是实现上也好有很大的不同。
形式也不同。这难道是砖头能比的?
同样。砖头能做出来的建筑能与程序设计所设计出来的产品的多样性比吗?

UML能在一定程度上说明问题,但是到了程序设计阶段,转化的过程会发现困难重重。
一切的设计的最终是代码。
当代码的实现都实现不了时,设计就是摆设。

从软件开发的实际来看,用了UML并没有挺高软件开发的速度,也没有提高软件开发的可理解性,更没有提高软件的质量。
想反,程序员通看代码直接就明白了程序的实现方式与程序的关系。
而面对大多的UML图,程序员除了茫然还有茫然。

UML不是必须的,也不是决定性的。我觉得UML是被夸大的一种技术。

那么如果说UML很重要的话,请给一个利用UML开发作为基础开发成功的开源项目吧。
或者我列举几个项目,您来帮我找一下他们的UML设计图?

1.eclipse(这是UML主推厂家,希望那位高手能帮我找到)
2.netbeans
3.apache
4.tomcat
5.jquery
6.dojo
7.mysql
9.linux
10.vim
11.emacs
12.firefox
13.chrome
14.fictx
15.scim
16.mplayer
....
如果还有,可以帮我列出来。

请阁下以后认真看帖再大发厥词,我说的UML的应用领域不仅仅局限于软件工程领域,而且阁下明显对于设计图纸缺乏认知,UML的诞生和设计图纸是一致的!设计图纸是贯穿整个软件工程生命周期活动内的,它对于量化管理有很重大的意义,如果盖楼的设计图纸仅仅是画出来摆在那儿是没有意义的,作为一个基线可以控制整座大楼的质量!它并不是孤立存在的,是贯穿整个盖楼这个活动的生命周期内的,并且是可以被量化被测试的!这个才是图纸存在的意义,是为了保证工程质量的!要知道软件如果有bug损失的是金钱和时间!而如果大楼有质量问题恐怕损失的就是生命了!不知道这么说能不能让阁下明白UML存在的意义,以及应用的范围。UML只是一种标记语言,请别想当然的把它和软件工程联系起来,现在的公司之所以强调UML大多都是为了能够量化管理,就像建筑工程一样变得易于掌控。所以我说你我是瓦工你也别不服气,再有就是问问阁下你列出的那些东西哪一个是你这样的瓦工能写得出的?如果不行还是乖乖的学好看图纸画图纸在别人的指挥下老实搬砖的为好


你可以回家唠叨。
在这里我可没有工夫听你这种不着边际的论调。
你这种肤浅的理解,还是等你有几年工作经验后再来发表吧。

0 请登录后投票
   发表时间:2009-09-08  
楼主的新概念: 用UML的人没有工作经验
1 请登录后投票
   发表时间:2009-09-09  
solonote 写道
楼主的新概念: 用UML的人没有工作经验

实际上是这样的。
很多没有实际项目经验的人在空谈UML。
而有项目经验的更多的是谈实现,谈代码。
那些脱离代码,谈所谓的UML的除了会忽悠外。
估计很少有人是在写代码的。
这估计也是为什么软件质量差的原因之一。

0 请登录后投票
   发表时间:2009-09-10  
那么有些什么样的UML设计工具可以推荐一下呢?
0 请登录后投票
   发表时间:2009-09-10  
太长了, 没看完, 总之, 没画时序图之前别写程序。
我一般都是画在纸上的。录不录到电脑里就看文档要求了。
0 请登录后投票
   发表时间:2009-09-11  
糊涂虫3000 写道
solonote 写道
楼主的新概念: 用UML的人没有工作经验

实际上是这样的。
很多没有实际项目经验的人在空谈UML。
而有项目经验的更多的是谈实现,谈代码。
那些脱离代码,谈所谓的UML的除了会忽悠外。
估计很少有人是在写代码的。
这估计也是为什么软件质量差的原因之一。


没有项目经验,不追求代码和工程质量的人才不会寻找更好的,更科学的手段,阁下的论断不知从何而来,只能证明无知者无畏这句名言。另:谈点儿实际的东西,建议阁下系统的学一下面向对象的分析与设计,然后再看看UML能充当什么样的工具再下结论,发表任何观点之前记得对自己的话负责,不要最后狗急跳墙的进行人身攻击。
1 请登录后投票
   发表时间:2009-09-11   最后修改:2009-09-11
JBeans 写道
糊涂虫3000 写道
solonote 写道
楼主的新概念: 用UML的人没有工作经验

实际上是这样的。
很多没有实际项目经验的人在空谈UML。
而有项目经验的更多的是谈实现,谈代码。
那些脱离代码,谈所谓的UML的除了会忽悠外。
估计很少有人是在写代码的。
这估计也是为什么软件质量差的原因之一。


没有项目经验,不追求代码和工程质量的人才不会寻找更好的,更科学的手段,阁下的论断不知从何而来,只能证明无知者无畏这句名言。另:谈点儿实际的东西,建议阁下系统的学一下面向对象的分析与设计,然后再看看UML能充当什么样的工具再下结论,发表任何观点之前记得对自己的话负责,不要最后狗急跳墙的进行人身攻击。

你急了?
如果道理说不清,没有事实为依据。
你回家打酱油不好吗?
当然,你的现象让我感觉到--学习也是一种病。
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics