CN110297765A - Software reliability earlier evaluations method - Google Patents

Software reliability earlier evaluations method Download PDF

Info

Publication number
CN110297765A
CN110297765A CN201910467512.1A CN201910467512A CN110297765A CN 110297765 A CN110297765 A CN 110297765A CN 201910467512 A CN201910467512 A CN 201910467512A CN 110297765 A CN110297765 A CN 110297765A
Authority
CN
China
Prior art keywords
software
scene
state
reliability
model
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.)
Granted
Application number
CN201910467512.1A
Other languages
Chinese (zh)
Other versions
CN110297765B (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.)
63963 Troops Of Pla
Original Assignee
63963 Troops Of Pla
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 63963 Troops Of Pla filed Critical 63963 Troops Of Pla
Priority to CN201910467512.1A priority Critical patent/CN110297765B/en
Publication of CN110297765A publication Critical patent/CN110297765A/en
Application granted granted Critical
Publication of CN110297765B publication Critical patent/CN110297765B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The invention discloses a kind of software reliability earlier evaluations methods, it include: the earlier evaluations model for constructing single component software residual defects, obtain the residual defects situation of single component software, the residual defects number of single component software in residual defects density including component software single in continuous operation software systems, or disposable runs software system;The reliability of single component software is obtained according to the residual defects situation of single component software;It constructs software systems and uses model;The reliability of model evaluation software systems is used by the reliability and software systems of single component software.The present invention can effectively improve Evaluation accuracy, also, software systems of the invention can be avoided the pseudo- routing problem of state model, the circulating path problem of path model using model, can model to the failure rate of continuous operation software.

Description

