Software module division method based on Markov clustering
A software module and clustering technology, applied in software design, computer parts, character and pattern recognition, etc., can solve the problems of lack of division, time-consuming, inconsistent division results, etc., and achieve the effect of fast division process
- Summary
- Abstract
- Description
- Claims
- Application Information
AI Technical Summary
Problems solved by technology
Method used
Image
Examples
Embodiment 1
[0031] A software module division method based on Markov clustering. First, the software is discretized into a function set F of multiple functions, and then the functional relationship matrix R is formed through the data flow between the functions in the function set F. Finally, the function matrix R is the object, and an adaptive software function division module is formed through Markov clustering; the specific operation is:
[0032] Step S1. Discretize the software into a function set F of multiple functions: For software containing n functions, construct a function set F={f 1 , f 2 ,..., f n}, where f i (1≤i≤n), f j (1≤j≤n) is a function in the function set.
[0033] Step S2. Forming a functional relationship matrix R:
[0034] First set the functional relationship matrix R=(r ij ) n×n ;
[0035] then set r ij The value of w is the function f i with function f j The number of data items that flow directly between them.
[0036] Step S3. Taking the function mat...
Embodiment 2
[0042] In the present invention, on the basis of the above-mentioned embodiment 1, in order to better realize the present invention, further, the specific operation of constructing the probability matrix P is as follows:
[0043] First set the construction probability matrix P as P=(p ij ) n×n ;
[0044] Then to P ij Carry out value calculation, the specific value calculation method is, when i=j, P ij The value is 1, when i≠j, P ij value is r ij ;
[0045] Finally the P ij The calculated value probability matrix P=(p ij ) n×n , the probability matrix P is obtained.
[0046] The operation of performing normalization is specifically as follows:
[0047] Normalize the probability matrix P to obtain the normalized probability matrix P'=(p' ij ) n×n , where the P' ij The calculation process of is as follows: firstly, take the value of P in the range of 1 to n for i ij sum, then use P ij Divide by the summed value to get P'ij .
[0048] The specific operation of the ...
Embodiment 3
[0053] On the basis of any one of the above-mentioned embodiments 1-2, the present invention provides a specific example of actual division:
[0054] Such as figure 1 , figure 2 As shown, for the functions in the software, the specific module division steps are as follows:
[0055] Step 1. For software containing 30 functions, construct its function set F={f 1 , f 2 ,..., f 30}, where f i (1≤i≤30) is a function of the software.
[0056] Step 2. Construct functional relationship matrix R=(r ij ) n×n , r ij Indicates the number of data items that flow directly between functions, and its value follows the following rules:
[0057] r ij =w.
[0058] In the formula: w is f i and f j The number of data items that flow directly between
[0059] Get the functional relationship matrix of the software:
[0060]
[0061] Step 3. Construct probability matrix P=(p ij ) n×n ,in:
[0062]
[0063] Step 4. Normalize P to get P'=(p' ij ) n×n ,in:
[0064]
[0065...
PUM

Abstract
Description
Claims
Application Information

- R&D Engineer
- R&D Manager
- IP Professional
- Industry Leading Data Capabilities
- Powerful AI technology
- Patent DNA Extraction
Browse by: Latest US Patents, China's latest patents, Technical Efficacy Thesaurus, Application Domain, Technology Topic, Popular Technical Reports.
© 2024 PatSnap. All rights reserved.Legal|Privacy policy|Modern Slavery Act Transparency Statement|Sitemap|About US| Contact US: help@patsnap.com