CN103838671A - Software defect measuring method based on complex network - Google Patents

Software defect measuring method based on complex network Download PDF

Info

Publication number
CN103838671A
CN103838671A CN201410038963.0A CN201410038963A CN103838671A CN 103838671 A CN103838671 A CN 103838671A CN 201410038963 A CN201410038963 A CN 201410038963A CN 103838671 A CN103838671 A CN 103838671A
Authority
CN
China
Prior art keywords
software
complex
network
complex network
oriented
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.)
Pending
Application number
CN201410038963.0A
Other languages
Chinese (zh)
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 Technology BIT
Original Assignee
Beijing Institute of Technology BIT
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 Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN201410038963.0A priority Critical patent/CN103838671A/en
Publication of CN103838671A publication Critical patent/CN103838671A/en
Pending legal-status Critical Current

Links

Abstract

The invention provides a software defect measuring method based on a complex network. The software defect measuring method based on the complex network can predict defects existing in a software system, so that influences in the future are prevented. The software defect measuring method based on the complex network comprises the following steps that first, a system class diagram is generated reversely according to a system executable file; second, the obtained system class diagram is converted into a network diagram of a software structure, wherein classes represent nodes, and relations between the classes represent edges; third, analysis at the level of the complex network is conducted according to the obtained network diagram, and the average shortest distance, an access degree and a clustering coefficient in complex network parameters are calculated by means of complex parameters, and a complex characteristic measuring value of software is obtained; fourth, a hierarchy measuring system is imported according to an object-oriented level, and an object-oriented characteristic measuring value of the software is obtained; fifth, the complex characteristic measuring value obtained in the third step and the object-oriented characteristic measuring value obtained in the fourth step are contrasted with known standard values, an assessment is conducted, and a defect measuring result prediction about the analyzed software is obtained finally.

Description