Software reliability earlier evaluations method
Technical field
The invention belongs to information technology fields, and in particular, to a kind of software reliability earlier evaluations method.
Background technique
Software reliability earlier evaluations refer in the reliability assessment that software life cycle management early stage carries out, and are included in The reliability assessment that demand analysis, Outline Design, detailed design, coding and unit testing stage carry out.It has proposed at present Software reliability earlier evaluations model can be divided into two class of black-box model and structural model.
Software systems as a whole, are used homing method fitting software by software reliability earlier evaluations black-box model Relationship between reliability and influence factor, but black-box model can only assess software global reliability level, and nothing Method assesses single component reliability.Software reliability earlier evaluations structural model can be mainly divided into three classes: be based on shape The model of state, the model based on path and the model based on Operation Profile, three classes structural model have the following problems: or group Transition probability or path execute after probability is needed to the implementation of test cases of software test stage and can just access between part, in software The early stage of exploitation lacks the method that state transition probability or path execute probability that obtains, can only rule of thumb data or Person is determined by expert's subjectivity or software usage mode describes static information, i.e., the called probability of single component software, But the execution route of inter-module cannot be described.
Summary of the invention
In view of the foregoing, it is an object to a kind of software reliability earlier evaluations method is provided, it is existing to solve Defect present in software reliability earlier evaluations method.
To achieve the goals above, the invention adopts the following technical scheme:
Software reliability earlier evaluations method of the present invention, comprising the following steps:
Step S1 constructs the earlier evaluations model of single component software residual defects;
Step S2 obtains the residual defects situation of single component software by the earlier evaluations model, including continuously transports Single component software in the residual defects density of single component software in row software systems, or disposable runs software system Residual defects number;
Step S3 obtains the reliability of single component software according to the residual defects situation of single component software;
Step S4, building software systems use model;
Step S5 uses the reliable of model evaluation software systems by the reliability and software systems of single component software Property.
Preferably, the earlier evaluations model is coditionally linear Gaussian Hybrid Bayesian Network structure.
Preferably, the step S2 comprises determining that each in the coditionally linear Gaussian Hybrid Bayesian Network structure The node type and value range of node;Root node in each node is determined according to the node type of each node and value range Value range or probability distribution;Each node conditional node is determined according to the node type of each node and value range Probability distribution;According to the value range of root node or probability distribution and the probability distribution of condition node, determination process characteristic is produced The distribution of product characteristic and resource characteristics;According to the distribution of process characteristic, product characteristic and resource characteristics obtain respectively with mistake The corresponding residual defects distribution of journey characteristic;The residual of single component software is obtained according to the distribution of residual defects and process characteristic Stay defect distribution;It is distributed to obtain the residual defects situation of single component software according to the residual defects of single component software.
Preferably, the step S3 includes: building supporting vector machine model;By the residual defects situation of single component software It inputs in the supporting vector machine model, obtains the reliability of single component software, wherein for continuous operation software, support The input of vector machine model is the residual defects density of component software, exports the failure rate for component software;For disposably transporting Row software, the input of supporting vector machine model are the residual defects number of component software, export the reliability for component software.
Preferably, supporting vector machine model is constructed, comprising: determine that support vector machines type is least square supporting vector Machine;The kernel function form for determining supporting vector machine model is Radial basis kernel function form;Determine the model of supporting vector machine model Parameter and nuclear parameter, wherein the model parameter includes penalty factor, and the kernel functional parameter includes the variance of kernel function;It is right Model parameter and nuclear parameter are trained, and carry out model parameter and nuclear parameter more by the coefficient of determination and mean square error Newly, the optimal solution of model parameter and nuclear parameter is obtained;According to the optimal destructing of support vector machines type, model parameter and nuclear parameter Build supporting vector machine model.
Preferably, the step S4 includes: step S41, carries out the extension towards reliability to software uml model, comprising: Transition probability between use-case between scene is extended, and the execution time of component software is extended;Step S42 lists the precondition and postcondition of each scene in software systems respectively, wherein precondition is that scene is held Capable meets condition, and postcondition is the state that component software is transferred to after scene executes;Step S43 creates one and half Markov Initial state Initial is added in state set S by process, state set S, initial state Initial, and enables current state CurrentState=Initial, state metastatic marker collection are combined into T;Step S44, respectively for each of scene set Scene SciIf scene SciPrecondition Sci.Pre2∈ S, then enable CurrentState=Sci.Pre2, and generate from The migration that CurrentState state is set out, by scene SciPostcondition Sci.Post2It is added in state set S; Step S45, by scene SciIt is deleted from scene set;Step S46 returns to step S44 if scene set non-empty, no Then, the software systems are generated and use model.
Preferably, the step S5 includes: for disposable runs software system, and be calculate by the following formula software systems can By degree:
Wherein, R indicates the reliability of software systems, and n indicates status number, RnExpression state n is transferred to the general of success status Rate, Q are the matrixes that removal absorbing state Success state and the corresponding row and column of Failure state obtain in transition probability matrix, Wherein, transition probability Rijpij, RijWhen indicating to shift from state i to state j, the reliability of the scene run, pijIndicate from The probability that state i is shifted to state j, I are unit matrixs, | I-Q | it is the determinant of matrix (I-Q), E is matrix (I-Q) removal The matrix obtained after first row and last line, | E | it is the determinant of matrix E.
Preferably, the reliability of scene is obtained by following formula:
Wherein, SckIndicate scene, R (Sck) indicating the reliability of scene, N indicates component software in the sequence chart of scene Quantity, l indicate the index of component software, mlIndicate the called number of component software,Indicate first of component software CklCalled mlThe secondary probability not malfunctioned.
Preferably, the step S5 includes: to be calculate by the following formula the failure of software systems for continuous operation software systems Rate:
Wherein, λ indicates the failure rate of software systems, pijIndicate the probability shifted from state i to state j, 1/ μijIndicate shape The average performance times for the scene that state i is run when shifting to state j, λijThe field that expression state i is run when shifting to state j The failure rate of scape, πiThe stable state excitation probability of expression state,πi·pijIndicate the stable state excitation probability of scene.
Preferably, the failure rate of scene is obtained by following formula:
Wherein, SckIndicate scene, λ (Sck) indicating the failure rate of scene, N indicates component software in the sequence chart of scene Quantity, l indicate the index of component software, tlIt indicates in scene SckIn time for executing every time of first of component software, mlIndicate the The called number of l component software, λ (Ckl) indicate first of component software failure rate.
Compared with prior art, the present invention has the following advantages and beneficial effects:
For the present invention by the earlier evaluations model of the single component software reliability of building, that assesses single component software can By property level, model is used in conjunction with single component software reliability and software systems, assesses the reliability of software systems, it can Effectively improve Evaluation accuracy.
Also, software systems of the invention can be avoided the pseudo- routing problem of state model, path model using model Circulating path problem can model the failure rate of continuous operation software.
Detailed description of the invention
Fig. 1 is the flow diagram of software reliability earlier evaluations method of the present invention;
Fig. 2 is Software Defects Classification schematic block diagram in the present invention;
Fig. 3 is component software reliability effect factor schematic block diagram in the present invention;
Fig. 4 is the bayesian network structure schematic diagram of demand analysis stage in the present invention;
Fig. 5 a and Fig. 5 b are the bayesian network structure schematic diagrames of design phase in the present invention;
Fig. 6 is the bayesian network structure schematic diagram of coding stage in the present invention;
Fig. 7 is the bayesian network structure schematic diagram of test phase in the present invention;
Fig. 8 is the embodiment schematic diagram of the bayesian network structure of component software reliability model in the present invention;
Fig. 9 is the use-case schematic diagram that the embodiment of Software Usage Model is constructed in the present invention;
Figure 10 a- Figure 10 g is the sequence chart for each scene that use-case includes in Fig. 9 respectively;
Figure 11 is the schematic diagram of the Software Usage Model of the corresponding building of Fig. 9;
Figure 12 is the schematic diagram of one embodiment of the Software Usage Model constructed in the present invention;
Figure 13 is the schematic diagram of another embodiment of the Software Usage Model constructed in the present invention.
Specific embodiment
Embodiment of the present invention described below with reference to the accompanying drawings.Those skilled in the art may recognize that It arrives, it without departing from the spirit and scope of the present invention, can be with a variety of different modes or combinations thereof to described Embodiment is modified.Therefore, attached drawing and description are regarded as illustrative in nature, rather than the protection for limiting claim Range.In addition, in the present specification, attached drawing is drawn not in scale, and identical appended drawing reference indicates identical part.
Fig. 1 is the flow diagram of software reliability earlier evaluations method of the present invention, as shown in Figure 1, institute of the present invention State software reliability earlier evaluations method, comprising the following steps:
Step S1 constructs the earlier evaluations model of single component software residual defects, for assessing single component software Residual defects situation, single component software refer to the single component of software systems, include multiple in a usual software systems Component software;
Step S2 obtains the residual defects situation of single component software by the earlier evaluations model, including continuously transports Single component software in the residual defects density of single component software in row software systems, or disposable runs software system Residual defects number, i.e., software systems of different nature measure the residual defects situation of single component software using different indexs;
Step S3 obtains the reliability of single component software according to the residual defects situation of single component software,
Step S4, building software systems use model;
Step S5 uses the reliable of model evaluation software systems by the reliability and software systems of single component software Property.For disposable runs software system, the measurement index of reliability is that reliability can for continuity run software systems Measurement index by property is failure rate.
Bayesian network has advantage in terms of handling uncertainty relation, and can having to explicitly describe software defect and draw The process and causality for entering/excluding, Bayesian network (Bayesian Network) indicate with the form of directed acyclic graph, Each node in figure indicates a stochastic variable, has and is connected between the node of causal relation with a side with the arrow, this Result node is directed toward from reason node for side.The Bayesian network applied at present refers generally to discrete Bayesian network, to even Continuous variable carries out sliding-model control, but this will cause information loss, so that the result inaccuracy of earlier evaluations model.Preferably, In step S1, the earlier evaluations model is coditionally linear Gaussian Hybrid Bayesian Network structure (Conditional Linear Gaussian Hybrid Bayesian Network, CLGHBN), wherein in CLGHBN, the father node of continuous type node was both It can be continuous type node and be also possible to discrete type node, the father node of discrete type node can only be discrete type node.
Preferably, coditionally linear Gaussian Hybrid Bayesian Network structure is constructed, comprising: classify to software defect;Point Analyse component software reliability effect factor;The reliability effect factor of classification and component software based on software defect constructs condition Linear Gaussian Mixture bayesian network structure.
Fig. 2 is Software Defects Classification schematic block diagram in the present invention, on the basis of software Orthogonal Defect Classification, in conjunction with software Defect introduces the stage and the orthogonal defect type of software classifies to software defect, as shown in Fig. 2, only considering in the present invention Demand analysis, design and the software defect for encoding the introducing of these three stages, the specific defect type definition in each stage uses in Fig. 2 Definition in software defect orthogonal classification method method (Orthogonal Defects Classification, ODC) classification method, Specifically, system capability, end user interface, product interface, interface and the overall situation with hardware configuration functional defect: be will affect Data structure;Assignment defect: being showed only as the mistake of several line codes, for example, initialization and data knot for control block Structure;Interface defect: corresponding to the mistake of other components, module or device drives, such as macro, calling state, control module Or parameter list etc.;Detection defect: the program logic structure that them cannot be correctly confirmed before using data and numerical value is analyzed;It is fixed When/sequentiality defect: it is the management optimization by shared real time resources Lai modified;Construction/packing/merging class defect: by library The mistake of system, the change of management and Version Control cause;File management defect: it can not only influence it and popularize, but also meeting Difficulty is brought to preservation;Algorithm errors:, can be by using again including influencing the accuracy and validity problem that task is completed The data structure of one algorithm or part is repaired, without modifying to design scheme.
Fig. 3 is component software reliability effect factor schematic block diagram in the present invention, as shown in figure 3, influencing component software can Factor by property is divided into three categories, product characteristic, process characteristic and resource characteristics.Specifically, product characteristic refers to software itself The intrinsic characteristic that will affect software reliability, including product scale, complexity etc., wherein the most common degree of software size Amount is software code line number, including the total line number of software code, executable lines of code, comment line number, includes code and comment Line number, blank code line number etc.;It includes the general geological coodinate systems such as McCabe measurement, Halstead measurement that software complexity, which is commonly measured, Amount and the distinctive measurement metric of object-oriented software.Process characteristic refers to management, progress pressure in development process etc. to reliable The factor that property has an impact, Capability Maturity Model for Software (the Capability Maturity Model for including development organizations Software, CMM) grade, progress pressure, demand change frequency, evaluation dynamics, software type and programming language, wherein it is soft The CMM of part development organizations is divided into five grades, the mainly process characteristic of metric software development organizations, management level, product Quality condition, the CMM higher grade of development organizations, and the quality for the software product that developed is better;Progress pressure divides For three ranks, i.e., progress pressure is larger, progress pressure is medium, progress pressure is smaller;The measurement of evaluation dynamics can be divided into it is big, Middle or small three ranks;Programming language mainly includes assembler language and high-level programming language two major classes.Resource refers mainly to be engaged in software The personnel of development, and support the tool etc. of software development, wherein the elder generation of developing instrument primary metric Software Development Tools Process degree can substantially be divided into advanced, general, backward three ranks;Its skill is measured by the working time of developer It can be horizontal.
Fig. 4 is the bayesian network structure schematic diagram of demand analysis stage in the present invention, and Fig. 5 a and Fig. 5 b are in the present invention The bayesian network structure schematic diagram of design phase, Fig. 6 are the bayesian network structure schematic diagrames of coding stage in the present invention, figure 7 be the bayesian network structure schematic diagram of test phase in the present invention, as shown in figs. 4-7, the mixing pattra leaves constructed in the present invention This network structure, it is shown that the influence factor of various defects of generation, the software based on Hybrid Bayesian Network structure The mode input of assembly reliability model is the various reliability shadows including product characteristic, process characteristic and resource characteristics The factor of sound, the value of influence factor is divided into two kinds of situations of discrete type and continuous type, by the effect of Hybrid Bayesian Network structure, Model output is the residual defects situation of component software, is transported including the residual defects number in disposable runs software system with continuous Residual defects density in row software systems.
In an alternative embodiment of the invention, father node is all discrete type node, child node in bayesian network structure When for discrete type node, the step S2 comprises determining that each in the coditionally linear Gaussian Hybrid Bayesian Network structure The node type and value range of node;Conditional probability table is constructed according to the node type of each node and value range;According to Conditional probability table obtains the residual defects situation of single component software.
When father node is all continuous type node, the step S2 comprises determining that the coditionally linear Gaussian mixing Bayes The node type and value range of each node in network structure;It is determined according to the node type of each node and value range The probability distribution of node;The residual defects situation of single component software is obtained according to the probability distribution of node.Specifically, son section is enabled Point Gaussian distributed N (μ, σ2), it is linear relationship, variances sigma between mean μ and each father node2With father node independence.I.e. f (Z | F)=N (α F+ β, σ2), wherein Z refers to the value of child node, and F refers to the value of father node, and α, β are the parameter of linear regression relation.
The existing continuous type node of father node in bayesian network structure has discrete type node again when, discrete nodes by piece It lifts to handle, the relationship of continuous type father node and child node in each case is calculated separately, then by various situations according to discrete The probability distribution of variable is weighted.Specifically, the step S2 comprises determining that the coditionally linear Gaussian mixing Bayesian network The node type and value range of each node in network structure, node value are described in the form of probability distribution, are used Edge distribution P (X) describes the value of the root node X in network, is described in network with conditional probability distribution P (X ' | π (X ')) Non-root type node X ' value, wherein the father node of non-root type node X ' is described as π (X ');According to each node Node type and value range determine the value range or probability distribution of root node in each node;According to the node of each node Type and value range determine the probability distribution of each node conditional node;According to the value range or probability distribution of root node And the probability distribution of condition node, the distribution of determination process characteristic, product characteristic and resource characteristics;According to process characteristic, The distribution of product characteristic and resource characteristics obtains residual defects distribution corresponding with process characteristic respectively;It is lacked according to residual It falls into son distribution and process characteristic obtains the residual defects distribution of single component software, according to the distribution of each process characteristic to residual Defecton distribution is weighted summation and obtains the residual defects distribution of single component software;It is lacked according to the residual of single component software Sunken distribution obtains the residual defects situation of single component software.
Fig. 8 is the embodiment schematic diagram of the bayesian network structure of component software reliability model in the present invention, according to Fig. 8 Shown in bayesian network structure the reliability for assessing single component software is described further.
The first step, determine each node in the coditionally linear Gaussian Hybrid Bayesian Network structure node type and Value range, as shown in table 1 below:
Table 1
Step 2: determining the value or probability distribution of each root node, the probability distribution of each discrete type root node such as table 2-5 It is shown.The value of each continuous type leaf node are as follows: according to expertise, estimation lines of code is 1.2KLOC.Developer's is averaged Working time is 2.5 years.
Table 2
Table 3
Table 4
Table 5
Step 3: the distribution of design conditions node.The conditional probability distribution of process characteristic node is as shown in table 6.
Table 6
4th step, the distribution of determination process characteristic, product characteristic and resource characteristics:
Since the CMM grade of development organizations is 3, the edge distribution of process characteristic are as follows:
According to project experiences data and expertise, product characteristic is distributed as
Resource characteristics are distributed as
5th step determines that residual defects is distributed, as follows:
(1) when process characteristic is very good, residual defects are distributed as
(2) when process characteristic preferably when, residual defects are distributed as
(3) when process characteristic is middle, residual defects are distributed as
(4) when process characteristic is difference, residual defects are distributed as
(5) when process characteristic is excessively poor, residual defects are distributed as
Therefore, the residual defects distribution of component software are as follows:
Its mean value are as follows:
E (RD)=0.03 × 0.48+0.21 × 0.78+0.52 × 0.97+0.21 × 1.46+0.03 × 2.96=1.08
Since the estimation lines of code of component software is 1.2KLOC, the defect concentration of component software is 0.9/KLOC.
In an alternative embodiment of the invention, the step S3 includes: building supporting vector machine model;By single software The residual defects situation of component inputs in the supporting vector machine model, obtains the reliability of single component software, wherein for Continuous operation software, the input of supporting vector machine model are the residual defects density of component software, export the event for component software Barrier rate;For disposable runs software, the input of supporting vector machine model is the residual defects number of component software, is exported as software The reliability of component.
Further, supporting vector machine model is constructed, comprising: determine that support vector machines type is least square supporting vector The solution of machine, least square supporting vector is relatively easy, also, in least square method supporting vector machine, almost all Data sample can contribute for decision function, so, it is possible to prevente effectively from basic model support vector machines have it is dilute Dredge property defect;Determine supporting vector machine model kernel function form be Radial basis kernel function (Radial Basis Function, RBF) form;Determining the model parameter and nuclear parameter of supporting vector machine model, wherein the model parameter includes penalty factor, The kernel functional parameter includes the variance of kernel function;Model parameter and nuclear parameter are trained by cross validation method, and The update that model parameter and nuclear parameter are carried out by the coefficient of determination and mean square error obtains the optimal of model parameter and nuclear parameter Solution;Supporting vector machine model is constructed according to the optimal solution of support vector machines type, model parameter and nuclear parameter.
In one embodiment of the present of invention, several component software defects and its corresponding reliability data are had collected, it is as follows Shown in table 7.
Table 7
Pass through R2The coefficient of determination and mean square error of model result are respectively indicated with E, specific calculation method is respectively as follows:
Wherein, i is the index of test set sample, and l is the number of test set sample, yi(i=1,2 ..., l) it is i-th The true value of test sample,For the predicted value of i-th of test sample.By training, the decision system of training set Number can achieve 0.99712, mean square error 0.0025, so that the supporting vector machine model constructed in the present invention is shown very well Generalization ability.
In an alternative embodiment of the invention, from software uml model, the software for generating Semi-Markov Processes is used Model considers the malfunction of component software to be extended to model, it is preferable that the step S4 includes:
Step S41, to software uml model carry out the extension towards reliability, comprising: between use-case between scene Transition probability is extended, and is extended to the execution time of component software, specifically, use-case be extended to one it is hexa-atomic Group: UC (name1,Pre1,Post1,Scens,trans1,time1), wherein name1Indicate the title of use-case;Pre1It indicates to use The precondition set that example executes;Post1Indicate the postcondition set that use-case executes;Scens indicates the field that use-case is included The set of scape;trans1Indicate Pre1×Post1The mapping of → [0,1].When precondition is s1In the case where, with Probability p1It executes Use-case, system are transferred to postcondition t1, trans can be expressed as1(s1,t1)=p1, the present invention in a matrix type indicate use The trans of example1Value, the i.e. transfer matrix of use-case;time1Indicate the average performance times of use-case.Scene be extended to one it is hexa-atomic Group: SCEN (UC, name2,Pre2,Post2,trans2,time2), wherein UC indicates use-case belonging to scene;name2Indicate field The title of scape;Pre2Indicate the precondition set that scene executes, in the case that any one condition meets, scene can It is performed, whereinPost2It indicates the postcondition that scene executes, is held for describing scene After row, state that component software is transferred to, wherein SCEN.Post2∈SCEN.UC.Post1;trans2Indicate Pre2×Post2→ The mapping of [0,1], when precondition is s2In the case where, with Probability p2Scene is executed, system is transferred to postcondition t2, can be with table It is shown as trans2(s2,t2)=p2.Due to only one postcondition of single scene, table in vector form in the present invention Show the trans of scene2Value, the i.e. transfer vector of scene;time2Indicate the average performance times of scene.
Step S42 lists the precondition and postcondition of each scene in software systems, wherein preposition item respectively Part meets condition for what scene was performed, and postcondition is the state that component software is transferred to after scene executes;
Step S43 creates a Semi-Markov Processes, state set S, initial state Initial, by initial state Initial is added in state set S, and enables current state CurrentState=Initial, and state metastatic marker collection is combined into T;
Step S44, respectively for each of scene set scene SciIf scene SciPrecondition Sci.Pre2 ∈ S, then enable CurrentState=Sci.Pre2, and a migration from CurrentState state is generated, by scene SciPostcondition Sci.Post2It is added in state set S;
Step S45, by scene SciIt is deleted from scene set;
Step S46 returns to step S44 if scene set non-empty, otherwise, generates the software systems and uses model.
Fig. 9 be in the present invention construct Software Usage Model embodiment use-case schematic diagram, by taking Use Case Map in Fig. 9 as an example into Row explanation.
As shown in figure 9, include five use-cases in Use Case Map, the meaning of each use-case and that it includes scenes is as shown in table 8 below, The sequence chart of each scene is successively as shown in Figure 10 a-10g.
Table 8
The formalized description of each use-case is as follows:
Mission issue=(<Mission issue>,<situation receive>,<scout treatment, repair treatment,supply treatment>,<scout mission issue,repair mission issue, supply mission issue>);
Technique scout=(<Technique scout>,<scout treatment>,<situation receive>,<technique scout report>);
Equipment repair=(<Equipment repair>,<repair treatment>,<situation receive>,<equipment repair report>);
Material apply=(<Material apply>,<repair treatment>,<situation receive>,<equipment material apply>);
Material supply=(<material supply>,<supply treatment>,<situation receive>,<material apply report>);
The formalized description of each scene is as follows:
Scout mission issue=(<Mission issue>,<scout mission issue>,< situation receive>,<scout treatment>,<0.5>,<20.8">);
Repair mission issue=(<Mission issue>,<repair mission issue>,< situation receive>,<repair treatment>,<0.4>,<40.8">);
Supply mission issue=(<mission issue>,<supply mission issue>,< situation receive>,<supply treatment>,<0.1>,<15.8">);
Technique scout report=(<Technique scout>,<technique scout report>,< scout treatment>,<situation receive>,<1>,<61.7">);
Equipment repair report=(<Equipment repair>,<equipment repair report >,<repair treatment>,<situation receive>,<0.7>,<16.8">);
Material apply report=(<Material apply>,<material apply report>,< repair treatment>,<situation receive>,<0.3>,<122.5">);
Material supply report=(<material supply>,<material supply report>,< supply treatment>,<situation receive>,<1>,<52.5">);
According to the formalized description of table 8 and each scene, obtain the precondition of each scene, postcondition, execute probability and The execution time is as shown in table 9 below, and the schematic diagram of the Software Usage Model of corresponding building is as shown in figure 11, wherein Tu11Zhong, respectively A circle indicates state, is described as scene on the straight line with the arrow between two states, is indicated with straight arrows from one State is transferred to another state, using in model, along the primary traversal of any one paths from initial state to final state, is exactly The primary correct implementation procedure of software.Malfunction is added using in model original, and provides in software except final state Outside, probability of other states to malfunction.The addition of these information will not change the execution using scene in model or use-case Relationship.The proper use of process that software can be not only described using model after extension, can also describe the failure process of software, It can be used for software reliability earlier evaluations.
Table 9
For disposable runs software system, the reliability of single component software and software systems is indicated with reliability, Preferably, reliability is carried out by the Software Usage Model with discrete time Markov chain (DTMC) model construction absorbed to comment Estimate.Figure 12 is the schematic diagram of one embodiment of the Software Usage Model constructed in the present invention, and as shown in figure 12, software uses mould There are two absorbing state, respectively success status (Success) and malfunction (Failure) in type, software once enters any One absorbing state illustrates end of run of software.If illustrating that software this time runs success into Success state; If illustrating that software this time runs failure into Failure state.The reliability of software systems be software once run into Enter the probability of success status.Every directed edge represents a scene of software operation, and state 1- state 6 indicates node, Mei Gejie Point represents the preposition or post state of scene operation.
Transition probability between each state is Rijpij, wherein RijWhen to be shifted from state i to state j, the field that is run The reliability of scape, pijIndicate the probability shifted from state i to state j.In the case that transition probability indicates software existing defects, shape The probability that success is shifted between state.In addition, from state Si(SiFor nonabsorptive state) it sets out, it is likely to be transferred directly to Failure State, and its transition probability isTherefore, transition probability matrix P is shown below:
The corresponding row and column of absorbing state Success and Failure in matrix P is removed, obtained matrix is denoted as Q, i.e.,
Then the reliability of software systems is
Wherein, R indicates the reliability of software systems, and n indicates application state number, RnExpression state n is transferred to success status Probability, I indicates unit matrix, | I-Q | be the determinant of matrix (I-Q), E is matrix (I-Q) removal first row and last The matrix obtained after row, | E | it is the determinant of matrix E.
One use-case generally comprises multiple scenes, a possible execution sequence in a scene representations use-case.Scene Reliability of the reliability dependent on the component software being related in scene.
Preferably for disposable runs software system, the reliability of scene is obtained by following formula:
Wherein, SckIndicate scene, R (Sck) indicating the reliability of scene, N indicates component software in the sequence chart of scene Quantity is denoted as C respectively1,C2,…,CN, corresponding reliability estimated value is respectively R (Ck1)、R(Ck2)、…、R(CkN), l is indicated The index of component software, mlIndicate the called number of component software, that is, first of component ClHave received mlMessage, Indicate first of component software CklCalled mlThe secondary probability not malfunctioned.
For the software systems of continuous operation, the reliability of single component and software systems is indicated with failure rate, is preferably adopted With constant failure-rate, reliability assessment is carried out using the Software Usage Model of irreducible Semi-Markov Processes (SMP) building.Figure 13 be the schematic diagram of another embodiment of the Software Usage Model constructed in the present invention, as shown in figure 13, in irreducible SMP In model, from one of state, is shifted by a step or multistep, any one other state can be reached, in addition The failure of the absorbing state Failure of one representing fault state, the operation of any one scene all can cause software to enter failure shape State Failure, it is meant that the primary failure of software operation, every directed edge represent a scene of software operation, and S1-S6 is indicated State node, the preposition or post state of each node on behalf scene operation.Preferably, the step S5 includes: for even Reforwarding row software systems, are calculate by the following formula the failure rate of software systems:
Wherein, λ indicates the failure rate of software systems, pijThe probability that expression is shifted from state i to state j, 1μijExpression state The average performance times for the scene that i is run when shifting to state j, λijThe scene that expression state i is run when shifting to state j Failure rate, πiThe stable state excitation probability of expression state, it is assumed that μijMuch larger than λij, then software implementation procedure can be in failure generation The convergence of forward direction equilibrium state, enabling the excitation probability vector of equilibrium state is π=[πi], then π is the solution of π P=π, and πi·pijIndicate the stable state excitation probability of scene, λi'jIt indicates the failure rate of equal value of scene, indicates are as follows:
Preferably for continuous operation software systems, the failure rate of scene is obtained by following formula:
Wherein, SckIndicate scene, λ (Sck) indicating the failure rate of scene, N indicates component software in the sequence chart of scene Quantity, l indicate the index of component software, tlIt indicates in scene SckIn time for executing every time of first of component software, mlIndicate the The called number of l component software, λ (Ckl) indicate first of component software failure rate.
According to the bayesian network structure in Fig. 8 to the reliability assessment result and Fig. 9 for assessing single component software Use-case map analysis, the failure rate for obtaining each component software are as shown in the following table 10:
Table 10
The sequence chart for each scene that the use-case in conjunction with shown in Figure 10 a- Figure 10 g includes, obtains the failure rate of each scene.With For scene scout mission issue, failure rate are as follows:
Similarly, the failure rate of other scenes can be calculated, as a result as shown in table 11:
Table 11
Model is used according to software, calculates the stable state excitation probability of each state.Enable π12,…,π7Respectively state situation receive、scout treatment、repair treatment、supply treatment、repair The stable state excitation probability of finish, then:
In formula, transition probability of the P between each state:
By can be calculated:
Then, the failure rate of equal value of each scene is calculated.By taking scene scout mission issue as an example, failure of equal value Rate are as follows:
Similarly, the failure rate of equal value of other scenes can be calculated, as shown in table 12:
Table 12
The failure rate of computational software system are as follows:
The above description is only a preferred embodiment of the present invention, is not intended to restrict the invention, for those skilled in the art For member, the invention may be variously modified and varied.All within the spirits and principles of the present invention, it is made it is any modification, Equivalent replacement, improvement etc., should all be included in the protection scope of the present invention.

Claims (10)

1. a kind of software reliability earlier evaluations method, which comprises the following steps:
Step S1 constructs the earlier evaluations model of single component software residual defects;
Step S2 obtains the residual defects situation of single component software by the earlier evaluations model, including continuous operation is soft The residual of single component software in the residual defects density of single component software in part system, or disposable runs software system Defect number;
Step S3 obtains the reliability of single component software according to the residual defects situation of single component software;
Step S4, building software systems use model;
Step S5 uses the reliability of model evaluation software systems by the reliability and software systems of single component software.
2. software reliability earlier evaluations method according to claim 1, which is characterized in that the earlier evaluations model is Coditionally linear Gaussian Hybrid Bayesian Network structure.
3. software reliability earlier evaluations method according to claim 2, which is characterized in that the step S2 includes:
Determine the node type and value range of each node in the coditionally linear Gaussian Hybrid Bayesian Network structure;
The value range or probability distribution of root node in each node are determined according to the node type of each node and value range;
The probability distribution of each node conditional node is determined according to the node type of each node and value range;
According to the value range of root node or probability distribution and the probability distribution of condition node, determination process characteristic, product are special The distribution of property and resource characteristics;
Residual defects corresponding with process characteristic respectively are obtained according to the distribution of process characteristic, product characteristic and resource characteristics Son distribution;
The residual defects distribution of single component software is obtained according to the distribution of residual defects and process characteristic;
It is distributed to obtain the residual defects situation of single component software according to the residual defects of single component software.
4. software reliability earlier evaluations method according to claim 1, which is characterized in that the step S3 includes:
Construct supporting vector machine model;
The residual defects situation of single component software is inputted in the supporting vector machine model, obtain single component software can By property,
Wherein, for continuous operation software, the input of supporting vector machine model is the residual defects density of component software, exports and is The failure rate of component software;
For disposable runs software, the input of supporting vector machine model is the residual defects number of component software, is exported as software The reliability of component.
5. software reliability earlier evaluations method according to claim 4, which is characterized in that building support vector machines mould Type, comprising:
Determine that support vector machines type is least square method supporting vector machine;
The kernel function form for determining supporting vector machine model is Radial basis kernel function form;
Determine the model parameter and nuclear parameter of supporting vector machine model, wherein the model parameter includes penalty factor, the core Function parameter includes the variance of kernel function;
Model parameter and nuclear parameter are trained, and model parameter and nuclear parameter are carried out by the coefficient of determination and mean square error Update, obtain the optimal solution of model parameter and nuclear parameter;
Supporting vector machine model is constructed according to the optimal solution of support vector machines type, model parameter and nuclear parameter.
6. software reliability earlier evaluations method according to claim 1, which is characterized in that the step S4 includes:
Step S41 carries out the extension towards reliability to software uml model, comprising: to the transfer between use-case between scene Probability is extended, and is extended to the execution time of component software;
Step S42 lists the precondition and postcondition of each scene in software systems respectively, wherein precondition is What scene was performed meets condition, and postcondition is the state that component software is transferred to after scene executes;
Step S43 creates a Semi-Markov Processes, state set S, initial state Initial, by initial state Initial It is added in state set S, and enables current state CurrentState=Initial, state metastatic marker collection is combined into T;
Step S44, respectively for each of scene set scene SciIf scene SciPrecondition Sci.Pre2∈ S, then Enable CurrentState=Sci.Pre2, and a migration from CurrentState state is generated, by scene SciAfter Set condition Sci.Post2It is added in state set S;
Step S45, by scene SciIt is deleted from scene set;
Step S46 returns to step S44 if scene set non-empty, otherwise, generates the software systems and uses model.
7. software reliability earlier evaluations method according to claim 1, which is characterized in that the step S5 includes: pair In disposable runs software system, it is calculate by the following formula the reliability of software systems:
Wherein, R indicates the reliability of software systems,
N indicates status number,
RnExpression state n is transferred to the probability of success status,
Q is the square that removal absorbing state Success state and the corresponding row and column of Failure state obtain in transition probability matrix Battle array, wherein transition probability Rijpij, RijWhen indicating to shift from state i to state j, the reliability of the scene run, pijTable Show the probability shifted from state i to state j,
I is unit matrix,
| I-Q | it is the determinant of matrix (I-Q),
E is that matrix (I-Q) removes the matrix obtained after first row and last line,
| E | it is the determinant of matrix E.
8. software reliability earlier evaluations method according to claim 7, which is characterized in that obtain scene by following formula Reliability:
Wherein, SckIndicate scene, R (Sck) indicate scene reliability, N indicate scene sequence chart in component software quantity, L indicates the index of component software, mlIndicate the called number of component software,Indicate first of component software CklIt is adjusted Use mlThe secondary probability not malfunctioned.
9. software reliability earlier evaluations method according to claim 1, which is characterized in that the step S5 includes: pair In continuous operation software systems, it is calculate by the following formula the failure rate of software systems:
Wherein, λ indicates the failure rate of software systems,
pijIndicate the probability shifted from state i to state j,
1/μijThe average performance times for the scene that expression state i is run when shifting to state j,
λijThe failure rate for the scene that expression state i is run when shifting to state j,
πiThe stable state excitation probability of expression state,
πi·pijIndicate the stable state excitation probability of scene.
10. software reliability earlier evaluations method according to claim 9, which is characterized in that the failure rate of scene passes through Following formula obtains:
Wherein, SckIndicate scene,
λ(Sck) indicate scene failure rate,
N indicates the quantity of component software in the sequence chart of scene,
L indicates the index of component software,
tlIt indicates in scene SckIn time for executing every time of first of component software,
mlIndicate the called number of first of component software,
λ(Ckl) indicate first of component software failure rate.
CN201910467512.1A 2019-05-31 2019-05-31 Early evaluation method for software reliability Active CN110297765B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910467512.1A CN110297765B (en) 2019-05-31 2019-05-31 Early evaluation method for software reliability

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910467512.1A CN110297765B (en) 2019-05-31 2019-05-31 Early evaluation method for software reliability

Publications (2)

Publication Number Publication Date
CN110297765A true CN110297765A (en) 2019-10-01
CN110297765B CN110297765B (en) 2023-04-21

Family

ID=68027411

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910467512.1A Active CN110297765B (en) 2019-05-31 2019-05-31 Early evaluation method for software reliability

Country Status (1)

Country Link
CN (1) CN110297765B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112131723A (en) * 2020-09-09 2020-12-25 广西大学 Markov theory-based energy management system reliability analysis method
CN113504935A (en) * 2021-07-26 2021-10-15 平安信托有限责任公司 Software development quality evaluation method and device, electronic equipment and readable storage medium
CN114546815A (en) * 2020-11-25 2022-05-27 海鹰航空通用装备有限责任公司 Software reliability evaluation method based on software defect number and reliability model
CN117891566A (en) * 2024-03-18 2024-04-16 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) Reliability evaluation method, device, equipment, medium and product of intelligent software

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101908019A (en) * 2010-07-30 2010-12-08 南开大学 Bayesian network-based internetware dependability evaluation model
US20110087777A1 (en) * 2009-10-09 2011-04-14 Sony Corporation Information-processing device, information-processing method, and program
CN104573386A (en) * 2015-01-26 2015-04-29 国网四川省电力公司电力科学研究院 System evaluation and detection method by Bayesian model

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110087777A1 (en) * 2009-10-09 2011-04-14 Sony Corporation Information-processing device, information-processing method, and program
CN101908019A (en) * 2010-07-30 2010-12-08 南开大学 Bayesian network-based internetware dependability evaluation model
CN104573386A (en) * 2015-01-26 2015-04-29 国网四川省电力公司电力科学研究院 System evaluation and detection method by Bayesian model

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
史卫民: "基于体系结构的软件可靠性评估综述", 《计算机工程与设计》 *
游威振: "系统可靠性建模的贝叶斯网络结构学习方法研究与实现", 《信息科技》 *
王科欣等: "基于贝叶斯网络技术的软件缺陷预测与故障诊断", 《微型电脑应用》 *
许玉堂等: "基于时间扩展Petri网的实时嵌入式软件体系结构建模及可靠性评估", 《兵工学报》 *
谢春丽: "软件可靠性估计的不确定性分析", 《计算机工程与设计》 *
陆文: "一种开放环境下的软件可靠性评估方法", 《计算机学报》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112131723A (en) * 2020-09-09 2020-12-25 广西大学 Markov theory-based energy management system reliability analysis method
CN114546815A (en) * 2020-11-25 2022-05-27 海鹰航空通用装备有限责任公司 Software reliability evaluation method based on software defect number and reliability model
CN113504935A (en) * 2021-07-26 2021-10-15 平安信托有限责任公司 Software development quality evaluation method and device, electronic equipment and readable storage medium
CN117891566A (en) * 2024-03-18 2024-04-16 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) Reliability evaluation method, device, equipment, medium and product of intelligent software

Also Published As

Publication number Publication date
CN110297765B (en) 2023-04-21

Similar Documents

Publication Publication Date Title
CN110297765A (en) Software reliability earlier evaluations method
Khomh et al. A bayesian approach for the detection of code and design smells
Syring et al. Evaluating conformance measures in process mining using conformance propositions
CN109657797B (en) Fault diagnosis capability analysis method based on hybrid diagnosis Bayesian network
Lanubile et al. Evaluating predictive quality models derived from software measures: lessons learned
Pira et al. Deadlock detection in complex software systems specified through graph transformation using Bayesian optimization algorithm
Sarno et al. Modified time-based heuristics miner for parallel business processes
Gu et al. Learning big Gaussian Bayesian networks: Partition, estimation and fusion
Prosvirnova et al. Automated generation of minimal cut sets from AltaRica 3.0 models
Wang et al. On the use of time series and search based software engineering for refactoring recommendation
Hyttinen et al. A Core-Guided Approach to Learning Optimal Causal Graphs.
Ibarguengoytia et al. Any time probabilistic reasoning for sensor validation
CN110659199B (en) Class integration test sequence generation method based on transfer dependence
Sáenz-Royo et al. Ordering vs. AHP. Does the intensity used in the decision support techniques compensate?
Rantanen et al. Learning optimal causal graphs with exact search
Le Berre et al. The second QBF solvers comparative evaluation
Fenton et al. Software project and quality modelling using Bayesian networks
Spirtes Graphical models, causal inference, and econometric models
CN113204498B (en) Method and apparatus for generating fuzzy test driver for closed source function library
Ufuktepe Test case prioritization for regression testing using change impact analysis
Gouveia et al. Model Revision of Boolean Logical Models of Biological Regulatory Networks
EP4131079A1 (en) Systems and methods for generating a structural model architecture
CN114398291B (en) Software regression testing influence domain analysis method and system
Liu An intelligent planning technique-based software requirement analysis
Zhang et al. GraSS: Combining Graph Neural Networks with Expert Knowledge for SAT Solver Selection

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