Skip to main content

 路由器设置 > 新闻资讯 >

认识架构漂移(Architectural Drift)的观念

2014-01-21 01:50 浏览:

  情境

  ----建筑师设计了二层的欧洲式住家。根据建筑师的设计图,在客厅的左右墙壁,各有一支空气管子,大小相同。其中,一支管子当作壁炉的烟囱之用,另一支管子用来促进空气的对流。根据设计图,住家建造完成了。

  ----两年后,屋主聘请工人,将壁炉移到对面的墙壁。将原来壁炉的烟囱当作空气对流之用;而原来的空气对流的管子則当作壁炉的烟囱。

  ----再三年之后,这个住家突然起了火灾,烧掉了。之后,法院展开调查。发现到:电线围绕着烟囱,从一楼绕升到二楼,烟囱的热度使得电线表皮融化了,导致电线短路,引发火灾。

  观察

  ----从住家设计图里,能清晰地看到壁炉的位置,烟囱的周围没有电线。电线是从一楼绕着空气对流管而升到二楼。以此而观之,问题的来源就很清晰了。壁炉工人移动住家的组件(component)时,没有参照住家设计图,导致住家实际架构(architecture)与设计图产生差异。这种现象通称为架构漂移(architectural drift)。

  阐述

  ----架构维持组件之间的和谐,避免互相冲突。一旦出现了架构漂移之后,组件之间常常会发生冲突,导致整个系统的毁灭。例如,住家原来有美好的架构,壁炉与电线之间很和谐。后来,架构漂移发生了,美好的架构不再产生作用了,壁炉与电线就互相冲突了,也毁灭了整体(the whole)。

  ----反之,当移动壁炉时,如果工人有参照住家设计图,就会移开电线,让壁炉与电线之间很和谐,然后也修改设计图,让住家的实际架构与设计图具有一致性。如此,就不会发生架构漂移了。

  ----架构漂移的发生,通常不会产生即刻的破坏,而是对某些组件的伤害会逐渐加大,直到一些组件毁坏了,而导致整体系统的毁灭。例如,壁炉的热度逐渐损坏电线表皮,直到两条电线互相接触时,就烧掉整座住家了。