我正在尝试创建一个项目,以使用粒子群优化为班级责任分配问题提供决策支持。考虑耦合和内聚等各种参数,导出适应度函数,并进行粒子群优化。程序的输入将是 XML 格式的 UML 类图。如何从 XML 格式的 UML 类图中计算以下参数:
MAC(c) - 类 c 与其他类之间的方法-属性耦合 - 一个类 (c) 的方法与同一类图中其他类的属性之间的交互总数 MMC(c) - 类之间的方法-方法耦合c 和其他类——一个类 (c) 的方法与同一类图中其他类的方法之间的交互总数 MGC(c) 方法泛化耦合——这仅适用于应用泛化的类图中。
RCI(c) c 类内聚相互作用的比率:RCI(c) = |CI(c)| / |CImax(c)|。
CImax(c) 是类 c 中最大可能的内聚相互作用。CI(c) 是类 c 中现有内聚交互的数量。
TCC(c) 紧密类内聚 - 是常用的类 c∈C 的方法对 m1 和 m2。
DMA (m,a) 方法 m 和属性 a 之间的直接方法属性依赖关系。
DMM (m1,m) m1 和 m2 之间的直接方法-方法依赖关系。
如何从 XML 格式的 UML 类图中计算这些参数?