2

您如何简单地描述 DSM?

4

2 回答 2

2

简单来说,DSM 是一种不同于方框和箭头图的视觉方式来表示图形。有趣的是,虽然方框和箭头图擅长显示具有几十个节点且连接不多的小图(稀疏图),但 DSM在显示较大图方面优于方框和箭头图。为此,我们说DSM 可扩展。缺点是 DSM 不像方框和箭头图那样直观,并且带有学习曲线。

方框图和箭头图相比,DSM 尤其擅长使结构模式变得明显。具体来说,在这篇博客文章《识别代码结构模式概览》中,解释了如何使用依赖结构矩阵来识别代码结构模式。屏幕截图是使用工具 NDepend的依赖结构矩阵完成的。这里有一些模式:

分层代码(没有循环的代码,肯定是 DSM 可以一目了然的最酷的东西)
替代文字

具有依赖循环的代码
替代文字

高内聚/低耦合
替代文字

饥饿的来电者
替代文字

热门被叫方
替代文字

相互耦合
替代文字

数据对象
替代文字

于 2010-09-01T13:49:07.193 回答
1

DSM 背后的基本思想是它以表格形式表示“依赖”或“使用”关系。Parnas 定义了 A 和 B 之间的“使用”关系,因此当 B“使用”A 时,这意味着 B 依赖于 A 的正确操作来实现自己的正确操作。

使用关系在实际系统中形成一个图。DSM 是该图的矩阵表示,即所谓的“关联矩阵”,如果组件之间存在使用关系,则标记每个单元格。因此,如果DSM D中有n 个组件,则D i,j = 1 iff j “使用” i

于 2009-04-05T15:34:35.257 回答