UML的一个硬伤
看了高展先生的“UML的三大硬伤”,也看了网上诸位软件工程的爱好者,实践者的热烈讨论,结合自己实践中的一些经验,想谈一下自己的看法,可能很不成熟,也可能自己理解的有问题,讲出来请大家给我解惑。
高先生提出了UML的三大硬伤,正如《非程序员》回应中说的,其实《UML的三大硬伤》重点在第一点,即“UML上不着天——与用户/领域专家无法沟通获得真正的需求”,虽然我对它提出的论据很多表示不赞同,不过对其结论有同感,就是uml很难捕获和描述用户需求。
我对对uml的需求分析一直存在疑问,就凭use case那简单的图怎么能清楚的描述复杂的用户需求呢,都说use case是需求的最好表达方式,可是问题领域的业务需求是很复杂的,千变万化的,就凭use case几个小人,几根箭头,还有几个椭圆,怎么能行呢。看了很多use case的文章,还是觉得太单薄,use case不足以完整的表达业务需求。真不知这个UML怎么想的,还说什么整个系统分析要以use case驱动呢,真不知如何个驱动法。
use case还留了一手,可以有其相关的文档关联来补充说明use case,可是我觉得最后还是要靠文档了来说明问题了。