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

Method for identifying key classes in software system based on graph neural network

A neural network and network technology, applied in the field of software engineering software network analysis, can solve problems such as high computational complexity, software system crashes, and affecting modules

Active Publication Date: 2020-11-10
HUBEI UNIV
View PDF4 Cites 7 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

It is becoming more and more difficult to find these defects. Once these defects are exposed in the process of using the software, it often affects not only the module itself where the defect is located, but the entire software system may collapse.
When the above methods calculate the importance of nodes, most of them are based on the local information of nodes, and some methods based on global information have high computational complexity in real large-scale networks.
In addition, the above methods are all carried out on the basis of manually constructing metrics, and the graph neural network has not been used to automatically learn the global structural information of the network and apply the learning results to the key class identification research of software systems.

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
  • Method for identifying key classes in software system based on graph neural network
  • Method for identifying key classes in software system based on graph neural network
  • Method for identifying key classes in software system based on graph neural network

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0049] In order to make the object, technical solution and advantages of the present invention clearer, the present invention will be further described in detail below with reference to the accompanying drawings and examples.

[0050] The embodiment is to choose the software system developed by Java language as the research object, because in the process of model training, due to the relatively large scale of the real software system, it takes a long time to train, considering that the software network satisfies the basic characteristics of the complex network, so the use of The artificially generated complex network is used as a sample for model training, and the node shrinkage method is used as a reference to mark the importance of network nodes in the training sample. Finally, the trained model is used for key class identification of real software systems, and the network robustness index is used to evaluate the accuracy of key class identification.

[0051] Using the lates...

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 method for identifying key classes in a software system based on a graph neural network, which comprises the following steps of: (1) analyzing a software source code file byusing an open source tool, extracting various association relationships among classes, and constructing a weighted software network model among the classes according to the relationships; (2) learningnodes in the weighted software network by using a network embedding method to obtain embedded vectors of the nodes; (3) constructing a sorting model based on a graph neural network; and (4) trainingthe model by using pairwise sorting loss to realize importance sorting of nodes in the network. The invention has the advantages that under the condition that the recognition precision is ensured, a large software system can be analyzed within extremely low time complexity, and potential key classes can be recognized from the large software system. Developers understand a software structure and improve the stability of a software system.

Description

technical field [0001] The invention relates to the technical field of software engineering software network analysis, in particular to a method for identifying key classes in a software system based on a graph neural network. Background technique [0002] As the scale of the network continues to expand, the complexity of the software system continues to increase, and defects in the software are inevitable. It is becoming more and more difficult to find these defects. Once these defects are exposed during the use of software, it often affects not only the module itself where the defect is located, but the entire software system may collapse. Some studies have pointed out that defects in software systems are similar to the propagation model of diseases, and will spread to other modules without defects along with the dependencies between various modules in the software system, such as method calls and parameter transfers, resulting in no defects. The module of the last also h...

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): G06F8/30G06F8/41G06K9/62G06N3/04G06N3/08
CPCG06F8/315G06F8/443G06N3/08G06N3/045G06F18/214
Inventor 何鹏陈宇轩张健雄王展王雪纯
Owner HUBEI 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