1000 resultados para Code clone


Relevância:

100.00% 100.00%

Publicador:

Resumo:

In all applications of clone detection it is important to have precise and efficient clone identification algorithms. This paper proposes and outlines a new algorithm, KClone for clone detection that incorporates a novel combination of lexical and local dependence analysis to achieve precision, while retaining speed. The paper also reports on the initial results of a case study using an implementation of KClone with which we have been experimenting. The results indi- cate the ability of KClone to find types-1,2, and 3 clones compared to token-based and PDG-based techniques. The paper also reports results of an initial empirical study of the performance of KClone compared to CCFinderX.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Code clone detection helps connect developers across projects, if we do it on a large scale. The cornerstones that allow clone detection to work on a large scale are: (1) bad hashing (2) lightweight parsing using regular expressions and (3) MapReduce pipelines. Bad hashing means to determine whether or not two artifacts are similar by checking whether their hashes are identical. We show a bad hashing scheme that works well on source code. Lightweight parsing using regular expressions is our technique of obtaining entire parse trees from regular expressions, robustly and efficiently. We detail the algorithm and implementation of one such regular expression engine. MapReduce pipelines are a way of expressing a computation such that it can automatically and simply be parallelized. We detail the design and implementation of one such MapReduce pipeline that is efficient and debuggable. We show a clone detector that combines these cornerstones to detect code clones across all projects, across all versions of each project.

Relevância:

70.00% 70.00%

Publicador:

Resumo:

Code clones are portions of source code which are similar to the original program code. The presence of code clones is considered as a bad feature of software as the maintenance of software becomes difficult due to the presence of code clones. Methods for code clone detection have gained immense significance in the last few years as they play a significant role in engineering applications such as analysis of program code, program understanding, plagiarism detection, error detection, code compaction and many more similar tasks. Despite of all these facts, several features of code clones if properly utilized can make software development process easier. In this work, we have pointed out such a feature of code clones which highlight the relevance of code clones in test sequence identification. Here program slicing is used in code clone detection. In addition, a classification of code clones is presented and the benefit of using program slicing in code clone detection is also mentioned in this work.

Relevância:

70.00% 70.00%

Publicador:

Resumo:

Code patterns, including programming patterns and design patterns, are good references for programming language feature improvement and software re-engineering. However, to our knowledge, no existing research has attempted to detect code patterns based on code clone detection technology. In this study, we build upon the previous work and propose to detect and analyze code patterns from a collection of open source projects using NiPAT technology. Because design patterns are most closely associated with object-oriented languages, we choose Java and Python projects to conduct our study. The tool we use for detecting patterns is NiPAT, a pattern detecting tool originally developed for the TXL programming language based on the NiCad clone detector. We extend NiPAT for the Java and Python programming languages. Then, we try to identify all the patterns from the pattern report and classify them into several different categories. In the end of the study, we analyze all the patterns and compare the differences between Java and Python patterns.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Software similarity and classification is an emerging topic with wide applications. It is applicable to the areas of malware detection, software theft detection, plagiarism detection, and software clone detection. Extracting program features, processing those features into suitable representations, and constructing distance metrics to define similarity and dissimilarity are the key methods to identify software variants, clones, derivatives, and classes of software. Software Similarity and Classification reviews the literature of those core concepts, in addition to relevant literature in each application and demonstrates that considering these applied problems as a similarity and classification problem enables techniques to be shared between areas. Additionally, the authors present in-depth case studies using the software similarity and classification techniques developed throughout the book.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Developers sometimes maintain an internal copy of another software or fork development of an existing project. This practice can lead to software vulnerabilities when the embedded code is not kept up to date with upstream sources. We propose an automated solution to identify clones of packages without any prior knowledge of these relationships. We then correlate clones with vulnerability information to identify outstanding security problems. This approach motivates software maintainers to avoid using cloned packages and link against system wide libraries. We propose over 30 novel features that enable us to use to use pattern classification to accurately identify package-level clones. To our knowledge, we are the first to consider clone detection as a classification problem. Our results show our system, Clonewise, compares well to manually tracked databases. Based on our work, over 30 unknown package clones and vulnerabilities have been identified and patched.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

This article explains the relevance of the Code and its place in the regulatory framework, discusses some of the key issues arising in the recent review (as identified by consumer advocates1), and explains the relationship between the Code and the Financial Ombudsman Service.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

This report is the culmination of a two-stage research project to inform the Australian property and construction industry generally, in addition to providing the Australian Building Codes Board (ABCB) with information to allow it to determine whether or not sustainability requirements are necessary in the Future Building Code of Australia (BCA21). The Australian Building Codes Board is a joint initiative of all levels of government in Australia. The Board’s mission is to provide for efficiency and cost effectiveness in meeting community expectations for health, safety and amenity in the design, construction and use of buildings through the creation of nationally consistent building codes, standards, regulatory requirements and regulatory systems. The Stage 1 (literature review) and Stage 2 (workshops) reports are intended to be read in conjunction with one another. These reports and the Database are provided as appendices. The Conclusions of this, the final report, are the result of the overall program of work.

Relevância:

20.00% 20.00%

Publicador:

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Most buildings constructed in Australia must comply with the Building Code of Australia (BCA). Checking for compliance against the BCA is a major task for both designers and building surveyors. This project carries out a prototype research using the EDM Model Checker and the SMC Model Checker for automated design checking against the Building Codes of Australia for use in professional practice. In this project, we develop a means of encoding design requirements and domain specific knowledge for building codes and investigate the flexibility of building models to contain design information. After assessing two implementations of EDM and SMC that check compliance against deemed-to-satisfy provision of building codes relevant to access by people with disabilities, an approach to automated code checking using a shared object-oriented database is established. This project can be applied in other potential areas – including checking a building design for non-compliance of many types of design requirements. Recommendations for future development and use in other potential areas in construction industries are discussed

Relevância:

20.00% 20.00%

Publicador:

Resumo:

The Australian construction industry is moving towards the implementation of a voluntary code of practice (VCP) for occupational health and safety (OHS). The evidence suggests that highly-visible clients and project management firms, in addition to their subcontractors, will embrace such a code, while smaller firms not operating in high-profile contracting regimes may prove reticent. This paper incorporates qualitative data from a research project commissioned by Engineers Australia and supported by the Australian Contractors’ Association, Property Council of Australia, Royal Australian Institute of Architects, Association of Consulting Engineers Australia, Australian Procurement and Construction Council, Master Builders Australia and the Australian CRC for Construction Innovation. The paper aims to understand the factors that facilitate or prevent the uptake of the proposed VCP by smaller firms, together with pathways to adoption.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

The Australian construction industry, reflecting a global trend, is moving towards the implementation of a voluntary code of practice (hereafter VCP) for occupational health and safety. The evidence suggests that highlyvisible clients and project management firms, in addition to their subcontractors, look set to embrace such a code. However, smaller firms not operating in high-profile contracting regimes may prove reticent to adopt a VCP. This paper incorporates qualitative data from a high-profile research project commissioned by Engineers Australia and supported by the Australian Contractors’ Association, Property Council of Australia, Royal Australian Institute of Architects, Association of Consulting Engineers Australia, Australian Procurement and Construction Council, Master Builders Australia and the Australian CRC for Construction Innovation. The paper aims to understand the factors that facilitate or prevent the uptake of the VCP by smaller firms, together with pathways to the adoption of a VCP by industry.