banq老师说的ADL,我在网上查不到,UML和ADL的关系是什么?UML属于一种ADL?是不是有些描述不了的东西用其他ADL描述?ADL有没有什么工具支持?
Is UML an Architectural Description Language:
http://www.sigplan.org/oopsla/oopsla99/2_ap/tech/2d1a_uml.html
中有讲和对比,UML属于ADL实现的一个方面。
这个问题可延续的部分还是挺多的,一个系统(或者一个架构)可能发布出去的最终产物就是一个或者几个jar文件,这些jar文件中通常包括:处理主流程的core包, 支撑工具util包,日志相关包,安全性相关包,事务相关包,自订制类加载器相关包,工厂类(IOC)相关包以及各种解析包。一般core包自己完全实现,并且依赖于其他,而其他包往往是针对开源产品封装而成。那一般情况下的建模是不是主要针对core包,倘若在core中存在A和B类,A类中实例化了B类,但是具体实现是A类中用IOC将B类注入,那么在UML中不用体现这些,只用在A中画上指向B的单独箭头就可以了,不用让别人知道工厂的存在,因为其和主流程无关。这么理解对不?而在其他包的设计过程中,确实也存在一些典型的过程和模式,这些东西是否记录成UML无关紧要??
比如TOMCAT6源码中就没有对于Realm,comet等的UML图。
使用UML用来定义业务模型, 服务将这些模型组合提供给外部各种流程调用, 使用DSL来定义服务之间的消息类型,象一个信封.
在这个SOA架构中,UML只是发挥了其数据模型的表达作用
http://www.infoq.com/cn/articles/message-type-architecture
uml表达架构和表达设计是两个问题。
仿服远看一座楼和进去看。
楼主的例子举的似乎不好。
个人认为架构图有两三张就够了,配文档。
设计图要看coder的水平。一般也不要太细。