Defect-driven third-party library version upgrade recommendation method

A recommendation method and defect technology, applied in the field of defect-driven third-party library version upgrade recommendation, can solve problems such as difficult to determine, third-party library cannot be upgraded in time, and affect software system function and quality

CN111240719BActive Publication Date: 2021-08-20FUDAN UNIV
8 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Publication Date
2021-08-20

Smart Images

  • Figure 1
    Figure 1
Patent Text Reader

Abstract

The invention belongs to the technical field of software engineering, in particular to a defect-driven third-party library version upgrade recommendation method. The method of the present invention includes: analyzing the third-party library dependencies of the software project, and obtaining all third-party library versions that the software project depends on; detecting and quantifying the defects in the old third-party library versions through the risk analysis of the third-party library based on the program call graph Risks brought by software projects, including the number of third-party library defects affecting software projects, the number and number of calls of defective third-party library APIs called by software projects; through the analysis of third-party library upgrade costs based on API difference analysis, Recommend and quantify the update cost of upgrading to a new third-party library version, including the number and number of calls of third-party library APIs called by the software project, deleted and modified in the new third-party library version. The method of the invention drives and assists the developers to upgrade the third-party library in time, reduces the upgrade workload of the developers, and improves the quality of the software project.
Need to check novelty before this filing date? Find Prior Art

Description

technical field

[0001] The invention belongs to the technical field of software engineering, and in particular relates to a defect-driven third-party library version upgrade recommendation method. Background technique

[0002] In the software development process, third-party libraries play an important role. On the one hand, third-party libraries can be reused by developers to build software systems, allowing developers to focus more on the business logic of the software system. Therefore, third-party libraries can improve development efficiency, shorten development time and delivery time. On the other hand, third-party libraries are often widely used and tested by third-party library developers / testers and other developers / testers who use third-party libraries, so that the quality of third-party libraries is guaranteed to a certain extent. Therefore, third-party libraries can improve the overall quality of a software system. It can be seen that with the rapid development...

Examples

Embodiment Construction

[0020] The specific embodiment of the present invention is described below for Java, Maven software project, and its main use process is:

[0021] (1) Third-party library dependency analysis. Obtain the third-party library version that the software project depends on by parsing the dependency configuration file pom..xml of Java and Maven software projects;

[0022] (2) Risk analysis of third-party libraries. Obtain the third-party library API list through the static analysis tool Soot; traverse the abstract syntax tree of the source code of the software project through JavaParser and obtain the third-party library API called by the software project; obtain the call graph of the called third-party library API through the static analysis tool Soot And judge whether the third-party library API affected by the defect is included in the call graph; analyze and summarize the number of third-party library defects affecting the software project, the number of defective third-party li...