55 不要滥用架构隐喻

来源:互联网 发布:强制win7 areo软件 编辑:程序博客网 时间:2024/05/23 19:20

架构师喜欢使用隐喻。对那些通常比较抽象、复杂和变化移动的目标,隐喻提供了很好的具体媒介。无论是与其他队员沟通,还是与最终用户讨论架构全局,找到有形实物作为正要构建的东西的隐喻,都是十分诱人的。

开始这很有效,使用一种共同语言,也能让大家都感觉到正确的方向,不断深化前进。随着时间推移,隐喻不断发展成长起来,栩栩如生。人们对隐喻感觉良好--我们正在不断前进。

常见的情况是,对于架构来说,之前的那些隐喻现在变得危险了。滥用架构隐喻经常会出现问题让架构师不知所措,比如:
业务领域的客户开始越来越喜欢系统隐喻,这时系统还在构想中,在这种情况下,所有各方共享的是最乐观的可能解读,但其中并没有包括任何必要的约束。

举例而言:“我们正在构建一个运输系统,就像在一系列停靠点之间移动的运输船一样。”

你想的是横渡太平洋的集装箱船。而我想的,其实只是在游泳池中的单桨划艇。

开发团队开始认为隐喻比实际业务问题更重要。由于团队耽溺于隐喻,你不得不开始修正那些古怪的决策。

举例而言:“我们说过,它就象一个文件柜,当然要按字母顺序显示给用户。我知道它是个6维的、没有容量限制并且内置时钟的文件柜,但我们现在已经做好图标了,因此它必须就是一个文件柜。。。”

所交付的系统包含了许多遗留名称,从早已老旧过时、有待重新鉴定的隐喻,到多次垂柳和重复挖掘的概念。

例如:“为什么账单工厂对象要为划艇系统创建一个港口通道?当然它应该为中心总线返回一个石榴视力?你说什么,你是新来的?”

请记住,不要耽溺于系统隐喻之中,只将之用于探索性的沟通,不要反让它拖了后腿。

原创粉丝点击