共查询到20条相似文献,搜索用时 46 毫秒
1.
《计算机应用与软件》2019,(9)
抽取方法是一种常用的代码重构手段,被广泛应用到软件开发和维护中。提出一个基于克隆检测的抽取方法重构模式的识别算法。以代码变更块hunk为单位,用代码克隆检测工具simian对候选的hunk进行筛选,用语法分析对该模式进行判定。在4个开源项目上进行实验,结果表明该算法具有较高的准确率。 相似文献
2.
3.
4.
针对序列密码算法中延迟较大的插入与抽取操作,提出基于butterfly和inverse butterfly网络的可重构硬件实现方案,使其支持位宽为2n比特的任意插入与抽取操作。并对控制信息生成算法进行深入的研究,在简化电路硬件实现的同时,大幅度提升了插入与抽取操作的处理性能。该设计已在FPGA上完成功能验证,并在CMOS 0.13μm工艺下完成综合与优化,结果表明,可重构插入与抽取单元延时小于2.7 ns,系统时钟频率达到了450 MHz。 相似文献
5.
中文比较句识别及比较关系抽取 总被引:1,自引:0,他引:1
比较是一种具有一定说服力的评估方式,利用机器进行比较句的识别以及比较关系的抽取可以对观点挖掘、信息推荐等应用提供重要的依据。该文通过构建中文比较模式库以实现中文比较句的自动识别。在此基础上,该文通过选取比较主体、比较客体及其上下文的词、词性、位置、语义以及比较属性的领域知识等特征,利用条件随机域模型进行中文比较关系抽取。实验结果表明,中文比较模式库的构建有助于比较句的自动识别,而在词、词性、位置等Baseline特征中融入语义、领域知识及启发式规则特征后,基于条件随机域的比较关系抽取结果有了显著的提高。 相似文献
6.
为提高重构效率,提出一种通过代码行变更指数来对异味类进行排序的方法.此前对于代码异味的研究主要关注静态代码行度量指标,但是在整个项目开发过程中代码行数是动态变化的,且变化规模越大的类出现异味的概率越大.通过对整个项目开发过程中代码行动态变化过程进行分析,提出代码行变更指数对异味类变化规模进行排序,使其重构主要关注那些变化较大的异味类,减少重构成本.对比实验结果表明,按照该方法对异味类进行重构,可以减少异味剩余率,提高重构效率. 相似文献
7.
8.
在Web应用程序中,有部分操作只是简单的从数据库根据条件提取数据,不需要经过任何处理,而直接将数据显示到网页上,比如在我们的系统中就有很多的查询操作,像教师查看自己的考评结果,管理员结束对某个教师的考评时要将该教师的信息从数据库中查询出来等。而另外一些操作,比如计算学生对某个教师考评的分数以及其中对分数累加操作等等,这部分往往有许多不同的功能的类,像我们的系统中有关计算的类就有两 相似文献
9.
10.
基于聚类的Web链接抽取 总被引:1,自引:0,他引:1
互联网是通过超链连接起来的网页,为人们的日常和商务用途提供了非常丰富的信息资源。链接结构分析在万维网的很多研究领域起着越来越重要的作用。然而链接中存在着许多与主题无关的链接,造成了主题漂移。本文分析了链接本身的特点,介绍了一种基于聚类的与网站模版无关的自动WEB链接抽取方法。试验结果表明该算法具有实用的价值。 相似文献
11.
12.
Once you have proved your refinement correct, that is not the end. Real products, and their accompanying specifications, develop over time, with new improved versions having added functionality. There are new maintenance issues that arise when altering and upgrading pre-existing large specifications and their respective proofs.We show how concepts from refactoring can be used to structure this process, and provide a means for well-defined, disciplined modifications. Additionally, we discuss how the analogy between proof and refactoring, as meaning preserving transforms, can be used to suggest the development of a refactoring toolset, and thence a refinement toolset. 相似文献
13.
针对粗粒度锁会严重影响并发程序的可伸缩性问题,提出一种面向细粒度锁的自动重构方法.该方法借助访问者模式分析、别名分析、负面效应分析等多种程序分析技术获取临界区代码的读写模式,然后使用下推自动机构建不同锁模式的识别方法,根据识别结果进行代码重构.与以往锁重构方法的不同之处在于,该方法考虑了锁降级模式,使重构适用性更广.基于此方法,在Eclipse JDT框架下,以插件的形式实现了自动重构工具FLock.在实验中,从重构个数、改变的代码行数、重构时间、准确性和重构后程序性能等方面对FLock进行了评估,并与已有的重构工具Relocker和CLOCK进行了对比.对HSQLDB,Jenkins和Cassandra等11个大型实际应用程序的重构结果表明:FLock共重构了1 757个内置监视器对象,每个程序重构平均用时17.5s.该重构工具可以有效地实现粗粒度锁到细粒度锁的转换,与手动重构相比,有效提升了细粒度锁的重构效率. 相似文献
14.
The quality of internetware software is significantly associated with class structure.As software evolves,changes often introduce many unrelated responsibilities to the same classes or distribute tightly-related methods in different classes.These changes make the classes difficult to understand and maintain.Extract class refactoring is an effective technique to improve the quality of software structure by decomposing unrelated methods in one class to create new classes or extracting tightly-related methods from different classes.In this paper,we propose a novel approach for class extraction from internetware source codes.This approach leverages a community structure detection technique to partition software into clusters and extracts classes from the resulting clusters.Our experimental results,which investigate the public well-known internetware PKUAS,indicate that:(1)the proposed approach is much faster than existing search-based clustering approaches(Hillclimbing and Genetic algorithm)and is thus applicable for large-scale internetware;(2)the proposed approach can identify meaningful class extractions for internetware;and(3)Extract Class refactoring candidates identified by the proposed approach significantly improve class cohesion of internetware. 相似文献
15.
16.
软件在其生命周期中不断地发生变更,以适应需求和环境的变化。为了及时预测每次变更是否引入了缺陷,研究者们提出了面向软件源代码变更的缺陷预测方法。然而现有方法存在以下3点不足:(1)仅实现了较粗粒度(事务级和源文件级变更)的预测;(2)仅采用向量空间模型表征变更,没有充分挖掘蕴藏在软件库中的程序结构、自然语言语义以及历史等信息;(3)仅探讨较短时间范围内的预测,未考虑在长时间软件演化过程中由于新需求或人员重组等外界因素所带来的概念漂移问题。针对现有的不足,提出一种面向源代码变更的缺陷预测方法。该方法将细粒度(语句级)变更作为预测对象,从而有效降低了质量保证成本;采用程序静态分析和自然语言语义主题推断相结合的技术深入挖掘软件库,从变更的上下文、内容、时间以及人员4个方面构建特征集,从而揭示了变更易于引入缺陷的因素;采用特征熵差值矩阵分析了软件演化过程中概念漂移问题的特点,并通过一种伴随概念回顾的动态窗口学习机制实现了长时间的稳定预测。通过6个著名开源软件验证了该方法的有效性。 相似文献
17.
Class structure refactoring of object-oriented softwares using community detection in dependency networks 总被引:2,自引:0,他引:2
Weifeng Pan Bing Li Yutao Ma Jing Liu Yeyi Qin 《Frontiers of Computer Science in China》2009,3(3):396-404
The quality of a software system is largely determined by its internal structures which always degrade over the software evolution.
Therefore, the structures have to be reconditioned from time to time. However, the existing methods are very complex and resource-consuming
when doing this task. In this paper, we present an approach to recondition the class structures of object-oriented (OO) software
systems. It uses attribute-method networks and method-method networks to represent attributes, methods and dependencies between
them; It proposes a guided community detection algorithm to obtain the optimized community structures in the method-method
networks, which also correspond to the optimized class structures; It also provides a list of refactorings by comparing the
optimized class structures with the real class structure in software systems and inspecting the attribute-method networks.
The approach is evaluated using the open-source case study, JHotDraw 5.1, and the advantages of our approach are illustrated
in comparison with existing methods. 相似文献
18.
The quality of a software system is largely determined by its internal structures which always degrade over the software evolution. Therefore, the structures have to be reconditioned from time to time. However, the existing methods are very complex and resource-consuming when doing this task. In this paper, we present an approach to recondition the class structures of object-oriented (OO) software systems. It uses attribute-method networks and method-method networks to represent attributes, methods and dependencies between them; It proposes a guided community detection algorithm to obtain the optimized community structures in the method-method networks, which also correspond to the optimized class structures; It also provides a list of refactorings by comparing the optimized class structures with the real class structure in software systems and inspecting the attribute-method networks. The approach is evaluated using the open-source case study, JHotDraw 5.1, and the advantages of our approach are illustrated in comparison with existing methods. 相似文献
19.
Huang Yuan Jia Nan Zhou Hao-Jie Chen Xiang-Ping Zheng Zi-Bin Tang Ming-Dong 《计算机科学技术学报》2020,35(6):1258-1277
Journal of Computer Science and Technology - Commit messages are important complementary information used in understanding code changes. To address message scarcity, some work is proposed for... 相似文献
20.
在软件重用中,软件设计重用受到关注.UML类图被广泛应用于软件设计,UML类图的重用已经成为软件设计重用研究的重点.随着可重用的UML类图数量的不断增加,分类成为一项基础性工作.一个新的基于语义的UML类图的两级分类被提出.定义了类图之间的语义相似性度量,提出了行最大值捕捉算法获取中心类图来标识每个类别特征,基于改进的... 相似文献