CN109491709B - Software code controllability comprehensive evaluation method based on AHP and neural network - Google Patents

Software code controllability comprehensive evaluation method based on AHP and neural network Download PDF

Info

Publication number
CN109491709B
CN109491709B CN201811270187.1A CN201811270187A CN109491709B CN 109491709 B CN109491709 B CN 109491709B CN 201811270187 A CN201811270187 A CN 201811270187A CN 109491709 B CN109491709 B CN 109491709B
Authority
CN
China
Prior art keywords
neural network
layer
controllability
software code
elements
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811270187.1A
Other languages
Chinese (zh)
Other versions
CN109491709A (en
Inventor
冯大成
高昕睿
李雅斯
陶金龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Computer Technology and Applications
Original Assignee
Beijing Institute of Computer Technology and Applications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Computer Technology and Applications filed Critical Beijing Institute of Computer Technology and Applications
Priority to CN201811270187.1A priority Critical patent/CN109491709B/en
Publication of CN109491709A publication Critical patent/CN109491709A/en
Application granted granted Critical
Publication of CN109491709B publication Critical patent/CN109491709B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/77Software metrics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Stored Programmes (AREA)

Abstract

The invention relates to a comprehensive evaluation method for software code controllability based on AHP and a neural network, and relates to the technical field of software code controllability evaluation. The invention provides a reasonable software code controllability measurement model, provides a software code controllability comprehensive evaluation model using the weight obtained by an analytic hierarchy process as the input of a neural network, and solves the problems that when a complex system is modeled, because influence factors are too many, the complexity of the network is increased, the network performance is reduced, and the calculation accuracy is influenced by using the influence factors as the input of the neural network. The result of the application of the engineering example shows that the evaluation result of the controllability combining the hierarchical analysis and the neural network is credible and effective aiming at the complex software code.

Description

Software code controllability comprehensive evaluation method based on AHP and neural network
Technical Field
The invention relates to the technical field of software code controllability evaluation, in particular to a comprehensive software code controllability evaluation method based on AHP and a neural network.
Background
At present, no method for quantitative evaluation of software code controllability exists. For quantitative evaluation of the controllability of a software code, a code controllability measurement model needs to be established firstly, a measurement element influencing the controllability of the code is determined, and then the controllability of the code is evaluated quantitatively based on a plurality of measurement elements, so that the problem of a multi-factor and multi-index modeling method is involved. The modeling method comprises an optimization method, a fuzzy comprehensive evaluation method, an AHP method, a neural network method and the like. Selecting an appropriate modeling method is a difficulty in quantitative evaluation of software code controllability.
There are many factors that affect the controllability of software codes, and how to determine a reasonable measurement model is still blank at present. After the measurement model of the evaluation of the controllability is determined, because a plurality of measurement elements are not mutually independent, the weights of different measurement elements on the influence of the controllability of the code are different, and the weight coefficient may change to a certain extent along with the difference of application objects, so that the training speed and the generalization capability of the evaluation model are influenced. Therefore, a comprehensive evaluation model needs to be established, and the measurement elements are reasonably analyzed and utilized to evaluate the controllability of the software codes.
Disclosure of Invention
Technical problem to be solved
The technical problem to be solved by the invention is as follows: how to design a credible and effective comprehensive evaluation method for the controllability of software codes.
(II) technical scheme
In order to solve the technical problem, the invention provides a comprehensive evaluation method for software code controllability based on AHP and neural network, which comprises the following steps:
the first step is as follows: selecting a related measurement index of the controllability of the software code;
the second step is that: analyzing the relation among all measurement indexes, and establishing a hierarchical structure of the system;
firstly, organizing and layering problems to construct a layered structure model, under the model, a complex problem is decomposed into a plurality of elements, the elements form a plurality of layers according to attributes and relations of the elements, the elements of the previous layer are used as criteria to dominate the related elements of the next layer, and the layers are divided into three types: the highest layer is a target layer, and has only one element, which is generally a predetermined target or ideal result of an analysis problem; the middle layer is a criterion layer and comprises a middle link related to the realization of a target, and the middle layer consists of a plurality of layers and comprises a criterion and a sub-criterion which need to be considered; the bottom layer is a scheme layer which comprises various measures and decision schemes which can be selected for realizing the target;
the third step: comparing every two of the importance of each element of the same level in the criterion layer and the scheme layer relative to a criterion in the previous level, and constructing a judgment matrix for comparing every two;
the fourth step: calculating the relative weight of the compared elements corresponding to the criterion by using the judgment matrix, and carrying out consistency check on the judgment matrix;
the fifth step: calculating the total weight of each level to the target, and sequencing to obtain the total sequence of the scheme to the target;
and a sixth step: selecting preset N high-weight measurement elements as input of a neural network;
the seventh step: preparing M pieces of software to be tested, collecting measurement data of N measurement elements of each piece of software, and normalizing the data;
eighth step: selecting the type, the number of hidden layers and the number of nodes of the hidden layers of the neural network, wherein an output layer is a code controllable metric value; initializing the selected network, and setting all adjustable parameters as a random value in an interval of (0, 1);
the ninth step: taking the measurement data as an input value of a neural network, taking a controllable measurement value of a software code as an output of the neural network, and training the neural network, wherein the training basis is that the sum of squares of errors between the actual output and the target output of the network is smaller than a preset error value xi;
the tenth step: and circularly executing the ninth step, and continuing to train the neural network until the error between the predicted result of the controllable metric value of the software code output by the neural network and the actual result of the software reaches the error requirement.
Preferably, in a first step, the following metric model is employed:
TABLE 1
Figure BDA0001845822370000031
Figure BDA0001845822370000041
The correlation of the controllability of the software codes comprises A in Table 11~A2,B11~B25,C11~C39
Preferably, in the eighth step, the type of the selected neural network is a BP neural network.
Preferably, in the eighth step, the number of implicit layers is selected to be 1.
Preferably, the error value ξ in the ninth step is 1.0 × 10-4
(III) advantageous effects
The invention provides a reasonable software code controllability measurement model, provides a software code controllability comprehensive evaluation model using the weight obtained by an analytic hierarchy process as the input of a neural network, and solves the problems that when a complex system is modeled, because influence factors are too many, the complexity of the network is increased, the network performance is reduced, and the calculation accuracy is influenced by using the influence factors as the input of the neural network. The result of the application of the engineering example shows that the evaluation result of the controllability combining the hierarchical analysis and the neural network is credible and effective aiming at the complex software code.
Drawings
FIG. 1 is a schematic diagram of a hierarchical structure of the present invention.
Detailed Description
In order to make the objects, contents, and advantages of the present invention clearer, the following detailed description of the embodiments of the present invention will be made in conjunction with the accompanying drawings and examples.
The invention establishes a software code controllability comprehensive evaluation method by combining AHP and a neural network, which comprises the following steps: firstly, an analytic hierarchy process is used as the pretreatment of the artificial neural network, the importance degree number of a plurality of measurement elements is quantified through an expert evaluation means combining quantification and qualification, and the result is used as the input of the neural network. The convergence rate and the evaluation accuracy of the traditional neural network evaluation model are improved.
Based on the above thought, the comprehensive evaluation method for software code controllability based on AHP and neural network provided by the invention comprises the following steps:
the first step is as follows: selecting a related measurement index of the controllability of the software code;
for example, the following metrology models can be used, with specific models shown in table 1.
TABLE 1 evaluation of metrology models used
Figure BDA0001845822370000051
Figure BDA0001845822370000061
The second step is that: analyzing the relation among all measurement indexes (including A1-A2, B11-B25 and C11-C39 in the table 1) and establishing a hierarchical structure of the system;
firstly, the problems are organized and layered to construct a layered structure model. Under this model, the complex problem is decomposed into multiple elements, which in turn form several levels according to their attributes and relationships, with the elements of the previous level dominating the related elements of the next level as criteria. These hierarchies can be divided into three categories: highest layer (target layer): only one element, typically a predetermined target or ideal result of an analytical problem; intermediate layer (criterion layer): the method comprises an intermediate link related to the realization of a target, and the intermediate link can be composed of a plurality of layers, including a criterion and a sub-criterion which need to be considered; bottom layer (scheme layer): including various measures, decision schemes, etc. that may be selected to achieve the objectives, are shown in fig. 1.
The third step: comparing every two of the importance of each element of the same level in the criterion layer and the scheme layer about a criterion in the previous level, and constructing a judgment matrix for comparing every two of the elements;
the fourth step: calculating the relative weight of the compared elements corresponding to the criterion by using the judgment matrix, and carrying out consistency check on the judgment matrix;
the fifth step: and calculating the total weight of each layer to the decision target and sequencing. Finally, obtaining the total ordering of the scheme to the decision target;
and a sixth step: selecting N measuring elements with high weight as the input of a neural network based on the analytic hierarchy process;
the seventh step: preparing M pieces of software to be tested, collecting measurement data of N measurement elements of each piece of software, and normalizing the data;
eighth step: selecting the type of the neural network (recommending BP neural network), the number of hidden layers (recommending 1 layer) and the number of nodes of the hidden layers, wherein the output layer is a code controllable metric value; initializing the selected network, and setting all adjustable parameters (weight and threshold) as a random value in an interval of (0, 1);
the ninth step: the measurement data is used as the input value of the neural network, and the controllable measurement value of the software code is used as the output of the neural networkAnd (6) training the neural network. The training base is to make the sum of the squares of the errors between the actual output and the target output of the network smaller than a predetermined error value xi, which is 1.0 × 10-4
The tenth step: and circularly executing the ninth step, and continuing to train the neural network until the error between the predicted result of the controllable metric value of the software code output by the neural network and the actual result of the software reaches the error requirement.
The above description is only a preferred embodiment of the present invention, and it should be noted that, for those skilled in the art, several modifications and variations can be made without departing from the technical principle of the present invention, and these modifications and variations should also be regarded as the protection scope of the present invention.

Claims (4)

1. A comprehensive evaluation method for software code controllability based on AHP and neural network is characterized by comprising the following steps:
the first step is as follows: selecting a related measurement index of the controllability of the software code;
the second step is that: analyzing the relation among all measurement indexes, and establishing a hierarchical structure of the system;
firstly, organizing and layering problems to construct a layered structure model, under the model, a complex problem is decomposed into a plurality of elements, the elements form a plurality of layers according to attributes and relations of the elements, the elements of the previous layer are used as criteria to dominate the related elements of the next layer, and the layers are divided into three types: the highest layer is a target layer, and has only one element, which is generally a predetermined target or ideal result of an analysis problem; the middle layer is a criterion layer and comprises a middle link related to the realization of a target, and the middle layer consists of a plurality of layers and comprises a criterion and a sub-criterion which need to be considered; the bottom layer is a scheme layer which comprises various measures and decision schemes which can be selected for realizing the target;
the third step: comparing every two of the importance of each element of the same level in the criterion layer and the scheme layer relative to a criterion in the previous level, and constructing a judgment matrix for comparing every two;
the fourth step: calculating the relative weight of the compared elements corresponding to the criterion by using the judgment matrix, and carrying out consistency check on the judgment matrix;
the fifth step: calculating the total weight of each level to the target, and sequencing to obtain the total sequence of the scheme to the target;
and a sixth step: selecting preset N high-weight measurement elements as input of a neural network;
the seventh step: preparing M pieces of software to be tested, collecting measurement data of N measurement elements of each piece of software, and normalizing the data;
eighth step: selecting the type, the number of hidden layers and the number of nodes of the hidden layers of the neural network, wherein an output layer is a code controllable metric value; initializing the selected network, and setting all adjustable parameters as a random value in an interval of (0, 1);
the ninth step: taking the measurement data as an input value of a neural network, taking a controllable measurement value of a software code as an output of the neural network, and training the neural network, wherein the training basis is that the sum of squares of errors between the actual output and the target output of the network is smaller than a preset error value xi;
the tenth step: circularly executing the ninth step, and continuing to train the neural network until the error between the prediction result of the controllable metric value of the software code output by the neural network and the actual result of the software meets the error requirement;
in the first step, the following metric model is used:
TABLE 1
Figure FDA0003010955660000021
Figure FDA0003010955660000031
The correlation of the controllability of the software codes comprises A in Table 11~A2,B11~B25,C11~C39
2. The method of claim 1, wherein in the eighth step, the type of the selected neural network is a BP neural network.
3. The method of claim 1, wherein in the eighth step, the number of implicit layers is selected to be 1 layer.
4. A method according to any one of claims 1 to 3, wherein the error value ξ in the ninth step is 1.0 x 10 in size-4
CN201811270187.1A 2018-10-29 2018-10-29 Software code controllability comprehensive evaluation method based on AHP and neural network Active CN109491709B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811270187.1A CN109491709B (en) 2018-10-29 2018-10-29 Software code controllability comprehensive evaluation method based on AHP and neural network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811270187.1A CN109491709B (en) 2018-10-29 2018-10-29 Software code controllability comprehensive evaluation method based on AHP and neural network

Publications (2)

Publication Number Publication Date
CN109491709A CN109491709A (en) 2019-03-19
CN109491709B true CN109491709B (en) 2021-07-02

Family

ID=65691626

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811270187.1A Active CN109491709B (en) 2018-10-29 2018-10-29 Software code controllability comprehensive evaluation method based on AHP and neural network

Country Status (1)

Country Link
CN (1) CN109491709B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110221976B (en) * 2019-05-28 2023-08-22 广西电网有限责任公司电力科学研究院 Quantitative evaluation method for quality of metering terminal software based on measurement technology
CN110502277B (en) * 2019-08-30 2023-04-07 西安邮电大学 Code bad smell detection method based on BP neural network
CN113806223A (en) * 2021-09-10 2021-12-17 北京中联国成科技有限公司 Software evaluation method and device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5754738A (en) * 1996-06-07 1998-05-19 Camc Corporation Computerized prototyping system employing virtual system design enviroment
CN103793650A (en) * 2013-12-02 2014-05-14 北京邮电大学 Static analysis method and static analysis device for Android application program
CN107797931A (en) * 2017-11-13 2018-03-13 长春长光精密仪器集团有限公司 A kind of method for evaluating software quality and system based on second evaluation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5754738A (en) * 1996-06-07 1998-05-19 Camc Corporation Computerized prototyping system employing virtual system design enviroment
CN103793650A (en) * 2013-12-02 2014-05-14 北京邮电大学 Static analysis method and static analysis device for Android application program
CN107797931A (en) * 2017-11-13 2018-03-13 长春长光精密仪器集团有限公司 A kind of method for evaluating software quality and system based on second evaluation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于人工神经网络的线缆敷设质量综合评判;宋倩;《计算机工程与应用》;20171103;全文 *

Also Published As

Publication number Publication date
CN109491709A (en) 2019-03-19

Similar Documents

Publication Publication Date Title
KR101675198B1 (en) Method for obtaining solutions based on weighting analytic hierarchy process, grey number and entropy for multiple-criteria group decision making problems
CN109491709B (en) Software code controllability comprehensive evaluation method based on AHP and neural network
CN110544011B (en) Intelligent system combat effectiveness evaluation and optimization method
CN105550393A (en) Firearm variant design method supporting rapid generation of schemes
CN113822499B (en) Train spare part loss prediction method based on model fusion
CN106022631B (en) Index weight analysis method
CN106708659A (en) Filling method for adaptive nearest neighbor missing data
CN113268883A (en) Method for predicting corrosion rate of submarine crude oil pipeline based on PCA-ABC-SVM model
CN108830417A (en) A kind of residential energy consumption prediction technique and system based on ARMA and regression analysis
CN110321493A (en) A kind of abnormality detection of social networks and optimization method, system and computer equipment
CN109508498A (en) Rubber shock absorber formula designing system and method based on BP artificial neural network
CN112926893A (en) Horizontal well profile control effect evaluation method based on fuzzy comprehensive evaluation and hierarchical analysis
Chen et al. Combining fuzzy iteration model with dynamic programming to solve multiobjective multistage decision making problems
CN114154716B (en) Enterprise energy consumption prediction method and device based on graph neural network
CN117668622B (en) Training method of equipment fault diagnosis model, fault diagnosis method and device
Abbas et al. Consistency thresholds for hierarchical decision model
CN106897497A (en) Based on the prediction of precipitation method for sliding gray model and weighted Markov chain
CN109242141A (en) A kind of prediction technique and device of commodity stocks quantity
CN109323677A (en) Improve the Circularity error evaluation algorithm of cuckoo searching algorithm
CN113240161B (en) Method and device for establishing net present value prediction model, storage medium and electronic equipment
CN107767035A (en) A kind of electric energy meter detection mixed production line dispatching method based on genetic algorithm
CN111026661B (en) Comprehensive testing method and system for software usability
CN106776291B (en) A kind of system structure complexity calculating method
CN109445843B (en) Software class importance measurement method based on class multilayer network
CN112907058A (en) Decision evaluation method based on intuitive fuzzy network hierarchical analysis

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant