Software evolution-oriented code replaceability assessment method

A software and code-oriented technology, applied in code refactoring, software maintenance/management, software testing/debugging, etc., can solve the problems of not being able to provide replaceable change information, no code replaceability, etc.

Inactive Publication Date: 2016-08-17
SOUTHEAST UNIV +1
View PDF3 Cites 11 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0004] Identifying where changes in the program lead to changes in code replaceability is the difficulty in evolutionary analysis Currently, only one code version is measured for r

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Software evolution-oriented code replaceability assessment method
  • Software evolution-oriented code replaceability assessment method
  • Software evolution-oriented code replaceability assessment method

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0026] The present invention will be further described below in conjunction with embodiment and accompanying drawing.

[0027] In the embodiment, there are version Ver1 and its evolution version Ver2 in the project Proj. There are seven packages in Ver1, namely p1.1-p1.7, and the corresponding packages in Ver2 are p2.1-p2.7. Use the tool JcouplingEvaluator for evaluation, and its overall workflow is as follows figure 2 shown. Include the following steps:

[0028] Step 1, according to the source code, each class in the software version is constructed as an abstract syntax tree; the source code of the version Ver1 in the embodiment is constructed into a corresponding abstract syntax tree, and its abstract syntax tree is as follows image 3 shown;

[0029] As an intermediate representation of programs, Abstract Syntax Tree (AST) is widely used in many fields such as code analysis and program analysis. It maps java source code into a tree form: each java source file is repres...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

The invention discloses a software evolution-oriented code replaceability assessment method, and the method is used for analyzing and positioning evolution reasons. The method comprises the following steps: constructing a corresponding abstract syntax tree according to a source code; extracting edges which express dependency on the abstract syntax tree, so as to construct a code coupling relationship graph; defining a measurement code replaceability index on the basis of a program coupling relationship so as to calculate the replaceability of a mode in the code; analyzing the packages, the replaceability of which is changed, of the code in the evolution version, so as to recognize the elements which cause the code replaceability change. According to the assessment method disclosed in the invention, the replaceability of the original code and the measurement code can be automatically analyzed to point out core frameworks in the codes, and the change reasons in the evolution process can be analyzed and positioned to realize the automation of the evolution assessment.

Description

technical field [0001] The invention proposes a code replaceability evaluation method oriented to software evolution, which mainly uses the coupling relationship in the code to identify the cause of the replaceability evolution of the code, and belongs to the field of software maintenance and evolution. Background technique [0002] In the software life cycle, the software is constantly upgraded and changed to meet new requirements. Changes to software are often made under some external pressure, such as customers or industry competition. These changes will inevitably destroy the original structure of the program, increase the complexity of the program, and reduce the quality of the code. As a result, the maintenance cost of the software is significantly increased, and it becomes more difficult to upgrade the software. Any software development method and tool cannot avoid this problem. The later the software repair work is carried out, the higher the software maintenance c...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
IPC IPC(8): G06F9/44G06F11/36
CPCG06F8/72G06F11/3604
Inventor 李必信苗意盎廖力刘辉辉
Owner SOUTHEAST UNIV
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products