UML真得有用吗?

slm007 2010-05-16 11:14:33
作为一个刚工作一年的大学毕业生,我有几点想法,希望抛砖引玉
1.uml真得有用吗?我们公司做的项目都不用uml,我觉得uml本身不难学,困难的是背后的思想。我遇到的多数做业务分析的人,根本没有这样的思维,用户,需求分析员、需求分析文档都不是uml的(或者是根本没有文档),只有数据库模型和界面原型,开发人员就算要自己搞uml/mdd也是一个巴掌拍不响,或者鸡同鸭讲。
2.uml真得在广泛应用吗?那为什么开源的框架都没有uml设计图提供,或者说利用uml作为开发基础的开源软件到底有多少?(好像占得比例好小呀)
3.不利用uml真的是项目不够大,我在盖鸡窝吗?建筑行业工程图对于建筑来说和uml对于软件来说,我觉得完全不能比,在建筑行业不懂建筑图根本是个门外汗,合适软件里,恐怕只有在大学里面才有uml重要一说吧,linux和window都没有uml吧。
...全文
896 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
canxueqingkuang 2011-12-06
  • 打赏
  • 举报
回复
看看精华回复
guoke25 2011-03-31
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 kaynezhang 的回复:]
说说我的理解吧。
UML图在大一点的企业开发中之所以需要的是因为,很多企业应用中需求分析、架构设计、总体设计以及详细设计到编写代码都是不同角色完成的(当然很多角色是可以兼的),这样就需要一些沟通机制,比如需求分析你就要和用户打交道,设计就要和编写代码的人员打交道(等等很多需要打交道的地方),我只挑其中的一个来说吧,就说设计和边写代码的部分。
你就需要类图和时序图这些了,因为编写代码的人员要理解……
[/Quote]
看完有一种恍然大悟的感觉,怪不得找了这么久的linux的uml都找不到,感觉太奇怪了。看了这里才明白原来是这么回事。
sdwangp1975 2010-12-22
  • 打赏
  • 举报
回复
kaynezhang 的分析很到位!很受启发!
Michael_Xin_CV 2010-05-16
  • 打赏
  • 举报
回复
以前在一家公司搞过一段软件自动化生产 UML是必须的 不过感觉UML在大部分场合不受重视 个人感觉...
slm007 2010-05-16
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 kaynezhang 的回复:]

说说我的理解吧。
UML图在大一点的企业开发中之所以需要的是因为,很多企业应用中需求分析、架构设计、总体设计以及详细设计到编写代码都是不同角色完成的(当然很多角色是可以兼的),这样就需要一些沟通机制,比如需求分析你就要和用户打交道,设计就要和编写代码的人员打交道(等等很多需要打交道的地方),我只挑其中的一个来说吧,就说设计和边写代码的部分。
你就需要类图和时序图这些了,因为编写代码的人员要理……
[/Quote]
很有用,的确我们的项目中设计和编码都是相同的人,需求和开发是不同的人,可是需求的人不懂uml,或许这就是我们公司对uml不敏感的原因吧。先记下了。
kaynezhang 2010-05-16
  • 打赏
  • 举报
回复
说说我的理解吧。
UML图在大一点的企业开发中之所以需要的是因为,很多企业应用中需求分析、架构设计、总体设计以及详细设计到编写代码都是不同角色完成的(当然很多角色是可以兼的),这样就需要一些沟通机制,比如需求分析你就要和用户打交道,设计就要和编写代码的人员打交道(等等很多需要打交道的地方),我只挑其中的一个来说吧,就说设计和边写代码的部分。
你就需要类图和时序图这些了,因为编写代码的人员要理解设计人员的意图,那使用类图、序列图这些就很容易理解了。如果像你说的设计人员直接写代码,那么代码编写人员就没意义了。

你说很多开源的都没有UML图,我说一说我的想法
第一UML图比较适合OO的开发,linux不不太适合了,但这不是最主要的原因,主要原因在下面。
第二是这些开源的项目都是一部分开源社区人员维护的,他们的设计和代码编写人员水平都很高,甚至都是他们自己,不需要太多的沟通交流大家就能理解,所以UML就不是那么重要了(这是一个主要原因)。
第三,很多开源的项目都有wiki的(你可以上去看看),上面有很多设计相关的内容,里面或者有UML图,或者有相应的文字描述他们都能很好的理解,所以不太需要UML图了。
第四,很多开源的项目都是一些框架性质的东西,对用户来说大家理解怎么使用就可以了,所以开源社区的开发人员就不需要维护UML图这些东西了
当然还有其它的一些原因。
这是我的想法,如果不对,希望大家批评指正。
slm007 2010-05-16
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 nokiaisacat 的回复:]
楼主的意思是为什么这些的文档都没有UML,UML应该设计文档中才会有的,我觉得我好像没见过这些项目的设计文档