A kind of Software Defect Measurement method based on complex network
Technical field
The present invention relates to a kind of Software Defect Measurement method based on complex network, belong to complex network and software defect technical field.
Background technology
Forefathers are 2 courses below mainly having experienced aspect the research of Complex Networks Theory and software configuration: the basic theory model of complex network, can be subdivided into again " worldlet " model investigation and " scale free " model investigation; The Primary Study of complexity theory aspect software configuration.
WS " worldlet " model: the research to complex network occurring is the earliest in 1998, and Watts and Strogatz have proposed well-known " worldlet " network concept the earliest, and have provided network model-" a WS model " based on this concept.The basic thought that defines it is: the random regular network model of setting up a simple dimension, by some artificial operations, change old line with a certain probability P to existing regular network, random the linking on another one new node in one end of the line that needs are changed.Observe network in random network and the transformation between regular network completely by regulating the value (changing between 0 to 1) of P." WS " Construction of A Model network out has very special character, has exactly higher convergence factor and lower average bee-line length, this characteristic that small-world network has just.Extreme, in the time that p equals 0, corresponding regular network completely, now network has minimum average bee-line 1 and maximum convergence factor.
NW " worldlet " model: this model be Newman and Watts proposed in 1999 done further improvement for " WS model ", the mode of original " rewriting old line " is replaced with to the mode of " randomization edged ".Be exactly specifically: for N node of existing regular network, between any two network nodes, do line with Probability p, meet and can not change original network connectivity, avoid self line and repetition line simultaneously.From the viewpoint of theoretical research, " NW model " is more prone to operation than " WS model ", and structure is comparatively simple.From interpretation of result, when the value of P is the most enough little time, average bee-line can be very little, but convergence factor can be very large, and this is the same with the result of study of " WS model " in essence, has reacted the characteristic of small-world network.
Price " scale free " model: Price is mainly the mutual adduction relationship of having studied between subject article, builds relational network, and then the degree distribution relation of research nodes.Price is applied to ubiquitous in human society " Matthew effect " in the research of complex network formation mechanism, and build-up effect is placed on to net environment research, has broken through intrinsic network research thoughtcast.Result of study has confirmed that the number of degrees distribution of nodes meets power-law distribution.The main thought that Price analyzes is: the number of times that the ratio that one piece of paper is cited is cited to it is directly proportional.That is to say the article that citation times is many, the chance being again referred to is just large.This thought applies to that complex network research is upper just can be construed to a limit first adding and be connected to and have the probability of node and the number of degrees of this node are directly proportional, and link on the limit that the node that the number of degrees are large is newly added.
Barabasi Albert " scale free " model: with Price " scale free " model class seemingly, difference is that first it studied the network of growth, and has proposed to increase and this two key concepts preferentially, has brought complex network research into a new boundary.
Node copy " scale free " model: this model is the further research to Barabasi Albert " scale free " model, the form that the structure of model copies by subgraph is carried out, random increase node or line on existing network model, then according to certain node according to the distortion of developing of the growth pattern of other nodes.This class model is widely used in biological field, as protein network.
Forefathers mainly contained two kinds of methods in metric software structure aspects: the people such as (1) Chidambers and Kemererc have proposed the CK measure of object-oriented program in 1994.The method is mainly that OO software configuration is measured, 6 kinds of class-based design metric parameter are proposed, respectively: the method for weighting (WMC) of each class, the degree of depth (DIT) of inheritance tree, children's quantity (NOC), coupling (CBO) between object class, the response (RFC) to class, lacks interior poly-degree (LCOM) in method.The method has been developed reception that personnel understand now, be widely used with actual software system development in.(2) the Mood measure that Fernando brito e abreu proposes in the symposial of the 9th European object based programming.The aspects such as the method, from Object Oriented Characteristic, based on encapsulation, is inherited, and is coupled, polymorphic have proposed six Measure Indexes.Wherein comprised method and hidden factor M HF and the hiding factors A HF of attribute, these two indexs are mainly used in weighing the encapsulation of class.Inheritance of attribute factors A IF and the method succession factor (MIF) are mainly used to measure the inherited characteristics of class, and wherein MIF value provides the indication of inheriting the impact on object-oriented software.Mood thought also proposes to use coupling factor (CF) to measure the coupling between class, and in the time that CF value increases, the complicacy of object-oriented software also will increase, and intelligibility, maintainability and multiplexing potentiality all will be affected.The polymorphic factor (PF) is used for occurring polymorphic possibility in gauging system, and it redefines by the method quantity of inheritance method, divided by the maximum quantity of the possible polymorphic situation of difference.Therefore, PF is the indirect measurement to the dynamic binding relative populations in system.
No matter be MOOD measure or CK measure, all exist the weak point of self.First, researchists find if adopt a kind of method often can only measure software configuration characteristic in a certain respect.Such as, if adopt CK external member to measure, can only measure software in the aspect of class, want to examine software configuration closely from overall angle and just become more difficult.Secondly, due to the difference of programming language and developing instrument environment etc., the result of metric parameter has certain difference, only can have influence on the reliability of system evaluation with reference to single metric.
Summary of the invention
The invention provides a kind of Software Defect Measurement method based on complex network, the defect leak existing in can look-ahead software systems, repairs in time, avoids the impact in the future causing.
Realize technical scheme of the present invention as follows:
A Software Defect Measurement method based on complex network, comprises the steps:
Step 1, first according to the reverse generation system class of system executable file figure;
Step 2, convert the network chart of software configuration to according to the system class figure that obtains, wherein class representation node, is related to representative edge between class;
The network chart that step 3, basis obtain carries out the analysis of complex network aspect, and the calculating that utilizes complex parameters to carry out average bee-line in complex network parameter, go out in-degree, convergence factor, obtains the complex characteristics metric about software;
Step 4, introduce level tolerance system according to object-oriented aspect, the software metrics that calculates plug-in unit and carry out object-oriented aspect in conjunction with MOOD and CK measure and metrics, obtains the Object Oriented Characteristic metric about software;
Object Oriented Characteristic metric and existing standard value that step 5, the complex characteristics metric that step 3 is obtained and step 4 obtain contrast, and then assessment, finally draw the defect tolerance prediction of result about analyzed software.
Beneficial effect of the present invention:
The present invention is 3 levels by software configuration complexity measure model partition, corresponding statistical property value metric respectively, and object-oriented level tolerance and bottom code realize rank tolerance.In each level, set the peculiar measurement parameter of this layer.At statistical property tolerance layer, mainly use the theory of complex network to carry out total evaluation to measured software systems, the efficiency that tolerance message is transmitted, the cost of communicating by letter between entity, the interior poly-degree between entity, cooperation relation, the responding ability of whole system etc.
The present invention is described tested software architecture macroscopic view; In object-oriented level, main employing integrated existing object-oriented method, by CK measure, MOOD measure and Chen-Liu measure effectively combine and improve, from no rank, as the rank of class, the rank of system architecture is analyzed tested software system.Find defective entity structure according to concrete metric parameter structure, and then provide foundation for the reparation of software systems.
Embodiment
First convert the class figure of system to digraph, simulation generates complex network figure, and network chart is analyzed, and obtains the complex network characteristic metric about software network.
Then carry out the indices of appraisal procedure according to the metric of the object-oriented aspect of level measurement model, the evaluation scheme that the present invention adopts is that the parameter result of the result of tolerance and more existing software systems is analyzed, and draws the tolerance presentation of results about software configuration.
Following tabular has been lifted the network characteristic metric of the complex parameters of some existing software systems
Dbase Nodes Limit number D Convergence factor In-degree Out-degree
JDK 1365 1947 5.97 0.225 2.4 2.3
eMule 129 218 3.87 0.237 2.5 2.4
GTK 748 1147 5.87 0.081 2.2 3.8
Tolerance result and existing value are contrasted to the complex network characteristic of analysis software structure.
We are 3 levels by software configuration complexity measure model partition, respectively corresponding statistical property value metric, and object-oriented level tolerance and bottom code realize rank and measure.In each level, we set the peculiar measurement parameter of this layer.At statistical property tolerance layer, we mainly use the theory of complex network to carry out total evaluation to measured software systems, the efficiency that tolerance message is transmitted, the cost of communicating by letter between entity, interior poly-degree between entity, cooperation relation, the responding ability of whole system etc.Macroscopic view, tested software architecture to be described; In object-oriented level, main employing integrated existing object-oriented method, by CK measure, MOOD measure and Chen-Liu measure effectively combine and improve, from no rank, as the rank of class, the rank of system architecture is analyzed tested software system.Find defective entity structure according to concrete metric parameter structure, and then provide foundation for the reparation of software systems; Code at bottom is realized layer, and we mainly adopt FP, LOC, and McCabe circle, the methods such as COCOMO II are carried out the characteristic of program module in metric software system.The metric parameter of every one deck sees the following form:
Figure BDA0000462563460000051
Can be good at avoiding the deficiency of single measure and the factor of part Measure Indexes deviation effects quality assessment result by such level design and the design of metric parameter.The method system that we propose by this problem, can check and the leak of software system design aspect, finds the potential defect of software, and the foundation of repair-deficiency is well provided, and is convenient to developer's later stage work.Aspect front people's software configuration defect excavation, part Measure Indexes has been used and has been proved extremely effective.For example, Systa and Muller published thesis in 2002 " Predicting fault-proneness using OO metrics:An industrial case study ".Find in OO software configuration, the dependence coupling (showing as the out-degree of node in metric parameter) between class has relation very with the probability that software is made mistakes.Therefore the out-degree size that, shows node can be used as a reference factor that judges error probability.
(1) first need to obtain the class figure of system under test (SUT), can use reverse-engineering instrument here, as the Eclipse UML instrument of Omondo company.
(2) digraph corresponding to obtained class figure convert to, class correspondence the node of digraph, the limit of the corresponding digraph of relation between class.
(3) utilize pajek instrument to carry out analog simulation to system, generate corresponding structural network figure.
(4) utilize complex network correlation parameter computing method to analyze the statistics aspect characteristic of system under test (SUT) network.
(5) utilize the metrics plug-in unit of Eclipse to calculate the characteristic of system under test (SUT) object-oriented aspect and code to realize the characteristic of aspect.
(6) according to the metric drawing, software total quality is made assessment and found defective class.

