模式怎样有助于视图集成?
在文章展开论述时,我们将揭示关于产品订货系统更多的细节。虽然,由于篇幅的限制,我们既不能在此表述整个系统,也不能阐述所有的集成技术。相反,如前面提到的,我们将集中于视图集成时模式承担的角色上。对应于图 2 中简述的三个集成活动,模式支持如下活动(下节将说明例子):
映射
模式支持不同抽象层次的视图之间的映射(交叉引用)。例如,一个高层框图指出使用一个已知后来在低层次框图中实现的模式。这样,这类模式存在于低层次框图的知识以及该模式粗略了解(如在[Gamma et al. 1994]和[Buschman et al 1996]中定义)的知识有助于在低层框图中自动鉴别。
模式也支持不同类型视图的映射。例如,模式描述经常指定其结构和它们的动态行为。那么,可以在我们的模型中使用这些知识来交叉引用结构化的和动态的信息。
变换
模式应用于变换的方法与它们在映射中的用途类似。对于变换,我们可以把它们用作抽象和转化。对于抽象,我们意指简化视图的处理。例如,如果我们想知道高层视图和低层视图是否一致,那么我们需要精炼高层视图或者抽象低层视图以使直接比较成为可能。前者不能自动进行,而后者可以。为了抽象视图,需要确定相关的片段,然后,它们被更加简单的事物替换。对此,模式是完美的原始资料,因为它们提供哪些片段属于一起的知识。我们可以使用模式知识抽象低层模式到高层模式(或者对等的单个部件)。
模式也可以如我们在映射中讨论的那样用于静态与动态结构之间的转化。既然模式经常用两种式样描述,我们可以通过结构推导行为(反之亦然)。这样,利用模式我们也可以转化视图。
分化
如图 2 中简述,分化强依赖于映射和变换。这意味着要在视图中找出不一致性,我们需要确定其建模元素的关系,并且需要找出从一个视图到另一个视图变换信息的方法。没有前一个步骤我们不能知道要比较什么信息,没有后一步,我们不知道怎样比较。一旦上述步骤完成,我们可以使用两个主要技术比较视图:
(图形)比较:依靠变换的视图和原始视图的对比进行比较。该技术暗示:一个视图可以保留充分完整的风格变换为另一个视图。
约束和规则检查:我们频繁地发现视图不能广泛的变换为另一个视图,但它的少部分和片段可以。在这种情况下,我们可以使用规则和约束来论述和分析这些片段。
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/