Looking for breakthrough ideas for innovation challenges? Try Patsnap Eureka!

Software evolution evaluation method based on code loop complexity measurement

A technology of software evolution and complexity, which is applied in software testing/debugging, instrumentation, electrical digital data processing, etc., and can solve the problems that the complexity cannot be effectively controlled

Inactive Publication Date: 2017-10-10
SOUTHEAST UNIV
View PDF2 Cites 18 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0005] Technical problem: The purpose of this invention is to provide a method for automatically evaluating and analyzing the evolution of software code cyclomatic complexity, so as to solve the problem that the complexity cannot be effectively controlled during the software evolution process

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 evaluation method based on code loop complexity measurement
  • Software evolution evaluation method based on code loop complexity measurement
  • Software evolution evaluation method based on code loop complexity measurement

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0061] The present invention will be further described below in conjunction with embodiment and accompanying drawing. figure 1 The process of software evolution evaluation method based on code cyclomatic complexity measurement is given. The project used in the embodiment is the Java open source software project JEditor.

[0062] JEditor is a Java-based open source text editor. So far, 7 versions have been released. The number of code lines is between 13098-13635. The download address is http: / / sourceforge.net / projects / jeditor / files / .

[0063] The embodiment of cyclomatic complexity measurement evaluation is JEditor0.2 version; on the basis of measuring each version of JEditor separately, we selected JEditor0.4 and JEditor0.4.1 with the largest complexity change for cyclomatic complexity evolution reason Examples of analysis. The specific implementation method is:

[0064] Step 1) Use JDT to analyze the program source code of Jeditor 0.2 to generate an abstract syntax tree. ...

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 evaluation method based on code loop complexity measurement. The method includes the steps of firstly, conducting code parse on a to-be-evaluated software source code to generate an abstract syntax tree; secondly, by calculating the number of determination nodes in the abstract syntax tree, conducting the code loop complexity measurement by the three levels of a method level, a class level and a system level; finally, conducting threshold comparison assessment on the metric of the method level and the class level. According to the method, after acquiring the code loop complexity metric of each software version, the loop complexity before and after software evolution is compared and analyzed to locate the change position of complexity and analyze the reason of complexity changes through code change detection. The evaluation method can not only automatically parse the source code to evaluate the loop complexity of the code by various aspects of software and make an early warning for modules and methods with excessive complexity, but also locate the position which causes the complexity changes in evolution, and analyze the causes of the changes to provide reference bases for software evolution evaluation.

Description

technical field [0001] The invention relates to a software evolution evaluation method based on code cyclomatic complexity measurement, which belongs to the field of software evolution and maintenance. Background technique [0002] Code complexity is a measure of the complexity of the code and an indication of the effort required to understand and maintain the code. Code complexity directly affects software quality attributes such as readability, maintainability, and understandability. By evaluating the code complexity, it can help developers understand, control and adjust the complexity of the code in a timely manner. [0003] Cyclomatic complexity is a kind of code complexity, and it is a quality indicator used to measure the complexity of the judgment structure in the program. Usually, people use the measurement and evaluation of cyclomatic complexity to measure the complexity of software module judgment structure, understand the minimum number of paths to be tested to ...

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/36
CPCG06F11/3692
Inventor 廖力李必信何磊
Owner SOUTHEAST UNIV
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Patsnap Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Patsnap Eureka Blog
Learn More
PatSnap group products