Claims (1)

1. the Software Defect Measurement method based on complex network, is characterized in that, comprises the steps:
Step 1, first according to the reverse generation system class of system executable file figure;
Step 2, convert the network chart of software configuration to according to the system class figure that obtains, wherein class representation node, is related to representative edge between class;
The network chart that step 3, basis obtain carries out the analysis of complex network aspect, and the calculating that utilizes complex parameters to carry out average bee-line in complex network parameter, go out in-degree, convergence factor, obtains the complex characteristics metric about software;
Step 4, introduce level tolerance system according to object-oriented aspect, the software metrics that calculates plug-in unit and carry out object-oriented aspect in conjunction with MOOD and CK measure and metrics, obtains the Object Oriented Characteristic metric about software;
Object Oriented Characteristic metric and existing standard value that step 5, the complex characteristics metric that step 3 is obtained and step 4 obtain contrast, and then assessment, finally draw the defect tolerance prediction of result about analyzed software.
CN201410038963.0A 2014-01-26 2014-01-26 Software defect measuring method based on complex network Pending CN103838671A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410038963.0A CN103838671A (en) 2014-01-26 2014-01-26 Software defect measuring method based on complex network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410038963.0A CN103838671A (en) 2014-01-26 2014-01-26 Software defect measuring method based on complex network

Publications (1)

Publication Number Publication Date
CN103838671A true CN103838671A (en) 2014-06-04

Family

ID=50802194

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410038963.0A Pending CN103838671A (en) 2014-01-26 2014-01-26 Software defect measuring method based on complex network

Country Status (1)

