引入特征机制的设计模式变体挖掘方法
2021-04-22肖卓宇徐运标
计算机工程与设计 2021年4期
肖卓宇,何 锫,陈 果,徐运标,郭 杰
(1.湖南工业职业技术学院 信息工程学院,湖南 长沙 410208;2.广州大学 计算机科学与网络工程学院,广东 广州 510006)
0 引 言
基于设计模式挖掘的逆向工程有助于从遗产系统中获取有价值的信息,并能提升软件设计师对程序的理解[1,2]。为此,业内专家提出众多工具、方法对设计模式进行挖掘[3-5],文献[6]提出一种软件设计模式分簇方法,方法有助于对参与者及存在的关系进行分类。文献[7]提出基于文法关系驱动的设计模式变体检测方法。文献[8]提出基于本体匹配的设计模式挖掘方法。文献[9]基于图论与语义提出两阶段的设计模式挖掘方法。文献[10]通过图论原理,以积分Matrix Grade评估原则检测设计模式。文献[11]基于子模式对特征信息进行机器学习,以提升设计模式挖掘评估指标的有效性。文献[12]描述与验证了8种Bridge设计模式变体。文献[13]归纳了设计模式变体的普遍性特征,为设计模式检测提供了理论支持。文献[14]关注了非标准设计模式,能较好解决设计模式实例重叠问题。
综上所述,主流设计模式挖掘方法存在几点问题:忽视了设计模式变体对评估结果的影响;对设计模式变体缺乏分类归纳;缺乏设计模式变体基准的归纳,基准库也不够完善;缺乏简明有效的设计模式变体挖掘方法。
Gamma将GOF设计模式分为结构型、行为型、创建型3类,被广泛推崇[4]。近些年,研发人员将标准GOF设计模式演化为不同的版本(即:变体[12]),并应用于不同的专业领域。变体遵循不改变软件设计意图的原则,虽有助于提升软件研发效率,但也给设计模式挖掘领域带来了新问题[13]。……
登录APP查看全文
