CN104572455B - One kind is based on markovian component-based software reliability estimation method - Google Patents
One kind is based on markovian component-based software reliability estimation method Download PDFInfo
- Publication number
- CN104572455B CN104572455B CN201410833688.1A CN201410833688A CN104572455B CN 104572455 B CN104572455 B CN 104572455B CN 201410833688 A CN201410833688 A CN 201410833688A CN 104572455 B CN104572455 B CN 104572455B
- Authority
- CN
- China
- Prior art keywords
- component
- software
- reliability
- probability
- markovian
- 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.)
- Expired - Fee Related
Links
Abstract
It is of the invention a kind of comprehensive and accurate, based on markovian component-based software reliability estimation method, comprise the following steps, (1) obtains application state transition probability matrix, each component and include function body quantity and each component extent of injury by analysis software structure;(2) software is tested using the use-case quantity no less than minimum test case, number is repaired in be performed number of times, failure number and the failure for counting each component, is obtained each component and is performed probability;(3) each component occupancy is obtained according to transition probability between the component obtained in step (1) and according to each component execution probability calculation obtained in step (2);(4) each component failure rate is calculated;(5) each component complexity is calculated comprising function body quantity according to each component obtained in step (1);(6) each component importance degree is calculated according to each component extent of injury obtained in step (1);(7) each Member Reliability Analysis are assessed;(8) software reliability is assessed.
Description
Technical field
The invention belongs to field of software engineering, it is related to software evaluation method, it is specially a kind of based on markovian
Component-based software reliability estimation method.
Background technology
Large-scale real time software system is constantly updated with function constantly expanding with software size, and software configuration is also increasingly
Complexity, requirement to its reliability also more and more higher, therefore need to set up software reliability assessment model, real-time software is carried out can
By property evaluation.Current large-scale real time software system is made up of many software components, and each component frequency of use and pass
Stroke degree is all different, it is therefore desirable to go to assess software reliability from the angle of software inhouse framework and software component.Typically
Component software appraisal procedure has three kinds:Method based on section, the method based on state and the method based on path.Based on section
Method mainly by analyzing different software input data sets, calculate the transfer between the probability and each component that different sections occur
Probability assesses software reliability;The path that method based on path is experienced mainly for test case, counts on the path
The frequency of use and probability of each component, computational software system reliability;Method based on state assumes the operation of software systems
Journey is the state migration procedure between each component, and software systems reliability is assessed using theory of random processes.Wherein main flow is random
Process model has two kinds:Markov Process Model (Markov Process Model) and nonhomogeneous Poisson process model
(Nonhomogeneous Poission Model).Markov Process Model with J-M models as representative, by Jelinski and
Moranda proposed that its main target is software estimation failure moment, residual error number and reliability in 1972.
The reliability estimation method of existing software systems mainly considers the single factor of component occupancy, it is believed that occupancy is high
The crash rate of component can produce material impact to the crash rate of software systems.But the complexity of component and importance degree are to software
The reliability of system is also critically important, and element structure is more complicated, and software systems reliability is lower;Although certain class important component utilization rate
It is not high, but its failure will produce devastating impact to software systems.It is existing that objective comprehensive evaluation cannot be all carried out to it,
Actual demand can not be met.
The content of the invention
For problems of the prior art, the present invention provides one kind can consider software occupancy, complexity
And importance degree, carry out thoroughly evaluating based on markovian component-based software reliability estimation method.
The present invention is to be achieved through the following technical solutions:
One kind of the invention is based on markovian component-based software reliability estimation method, comprises the following steps,
(1) by analysis software structure, application state transition probability matrix, each component are obtained and includes function body quantity and each
The component extent of injury;Wherein, state transition probability matrix P is by the transition probability p between componentijComposition, pijComponent i is referred to arrive
The probability of component j, the dimension of matrix is the sum of software component;
(2) software is tested using the use-case quantity no less than minimum test case, counts being performed for each component
Number is repaired in number of times, failure number and failure, is obtained each component and is performed probability;All structures in software under the quantity of minimum test case
Part performs number and is no less than 2 times;Failure member will be repaired in real time in test process, and obtain repairing the probability of success;
(3) performed according to transition probability between the component obtained in step (1) and according to each component obtained in step (2) general
Rate is calculated each component occupancy;
(4) each component failure rate is calculated;The crash rate of component refers to probability of the component from normal condition to abnormality,
Comprise the following steps that:
Step 4.1:If certain component there are normal and abnormal two states, component level Markov Chain is formed, set up by gu,vGroup
Into state transition probability matrix G;gu,vExpression is transferred to the probability of state v by state u, by being performed time in step (2)
Number, failure number and failure are repaired number and are calculated;
Step 4.2:Calculate state probability vector B of the component after k cycle(k):B(k)=B(0)G(k), wherein, initially
Probability vector B(0)=[0 1], G(k)The k powers of representing matrix G;According to steady markovian property, B(k)Will converge to
Fixed value;
Step 4.3:Calculate the crash rate of the component;
The crash rate at current time is equal to state probability vector B(0)Second element, i.e. λ(0)=g12;
Crash rate after k cycle is equal to the state probability vector B after convergence(k)Second element, i.e.,
(5) each component complexity is calculated comprising function body quantity according to each component obtained in step (1);
(6) each component importance degree is calculated according to each component extent of injury obtained in step (1);
(7) each Member Reliability Analysis are assessed;According to following Member Reliability Analysis model obtain each component reliability assessment value and
Predicted value;
R(λj,γj,πj,μj;T)=exp (- γjλjπjμjT),
Wherein, λjIt is the crash rate of component j, γjIt is the occupancy of component j, πjIt is the complexity of component j, μjIt is component j
Importance degree, t be running software periodicity.
(8) software reliability is assessed;According to each Member Reliability Analysis obtained in following software reliability model and step (7)
The reliability assessment value and predicted value of software are obtained, the reliability to software is estimated;
Wherein, λjIt is the crash rate of component j, γjIt is the occupancy of component j, πjIt is the complexity of component j, μjIt is component j
Importance degree, t be running software periodicity, n be software in number of components.
Preferably, in step (1), function body quantity in Software Detailed Design specification by obtaining;The component extent of injury refers to
Be criticality of the component to whole software, be divided into high, medium and low and four grades of non-hazardous;
When component failures will cause software crash, the extent of injury for bringing about great losses is height;
When component failures will cause the major function of software to fail, but the extent of injury of software crash will not be caused to be;
When component failures will cause software disabler, but the extent of injury of the major function of software is not influenceed for low;
When the extent of injury that component failures do not interfere with the normal operation of software is nothing.
Further, in step (6), four grades of the component extent of injury assign the value successively decreased at random, it is high, medium and low and
Without lev4~lev1 is corresponded to respectively, then the importance degree of component j is:
Preferably, in step (3), occupancy refers to the ratio that component is performed in task, the occupancy of component jWherein, biRepresent the probability for performing component i, pijExpression is gone to the probability of component j by component i.
Preferably, in step (5), the complexity of component jWherein, βjIt is the function body quantity that component j is included,
Obtained by step (1).
Preferably, in step (7), when the reliability assessment value that t=1 obtains current time component j is R (λj,γj,πj,
μj;T)=exp (- γjλjπjμj);When the reliability prediction value that t=k obtains following k cycle rear part j isIn formula:K is not equal to 1,
Preferably, in step (8), when the reliability assessment value that t=1 obtains current time software isThe reliability prediction value of software is after t=k obtains the following k cycleIn formula:K is not equal to 1,
Compared with prior art, the present invention has following beneficial technique effect:
The present invention has taken into full account the influence of software architecture and component feature to software reliability, it is proposed that comprehensive to comment
Estimate set of factors.Comprehensive assessment set of factors has not been concerned only with the shadow of Member Reliability Analysis that high-frequency calls to software systems reliability
Ring, it is also considered that influence of the complexity and importance of component to software systems reliability.It is scalar grain to establish with function body
The complexity measure model of degree, has taken into account the complexity of component and structural;Establish the weight that priority and exponential model are combined
The property wanted measurement model, it is to avoid the subjective interference of artificial assignment.
Further, reliability assessment can be carried out to software component, software systems can also be entered using the model set up
Row reliability assessment;Selected by the difference to the cycle in model and assignment, software current reliability can be estimated,
The reliability in software later stage can be predicted, this global reliability to improve software systems wider using scope is controlled soft
Part quality is significant.
Brief description of the drawings
Fig. 1 is appraisal procedure flow chart of the present invention.
Fig. 2 is the component level Markov Chain schematic diagram described in present example.
Specific embodiment
With reference to specific embodiment, the present invention is described in further detail, it is described be explanation of the invention and
It is not to limit.
Method of the present invention is applied in the middle of the assessment of certain large-scale real-time software reliability, by considering structure
The influence of part occupancy, complexity and importance degree to software reliability, establishes complexity model and importance degree model, uses for reference horse
Er Kefu chain thoughts have been respectively created the Reliability Evaluation Model of component level and software systems level, software are carried out complete and comprehensive
Reliability assessment.
As shown in figure 1, comprising the following steps that.
Step (1), by analyzing the large-scale real-time software structure, obtains application state transition probability matrix, each component bag
Quantity containing function body and each component extent of injury.Wherein, function body refers to completing in component being called for specific function
Code collection, is the chief component of component, can be by being obtained in Software Detailed Design specification.
State transition probability matrix P is by the transition probability p between componenti,jComposition, pi,jRefer to component i to the general of component j
Rate, the dimension of matrix is 6;The component extent of injury refers to criticality of the component to whole software, is divided into four grades:High,
In, low, non-hazardous.Statistics is as shown in table 1-1;And the division of the component extent of injury and corresponding sequence number are as shown in table 1-2.
The table 1-1 software structure analysis tables
Component extent of injury classification chart in the table 1-2 softwares
Step (2), is tested software using the test case of 1932, counts being performed number of times, losing for each component
Number is repaired in effect number, failure.Wherein, failure number refers to the number of times that component makes a mistake in testing;Repaired by introducing failure
Mechanism so that failure member will be repaired in real time in test process such that it is able to obtain it and repair the probability of success, failure is repaiied
Plural number refers to the number of times of success reparation after component failure.Statistics is as shown in table 2.
The use-case test recording table of table 2
Step (3), calculates each component occupancy.Occupancy refers to the ratio that component is performed in task, component j's
Occupancy γjCan be tried to achieve by following formula:Wherein, biRepresent the probability for performing component i, pijExpression is gone to by component i
The probability of component j.
Therefore current time each component occupancy in systems is γ(0)=(0.11,0.22,0.19,0.15,0.13,
0.2), each component occupancy in systems is after the following k cycle:γ(k)=γ(0)P(k)=(0.1061,0.2233,
0.1705,0.1706,0.1423,0.1871).
Step (4), calculates each component failure rate.The crash rate of component refers to component from normal condition to abnormality
Probability, specific solution procedure is:
Step 4.1:If component there are normal and abnormal two states, component level Markov Chain is formed, as shown in Figure 2.Build
Stand by gu,vThe state transition probability matrix G, g of compositionu,vExpression is transferred to the probability of state v by state u, can be by step (2)
Be performed number of times, failure number, failure repair number be calculated.The state transition probability matrix of 6 components is:
Step 4.2:Calculate state probability vector B of the component after k cycle(k), its method is:B(k)=B(0)G(k), its
In, probability vector B(0)=[0 1], G(k)The k powers of representing matrix G.State probability vector after the k cycle of 6 components
For:
Step 4.3:Calculate the crash rate of component.Crash rate is equal to the state probability vector B after convergence(k)
Second element, i.e. λ=g12.Then the crash rate of crash rate composition is vectorial after the k cycle of each componentEach structure
The crash rate vector λ=(λ of part current time crash rate composition1,λ2,…,λ6)=(0.1296,0.0701,0.0485,
0.0380,0.0882,0.1189).
Step (5), calculates the complexity of each component.The complexity π of component jjComputational methods be:Wherein,
βjFor the function body quantity that component j is included, can be obtained by table 1.Therefore the complexity of each component is:π={ πj;J=1...6 }=
(0.0857,0.2000,0.1429,0.2214,0.1929,0.1571).
Step (6), calculates the importance degree of each component.Component importance degree is relevant with the component extent of injury, and component is endangered into journey
Four grades of degree assign the value successively decreased at random, and respectively lev4~lev1, assignment and corresponding importance degree are as shown in table 3, then
The importance degree computing formula of component j is:
The component importance degree allocation table of table 3
Therefore the vector of the importance degree of each component composition is:μ={ μj;J=1...n }=(0.6412,0.5134,0.4111,
0.5134,0.3679,0.4111).
Step (7), assesses each Member Reliability Analysis.Value in model has been tried to achieve in step (3) to (6), and taking t=1 can
Obtain the reliability assessment of current time component j:R(λj,γj,πj,μj;T)=exp (- γjλjπjμj), the assessment result such as institute of table 4
Show:
The Member Reliability Analysis of table 4 assess table
Take the reliability prediction that t=k can obtain following k cycle rear part j:
In formula:
Step (8), assesses software systems reliability.Value in model has been tried to achieve in step (3) to (6), takes t=1
Can obtain the reliability assessment value of current time software systems:Take t
=k can obtain the reliability prediction of software systems after the following k cycle:Formula
In:
Claims (8)
- It is 1. a kind of to be based on markovian component-based software reliability estimation method, it is characterised in that to comprise the following steps,(1) by analysis software structure, application state transition probability matrix, each component are obtained and includes function body quantity and each component The extent of injury;Wherein, state transition probability matrix P is by the transition probability p between componentijComposition, pijRefer to component i to component j Probability, the dimension of matrix is the sum of software component;(2) software is tested using no less than the use-case quantity of minimum test case, count each component be performed number of times, Number is repaired in failure number and failure, is obtained each component and is performed probability;All components are held in software under the quantity of minimum test case Line number is no less than 2 times;Failure member will be repaired in real time in test process, and obtain repairing the probability of success;(3) probability meter is performed according to transition probability between the component obtained in step (1) and according to each component obtained in step (2) Calculation obtains each component occupancy;(4) each component failure rate is calculated;The crash rate of component refers to probability of the component from normal condition to abnormality, specifically Step is as follows:Step 4.1:If certain component there are normal and abnormal two states, component level Markov Chain is formed, set up by gu,vComposition State transition probability matrix G;gu,vExpression is transferred to the probability of state v by state u, and number of times, mistake are performed by step (2) Effect number and failure are repaired number and are calculated;Step 4.2:Calculate state probability vector B of the component after k cycle(k):B(k)=B(0)G(k), wherein, probability Vectorial B(0)=[0 1], G(k)The k powers of representing matrix G;According to steady markovian property, B(k)Fixation will be converged to Value;Step 4.3:Calculate the crash rate of the component;The crash rate at current time is equal to state probability vector B(0)Second element, i.e. λ(0)=g12;Crash rate after k cycle is equal to the state probability vector B after convergence(k)Second element, i.e.,(5) each component complexity is calculated comprising function body quantity according to each component obtained in step (1);(6) each component importance degree is calculated according to each component extent of injury obtained in step (1);(7) each Member Reliability Analysis are assessed;Reliability assessment value and the prediction of each component are obtained according to following Member Reliability Analysis model Value;R(λj,γj,πj,μj;T)=exp (- γjλjπjμjT),Wherein, λjIt is the crash rate of component j, γjIt is the occupancy of component j, πjIt is the complexity of component j, μjIt is important for component j Degree, t is running software periodicity;(8) software reliability is assessed;Each Member Reliability Analysis according to being obtained in following software reliability model and step (7) are obtained The reliability assessment value and predicted value of software, the reliability to software are estimated;Wherein, λjIt is the crash rate of component j, γjIt is the occupancy of component j, πjIt is the complexity of component j, μjIt is important for component j Degree, t is running software periodicity, and n is the number of components in software.
- 2. according to claim 1 a kind of based on markovian component-based software reliability estimation method, its feature It is that in step (1), function body quantity in Software Detailed Design specification by obtaining.
- 3. according to claim 1 a kind of based on markovian component-based software reliability estimation method, its feature It is that in step (1), the component extent of injury refers to criticality of the component to whole software, is divided into high, medium and low and without danger Four grades of evil;When component failures will cause software crash, the extent of injury for bringing about great losses is height;When component failures will cause the major function of software to fail, but the extent of injury of software crash will not be caused to be;When component failures will cause software disabler, but the extent of injury of the major function of software is not influenceed for low;When the extent of injury that component failures do not interfere with the normal operation of software is nothing.
- 4. according to claim 3 a kind of based on markovian component-based software reliability estimation method, its feature It is in step (6), four grades of the component extent of injury to assign the value successively decreased at random, it is high, medium and low and without corresponding to respectively It is lev4~lev1, then the importance degree of component j is:
- 5. according to claim 1 a kind of based on markovian component-based software reliability estimation method, its feature It is that in step (3), occupancy refers to the ratio that component is performed in task, the occupancy of component jIts In, biRepresent the probability for performing component i, pijExpression is gone to the probability of component j by component i.
- 6. according to claim 1 a kind of based on markovian component-based software reliability estimation method, its feature It is, in step (5), the complexity of component jWherein, βjIt is the function body quantity that component j is included, by step (1) Obtain.
- 7. according to claim 1 a kind of based on markovian component-based software reliability estimation method, its feature It is, in step (7), when the reliability assessment value that t=1 obtains current time component j is R (λj,γj,πj,μj;T)=exp (- γjλjπjμj);When the reliability prediction value that t=k obtains following k cycle rear part j is In formula:K is not equal to 1, the k occupancy of cycle rear part jWherein, biRepresent and perform component i Probability.
- 8. according to claim 1 a kind of based on markovian component-based software reliability estimation method, its feature It is, in step (8), when the reliability assessment value that t=1 obtains current time software isWhen The reliability prediction value that t=k obtains software after the following k cycle isFormula In:K is not equal to 1, the k occupancy of cycle rear part jWherein, biRepresent and perform component i's Probability.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410833688.1A CN104572455B (en) | 2014-12-27 | 2014-12-27 | One kind is based on markovian component-based software reliability estimation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410833688.1A CN104572455B (en) | 2014-12-27 | 2014-12-27 | One kind is based on markovian component-based software reliability estimation method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104572455A CN104572455A (en) | 2015-04-29 |
CN104572455B true CN104572455B (en) | 2017-06-13 |
Family
ID=53088587
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410833688.1A Expired - Fee Related CN104572455B (en) | 2014-12-27 | 2014-12-27 | One kind is based on markovian component-based software reliability estimation method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104572455B (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109241609B (en) * | 2018-08-31 | 2022-11-29 | 华东交通大学 | Bayesian dynamic prediction method based on Markov chain Monte Carlo |
CN113590463A (en) * | 2021-06-21 | 2021-11-02 | 中国人民解放军陆军装甲兵学院 | Software reliability measurement method based on non-intrusive dynamic monitoring |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101593149A (en) * | 2009-06-19 | 2009-12-02 | 中科院成都信息技术有限公司 | Embedded system performance evaluation technical proposal based on the interactive Markov chain model detection |
CN102831064A (en) * | 2012-09-04 | 2012-12-19 | 北京航空航天大学 | Software self-adaptive testing method facing to reliability assessment |
CN103678636A (en) * | 2013-12-19 | 2014-03-26 | 中山大学深圳研究院 | System and method for improving reliability of component software system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060253839A1 (en) * | 2005-03-30 | 2006-11-09 | Alberto Avritzer | Generating performance tests from UML specifications using markov chains |
-
2014
- 2014-12-27 CN CN201410833688.1A patent/CN104572455B/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101593149A (en) * | 2009-06-19 | 2009-12-02 | 中科院成都信息技术有限公司 | Embedded system performance evaluation technical proposal based on the interactive Markov chain model detection |
CN102831064A (en) * | 2012-09-04 | 2012-12-19 | 北京航空航天大学 | Software self-adaptive testing method facing to reliability assessment |
CN103678636A (en) * | 2013-12-19 | 2014-03-26 | 中山大学深圳研究院 | System and method for improving reliability of component software system |
Non-Patent Citations (5)
Title |
---|
The reliability estimation, prediction and measuring of component-based software;Marko Palviainen 等;《The Journal of Systems and Software》;20111231;全文 * |
一种基于马尔可夫模型的软件可靠性评估方法;刘志祥 等;《软件可靠性与评测技术》;20120831;第30卷(第4期);第38-42页 * |
卫星地面站软件可靠性研究;边聚广;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》;20070630(第6期);第15-21页 * |
基于体系结构的软件可靠性指标分配方法研究;封二强 等;《计算机工程与设计》;20130930;第34卷(第9期);第3099-3102页 * |
构件式系统可靠性评估技术研究现状;郭勇 等;《智能计算机与应用》;20130430;第3卷(第2期);第20-24页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104572455A (en) | 2015-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110472846B (en) | Optimal estimation and uncertainty method for thermal hydraulic safety analysis of nuclear power plant | |
CN107908864A (en) | A kind of complex device remaining life Forecasting Methodology of feature based fusion | |
CN110645153A (en) | Wind generating set fault diagnosis method and device and electronic equipment | |
CN106443566A (en) | Big data deduction based electric energy metering device error detection method and system | |
CN107025169A (en) | A kind of software error layering diagnostic method based on Bayesian Network Inference | |
CN104809066A (en) | Method for evaluating and predicting maintenance work load of open source software (OSS) based on code quality | |
CN104572455B (en) | One kind is based on markovian component-based software reliability estimation method | |
CN110046409A (en) | A kind of components of steam turbine health state evaluation method based on ResNet | |
CN113626267A (en) | Method for evaluating uncertainty fault diagnosis efficiency of complex electronic system | |
Pomorova et al. | Intelligent assessment and prediction of software characteristics at the design stage | |
CN111782532A (en) | Software fault positioning method and system based on network abnormal node analysis | |
CN104503913B (en) | A kind of component software reliability estimation method based on migration path and improvement markov chain | |
CN105741184A (en) | Transformer state evaluation method and apparatus | |
CN108932197A (en) | Software failure time forecasting methods based on parameter Bootstrap double sampling | |
CN115983048B (en) | Digital twinning-based condenser quality detection method and system | |
CN104516815A (en) | Method and device used for supporting test based on risks | |
CN116383048A (en) | Software quality information processing method and device | |
CN107958089A (en) | Build the method and apparatus of model and the detection method and device of abnormal data | |
CN111339627B (en) | Computational fluid dynamics analysis anomaly syndrome prediction system and method | |
Fazlollahtabar | Triple state reliability measurement for a complex autonomous robot system based on extended triangular distribution | |
CN106547690A (en) | Based on the Software Reliability Modeling method and device under new fitting criterion | |
CN112036693A (en) | Process sequencing method based on finite weighting process fault rate | |
CN107315684B (en) | Software reliability evaluation method based on basic block | |
Smidts et al. | An architectural model for software reliability quantification | |
Wang et al. | Reliability growth prediction based on an improved grey prediction model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170613 Termination date: 20181227 |
|
CF01 | Termination of patent right due to non-payment of annual fee |