Country Link
CN (1) CN103838671A (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105808435A (en) * 2016-03-08 2016-07-27 北京理工大学 Construction method of software defect evaluation model on the basis of complex network
CN106533780A (en) * 2016-11-30 2017-03-22 大连大学 Method for establishing evolution model of weighting command and control network based on local area world
CN107665172A (en) * 2017-10-20 2018-02-06 北京理工大学 A kind of Software Defects Predict Methods based on complicated weighting software network
CN109308262A (en) * 2018-09-17 2019-02-05 中国人民解放军63921部队 A kind of software defect positioning method and device
CN110580218A (en) * 2018-06-08 2019-12-17 浙江大学 software code complexity detection method and device and electronic equipment
CN110598417A (en) * 2019-09-05 2019-12-20 北京理工大学 Software vulnerability detection method based on graph mining
CN110825633A (en) * 2019-11-01 2020-02-21 江苏科技大学 Software defect detection and extraction method for Java language
CN112711543A (en) * 2021-03-26 2021-04-27 南京航空航天大学 Workload perception defect prediction method based on weighted software network

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805796A (en) * 1996-03-27 1998-09-08 Dell Usa, Lp System architecture for implementing modular diagnostics
CN101546290A (en) * 2009-04-30 2009-09-30 上海交通大学 Method for improving accuracy of quality forecast of class hierarchy in object-oriented software

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805796A (en) * 1996-03-27 1998-09-08 Dell Usa, Lp System architecture for implementing modular diagnostics
CN101546290A (en) * 2009-04-30 2009-09-30 上海交通大学 Method for improving accuracy of quality forecast of class hierarchy in object-oriented software

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘铮: "大规模软件可信性度量分析原理及其方法的研究", 《中国博士学位论文全文数据库》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105808435A (en) * 2016-03-08 2016-07-27 北京理工大学 Construction method of software defect evaluation model on the basis of complex network
CN106533780A (en) * 2016-11-30 2017-03-22 大连大学 Method for establishing evolution model of weighting command and control network based on local area world
CN107665172A (en) * 2017-10-20 2018-02-06 北京理工大学 A kind of Software Defects Predict Methods based on complicated weighting software network
CN107665172B (en) * 2017-10-20 2020-08-11 北京理工大学 Software defect prediction method based on complex weighted software network
CN110580218A (en) * 2018-06-08 2019-12-17 浙江大学 software code complexity detection method and device and electronic equipment
CN109308262A (en) * 2018-09-17 2019-02-05 中国人民解放军63921部队 A kind of software defect positioning method and device
CN110598417A (en) * 2019-09-05 2019-12-20 北京理工大学 Software vulnerability detection method based on graph mining
CN110598417B (en) * 2019-09-05 2021-02-12 北京理工大学 Software vulnerability detection method based on graph mining
CN110825633A (en) * 2019-11-01 2020-02-21 江苏科技大学 Software defect detection and extraction method for Java language
CN112711543A (en) * 2021-03-26 2021-04-27 南京航空航天大学 Workload perception defect prediction method based on weighted software network

Similar Documents

Publication Publication Date Title
CN103838671A (en) Software defect measuring method based on complex network
Chowdhury et al. Can complexity, coupling, and cohesion metrics be used as early indicators of vulnerabilities?
Li et al. Architectural technical debt identification based on architecture decisions and change scenarios
Dueñas‐Osorio et al. Reliability assessment of lifeline systems with radial topology
US10295435B1 (en) Model-based damage detection technique for a structural system
CN107665172A (en) A kind of Software Defects Predict Methods based on complicated weighting software network
Guessi et al. Checking the architectural feasibility of systems-of-systems using formal descriptions
CN105893257A (en) Software architecture evaluation method based on evolution
CN103902451A (en) Intelligent electricity meter software quality evaluation method
Ampatzoglou et al. An embedded multiple-case study on OSS design quality assessment across domains
Luijten et al. Faster defect resolution with higher technical quality of software
Barchyn et al. A call for standardization of aeolian process measurements: moving beyond relative case studies
Johari et al. Validation of object oriented metrics using open source software system: an empirical study
Irvine et al. Occupancy modeling species–environment relationships with non‐ignorable survey designs
Turnu et al. The fractal dimension of software networks as a global quality metric
Nair et al. Defect proneness estimation and feedback approach for software design quality improvement
McQuillan et al. On the application of software metrics to UML models
Singh Metrics for measuring the quality of object-oriented software
Malhotra et al. Cross project change prediction using open source projects
Camici et al. Accuracy versus variability of climate projections for flood assessment in central Italy
Bock et al. Conceptual modeling
Du et al. An automatic service composition algorithm for constructing the global optimal service tree based on QoS
Ahmad et al. Software sustainability characteristic for software development towards long living software
Van Dijk Model-data fusion: Using observations to understand and reduce uncertainty in hydrological models
Guessi et al. Ark: a constraint-based method for architectural synthesis of smart systems

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20140604

WD01 Invention patent application deemed withdrawn after publication