Software version evolution comparison analysis method based on AST

A software version, comparative analysis technology, applied in version control, software maintenance/management, software testing/debugging, etc., can solve problems such as difficult operation, failure to obtain models, low accuracy and efficiency of evolution analysis, and improve accuracy efficiency, improve development efficiency, and provide good guidance

Active Publication Date: 2017-09-26
HARBIN ENG UNIV
View PDF4 Cites 15 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0005] The third category is to view the changed and unchanged codes, and then conduct further research, analyze from the perspectives of text and software engineering, and construct a VCN (Visual CodeNavigator) by improving the work of diff to display the evolution through the view Information, visual understanding of version evolution rules, but VCN only supports C / C++
The fourth category is research on the model of software source code. Model mapping and comparison can be used for software reuse and software version evolution analysis. Although it can well meet the needs of software developers, it is necessary to obtain the model of the software version. Analysis, some software versions cannot obtain the model, generally speaking, this method is more difficult to operate
Compared with the original static source code analysis, the analysis algorithm for the overall structure of the entire source code version, the accuracy and efficiency of evolution analysis are not high

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 version evolution comparison analysis method based on AST
  • Software version evolution comparison analysis method based on AST
  • Software version evolution comparison analysis method based on AST

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0052] The following examples describe the present invention in more detail.

[0053] The AST-based software version evolution comparative analysis method of the present invention mainly comprises the following steps:

[0054] Step 1: Use the Unix Diff command to compare and analyze the source codes of the two software versions, obtain the addition, deletion, and change of code lines according to the analysis result file Patch, and divide the changed source code into three source code blocks.

[0055] Step 2: Obtain the AST information of the source code of the two software versions through the syntax analyzer, and analyze and obtain the AST information corresponding to each line of code of each source code block for the three types of source code blocks analyzed in the first step.

[0056] Step 3: Combining the acquired syntax node information into one piece of information, using the combined information to identify the corresponding line, and combining adjacent code lines wi...

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 provides a software version evolution comparison analysis method base on AST. Two software version source codes are compared and analyzed by a Diff order of a Unix, and changed source codes are divided into three source codes; AST information of the two software version source codes are obtained by a syntactic parser, and corresponding AST information of each line of code of each source code block is analyzed and obtained; obtained syntax node information is combined into combined information, and adjacent code lines with same identifications are combined into a module; identification information of the two source code blocks are compared and analyzed under the condition that modules are used as units, the identification information is subjected to classification analysis according to module evolution conditions, each evolution condition is processed by a preprocessing method and a secondary processing method, and evolution information is stored into a database and transformed into HTML codes. Compared with evolution comparison analysis methods of other software versions, the software version evolution comparison analysis method base on the AST can improve the accuracy rate of the obtained evolution information and improve the efficiency of software version evolution and analysis.

Description

technical field [0001] The invention relates to a software version evolution comparative analysis method, in particular to a Diff-based AST software version evolution comparative analysis method. Background technique [0002] The essence of software version evolution analysis is to perform difference analysis on software source code, and the technical background of the present invention is introduced for the method of software evolution analysis and source code difference analysis method. [0003] Software evolution is divided into dynamic evolution and static evolution. Dynamic evolution is also called online evolution, which refers to the evolution during software execution. Static evolution is more about an understanding and display of the source code differences of software versions. The software version evolution described next Just for static evolution. It mainly introduces the software version evolution analysis method related to the source code difference analysis m...

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
Patent Type & Authority Applications(China)
IPC IPC(8): G06F11/36G06F9/44
CPCG06F8/71G06F11/3604
Inventor 吴艳霞刘志江李晓松孙彬卢文祥
Owner HARBIN ENG 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