Software clustering-based source code function search method

A search method and clustering technology, applied in other database indexing, other database retrieval, special data processing applications, etc., can solve problems such as search and function determination

Active Publication Date: 2016-12-07
HARBIN ENG UNIV
View PDF3 Cites 11 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

Through reading relevant literature and analyzing experimental data, it is found that the main problem of source code function positioning lies in search and function determination

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 clustering-based source code function search method
  • Software clustering-based source code function search method
  • Software clustering-based source code function search method

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0072] The present invention will be described in detail below with reference to the accompanying drawings.

[0073] The invention is divided into a software clustering module and a function searching module.

[0074] For the software clustering module, the specific steps of the software clustering algorithm proposed by the present invention are as follows:

[0075] Step 1: Extract the source code feature entity, that is, the information of each class;

[0076] Step 2: Obtain the specific information of each entity in the source code, including inter-class relationships, file relationships, and additional relationships;

[0077] Step 3: Construct feature vectors according to the extracted information;

[0078] Step 4: clustering using agglomerative algorithm;

[0079] Step 5: Combine the information extracted in step 2 to output the visual clustering results.

[0080] Extract class information using Doxygen. It directly uses Lex to parse Java code. Before extracting infor...

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 clustering-based source code function search method. The method comprises the following steps of: inputting a source code; carrying out grammar inspection on the source code and acquiring class information of the source code; and completing a search process through two modules, wherein the two modules comprise a software clustering module and a function search module, the software clustering module is used for screening an entity from acquired class information, constructing an entity index, extracting a feature, constructing a feature vector, screening information through hierarchical clustering, and storing a result, and the function search module is used for constructing an input set from the acquired class information, completing subject analysis, constructing an index and storing the index. The method provided by the invention can effectively enhance the software clustering result, and has good guiding function in the aspects of practical source code reading and system maintenance. Developers can use the method to guide the previous exploration, accelerating project understanding and enhance the development efficiency. And through further development, the method can be used for completing the multiplexing of function modules.

Description

technical field [0001] The invention relates to a method for searching corresponding functions in a source code project. Background technique [0002] With the prosperity and vigorous development of the Internet and open source software, developers are exposed to more and more codes, and the architecture of these software is also becoming more and more complex. The development of open source code is getting better and better, open source projects are getting bigger, and it is getting harder to understand and build on top of it. At this time, returning functions based on keywords instead of code snippets can greatly improve developer efficiency. Through reading relevant literature and analyzing experimental data, it is found that the main problem of source code function positioning lies in search and function determination. [0003] Software clustering is a special application of clustering. Because software clustering can decompose its structure and modules, it has a chan...

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): G06F17/30
CPCG06F16/901G06F16/90335
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