敏捷开发确实是不需要文档的,也有后来再补上文档的
[/Quote]
看开发思路上也没有提到过用过uml,后来再补上,这有何用,完全不再讨论范围内,设计完了uml对程序员来说就是什么都不是了。
nokiaisacat 2010-05-16
  • 打赏
  • 举报
回复
楼主的意思是为什么这些的文档都没有UML,UML应该设计文档中才会有的,我觉得我好像没见过这些项目的设计文档

敏捷开发确实是不需要文档的,也有后来再补上文档的
slm007 2010-05-16
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 jis2008 的回复:]
每个公司不一样,有许多的都是小公司,根本上就用不着,最多一个记事本写一点东西就搞定,作坊式。大一点的公司才用的
[/Quote]
linux不够大吗?ssh不够大吗?apache不够专业吗?为什么文档都没有uml,你的解释太空泛了,来点实际的吧,用uml的好处在什么地方?看看敏捷开发的思想吧。

按照极限编程的开发原则,我们仅需要对眼前的需求进行编码、测试,然后重构。极限编程往往对规范文档深恶痛绝。事实上,没有及时更新的文档有时候比没有文档给项目带来的负面影响更大,它容易引导开发人员走向错误的道路。UML图作为文档的一部分,同样承担了这样的责任。在敏捷开发过程中,有时候我们可以抛开UML烦琐而死板的设计,毕竟最能忠实体现设计思想的,不是文档,不是用例图或者类图,而是代码。
上面几句引自http://book.csdn.net/bookfiles/350/10035013978.shtml/10035013978.shtml

jis2008 2010-05-16
  • 打赏
  • 举报
回复
每个公司不一样,有许多的都是小公司,根本上就用不着,最多一个记事本写一点东西就搞定,作坊式。大一点的公司才用的
mahsky 2010-05-16
  • 打赏
  • 举报
回复
mark
slm007 2010-05-16
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 shine333 的回复:]
建筑业图纸是必须的,恰巧是因为他们分工清晰。设计师就是设计师,土木工程师就是土木工程师,木工泥水匠,电工油漆匠都各司其职。

而国内的软件开发,就好像建筑业,每个人负责若干间房间,里面的水电、油漆一个人全包。,很多都是一个人兼职好多职责,一个模块从数据库SQL,一直到表示层的HTML/CSS/JS,都是一个人负责。开个会统一下做法,具体的都是每模块具体负责的程序员自己发挥,所以“图纸”的作用就……
[/Quote]
你的意思是国内不适合用uml,作坊式开发部适合用uml,可是为什么那么多国外开源的项目都不用uml,为什么最适合用uml的java的javadoc里面也没有uml,我的想求证一点是,是不是uml根本就是被盲目跟风和被大学教育吹捧起来害人的,真正的软件开发根本不和用?
shine333 2010-05-16
  • 打赏
  • 举报
回复
建筑业图纸是必须的,恰巧是因为他们分工清晰。设计师就是设计师,土木工程师就是土木工程师,木工泥水匠,电工油漆匠都各司其职。

而国内的软件开发,就好像建筑业,每个人负责若干间房间,里面的水电、油漆一个人全包。,很多都是一个人兼职好多职责,一个模块从数据库SQL,一直到表示层的HTML/CSS/JS,都是一个人负责。开个会统一下做法,具体的都是每模块具体负责的程序员自己发挥,所以“图纸”的作用就很弱。
slm007 2010-05-16
  • 打赏
  • 举报
回复
招聘网站?现在招聘要求会的太多,可是真正用起来的有多少,java精通,这个真正招的到的有多少?招聘上的要求也信吗?
nokiaisacat 2010-05-16
  • 打赏
  • 举报
回复
楼主,你上那些招聘网去看看,招会UML的多了去了,怎么能说在项目中用不到呢
nokiaisacat 2010-05-16
  • 打赏
  • 举报
回复
楼主,后来再补上是为了维护,你没听说过给钱让别人写文档的吗

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