<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.reliawiki.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=David+J.+Groebel</id>
	<title>ReliaWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.reliawiki.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=David+J.+Groebel"/>
	<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php/Special:Contributions/David_J._Groebel"/>
	<updated>2026-04-15T23:36:55Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Crow_Extended&amp;diff=65553</id>
		<title>Crow Extended</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Crow_Extended&amp;diff=65553"/>
		<updated>2020-08-19T23:08:57Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: /* Mathematical Formulation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{template:RGA BOOK|3.3|Crow Extended}}&lt;br /&gt;
In reliability growth analysis, the [[Crow-AMSAA (NHPP)|Crow-AMSAA (NHPP) model]] assumes that the corrective actions for the observed failure modes are incorporated during the test (test-fix-test). However, in actual practice, fixes may be delayed until after the completion of the test (test-find-test) or some fixes may be implemented during the test while others are delayed (test-fix-find-test). At the end of a test phase, two reliability estimates are of concern: &#039;&#039;demonstrated reliability&#039;&#039; and &#039;&#039;projected reliability&#039;&#039;. The demonstrated reliability, which is based on data generated during the test phase, is an estimate of the system reliability for its configuration at the end of the test phase. The projected reliability measures the impact of the delayed fixes at the end of the current test phase.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Most of the reliability growth literature are concerned with procedures and models for calculating the demonstrated reliability, and very little attention has been paid to techniques for reliability projections. The procedure for making reliability projections utilizes engineering assessments of the effectiveness of the delayed fixes for each observed failure mode. These effectiveness factors are then used with the data generated during the test phase to obtain a projected estimate for the updated configuration by adjusting the number of failures observed during the test phase. The process of estimating the projected reliability is accomplished using the Crow Extended model. The Crow Extended model allows for a flexible growth strategy that can include corrective actions performed during the test, as well as delayed corrective actions. The test-find-test and test-fix-find-test scenarios are simply subsets of the Crow Extended model.&lt;br /&gt;
&lt;br /&gt;
For developmental testing, the Crow Extended model can be applied when using any of the following [[RGA_Data_Types|data types]]:&lt;br /&gt;
&lt;br /&gt;
*Failure Times Data&lt;br /&gt;
*Multiple Systems (Known Operating Times)&lt;br /&gt;
*Multiple Systems (Concurrent Operating Times)&lt;br /&gt;
*Multiple Systems with Dates&lt;br /&gt;
*Multiple Systems with Event Codes&lt;br /&gt;
*Grouped Failure Times&lt;br /&gt;
*Mixed Data&lt;br /&gt;
&lt;br /&gt;
As the name implies, Crow Extended is simply an &amp;quot;extension&amp;quot; of the Crow-AMSAA (NHPP) model. The calculations for Crow Extended still incorporate the methods for Crow-AMSAA based on the data type, as described on the [[Crow-AMSAA (NHPP)]] page. The Crow-AMSAA model estimates the growth during the test, while the Crow Extended model accounts for the growth after the test based on the delayed corrective actions. Additional details regarding the calculations for the Crow Extended model are presented in the sections below.&lt;br /&gt;
&lt;br /&gt;
==Background==&lt;br /&gt;
When a system is tested and failure modes are observed, management can make one of two possible decisions: to fix or to not fix the failure modes. Failure modes that are not fixed are called &#039;&#039;A modes&#039;&#039; and failure modes that receive a corrective action are called &#039;&#039;B modes&#039;&#039;. The A modes account for all failure modes that management considers to be not economical or not justified to receive corrective action. The B modes provide the assessment and management metric structure for corrective actions during and after a test. There are two types of B modes: BC modes, which are corrected during the test, and BD modes, which are corrected only at the end of the test. The management strategy is defined by how the corrective actions, if any, will be implemented. In summary, the classifications are defined as follows:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;A&#039;&#039;&#039; indicates that no corrective action was performed or will be performed (management chooses not to address for technical, financial or other reasons).&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;BC&#039;&#039;&#039; indicates that the corrective action was implemented during the test. The analysis assumes that the effect of the corrective action was experienced during the test (as with other test-fix-test reliability growth analyses).&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;BD&#039;&#039;&#039; indicates that the corrective action will be delayed until after the completion of the current test. BD modes will provide a jump in the system&#039;s MTBF at the termination time. &lt;br /&gt;
&lt;br /&gt;
In terms of assessing a system&#039;s reliability, there are three specific metrics of interest:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Demonstrated (or achieved) MTBF (DMTBF)&#039;&#039;&#039; is the system&#039;s instantaneous MTBF at the termination time.&lt;br /&gt;
*&#039;&#039;&#039;Projected MTBF (PMTBF)&#039;&#039;&#039; is the system&#039;s expected instantaneous MTBF after the implementation of the delayed corrective actions.&lt;br /&gt;
*&#039;&#039;&#039;Growth Potential MTBF (GPMTBF)&#039;&#039;&#039; is the maximum MTBF that can be attained for the system design and management strategy.&lt;br /&gt;
&lt;br /&gt;
These metrics can also be displayed in RGA in terms of failure intensity (FI). The demonstrated MTBF is calculated using basically the same methods, depending on data type, as presented on the [[Crow-AMSAA (NHPP)]] page. Projected MTBF/FI and growth potential MTBF/FI are presented in detail in the sections below.&lt;br /&gt;
&lt;br /&gt;
The following picture shows an example of data entered for the Crow Extended model.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.1.png|center|500px|Failure times data for a single system in cumulative format, including classification and mode information.]]&lt;br /&gt;
 &lt;br /&gt;
As you can see, each failure is indicated with A, BC or BD in the &#039;&#039;&#039;Classification&#039;&#039;&#039; column. In addition, any number or text can be used to specify the failure mode. In this example, numbers were used in the &#039;&#039;&#039;Mode&#039;&#039;&#039; column for simplicity, but you could just as easily use &amp;quot;Seal Leak,&amp;quot; or whatever designation you deem appropriate for identifying the mode. In RGA, a failure mode is defined as a problem and a cause.&lt;br /&gt;
&lt;br /&gt;
Reliability growth is achieved by decreasing the failure intensity. The failure intensity for the A failure modes will not change; therefore, reliability growth can only be achieved by decreasing the BC and BD mode failure intensity. In general, the only part of the BD mode failure intensity that can be decreased is that which has been seen during testing, since the failure intensity due to BD modes that were unseen during testing still remains. The BC failure modes are corrected during test, and the BC failure intensity will not change any more at the end of test.&lt;br /&gt;
&lt;br /&gt;
It is very important to note that once a BD failure mode is in the system, it is rarely totally eliminated by a corrective action. After a BD mode has been found and fixed, a certain percentage of the failure intensity will be removed, but a certain percentage of the failure intensity will generally remain. For each BD mode, an &#039;&#039;effectiveness factor&#039;&#039; (EF) is required to estimate how effective the corrective action will be in eliminating the failure intensity due to the failure mode. The EF is the fractional decrease in a mode&#039;s failure intensity after a corrective action has been made, and it must be a value between 0 and 1. It has been shown empirically that an average EF, &amp;lt;math&amp;gt;d\,\!&amp;lt;/math&amp;gt;, is about 70%. Therefore, about 30 percent, (i.e., 100 &amp;lt;math&amp;gt;(1-d)\,\!&amp;lt;/math&amp;gt; percent), of the BD mode failure intensity will typically remain in the system after all of the corrective actions have been implemented. However, individual EFs for the failure modes may be larger or smaller than the average. The next figure displays the RGA software&#039;s Effectiveness Factor window where the effectiveness factors for each unique BD failure mode can be specified.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.2.png|center|450px|Effectiveness factors defined for each unique BD mode.]]&lt;br /&gt;
&lt;br /&gt;
The EF does not account for the scenario where additional failure modes are created from the corrective actions. If this happens, then the actual EF will be lower than the assumed value. An EF greater than or equal to 0.9 indicates a significant improvement in a failure mode&#039;s MTBF (or reduction in failure intensity). This is indicative of a design change. The increase in a failure mode&#039;s MTBF, given an EF, can be calculated using:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;Multiplier=\frac{1}{1-EF}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Using this equation, an &amp;lt;math&amp;gt;EF=0.7\,\!&amp;lt;/math&amp;gt; corresponds to an increase of 3.3X. Therefore, if a failure mode had an MTBF of 100 and a delayed fix was applied, an estimate of the failure mode&#039;s MTBF after the fix is equal to &amp;lt;math&amp;gt;\approx 333\,\!&amp;lt;/math&amp;gt;. An &amp;lt;math&amp;gt;EF=0.9\,\!&amp;lt;/math&amp;gt; corresponds to a 10X increase in the failure mode&#039;s MTBF. So there is a large increase between EF = 0.7 and EF = 0.9. Before assigning an EF to a BD mode, it is recommended to run a test to verify the fix and to validate the assumed EF value. Ideally, you want to have some sort of justification for using the entered EF value. If you do not know the EF value for each BD mode, then you can also specify a fixed EF which is then applied to all modes. The average value of EF = 0.7 is a good place to start, but if you want to be a bit more conservative, then an EF = 0.4, or a smaller value, could be used.&lt;br /&gt;
&lt;br /&gt;
==Test-Find-Test==&amp;lt;!-- THIS SECTION HEADER IS LINKED FROM ANOTHER SECTION IN THIS PAGE. IF YOU RENAME THE SECTION, YOU MUST UPDATE THE LINK(S). --&amp;gt;&lt;br /&gt;
Test-find-test is a testing strategy where all corrective actions are delayed until after the test. Therefore, there are not any BC modes when analyzing test-find-test data (only A and BD modes). This scenario is also called the &#039;&#039;Crow-AMSAA Projection&#039;&#039; model, but for the purposes of the RGA software, it is simply a special case of the Crow Extended model. The picture below presents the test-find-test scenario.&lt;br /&gt;
&lt;br /&gt;
[[File:TestFindTest.png|center|400px|Test-find-test.]]&lt;br /&gt;
&lt;br /&gt;
Since there are no fixes applied during the test, the assumption is that the system&#039;s MTBF does not change during the test. In other words, the system&#039;s MTBF is constant. The system should not be exhibiting an increasing or decreasing trend in its reliability if changes are not being made. Therefore, the assumption is that &amp;lt;math&amp;gt;\beta = 1\,\!&amp;lt;/math&amp;gt;. RGA will return two &amp;lt;math&amp;gt;\beta\,\!&amp;lt;/math&amp;gt; values; Beta (hyp) which always shows a value equal to 1 since this is the underlying assumption, and Beta which is the Crow-AMSAA (NHPP) estimate that considers all of the failure times. The assumption of &amp;lt;math&amp;gt;\beta = 1\,\!&amp;lt;/math&amp;gt; can be verified by looking at the confidence bounds on &amp;lt;math&amp;gt;\beta\,\!&amp;lt;/math&amp;gt;. If the confidence bounds on &amp;lt;math&amp;gt;\beta\,\!&amp;lt;/math&amp;gt; include one, then you can fail to reject the hypothesis that &amp;lt;math&amp;gt;\beta = 1\,\!&amp;lt;/math&amp;gt;. RGA does this check automatically and uses a confidence level equal to 1 minus the specified significance level to check if the confidence bounds on &amp;lt;math&amp;gt;\beta\,\!&amp;lt;/math&amp;gt; include one. If the &amp;lt;math&amp;gt;\beta = 1\,\!&amp;lt;/math&amp;gt; assumption is violated, then the value for Beta (hyp) will be displayed in red text. If the confidence bounds on &amp;lt;math&amp;gt;\beta\,\!&amp;lt;/math&amp;gt; do not include 1, then the following questions should be considered as they relate to the data:&lt;br /&gt;
&lt;br /&gt;
*If multiple systems were tested, did they have the same configuration throughout the test? Were the corrective actions applied to all systems?&lt;br /&gt;
*Were the test conditions consistent for each system?&lt;br /&gt;
*Was there a change in the failure definition?&lt;br /&gt;
*Any issues with data entry?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\beta = 1\,\!&amp;lt;/math&amp;gt; is then used to estimate the demonstrated MTBF of the system and it is also used in the goodness-of-fit tests.&lt;br /&gt;
&lt;br /&gt;
===Projected Failure Intensity===&lt;br /&gt;
Suppose a system is subjected to development testing for a period of time, &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt;. The system can be considered as consisting of two types of failure modes: A modes and BD modes. It is assumed that all BD modes are in series and fail independently according to the exponential distribution. Also assume that the rate of occurrence of A modes follows an exponential distribution with failure intensity &amp;lt;math&amp;gt;{{\lambda }_{A}}\,\!&amp;lt;/math&amp;gt;. The system MTBF is constant throughout the test phase since all of the corrective actions are delayed until after the completion of the test. After the delayed fixes have been implemented, the system MTBF will then jump to a higher value.&lt;br /&gt;
&lt;br /&gt;
Let &amp;lt;math&amp;gt;K\,\!&amp;lt;/math&amp;gt; denote the total number of BD modes in the system, and let &amp;lt;math&amp;gt;{{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt; denote the failure intensity for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode, such that &amp;lt;math&amp;gt;i = 1,2,\ldots ,K\,\!&amp;lt;/math&amp;gt;. Then, at time equal to zero, the system failure intensity &amp;lt;math&amp;gt;r(0)\,\!&amp;lt;/math&amp;gt; is:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
r(0)={{\lambda }_{A}}+{{\lambda }_{BD}}&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where:  &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\lambda }_{BD}}=\underset{i=1}{\overset{K}{\mathop{\sum }}}\,{{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
During the test &amp;lt;math&amp;gt;(0,T)\,\!&amp;lt;/math&amp;gt;, a random number of &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; distinct BD modes will be observed, such that &amp;lt;math&amp;gt;M\le K\,\!&amp;lt;/math&amp;gt;. Denote the effectiveness factor (EF) for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode as &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;i = 1,2,\ldots ,K\,\!&amp;lt;/math&amp;gt;. The effectiveness factor &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt; is the percent decrease in &amp;lt;math&amp;gt;{{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt; after a corrective action has been made for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode. That is, the corrective action for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode removes &amp;lt;math&amp;gt;100\times {{d}_{i}}\,\!&amp;lt;/math&amp;gt; percent of the failure rate, and &amp;lt;math&amp;gt;100\times (1-{{d}_{i}})\,\!&amp;lt;/math&amp;gt; percent remains. The failure intensity for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD failure mode after a corrective action is &amp;lt;math&amp;gt;(1-{{d}_{i}}){{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt;. If corrective actions are taken on the &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; BD modes observed by time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt;, then the system failure intensity is reduced from &amp;lt;math&amp;gt;r(0)\,\!&amp;lt;/math&amp;gt; to:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  r\left( T \right)  = &amp;amp; {{\lambda }_{A}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,\left( 1-{{d}_{i}} \right){{\lambda }_{i}}+({{\lambda }_{BD}}-\underset{i=1}{\overset{M}{\mathop \sum }}\,{{\lambda }_{i}}) \\ &lt;br /&gt;
  = &amp;amp; {{\lambda }_{A}}+{{\lambda }_{BD}}-\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}}{{\lambda }_{i}}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;math&amp;gt;\underset{i=1}{\overset{M}{\mathop{\sum }}}\,(1-{{d}_{i}}){{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt; is the failure intensity for the &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; modes after the corrective actions&lt;br /&gt;
*&amp;lt;math&amp;gt;({{\lambda }_{BD}}-\underset{i=1}{\overset{M}{\mathop{\sum }}}\,{{\lambda }_{i}})\,\!&amp;lt;/math&amp;gt; is the remaining failure intensity for all unseen BD modes&lt;br /&gt;
&lt;br /&gt;
All &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; BD modes observed by test time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; may not be fixed by time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; so the actual failure intensity at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; may not be &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt;. However, &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; can be viewed as the achieved failure intensity at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; if all fixes were updated and incorporated into the system. All of the fixes for the BD modes found during the test are incorporated as delayed fixes at the end of the test phase. Therefore, the system failure intensity is constant at &amp;lt;math&amp;gt;r(0)={{\lambda }_{A}}+{{\lambda }_{BD}}\,\!&amp;lt;/math&amp;gt; through the test phase and will then jump to a lower value &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; after the delayed fixes have been implemented. Let &amp;lt;math&amp;gt;{{N}_{A}}\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{{N}_{BD}}\,\!&amp;lt;/math&amp;gt; be the total number of A and BD failures observed during the test &amp;lt;math&amp;gt;(0,T)\,\!&amp;lt;/math&amp;gt; and let &amp;lt;math&amp;gt;N={{N}_{A}}+{{N}_{BD}}\,\!&amp;lt;/math&amp;gt;. In addition, there are &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; distinct BD modes observed during the test. After implementing the &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; fixes, the failure intensity for the system at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; (after the jump) is given by the function &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(0)\,\!&amp;lt;/math&amp;gt; is actually the demonstrated failure intensity, which is based on actual system performance of the hardware tested and not of some future configuration. A demonstrated reliability value should be determined at the end of each test phase. The demonstrated failure intensity is:  &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\hat{\lambda }}_{D}}(T)=r(0)=\frac{{{N}_{A}}+{{N}_{BD}}}{T}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The demonstrated MTBF is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\widehat{{MTBF}_{D}}={{[{{\hat{\lambda }}_{D}}(T)]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The detailed procedure for estimating &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; is given in Crow [[RGA_References|[20]]] and is reviewed here.&lt;br /&gt;
&lt;br /&gt;
Let &amp;lt;math&amp;gt;E[\cdot ]\,\!&amp;lt;/math&amp;gt; denote the expected value:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;E[r(T)]={{\lambda }_{A}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}}){{\lambda }_{i}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}}{{\lambda }_{i}}{{e}^{-{{\lambda }_{i}}T}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Under realistic assumptions, &amp;lt;math&amp;gt;E[r(T)]\,\!&amp;lt;/math&amp;gt; also may be expressed as: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;E[r(T)]={{\lambda }_{A}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}}){{\lambda }_{i}}+\overline{d}h(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;\overline{d}\,\!&amp;lt;/math&amp;gt; is the mean effectiveness factor and &amp;lt;math&amp;gt;h(T)\,\!&amp;lt;/math&amp;gt; is the instantaneous rate at which a new BD mode will occur at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;\overline{d}h(T)\,\!&amp;lt;/math&amp;gt; is the bias term (or sometimes called the 3&amp;lt;sup&amp;gt;rd&amp;lt;/sup&amp;gt; term), such that: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B(T)=\overline{d}h(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The mean &amp;lt;math&amp;gt;\overline{d}\,\!&amp;lt;/math&amp;gt; is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\overline{d}=\frac{1}{M}\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Therefore, the projected failure intensity &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; is then estimated at the end of the test phase by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{r}(T)=\left( \frac{{{N}_{A}}}{T}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}})\frac{{{N}_{i}}}{T} \right)+\overline{d}h(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The projected MTBF is:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\widehat{{MTBF}_{P}}={{[r(T)]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Mathematical Formulation===&lt;br /&gt;
As indicated previously, the failure intensity of the system at &amp;lt;math&amp;gt;t=0\,\!&amp;lt;/math&amp;gt; is given by:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
    {{\lambda }_{System}}= &amp;amp; {{\lambda }_{A}}+{{\lambda }_{BD}} \\&lt;br /&gt;
    = &amp;amp; {{\lambda }_{A}}+{{\lambda }_{B{{D}_{Seen}}}}+{{\lambda }_{B{{D}_{Unseen}}}}&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The estimate for the projected failure intensity, after the corrective actions have been implemented, is then:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
    {{\lambda }_{\Pr ojected}}= &amp;amp;  {{\lambda }_{A}}+\left( 1-d \right)\left( {{\lambda }_{BD}}-h\left( t \right) \right)+h\left( t \right)\\&lt;br /&gt;
    = &amp;amp; {{\lambda }_{A}}+\left( 1-d \right){{\lambda }_{BD}}-\left( 1-d \right)h\left( t \right)+h\left( t \right)\\&lt;br /&gt;
    = &amp;amp; {{\lambda }_{A}}+\left( 1-d \right){{\lambda }_{BD}}-h\left( t \right)+dh\left( t \right)+h\left( t \right)\\&lt;br /&gt;
    = &amp;amp; {{\lambda }_{A}}+\left( 1-d \right){{\lambda }_{BD}}+dh\left( t \right)&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is the basic format of the equation for the projected failure intensity when the Crow Extended model is used with the test-find-test strategy.&lt;br /&gt;
&lt;br /&gt;
===h(t) Function===&lt;br /&gt;
h(t) is defined as the unseen BD mode failure intensity. It is also defined as the rate at which new unique BD modes are being discovered. The maximum likelihood estimate of &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; is calculated using:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{h}\left( t \right)={{\hat{\lambda }}_{BD}}{{\overline{\beta }}_{BD}}{{t}^{{{{\overline{\beta }}}_{BD}}-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;{\overline{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; is the unbiased estimate. The unbiased estimate is always used when calculating &amp;lt;math&amp;gt;\hat{h}\left( t \right)\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The parameters of the &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; function, &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{{\lambda }_{BD}}\,\!&amp;lt;/math&amp;gt;, are calculated using the first occurrence of each BD mode. In order to have growth, &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt;  must be less than one. If &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; is close to one then it is possible that the program could be in trouble since this indicates that there are very few repeat occurrences. In this case, each failure tends to be a unique mode. If &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt;  is less than one then the rate at which new unique BD modes are occurring is decreasing.&lt;br /&gt;
&lt;br /&gt;
Let &amp;lt;math&amp;gt;{{X}_{1}}&amp;lt;{{X}_{2}}&amp;lt;\ldots &amp;lt;{{X}_{M}}&amp;lt;T\,\!&amp;lt;/math&amp;gt; denote the cumulative test times for the first occurrences of BD modes. Then, the maximum likelihood estimates of &amp;lt;math&amp;gt;{{\lambda }_{BD}}\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; are:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\hat{\beta }}_{BD}}=\frac{M}{\underset{i=1}{\overset{M}{\mathop{\sum }}}\,\ln \left( \tfrac{T}{{{X}_{i}}} \right)}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The unbiased estimate of &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; is: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\bar{\beta }}_{BD}}=\frac{M-1}{M}{{\hat{\beta }}_{BD}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\hat{\lambda }}_{BD}}=\frac{M}{{{T}^{{{{\overline{\beta }}}_{BD}}}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In particular, the maximum likelihood estimate for the rate of occurrence for the distinct BD modes at the termination time, &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt;, is: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  \hat{h}(T)  = &amp;amp; {{\hat{\lambda }}_{BD}}{{\overline{\beta }}_{BD}}{{T}^{{{\overline{\beta }}_{BD}}-1}} \\ &lt;br /&gt;
  = &amp;amp; \frac{M{{\overline{\beta }}_{BD}}}{T}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The parameters associated with &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; can be viewed in RGA by selecting &#039;&#039;&#039;BD modes&#039;&#039;&#039; from the dropdown to the right of &#039;&#039;&#039;Results (All Modes)&#039;&#039;&#039; in the Results Area on the control panel to the right of the data sheet. The displayed value for the failure intensity, &#039;&#039;&#039;FI&#039;&#039;&#039;, is &amp;lt;math&amp;gt;h(T)\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Growth Potential===&lt;br /&gt;
Growth Potential, when represented in terms of MTBF, is the maximum system reliability that can be attained for the system design with the current management strategy. The maximum MTBF will be attained when all &amp;lt;math&amp;gt;K\,\!&amp;lt;/math&amp;gt; BD modes have been observed and fixed with EFs &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt;. If the system is tested long enough then the failures that are observed in this case will be either repeat BD modes or A modes. In other words, there is not another unique BD mode to find within the system, and in most cases the growth potential is a value that may never actually be achieved. The growth potential can be thought of as an upper bound on the system&#039;s MTBF and ideally, should be about 30% above the system&#039;s requirement. As the system&#039;s MTBF gets closer to the growth potential, it becomes more difficult to increase the system&#039;s MTBF because it is taking more and more test time to propagate the next unique BD mode. The BD modes present opportunities for growth, but the rate of occurrence for unique BD modes goes down due to the decrease in &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt;. The growth potential is reached when &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; is equal to zero. In other words, the difference between the projected failure intensity and the growth potential is &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt;. At about 2/3 of the growth potential it becomes increasingly difficult to increase the system&#039;s MTBF as &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; function starts to flatten out.&lt;br /&gt;
 &lt;br /&gt;
The failure intensity &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; will depend on the management strategy that determines the classification of the A and BD failure modes. The engineering effort applied to the corrective actions determines the effectiveness factors. In addition, &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; depends on &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt;, which is the rate at which problem failure modes are being seen during testing. &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; drives the opportunity to take corrective actions based on the seen failure modes and it is an important factor in the overall reliability growth rate. The reliability growth potential is the limiting value of &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; as &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; increases. This limit is the maximum MTBF that can be attained with the current management strategy.  In terms of failure intensity, the growth potential is expressed by the following equation: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{r}_{GP}}={{\lambda }_{A}}+\underset{i=1}{\overset{K}{\mathop \sum }}\,(1-{{d}_{i}}){{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In terms of the MTBF, the growth potential is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
MTB{{F}_{GP}}=1/{{r}_{GP}}&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The procedure for estimating the growth potential is as follows. Suppose that the system is tested for a period of time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; and that &amp;lt;math&amp;gt;N\,\!&amp;lt;/math&amp;gt; failures have been observed. According to the management strategy, &amp;lt;math&amp;gt;{{N}_{A}}\,\!&amp;lt;/math&amp;gt; of these failures are A modes and &amp;lt;math&amp;gt;{{N}_{BD}}\,\!&amp;lt;/math&amp;gt; of these failures are BD modes. For the BD modes, there will be &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; distinct fixes. As before, &amp;lt;math&amp;gt;{{N}_{i}}\,\!&amp;lt;/math&amp;gt; is the total number of failures for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode and &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt; is the corresponding assigned EF. From this data, the growth potential failure intensity is estimated by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\hat{r}}_{GP}}(T)=\left( \frac{{{N}_{A}}}{T}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}})\frac{{{N}_{i}}}{T} \right)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The growth potential MTBF is estimated by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;M\hat{T}B{{F}_{GP}}={{[{{\hat{r}}_{GP}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Example - Test-Find-Test Data===&lt;br /&gt;
{{:Test-Find-Test_Data_Example}}&lt;br /&gt;
&lt;br /&gt;
==Test-Fix-Find-Test==&lt;br /&gt;
Traditional reliability growth models provide assessments for two types of testing and corrective action strategies: &#039;&#039;test-fix-test&#039;&#039; and &#039;&#039;test-find-test&#039;&#039;. In test-fix-test, failure modes are found during testing and corrective actions for these modes are incorporated during the test. Data from this type of test can be modeled appropriately with the [[Crow-AMSAA (NHPP)|Crow-AMSAA model]]. In test-find-test, modes are found during testing, but all of the corrective actions are delayed and incorporated after the completion of the test. Data from this type of test can be modeled appropriately with the Crow-AMSAA Projection model, which was described above in the [[Crow_Extended#Test-Find-Test|Test-Find-Test section]]. However, a common strategy involves a combination of these two approaches, where some corrective actions are incorporated during the test and some corrective actions are delayed and incorporated at the end of the test. This strategy is referred to as &#039;&#039;test-fix-find-test&#039;&#039;. Data from this test can be modeled appropriately with the Crow Extended reliability growth model, which is described next.&lt;br /&gt;
&lt;br /&gt;
Recall that B failure modes are all failure modes that will receive a corrective action. In order to provide the assessment and management metric structure for corrective actions during and after a test, two types of B modes are defined. BC failure modes are corrected during the test and BD failure modes are delayed until the end of the test. Type A failure modes are defined as before; (i.e., those failure modes that will not receive a corrective action, either during or at the end of the test).&lt;br /&gt;
&lt;br /&gt;
===Development of the Crow Extended Model===&lt;br /&gt;
Let &amp;lt;math&amp;gt;{{\lambda }_{BD}}\,\!&amp;lt;/math&amp;gt; denote the constant failure intensity for the BD failure modes, and let &amp;lt;math&amp;gt;h(t|BD)\,\!&amp;lt;/math&amp;gt; denote the first occurrence function for the BD failure modes. In addition, as before, let &amp;lt;math&amp;gt;K\,\!&amp;lt;/math&amp;gt; be the number of BD failure modes, let &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt; be the effectiveness factor for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD failure mode and let &amp;lt;math&amp;gt;\overline{d}\,\!&amp;lt;/math&amp;gt; be the average effectiveness factor.&lt;br /&gt;
&lt;br /&gt;
The Crow Extended model projected failure intensity is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\lambda }_{EM}}={{\lambda }_{CA}}-{{\lambda }_{BD}}+\underset{i=1}{\overset{K}{\mathop \sum }}\,(1-{{d}_{i}}){{\lambda }_{i}}+\overline{d}h(T|BD)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;{{\lambda }_{CA}}=\lambda \beta {{T}^{\beta -1}}\,\!&amp;lt;/math&amp;gt; is the achieved failure intensity at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The Crow Extended model projected MTBF is: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
{{M}_{EM}}=1/{{\lambda }_{EM}}&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is the MTBF after the delayed fixes have been implemented. Under the extended reliability growth model, the demonstrated failure intensity before the delayed fixes is the first term, &amp;lt;math&amp;gt;{{\lambda }_{CA}}\,\!&amp;lt;/math&amp;gt;. The demonstrated MTBF at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; before the delayed fixes is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{M}_{CA}}\text{ }={{[{{\lambda }_{CA}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you assume that there are no delayed corrective actions (BD modes), then the model reduces to a special case of the Crow-AMSAA model where the achieved MTBF equals the projection, &amp;lt;math&amp;gt;\lambda_{CA}\,\!&amp;lt;/math&amp;gt;. That is, there is no jump. If you assume that there are no corrective actions during the test (BC modes) then the model reduces to the test-find-test scenario described in the previous section. &lt;br /&gt;
&lt;br /&gt;
===Estimation of the Model===&lt;br /&gt;
In the general estimation of the Crow Extended model, it is required that all failure times during the test are known. Furthermore, the ID of each A, BC and BD failure mode needs to be entered.&lt;br /&gt;
&lt;br /&gt;
The estimate of the projected failure intensity for the Crow Extended model is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{EM}}={{\widehat{\lambda }}_{CA}}-{{\widehat{\lambda }}_{BD}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}})\frac{{{N}_{i}}}{T}+\overline{d}\widehat{h}(T|BD)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;{{N}_{i}}\,\!&amp;lt;/math&amp;gt; is the total number of failures for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode and &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt; is the corresponding assigned EF. In order to obtain the first term, &amp;lt;math&amp;gt;{{\widehat{\lambda }}_{CA}}\,\!&amp;lt;/math&amp;gt;, fit all of the data (regardless of mode classification) to the Crow-AMSAA model to estimate &amp;lt;math&amp;gt;\widehat{\beta }\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\widehat{\lambda }\,\!&amp;lt;/math&amp;gt;, thus:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{CA}}=\widehat{\lambda }\widehat{\beta }{{T}^{\widehat{\beta }-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The remaining terms are analyzed with the Crow Extended model, which is applied only to the BD data. &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{BD}}=\frac{{{N}_{BD}}}{T}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  \widehat{h}(T|BD)  = &amp;amp; {{\widehat{\lambda }}_{BD}}{{\widehat{\beta }}_{BD}}{{T}^{{{\widehat{\beta }}_{BD}}-1}} \\ &lt;br /&gt;
  = &amp;amp; \frac{M{{\widehat{\beta }}_{BD}}}{T}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;{{\widehat{\beta }}_{BD}}\,\!&amp;lt;/math&amp;gt; is the unbiased estimated of &amp;lt;math&amp;gt;\beta \,\!&amp;lt;/math&amp;gt; for the Crow-AMSAA model based on the first occurrence of &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; distinct BD modes. &lt;br /&gt;
&lt;br /&gt;
The structure for the Crow Extended model includes the following special data analysis cases:&lt;br /&gt;
&lt;br /&gt;
#Test-fix-test with no failure modes known or with BC failure modes known. With this type of data, the Crow Extended model will take the form of the [[Crow-AMSAA (NHPP)|traditional Crow-AMSAA analysis]].&lt;br /&gt;
#Test-find-test with BD failure modes known. With this type of data, the Crow Extended model will take the form of the Crow-AMSAA Projection analysis described previously in the [[Crow_Extended#Test-Find-Test|Test-Find-Test section]].&lt;br /&gt;
#Test-fix-find-test with BC and BD failure modes known. With this type of data, the full capabilities of the Crow Extended model will be applied, as described in the following sections.&lt;br /&gt;
&lt;br /&gt;
===Reliability Growth Potential and Maturity Metrics===&lt;br /&gt;
The growth potential and some maturity metrics for the Crow Extended model are calculated as follows.&lt;br /&gt;
&lt;br /&gt;
*Initial system MTBF and failure intensity are given by: &lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{M}}_{I}}=\frac{\Gamma \left( 1+\tfrac{1}{\widehat{\beta }} \right)}{{{\widehat{\lambda }}^{\tfrac{1}{\widehat{\beta }}}}}\,\!&amp;lt;/math&amp;gt;	&lt;br /&gt;
&lt;br /&gt;
and:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{I}}={{[{{\widehat{M}}_{I}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
where &amp;lt;math&amp;gt;\widehat{\beta }\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\widehat{\lambda }\,\!&amp;lt;/math&amp;gt; are the estimators of the Crow-AMSAA model for all data regardless of the failure mode classification (i.e., A, BC or BD).&lt;br /&gt;
&lt;br /&gt;
*The A mode failure intensity and MTBF are given by:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{A}}=\frac{{{N}_{A}}}{T}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
		&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{M}}_{A}}={{[{{\widehat{\lambda }}_{A}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;	&lt;br /&gt;
&lt;br /&gt;
*The Initial BD mode failure intensity is given by: &lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{BD}}=\frac{{{N}_{BD}}}{T}\,\!&amp;lt;/math&amp;gt;	&lt;br /&gt;
&lt;br /&gt;
*The BC mode initial failure intensity and MTBF are given by:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{I(BC)}}={{\widehat{\lambda }}_{I}}-{{\widehat{\lambda }}_{A}}-{{\widehat{\lambda }}_{BD}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{M}}_{I(BC)}}={{[{{\widehat{\lambda }}_{I(BC)}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Failure intensity &amp;lt;math&amp;gt;h(T|BC)\,\!&amp;lt;/math&amp;gt; and instantaneous MTBF &amp;lt;math&amp;gt;M(T|BC)\,\!&amp;lt;/math&amp;gt; for new BC failure modes at the end of test time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; are given by:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\widehat{h}(T|BC)=\widehat{\lambda }\widehat{\beta }{{T}^{\widehat{\beta }-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\widehat{M}(T|BC)={{[\widehat{h}(T|BC)]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;\widehat{\beta }\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\widehat{\lambda }\,\!&amp;lt;/math&amp;gt; are the estimators of the Crow-AMSAA model for the first occurrence of distinct BC modes.&lt;br /&gt;
&lt;br /&gt;
*Average effectiveness factor for BC failure modes is given by:	&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{d}}_{BC}}=\frac{\left[ \tfrac{N_{BC}^{\left( \tfrac{1}{{{{\hat{\beta }}}_{BC}}} \right)}}{\Gamma \left( 1+\tfrac{1}{{{{\hat{\beta }}}_{BC}}} \right)} \right]-{{N}_{BC}}}{\left[ \tfrac{N_{BC}^{\left( \tfrac{1}{{{{\hat{\beta }}}_{BC}}} \right)}}{\Gamma \left( 1+\tfrac{1}{{{{\hat{\beta }}}_{BC}}} \right)} \right]-{{M}_{BC}}}\,\!&amp;lt;/math&amp;gt;	&lt;br /&gt;
	&lt;br /&gt;
:where &amp;lt;math&amp;gt;{{N}_{BC}}\,\!&amp;lt;/math&amp;gt; is the total number of observed BC modes, &amp;lt;math&amp;gt;{{M}_{BC}}\,\!&amp;lt;/math&amp;gt; is the number of unique BC modes and &amp;lt;math&amp;gt;{{\hat{\beta }}_{BC}}\,\!&amp;lt;/math&amp;gt; is the MLE for the first occurrence of distinct BC modes. If &amp;lt;math&amp;gt;{{\hat{\beta }}_{BC}}\ge 1\,\!&amp;lt;/math&amp;gt; then &amp;lt;math&amp;gt;{{\widehat{d}}_{BC}}\,\!&amp;lt;/math&amp;gt; equals zero.&lt;br /&gt;
&lt;br /&gt;
*Growth potential failure intensity and growth potential MTBF are given by:&lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{GP}}={{\widehat{\lambda }}_{CA}}-{{\widehat{\lambda }}_{BD}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}})\frac{{{N}_{i}}}{T}\,\!&amp;lt;/math&amp;gt;	&lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{M}}_{GP}}={{[{{\widehat{\lambda }}_{GP}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Failure Mode Management Strategy===&lt;br /&gt;
Management controls the resources for corrective actions. Consequently, the effectiveness factors are part of the management strategy. For the BD mode failure intensity that has been seen during development testing, 100 &amp;lt;math&amp;gt;d\,\!&amp;lt;/math&amp;gt; percent will be removed and 100 &amp;lt;math&amp;gt;(1-d)\,\!&amp;lt;/math&amp;gt; percent will remain in the system. Therefore, after the corrective actions have been made, the current system instantaneous failure intensity consists of the failure intensity due to the A modes plus the failure intensity for the unseen BC modes, and plus the failure intensity for the unseen BD modes plus the failure intensity for the BD modes that have been seen. The following pie chart shows how the system&#039;s instantaneous failure intensity can be broken down into its individual pieces based on the current failure mode strategy.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.5.png|center|450px|System failure intensity after the corrective actions.]]&lt;br /&gt;
&lt;br /&gt;
Keep in mind that the individual components of the system&#039;s instantaneous failure intensity will depend on the classifications defined in the data. For example, if BC modes are not present within the data, then the BC mode MTBF will not be a part of the overall system MTBF. The individual pieces of the pie, as shown in the above figure, are calculated using the following equations.&lt;br /&gt;
&lt;br /&gt;
Let:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{r}(T)=\hat{\lambda }\hat{\beta }{{T}^{\hat{\beta }-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; is the test time and &amp;lt;math&amp;gt;\hat{\beta }\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\hat{\lambda }\,\!&amp;lt;/math&amp;gt; are the maximum likelihood estimates of the Crow-AMSAA model for all of the data. &amp;lt;math&amp;gt;\hat{\beta }\,\!&amp;lt;/math&amp;gt; is the biased estimate of &amp;lt;math&amp;gt;\beta \,\!&amp;lt;/math&amp;gt;. Therefore:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{\beta }=\frac{N}{\underset{i=1}{\overset{N}{\mathop{\sum }}}\,\ln \left( \tfrac{T}{{{X}_{i}}} \right)}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{\lambda }=\frac{N}{{{T}^{{\hat{\beta }}}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;N\,\!&amp;lt;/math&amp;gt; is the total number of failures, and &amp;lt;math&amp;gt;{{X}_{i}}\,\!&amp;lt;/math&amp;gt; is the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; time-to-failure. Let the successive failures &amp;lt;math&amp;gt;0&amp;lt;{{X}_{1}}&amp;lt;{{X}_{2}}&amp;lt;\ldots &amp;lt;{{X}_{3}}&amp;lt;{{X}_{N}}\,\!&amp;lt;/math&amp;gt; be partitioned into the A mode failures ( &amp;lt;math&amp;gt;{{N}_{A}}\,\!&amp;lt;/math&amp;gt; ), BC first occurrence failures ( &amp;lt;math&amp;gt;{{N}_{BCF}}\,\!&amp;lt;/math&amp;gt; ), BC remaining failures ( &amp;lt;math&amp;gt;{{N}_{BCR}}\,\!&amp;lt;/math&amp;gt; ), BD first occurrence failure ( &amp;lt;math&amp;gt;{{N}_{BDF}}\,\!&amp;lt;/math&amp;gt; ) and the BD remaining failures ( &amp;lt;math&amp;gt;{{N}_{BDR}}\,\!&amp;lt;/math&amp;gt; ). For continuous data, each portion of the pie chart, due to each of the modes, is calculated as follows:&lt;br /&gt;
&lt;br /&gt;
*A modes&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;A=\left( \frac{T}{{{N}^{2}}} \right)\left[ \underset{i=1}{\overset{{{N}_{A}}}{\mathop \sum }}\,\ln \left( \frac{T}{{{X}_{Ai}}} \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BC modes unseen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{C}_{unseen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ \underset{i=1}{\overset{{{N}_{BCF}}}{\mathop \sum }}\,\ln \left( \frac{T}{{{X}_{BCFi}}} \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BC modes seen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{C}_{seen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ \underset{i=1}{\overset{{{N}_{BCR}}}{\mathop \sum }}\,\ln \left( \frac{T}{{{X}_{BCRi}}} \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes unseen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{D}_{unseen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ \underset{i=1}{\overset{{{N}_{BDF}}}{\mathop \sum }}\,\ln \left( \frac{T}{{{X}_{BDFi}}} \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes seen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{D}_{seen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ \underset{i=1}{\overset{{{N}_{BDR}}}{\mathop \sum }}\,\ln \left( \frac{T}{{{X}_{BDRi}}} \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes remain&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  B{{D}_{remain}}  = &amp;amp; \left( 1-\frac{1}{M}\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}} \right)\cdot B{{D}_{seen}} \\ &lt;br /&gt;
  = &amp;amp; \left( 1-\overline{d} \right)\cdot B{{D}_{seen}}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes removed&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  B{{D}_{removed}} = &amp;amp; \frac{1}{M}\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}}\cdot B{{D}_{seen}} \\ &lt;br /&gt;
 = &amp;amp; \overline{d}\cdot B{{D}_{seen}}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For grouped data, the maximum likelihood estimates of &amp;lt;math&amp;gt;\beta \,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\lambda \,\!&amp;lt;/math&amp;gt; from the [[Crow-AMSAA (NHPP)|Crow-AMSAA (NHPP)]] model are calculated such that the following equations are satisfied:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\underset{i=1}{\overset{K}{\mathop \sum }}\,{{N}_{i}}\left[ \frac{t_{i}^{{\hat{\beta }}}\ln ({{t}_{i}})-t_{i-1}^{{\hat{\beta }}}\ln ({{t}_{i-1}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-\ln T \right]=0\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{\lambda }=\frac{N}{T_{K}^{{\hat{\beta }}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;K\,\!&amp;lt;/math&amp;gt; is the number of groups and &amp;lt;math&amp;gt;N=\underset{i=1}{\overset{K}{\mathop{\sum }}}\,{{N}_{i}}\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
*A modes &lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;A=\left( \frac{T}{{{N}^{2}}} \right)\left[ {{N}_{A}}\ln (T)-\underset{i=1}{\overset{K}{\mathop \sum }}\,\frac{{{N}_{Ai}}}{{\hat{\beta }}}\left( \frac{t_{i}^{{\hat{\beta }}}\ln (t_{i}^{{\hat{\beta }}})-t_{i-1}^{{\hat{\beta }}}\ln (t_{i-1}^{{\hat{\beta }}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-1 \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BC modes unseen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{C}_{unseen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ {{N}_{BCF}}\ln (T)-\underset{i=1}{\overset{K}{\mathop \sum }}\,\frac{{{N}_{BCFi}}}{{\hat{\beta }}}\left( \frac{t_{i}^{{\hat{\beta }}}\ln (t_{i}^{{\hat{\beta }}})-t_{i-1}^{{\hat{\beta }}}\ln (t_{i-1}^{{\hat{\beta }}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-1 \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BC modes seen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{C}_{seen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ {{N}_{BCR}}\ln (T)-\underset{i=1}{\overset{K}{\mathop \sum }}\,\frac{{{N}_{BCRi}}}{{\hat{\beta }}}\left( \frac{t_{i}^{{\hat{\beta }}}\ln (t_{i}^{{\hat{\beta }}})-t_{i-1}^{{\hat{\beta }}}\ln (t_{i-1}^{{\hat{\beta }}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-1 \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes unseen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{D}_{unseen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ {{N}_{BDF}}\ln (T)-\underset{i=1}{\overset{K}{\mathop \sum }}\,\frac{{{N}_{BDFi}}}{{\hat{\beta }}}\left( \frac{t_{i}^{{\hat{\beta }}}\ln (t_{i}^{{\hat{\beta }}})-t_{i-1}^{{\hat{\beta }}}\ln (t_{i-1}^{{\hat{\beta }}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-1 \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes seen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{D}_{seen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ {{N}_{BDR}}\ln (T)-\underset{i=1}{\overset{K}{\mathop \sum }}\,\frac{{{N}_{BDRi}}}{{\hat{\beta }}}\left( \frac{t_{i}^{{\hat{\beta }}}\ln (t_{i}^{{\hat{\beta }}})-t_{i-1}^{{\hat{\beta }}}\ln (t_{i-1}^{{\hat{\beta }}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-1 \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes remain&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  B{{D}_{remain}}  = &amp;amp; \left( 1-\frac{1}{M}\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}} \right)\cdot B{{D}_{seen}} \\ &lt;br /&gt;
  = &amp;amp; \left( 1-\overline{d} \right)\cdot B{{D}_{seen}}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes removed&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  B{{D}_{removed}}  = &amp;amp; \frac{1}{M}\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}}\cdot B{{D}_{seen}} \\ &lt;br /&gt;
  = &amp;amp; \overline{d}\cdot B{{D}_{seen}}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Example - Test-Fix-Find-Test Data=== &amp;lt;!-- THIS SECTION HEADER IS LINKED FROM: Operational Mission Profile Testing. IF YOU RENAME THE SECTION, YOU MUST UPDATE THE LINK(S). --&amp;gt;&lt;br /&gt;
{{:Test-Fix-Find-Test_Data_Example}}&lt;br /&gt;
&lt;br /&gt;
==Confidence Bounds==&lt;br /&gt;
The RGA software provides two methods to estimate the confidence bounds for the Crow Extended model when applied to developmental testing data. The Fisher Matrix approach is based on the Fisher Information Matrix and is commonly employed in the reliability field. The Crow bounds were developed by Dr. Larry Crow. &lt;br /&gt;
&lt;br /&gt;
See the [[Crow Extended Confidence Bounds]] chapter for details on how these confidence bounds are calculated. &lt;br /&gt;
&lt;br /&gt;
===Confidence Bounds Example===&lt;br /&gt;
{{:Crow_Extended_Confidence_Bounds_Example}}&lt;br /&gt;
&lt;br /&gt;
===Another Confidence Bounds Example===&lt;br /&gt;
{{:Crow_Extended_Confidence_Bounds_Example_2}}&lt;br /&gt;
&lt;br /&gt;
==Grouped Data== &amp;lt;!-- THIS SECTION HEADER IS LINKED FROM: Operational Mission Profile Testing. IF YOU RENAME THE SECTION, YOU MUST UPDATE THE LINK(S). --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameter estimation for grouped data using the Crow Extended model is the same as the procedure used for the traditional [[Crow-AMSAA (NHPP)#Grouped_Data| Crow-AMSAA (NHPP)]] model. The equations used to estimate the parameters of the Crow Extended model are presented next. For test-find-test data, the maximum likelihood estimates of &amp;lt;math&amp;gt;{{\lambda }_{BD}}\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; are calculated using the first occurrences of the BD modes such that:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\underset{i=1}{\overset{k}{\mathop \sum }}\,{{n}_{i}}\left[ \frac{T_{i}^{\widehat{\beta }}\ln {{T}_{i}}-T_{i-1}^{\widehat{\beta }}\ln {{T}_{i-&lt;br /&gt;
&lt;br /&gt;
1}}}{T_{i}^{\widehat{\beta }}-T_{i-1}^{\widehat{\beta }}}-\ln {{T}_{k}} \right]=0\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\widehat{\lambda }=\frac{n}{T_{k}^{\widehat{\beta }}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;{{n}_{i}}\,\!&amp;lt;/math&amp;gt; is the number of distinct BD modes within the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; interval. For test-fix-find-test data, the maximum likelihood estimates of &amp;lt;math&amp;gt;{{\lambda }_{BC}}\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{{\beta }_{BC}}\,\!&amp;lt;/math&amp;gt; are estimated in the same manner using the first occurrences of the BC modes.&lt;br /&gt;
&lt;br /&gt;
===Confidence Bounds for Grouped Data===&lt;br /&gt;
*&#039;&#039;&#039;Parameters:&#039;&#039;&#039; The confidence bounds on the parameters for the Crow Extended model for grouped data are calculated using the same procedure presented in the [[Crow-AMSAA_Confidence_Bounds|Crow-AMSAA Confidence Bounds]] chapter. &lt;br /&gt;
*&#039;&#039;&#039;Failure Intensity and MTBF:&#039;&#039;&#039; &lt;br /&gt;
**If there are no BC modes, the confidence bounds on the demonstrated failure intensity and MTBF, projected failure intensity and MTBF and growth potential failure intensity and MTBF are the same as the procedure presented for [[Crow Extended Confidence Bounds|non-grouped data]]. &lt;br /&gt;
**If there are BC modes, then the confidence bounds on the demonstrated failure intensity and MTBF are the same as the procedure presented in the Crow-AMSAA Confidence Bounds chapter, and the confidence bounds on the projected failure intensity and MTBF and growth potential failure intensity and MTBF are the same as for non-grouped data. &lt;br /&gt;
*&#039;&#039;&#039;Time:&#039;&#039;&#039; The confidence bounds on time are the same as the procedure presented in the Crow-AMSAA Confidence Bounds chapter.&lt;br /&gt;
&lt;br /&gt;
==Mixed Data==&lt;br /&gt;
The Crow Extended model can also be applied to discrete data from one-shot (success/failure) testing. In the RGA software, the &#039;&#039;&#039;Discrete Data &amp;gt; Mixed Data&#039;&#039;&#039; option creates a data sheet that can accommodate data from tests where a single unit is tested for each successive configuration (individual trial-by-trial), where multiple units are tested for each successive configuration (configurations in groups) or a combination of both. This data sheet can be analyzed with either the Crow-AMSAA (NHPP) model or the Crow Extended model.&lt;br /&gt;
&lt;br /&gt;
For discrete data, corrective actions cannot take place at the time of failure. With that in mind, the mixed data type does not allow for BC modes. For discrete data there are only A or BD modes. In terms of practical applications, think of a growth test for missile systems. Because missiles are one-shot items, any corrective actions applied to the failure modes are delayed until at least the next trial.&lt;br /&gt;
&lt;br /&gt;
Note that for calculation purposes, it is required to have at least three failures in the first interval. If that is not the case, then the data set needs to be grouped before calculating. The RGA software performs this operation in the background.&lt;br /&gt;
&lt;br /&gt;
===Example===&lt;br /&gt;
{{:Mixed_Data_-_Crow_Extended_Example}}&lt;br /&gt;
&lt;br /&gt;
==Multiple Systems with Event Codes==&lt;br /&gt;
&lt;br /&gt;
The Multiple Systems with Event Codes data type is used to analyze the failure data from a reliability growth test in which a number of systems are tested concurrently and the implemented fixes are tracked during the test phase. With this data type, all of the systems under test are assumed to have the same system hours at any given time. The Crow Extended model is used for this data type, so all the underlying assumptions regarding the Crow Extended model apply. As such, this data type is applicable only to data from within a single test phase.&lt;br /&gt;
&lt;br /&gt;
As previously presented, the failure mode classifications for the Crow Extended model are defined as follows:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;A&#039;&#039;&#039; indicates that no corrective action was performed or will be performed (management chooses not to address for technical, financial or other reasons).&lt;br /&gt;
*&#039;&#039;&#039;BC&#039;&#039;&#039; indicates that the corrective action was implemented during the test. The analysis assumes that the effect of the corrective action was experienced during the test (as with other test-fix-test reliability growth analyses).&lt;br /&gt;
*&#039;&#039;&#039;BD&#039;&#039;&#039; indicates that the corrective action will be delayed until after the completion of the current test.&lt;br /&gt;
&lt;br /&gt;
Therefore, implemented fixes can be applied only to BC modes since all BD modes are assumed to be delayed until the end of the test.&lt;br /&gt;
For each BC mode, there must be a separate entry in the data set that records the time when the fix was implemented during the test.&lt;br /&gt;
&lt;br /&gt;
===Event Codes===&lt;br /&gt;
A Multiple Systems with Event Codes data sheet that is analyzed with the Crow Extended model has an &#039;&#039;&#039;Event&#039;&#039;&#039; column that allows you to indicate the types of events that occurred during a test phase. The possible event codes that can be used in the analysis are:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;I&#039;&#039;&#039;&#039;&#039;: denotes that a certain BC failure mode has been corrected at the specific time; in other words, a fix has been implemented. For this data type, each BC mode must have an associated &#039;&#039;I&#039;&#039; event. The &#039;&#039;I&#039;&#039; event is essentially a timestamp for when the fix was implemented during the test.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;Q&#039;&#039;&#039;&#039;&#039;: indicates that the failure was due to a quality issue. An example of this might be a failure caused by a bolt not being tightened down properly. You have the option to decide whether or not to include quality issues in the analysis. This option can be specified by checking or clearing the &#039;&#039;&#039;Include Q Events&#039;&#039;&#039; check box under Event Code Options on the Analysis tab.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;P&#039;&#039;&#039;&#039;&#039;: indicates that the failure was due to a performance issue. You can determine whether or not to include performance issues in the analysis. This option can be specified by checking or clearing the &#039;&#039;&#039;Include P Events&#039;&#039;&#039; check box under Event Code Options on the Analysis tab.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;X&#039;&#039;&#039;&#039;&#039;: indicates that you wish to exclude the data point from the analysis. An &#039;&#039;X&#039;&#039; can be placed in front of any existing event code (e.g., XF to exclude a particular failure time) or entered by itself. The row of data with the &#039;&#039;X&#039;&#039; will not be included in the analysis.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;S&#039;&#039;&#039;&#039;&#039;: indicates the system start time. This event code is only selectable in the Normal View.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;F&#039;&#039;&#039;&#039;&#039;: indicates a failure time.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;E&#039;&#039;&#039;&#039;&#039;: indicates the system end time. This event code is only selectable in the Normal View.&lt;br /&gt;
&lt;br /&gt;
The analysis is based on the equivalent system that combines the operating hours of all the systems. &lt;br /&gt;
&lt;br /&gt;
===Equivalent Single System===&lt;br /&gt;
In order to analyze a Multiple Systems with Event Codes data sheet, the data are converted into a Crow Extended equivalent single system. The implemented fixes (&#039;&#039;I&#039;&#039; events) are taken into account when building the equivalent single system from the data for multiple systems.&lt;br /&gt;
&lt;br /&gt;
The basic assumptions and constraints for the use of this data type are listed below:&lt;br /&gt;
&lt;br /&gt;
*Failure modes are assumed to be independent of each other and with respect to the system configuration. The same applies to their related implemented fixes (&#039;&#039;I&#039;&#039; events). As such, each mode and its related implemented fixes (&#039;&#039;I&#039;&#039; events) are examined separately in terms of their impact to the system configuration.&lt;br /&gt;
*If there are BC modes in the data set, there must be at least 3 unique BC modes to analyze the data (together with implemented fixes for each one of them).&lt;br /&gt;
*If there are BD modes in the data set, there must be at least 3 unique BD modes to analyze the data.&lt;br /&gt;
*To be consistent with the definition of BC modes in the Crow Extended model, every BC mode must have at least one implemented fix (&#039;&#039;I&#039;&#039; event) on at least one system.&lt;br /&gt;
*Implemented fixes (&#039;&#039;I&#039;&#039; events) cannot be delayed to a later phase, because the Crow Extended model applies to a single phase only.&lt;br /&gt;
&lt;br /&gt;
The following list shows the basic rules for calculating the equivalent single system on which the Crow Extended model is applied. Note that the list is not exhaustive since there is an infinite number of scenarios that can occur. These rules cover the most common scenarios. The main concept is to add the time that each system was tested under the same configuration.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;To get to the equivalent single system, each failure time for A modes and BD modes is calculated by adding the time that each system was tested under the same configuration. In practice this means multiplying the failure time in the system by the number of total systems under test. For example, if we have 4 total systems, and system 2 has a BD1 mode at time 30, the BD1 mode failure time in the equivalent single system would be &amp;lt;math&amp;gt;30*4=120\,\!&amp;lt;/math&amp;gt;. If system 3 had another BD1 mode at time 40, then that would yield another BD1 mode in the equivalent single system at time &amp;lt;math&amp;gt;40*4=160\,\!&amp;lt;/math&amp;gt;. These calculations are done assuming that the start time for the systems are at time zero. If the start time is different than zero, then that time would have to be subtracted from the failure time on each system. For example, if system 1 started at time S=10, and there was a failure at time 30, the equivalent system time would be &amp;lt;math&amp;gt;(30-10)*4=80\,\!&amp;lt;/math&amp;gt;.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Each failure time for a BC mode that occurred before an implemented fix (&#039;&#039;I&#039;&#039; event) for that mode is also calculated by multiplying the failure time in the system by the number of total systems in test, as described above.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;The implemented fix (&#039;&#039;I&#039;&#039; event) time in the equivalent single system is calculated by adding the test time invested in each system before that &#039;&#039;I&#039;&#039; event takes place. It is the total time that the system has spent at the same configuration in terms of that specific mode.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;If the same BC mode occurs in another system after a fix (&#039;&#039;I&#039;&#039; event) has been implemented in one or more systems, the failure time in the equivalent single system is calculated by adding the test time for that BC mode, and one of the following for each of the other systems:&lt;br /&gt;
::*If a BC mode occurs in a system that has already seen an &#039;&#039;I&#039;&#039; event for that mode, then you add the time up to the &#039;&#039;I&#039;&#039; event.&lt;br /&gt;
:::or&lt;br /&gt;
::*If the &#039;&#039;I&#039;&#039; events occurred later than the BC failure time or those systems did not have any &#039;&#039;I&#039;&#039; events for that mode, then you add the time of the BC failure.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;If the same BC mode occurs in the same system after a fix (&#039;&#039;I&#039;&#039; event) has been implemented in one or more systems, the failure time in the equivalent single system is calculated by adding the test time of each system after that &#039;&#039;I&#039;&#039; event was implemented to the &#039;&#039;I&#039;&#039; event time in the equivalent single system, or zero if an &#039;&#039;I&#039;&#039; event was not present in that system.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
====Example: Equivalent Single System====&amp;lt;!-- THIS SECTION HEADER IS LINKED FROM ANOTHER PLACE IN THIS DOCUMENT. IF YOU RENAME THE SECTION, YOU MUST UPDATE THE LINK(S). --&amp;gt;&lt;br /&gt;
{{:Equivalent_System_Example}}&lt;br /&gt;
&lt;br /&gt;
===Transferring Data to an Equivalent Single System===&lt;br /&gt;
RGA provides the capability to transfer a Multiple Systems with Event Codes data sheet to various other data types. The following picture shows the available data types that the data sheet can be converted into. When selecting to transfer to an equivalent single system, the data sheet is converted to a Crow Extended - Continuous Evaluation data sheet.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.23.png|center]]&lt;br /&gt;
&lt;br /&gt;
The [[Crow Extended - Continuous Evaluation]] model is designed for analyzing data across multiple test phases, while considering the data for all phases as one data set. Familiarity with this model is necessary for the discussion presented in this section.&lt;br /&gt;
&lt;br /&gt;
When using the Crow Extended - Continuous Evaluation model to transfer the data sheet from Multiple Systems with Event Codes to an equivalent single system, the following rules are used (in addition to the five basic rules presented earlier for calculating the equivalent single system):&lt;br /&gt;
&lt;br /&gt;
*BD modes in the Crow Extended data sheet become BD modes in the equivalent single system of the Crow Extended - Continuous Evaluation data sheet.&lt;br /&gt;
*BC modes in the Crow Extended data sheet become BD modes in the equivalent single system of the Crow Extended - Continuous Evaluation data sheet. These BD modes will have associated implemented fixes (&#039;&#039;I&#039;&#039; events). Implemented fixes (&#039;&#039;I&#039;&#039; events) for BC modes in the Crow Extended data sheet become implemented fixes (&#039;&#039;I&#039;&#039; events) for the converted BD modes in the equivalent single system of the Crow Extended - Continuous Evaluation data sheet.&lt;br /&gt;
*If an implemented fix (&#039;&#039;I&#039;&#039; event) occurred at the same time as the failure, and was implemented at that exact time across all systems, then this becomes a BC mode in the equivalent single system. If the fixes (&#039;&#039;I&#039;&#039; events) were not all implemented at the same time or if the fix was not implemented on all systems at the failure time, then this becomes a BD mode in the equivalent single system.&lt;br /&gt;
&lt;br /&gt;
The next figure shows the transferred equivalent single system Crow Extended - Continuous Evaluation data sheet from the Multiple Systems with Event Codes data sheet for the data from the [[Crow_Extended#Example:_Equivalent_Single_System|Equivalent Single System example]] given above.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.24.png|center|450px]]&lt;br /&gt;
&lt;br /&gt;
===Iteration Method for Naming Repeated Modes===&lt;br /&gt;
When recording modes for transfer from the Multiple Systems with Event Codes to a Crow Extended -Continuous Evaluation equivalent single system, it is recommended to consider using an iteration method to name subsequent recurrences of the same mode. This will help alleviate any issues with the conversion of the definitions of the modes from the Crow Extended model to the Crow Extended - Continuous Evaluation model. For example, if the first occurrence of a mode is BC25, then the second occurrence is suggested to be named as BC25.1. The reasoning behind this recommendation is that in the case that BC25 in the Multiple Systems with Event Codes data sheet has received implemented fixes (&#039;&#039;I&#039;&#039; events) at the same time that the failure occurred in all systems, then this mode will be translated as a BC mode in the Crow Extended - Continuous Evaluation equivalent single system. The next recurring failure would also be treated as a BC mode, but in reality it did not have an implemented fix (&#039;&#039;I&#039;&#039; event) at the time of failure.&lt;br /&gt;
&lt;br /&gt;
For example, consider the data set shown in the following figure, which represents one system only for simplicity. Notice that the modes BC25, BC35 and BC45 received implemented fixes at the time of failure. Based on that, when they get transferred to the Crow Extended - Continuous Evaluation equivalent single system, they will be considered as BC modes. The subsequent failures of the modes 25, 35 and 45 will also be converted to BC modes, when in reality they had implemented fixes (&#039;&#039;I&#039;&#039; events) at a later time.&lt;br /&gt;
 &lt;br /&gt;
[[Image:rga9.25.png|center|450px]]&lt;br /&gt;
&lt;br /&gt;
The RGA software will display a warning if you try to convert this data sheet without using iterations.&lt;br /&gt;
&lt;br /&gt;
The next figure shows the same data sheet with the use of iterations for the modes 25, 35 and 45. The subsequent failures are named as BC25.1, BC35.1 and BC45.1.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.27.png|center|450px]]&lt;br /&gt;
&lt;br /&gt;
This way, the conversion to the Crow Extended - Continuous Evaluation model occurs in a valid fashion, because although the original BC modes are converted to BC25, BC35 and BC45, the subsequent failures are converted to BD25.1, BD35.1 and BD45.1 together with their respective implemented fixes (&#039;&#039;I&#039;&#039; events). This is shown in the next figure below. Note that the use of iterations is recommended only when transferring to the Crow Extended - Continuous Evaluation equivalent single system; it is not necessary when using the Multiple Systems with Event Codes data sheet that is calculated with the Crow Extended model.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.28.png|center|450px]]&lt;br /&gt;
&lt;br /&gt;
==More Examples==&lt;br /&gt;
===Adjusting the Failure Mode Management Strategy===&lt;br /&gt;
{{:Concurrent_Operating_Times_-_Crow_Extended_Example}}&lt;br /&gt;
&lt;br /&gt;
===Estimating the Failure Intensity Remaining After Fixes===&lt;br /&gt;
{{:Grouped_Data_-_Crow_Extended_Example}}&lt;br /&gt;
&lt;br /&gt;
===Determining if Design Will Meet MTBF Goal===&lt;br /&gt;
{{:Known_Operating_Times_-_Crow_Extended_Example}}&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Crow_Extended&amp;diff=65552</id>
		<title>Crow Extended</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Crow_Extended&amp;diff=65552"/>
		<updated>2020-08-19T23:07:39Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: /* Mathematical Formulation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{template:RGA BOOK|3.3|Crow Extended}}&lt;br /&gt;
In reliability growth analysis, the [[Crow-AMSAA (NHPP)|Crow-AMSAA (NHPP) model]] assumes that the corrective actions for the observed failure modes are incorporated during the test (test-fix-test). However, in actual practice, fixes may be delayed until after the completion of the test (test-find-test) or some fixes may be implemented during the test while others are delayed (test-fix-find-test). At the end of a test phase, two reliability estimates are of concern: &#039;&#039;demonstrated reliability&#039;&#039; and &#039;&#039;projected reliability&#039;&#039;. The demonstrated reliability, which is based on data generated during the test phase, is an estimate of the system reliability for its configuration at the end of the test phase. The projected reliability measures the impact of the delayed fixes at the end of the current test phase.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Most of the reliability growth literature are concerned with procedures and models for calculating the demonstrated reliability, and very little attention has been paid to techniques for reliability projections. The procedure for making reliability projections utilizes engineering assessments of the effectiveness of the delayed fixes for each observed failure mode. These effectiveness factors are then used with the data generated during the test phase to obtain a projected estimate for the updated configuration by adjusting the number of failures observed during the test phase. The process of estimating the projected reliability is accomplished using the Crow Extended model. The Crow Extended model allows for a flexible growth strategy that can include corrective actions performed during the test, as well as delayed corrective actions. The test-find-test and test-fix-find-test scenarios are simply subsets of the Crow Extended model.&lt;br /&gt;
&lt;br /&gt;
For developmental testing, the Crow Extended model can be applied when using any of the following [[RGA_Data_Types|data types]]:&lt;br /&gt;
&lt;br /&gt;
*Failure Times Data&lt;br /&gt;
*Multiple Systems (Known Operating Times)&lt;br /&gt;
*Multiple Systems (Concurrent Operating Times)&lt;br /&gt;
*Multiple Systems with Dates&lt;br /&gt;
*Multiple Systems with Event Codes&lt;br /&gt;
*Grouped Failure Times&lt;br /&gt;
*Mixed Data&lt;br /&gt;
&lt;br /&gt;
As the name implies, Crow Extended is simply an &amp;quot;extension&amp;quot; of the Crow-AMSAA (NHPP) model. The calculations for Crow Extended still incorporate the methods for Crow-AMSAA based on the data type, as described on the [[Crow-AMSAA (NHPP)]] page. The Crow-AMSAA model estimates the growth during the test, while the Crow Extended model accounts for the growth after the test based on the delayed corrective actions. Additional details regarding the calculations for the Crow Extended model are presented in the sections below.&lt;br /&gt;
&lt;br /&gt;
==Background==&lt;br /&gt;
When a system is tested and failure modes are observed, management can make one of two possible decisions: to fix or to not fix the failure modes. Failure modes that are not fixed are called &#039;&#039;A modes&#039;&#039; and failure modes that receive a corrective action are called &#039;&#039;B modes&#039;&#039;. The A modes account for all failure modes that management considers to be not economical or not justified to receive corrective action. The B modes provide the assessment and management metric structure for corrective actions during and after a test. There are two types of B modes: BC modes, which are corrected during the test, and BD modes, which are corrected only at the end of the test. The management strategy is defined by how the corrective actions, if any, will be implemented. In summary, the classifications are defined as follows:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;A&#039;&#039;&#039; indicates that no corrective action was performed or will be performed (management chooses not to address for technical, financial or other reasons).&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;BC&#039;&#039;&#039; indicates that the corrective action was implemented during the test. The analysis assumes that the effect of the corrective action was experienced during the test (as with other test-fix-test reliability growth analyses).&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;BD&#039;&#039;&#039; indicates that the corrective action will be delayed until after the completion of the current test. BD modes will provide a jump in the system&#039;s MTBF at the termination time. &lt;br /&gt;
&lt;br /&gt;
In terms of assessing a system&#039;s reliability, there are three specific metrics of interest:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Demonstrated (or achieved) MTBF (DMTBF)&#039;&#039;&#039; is the system&#039;s instantaneous MTBF at the termination time.&lt;br /&gt;
*&#039;&#039;&#039;Projected MTBF (PMTBF)&#039;&#039;&#039; is the system&#039;s expected instantaneous MTBF after the implementation of the delayed corrective actions.&lt;br /&gt;
*&#039;&#039;&#039;Growth Potential MTBF (GPMTBF)&#039;&#039;&#039; is the maximum MTBF that can be attained for the system design and management strategy.&lt;br /&gt;
&lt;br /&gt;
These metrics can also be displayed in RGA in terms of failure intensity (FI). The demonstrated MTBF is calculated using basically the same methods, depending on data type, as presented on the [[Crow-AMSAA (NHPP)]] page. Projected MTBF/FI and growth potential MTBF/FI are presented in detail in the sections below.&lt;br /&gt;
&lt;br /&gt;
The following picture shows an example of data entered for the Crow Extended model.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.1.png|center|500px|Failure times data for a single system in cumulative format, including classification and mode information.]]&lt;br /&gt;
 &lt;br /&gt;
As you can see, each failure is indicated with A, BC or BD in the &#039;&#039;&#039;Classification&#039;&#039;&#039; column. In addition, any number or text can be used to specify the failure mode. In this example, numbers were used in the &#039;&#039;&#039;Mode&#039;&#039;&#039; column for simplicity, but you could just as easily use &amp;quot;Seal Leak,&amp;quot; or whatever designation you deem appropriate for identifying the mode. In RGA, a failure mode is defined as a problem and a cause.&lt;br /&gt;
&lt;br /&gt;
Reliability growth is achieved by decreasing the failure intensity. The failure intensity for the A failure modes will not change; therefore, reliability growth can only be achieved by decreasing the BC and BD mode failure intensity. In general, the only part of the BD mode failure intensity that can be decreased is that which has been seen during testing, since the failure intensity due to BD modes that were unseen during testing still remains. The BC failure modes are corrected during test, and the BC failure intensity will not change any more at the end of test.&lt;br /&gt;
&lt;br /&gt;
It is very important to note that once a BD failure mode is in the system, it is rarely totally eliminated by a corrective action. After a BD mode has been found and fixed, a certain percentage of the failure intensity will be removed, but a certain percentage of the failure intensity will generally remain. For each BD mode, an &#039;&#039;effectiveness factor&#039;&#039; (EF) is required to estimate how effective the corrective action will be in eliminating the failure intensity due to the failure mode. The EF is the fractional decrease in a mode&#039;s failure intensity after a corrective action has been made, and it must be a value between 0 and 1. It has been shown empirically that an average EF, &amp;lt;math&amp;gt;d\,\!&amp;lt;/math&amp;gt;, is about 70%. Therefore, about 30 percent, (i.e., 100 &amp;lt;math&amp;gt;(1-d)\,\!&amp;lt;/math&amp;gt; percent), of the BD mode failure intensity will typically remain in the system after all of the corrective actions have been implemented. However, individual EFs for the failure modes may be larger or smaller than the average. The next figure displays the RGA software&#039;s Effectiveness Factor window where the effectiveness factors for each unique BD failure mode can be specified.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.2.png|center|450px|Effectiveness factors defined for each unique BD mode.]]&lt;br /&gt;
&lt;br /&gt;
The EF does not account for the scenario where additional failure modes are created from the corrective actions. If this happens, then the actual EF will be lower than the assumed value. An EF greater than or equal to 0.9 indicates a significant improvement in a failure mode&#039;s MTBF (or reduction in failure intensity). This is indicative of a design change. The increase in a failure mode&#039;s MTBF, given an EF, can be calculated using:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;Multiplier=\frac{1}{1-EF}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Using this equation, an &amp;lt;math&amp;gt;EF=0.7\,\!&amp;lt;/math&amp;gt; corresponds to an increase of 3.3X. Therefore, if a failure mode had an MTBF of 100 and a delayed fix was applied, an estimate of the failure mode&#039;s MTBF after the fix is equal to &amp;lt;math&amp;gt;\approx 333\,\!&amp;lt;/math&amp;gt;. An &amp;lt;math&amp;gt;EF=0.9\,\!&amp;lt;/math&amp;gt; corresponds to a 10X increase in the failure mode&#039;s MTBF. So there is a large increase between EF = 0.7 and EF = 0.9. Before assigning an EF to a BD mode, it is recommended to run a test to verify the fix and to validate the assumed EF value. Ideally, you want to have some sort of justification for using the entered EF value. If you do not know the EF value for each BD mode, then you can also specify a fixed EF which is then applied to all modes. The average value of EF = 0.7 is a good place to start, but if you want to be a bit more conservative, then an EF = 0.4, or a smaller value, could be used.&lt;br /&gt;
&lt;br /&gt;
==Test-Find-Test==&amp;lt;!-- THIS SECTION HEADER IS LINKED FROM ANOTHER SECTION IN THIS PAGE. IF YOU RENAME THE SECTION, YOU MUST UPDATE THE LINK(S). --&amp;gt;&lt;br /&gt;
Test-find-test is a testing strategy where all corrective actions are delayed until after the test. Therefore, there are not any BC modes when analyzing test-find-test data (only A and BD modes). This scenario is also called the &#039;&#039;Crow-AMSAA Projection&#039;&#039; model, but for the purposes of the RGA software, it is simply a special case of the Crow Extended model. The picture below presents the test-find-test scenario.&lt;br /&gt;
&lt;br /&gt;
[[File:TestFindTest.png|center|400px|Test-find-test.]]&lt;br /&gt;
&lt;br /&gt;
Since there are no fixes applied during the test, the assumption is that the system&#039;s MTBF does not change during the test. In other words, the system&#039;s MTBF is constant. The system should not be exhibiting an increasing or decreasing trend in its reliability if changes are not being made. Therefore, the assumption is that &amp;lt;math&amp;gt;\beta = 1\,\!&amp;lt;/math&amp;gt;. RGA will return two &amp;lt;math&amp;gt;\beta\,\!&amp;lt;/math&amp;gt; values; Beta (hyp) which always shows a value equal to 1 since this is the underlying assumption, and Beta which is the Crow-AMSAA (NHPP) estimate that considers all of the failure times. The assumption of &amp;lt;math&amp;gt;\beta = 1\,\!&amp;lt;/math&amp;gt; can be verified by looking at the confidence bounds on &amp;lt;math&amp;gt;\beta\,\!&amp;lt;/math&amp;gt;. If the confidence bounds on &amp;lt;math&amp;gt;\beta\,\!&amp;lt;/math&amp;gt; include one, then you can fail to reject the hypothesis that &amp;lt;math&amp;gt;\beta = 1\,\!&amp;lt;/math&amp;gt;. RGA does this check automatically and uses a confidence level equal to 1 minus the specified significance level to check if the confidence bounds on &amp;lt;math&amp;gt;\beta\,\!&amp;lt;/math&amp;gt; include one. If the &amp;lt;math&amp;gt;\beta = 1\,\!&amp;lt;/math&amp;gt; assumption is violated, then the value for Beta (hyp) will be displayed in red text. If the confidence bounds on &amp;lt;math&amp;gt;\beta\,\!&amp;lt;/math&amp;gt; do not include 1, then the following questions should be considered as they relate to the data:&lt;br /&gt;
&lt;br /&gt;
*If multiple systems were tested, did they have the same configuration throughout the test? Were the corrective actions applied to all systems?&lt;br /&gt;
*Were the test conditions consistent for each system?&lt;br /&gt;
*Was there a change in the failure definition?&lt;br /&gt;
*Any issues with data entry?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\beta = 1\,\!&amp;lt;/math&amp;gt; is then used to estimate the demonstrated MTBF of the system and it is also used in the goodness-of-fit tests.&lt;br /&gt;
&lt;br /&gt;
===Projected Failure Intensity===&lt;br /&gt;
Suppose a system is subjected to development testing for a period of time, &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt;. The system can be considered as consisting of two types of failure modes: A modes and BD modes. It is assumed that all BD modes are in series and fail independently according to the exponential distribution. Also assume that the rate of occurrence of A modes follows an exponential distribution with failure intensity &amp;lt;math&amp;gt;{{\lambda }_{A}}\,\!&amp;lt;/math&amp;gt;. The system MTBF is constant throughout the test phase since all of the corrective actions are delayed until after the completion of the test. After the delayed fixes have been implemented, the system MTBF will then jump to a higher value.&lt;br /&gt;
&lt;br /&gt;
Let &amp;lt;math&amp;gt;K\,\!&amp;lt;/math&amp;gt; denote the total number of BD modes in the system, and let &amp;lt;math&amp;gt;{{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt; denote the failure intensity for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode, such that &amp;lt;math&amp;gt;i = 1,2,\ldots ,K\,\!&amp;lt;/math&amp;gt;. Then, at time equal to zero, the system failure intensity &amp;lt;math&amp;gt;r(0)\,\!&amp;lt;/math&amp;gt; is:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
r(0)={{\lambda }_{A}}+{{\lambda }_{BD}}&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where:  &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\lambda }_{BD}}=\underset{i=1}{\overset{K}{\mathop{\sum }}}\,{{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
During the test &amp;lt;math&amp;gt;(0,T)\,\!&amp;lt;/math&amp;gt;, a random number of &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; distinct BD modes will be observed, such that &amp;lt;math&amp;gt;M\le K\,\!&amp;lt;/math&amp;gt;. Denote the effectiveness factor (EF) for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode as &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;i = 1,2,\ldots ,K\,\!&amp;lt;/math&amp;gt;. The effectiveness factor &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt; is the percent decrease in &amp;lt;math&amp;gt;{{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt; after a corrective action has been made for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode. That is, the corrective action for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode removes &amp;lt;math&amp;gt;100\times {{d}_{i}}\,\!&amp;lt;/math&amp;gt; percent of the failure rate, and &amp;lt;math&amp;gt;100\times (1-{{d}_{i}})\,\!&amp;lt;/math&amp;gt; percent remains. The failure intensity for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD failure mode after a corrective action is &amp;lt;math&amp;gt;(1-{{d}_{i}}){{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt;. If corrective actions are taken on the &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; BD modes observed by time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt;, then the system failure intensity is reduced from &amp;lt;math&amp;gt;r(0)\,\!&amp;lt;/math&amp;gt; to:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  r\left( T \right)  = &amp;amp; {{\lambda }_{A}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,\left( 1-{{d}_{i}} \right){{\lambda }_{i}}+({{\lambda }_{BD}}-\underset{i=1}{\overset{M}{\mathop \sum }}\,{{\lambda }_{i}}) \\ &lt;br /&gt;
  = &amp;amp; {{\lambda }_{A}}+{{\lambda }_{BD}}-\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}}{{\lambda }_{i}}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;math&amp;gt;\underset{i=1}{\overset{M}{\mathop{\sum }}}\,(1-{{d}_{i}}){{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt; is the failure intensity for the &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; modes after the corrective actions&lt;br /&gt;
*&amp;lt;math&amp;gt;({{\lambda }_{BD}}-\underset{i=1}{\overset{M}{\mathop{\sum }}}\,{{\lambda }_{i}})\,\!&amp;lt;/math&amp;gt; is the remaining failure intensity for all unseen BD modes&lt;br /&gt;
&lt;br /&gt;
All &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; BD modes observed by test time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; may not be fixed by time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; so the actual failure intensity at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; may not be &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt;. However, &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; can be viewed as the achieved failure intensity at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; if all fixes were updated and incorporated into the system. All of the fixes for the BD modes found during the test are incorporated as delayed fixes at the end of the test phase. Therefore, the system failure intensity is constant at &amp;lt;math&amp;gt;r(0)={{\lambda }_{A}}+{{\lambda }_{BD}}\,\!&amp;lt;/math&amp;gt; through the test phase and will then jump to a lower value &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; after the delayed fixes have been implemented. Let &amp;lt;math&amp;gt;{{N}_{A}}\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{{N}_{BD}}\,\!&amp;lt;/math&amp;gt; be the total number of A and BD failures observed during the test &amp;lt;math&amp;gt;(0,T)\,\!&amp;lt;/math&amp;gt; and let &amp;lt;math&amp;gt;N={{N}_{A}}+{{N}_{BD}}\,\!&amp;lt;/math&amp;gt;. In addition, there are &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; distinct BD modes observed during the test. After implementing the &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; fixes, the failure intensity for the system at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; (after the jump) is given by the function &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(0)\,\!&amp;lt;/math&amp;gt; is actually the demonstrated failure intensity, which is based on actual system performance of the hardware tested and not of some future configuration. A demonstrated reliability value should be determined at the end of each test phase. The demonstrated failure intensity is:  &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\hat{\lambda }}_{D}}(T)=r(0)=\frac{{{N}_{A}}+{{N}_{BD}}}{T}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The demonstrated MTBF is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\widehat{{MTBF}_{D}}={{[{{\hat{\lambda }}_{D}}(T)]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The detailed procedure for estimating &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; is given in Crow [[RGA_References|[20]]] and is reviewed here.&lt;br /&gt;
&lt;br /&gt;
Let &amp;lt;math&amp;gt;E[\cdot ]\,\!&amp;lt;/math&amp;gt; denote the expected value:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;E[r(T)]={{\lambda }_{A}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}}){{\lambda }_{i}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}}{{\lambda }_{i}}{{e}^{-{{\lambda }_{i}}T}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Under realistic assumptions, &amp;lt;math&amp;gt;E[r(T)]\,\!&amp;lt;/math&amp;gt; also may be expressed as: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;E[r(T)]={{\lambda }_{A}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}}){{\lambda }_{i}}+\overline{d}h(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;\overline{d}\,\!&amp;lt;/math&amp;gt; is the mean effectiveness factor and &amp;lt;math&amp;gt;h(T)\,\!&amp;lt;/math&amp;gt; is the instantaneous rate at which a new BD mode will occur at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;\overline{d}h(T)\,\!&amp;lt;/math&amp;gt; is the bias term (or sometimes called the 3&amp;lt;sup&amp;gt;rd&amp;lt;/sup&amp;gt; term), such that: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B(T)=\overline{d}h(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The mean &amp;lt;math&amp;gt;\overline{d}\,\!&amp;lt;/math&amp;gt; is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\overline{d}=\frac{1}{M}\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Therefore, the projected failure intensity &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; is then estimated at the end of the test phase by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{r}(T)=\left( \frac{{{N}_{A}}}{T}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}})\frac{{{N}_{i}}}{T} \right)+\overline{d}h(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The projected MTBF is:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\widehat{{MTBF}_{P}}={{[r(T)]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Mathematical Formulation===&lt;br /&gt;
As indicated previously, the failure intensity of the system at &amp;lt;math&amp;gt;t=0\,\!&amp;lt;/math&amp;gt; is given by:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
    {{\lambda }_{System}}= &amp;amp; {{\lambda }_{A}}+{{\lambda }_{BD}} \\&lt;br /&gt;
    = &amp;amp; {{\lambda }_{A}}+{{\lambda }_{B{{D}_{Seen}}}}+{{\lambda }_{B{{D}_{Unseen}}}}&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The estimate for the projected failure intensity, after the corrective actions have been implemented, is then:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
    {{\lambda }_{\Pro jected}}= &amp;amp;  {{\lambda }_{A}}+\left( 1-d \right)\left( {{\lambda }_{BD}}-h\left( t \right) \right)+h\left( t \right)\\&lt;br /&gt;
    = &amp;amp; {{\lambda }_{A}}+\left( 1-d \right){{\lambda }_{BD}}-\left( 1-d \right)h\left( t \right)+h\left( t \right)\\&lt;br /&gt;
    = &amp;amp; {{\lambda }_{A}}+\left( 1-d \right){{\lambda }_{BD}}-h\left( t \right)+dh\left( t \right)+h\left( t \right)\\&lt;br /&gt;
    = &amp;amp; {{\lambda }_{A}}+\left( 1-d \right){{\lambda }_{BD}}+dh\left( t \right)&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is the basic format of the equation for the projected failure intensity when the Crow Extended model is used with the test-find-test strategy.&lt;br /&gt;
&lt;br /&gt;
===h(t) Function===&lt;br /&gt;
h(t) is defined as the unseen BD mode failure intensity. It is also defined as the rate at which new unique BD modes are being discovered. The maximum likelihood estimate of &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; is calculated using:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{h}\left( t \right)={{\hat{\lambda }}_{BD}}{{\overline{\beta }}_{BD}}{{t}^{{{{\overline{\beta }}}_{BD}}-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;{\overline{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; is the unbiased estimate. The unbiased estimate is always used when calculating &amp;lt;math&amp;gt;\hat{h}\left( t \right)\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The parameters of the &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; function, &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{{\lambda }_{BD}}\,\!&amp;lt;/math&amp;gt;, are calculated using the first occurrence of each BD mode. In order to have growth, &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt;  must be less than one. If &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; is close to one then it is possible that the program could be in trouble since this indicates that there are very few repeat occurrences. In this case, each failure tends to be a unique mode. If &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt;  is less than one then the rate at which new unique BD modes are occurring is decreasing.&lt;br /&gt;
&lt;br /&gt;
Let &amp;lt;math&amp;gt;{{X}_{1}}&amp;lt;{{X}_{2}}&amp;lt;\ldots &amp;lt;{{X}_{M}}&amp;lt;T\,\!&amp;lt;/math&amp;gt; denote the cumulative test times for the first occurrences of BD modes. Then, the maximum likelihood estimates of &amp;lt;math&amp;gt;{{\lambda }_{BD}}\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; are:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\hat{\beta }}_{BD}}=\frac{M}{\underset{i=1}{\overset{M}{\mathop{\sum }}}\,\ln \left( \tfrac{T}{{{X}_{i}}} \right)}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The unbiased estimate of &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; is: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\bar{\beta }}_{BD}}=\frac{M-1}{M}{{\hat{\beta }}_{BD}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\hat{\lambda }}_{BD}}=\frac{M}{{{T}^{{{{\overline{\beta }}}_{BD}}}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In particular, the maximum likelihood estimate for the rate of occurrence for the distinct BD modes at the termination time, &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt;, is: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  \hat{h}(T)  = &amp;amp; {{\hat{\lambda }}_{BD}}{{\overline{\beta }}_{BD}}{{T}^{{{\overline{\beta }}_{BD}}-1}} \\ &lt;br /&gt;
  = &amp;amp; \frac{M{{\overline{\beta }}_{BD}}}{T}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The parameters associated with &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; can be viewed in RGA by selecting &#039;&#039;&#039;BD modes&#039;&#039;&#039; from the dropdown to the right of &#039;&#039;&#039;Results (All Modes)&#039;&#039;&#039; in the Results Area on the control panel to the right of the data sheet. The displayed value for the failure intensity, &#039;&#039;&#039;FI&#039;&#039;&#039;, is &amp;lt;math&amp;gt;h(T)\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Growth Potential===&lt;br /&gt;
Growth Potential, when represented in terms of MTBF, is the maximum system reliability that can be attained for the system design with the current management strategy. The maximum MTBF will be attained when all &amp;lt;math&amp;gt;K\,\!&amp;lt;/math&amp;gt; BD modes have been observed and fixed with EFs &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt;. If the system is tested long enough then the failures that are observed in this case will be either repeat BD modes or A modes. In other words, there is not another unique BD mode to find within the system, and in most cases the growth potential is a value that may never actually be achieved. The growth potential can be thought of as an upper bound on the system&#039;s MTBF and ideally, should be about 30% above the system&#039;s requirement. As the system&#039;s MTBF gets closer to the growth potential, it becomes more difficult to increase the system&#039;s MTBF because it is taking more and more test time to propagate the next unique BD mode. The BD modes present opportunities for growth, but the rate of occurrence for unique BD modes goes down due to the decrease in &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt;. The growth potential is reached when &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; is equal to zero. In other words, the difference between the projected failure intensity and the growth potential is &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt;. At about 2/3 of the growth potential it becomes increasingly difficult to increase the system&#039;s MTBF as &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; function starts to flatten out.&lt;br /&gt;
 &lt;br /&gt;
The failure intensity &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; will depend on the management strategy that determines the classification of the A and BD failure modes. The engineering effort applied to the corrective actions determines the effectiveness factors. In addition, &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; depends on &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt;, which is the rate at which problem failure modes are being seen during testing. &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; drives the opportunity to take corrective actions based on the seen failure modes and it is an important factor in the overall reliability growth rate. The reliability growth potential is the limiting value of &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; as &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; increases. This limit is the maximum MTBF that can be attained with the current management strategy.  In terms of failure intensity, the growth potential is expressed by the following equation: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{r}_{GP}}={{\lambda }_{A}}+\underset{i=1}{\overset{K}{\mathop \sum }}\,(1-{{d}_{i}}){{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In terms of the MTBF, the growth potential is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
MTB{{F}_{GP}}=1/{{r}_{GP}}&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The procedure for estimating the growth potential is as follows. Suppose that the system is tested for a period of time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; and that &amp;lt;math&amp;gt;N\,\!&amp;lt;/math&amp;gt; failures have been observed. According to the management strategy, &amp;lt;math&amp;gt;{{N}_{A}}\,\!&amp;lt;/math&amp;gt; of these failures are A modes and &amp;lt;math&amp;gt;{{N}_{BD}}\,\!&amp;lt;/math&amp;gt; of these failures are BD modes. For the BD modes, there will be &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; distinct fixes. As before, &amp;lt;math&amp;gt;{{N}_{i}}\,\!&amp;lt;/math&amp;gt; is the total number of failures for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode and &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt; is the corresponding assigned EF. From this data, the growth potential failure intensity is estimated by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\hat{r}}_{GP}}(T)=\left( \frac{{{N}_{A}}}{T}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}})\frac{{{N}_{i}}}{T} \right)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The growth potential MTBF is estimated by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;M\hat{T}B{{F}_{GP}}={{[{{\hat{r}}_{GP}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Example - Test-Find-Test Data===&lt;br /&gt;
{{:Test-Find-Test_Data_Example}}&lt;br /&gt;
&lt;br /&gt;
==Test-Fix-Find-Test==&lt;br /&gt;
Traditional reliability growth models provide assessments for two types of testing and corrective action strategies: &#039;&#039;test-fix-test&#039;&#039; and &#039;&#039;test-find-test&#039;&#039;. In test-fix-test, failure modes are found during testing and corrective actions for these modes are incorporated during the test. Data from this type of test can be modeled appropriately with the [[Crow-AMSAA (NHPP)|Crow-AMSAA model]]. In test-find-test, modes are found during testing, but all of the corrective actions are delayed and incorporated after the completion of the test. Data from this type of test can be modeled appropriately with the Crow-AMSAA Projection model, which was described above in the [[Crow_Extended#Test-Find-Test|Test-Find-Test section]]. However, a common strategy involves a combination of these two approaches, where some corrective actions are incorporated during the test and some corrective actions are delayed and incorporated at the end of the test. This strategy is referred to as &#039;&#039;test-fix-find-test&#039;&#039;. Data from this test can be modeled appropriately with the Crow Extended reliability growth model, which is described next.&lt;br /&gt;
&lt;br /&gt;
Recall that B failure modes are all failure modes that will receive a corrective action. In order to provide the assessment and management metric structure for corrective actions during and after a test, two types of B modes are defined. BC failure modes are corrected during the test and BD failure modes are delayed until the end of the test. Type A failure modes are defined as before; (i.e., those failure modes that will not receive a corrective action, either during or at the end of the test).&lt;br /&gt;
&lt;br /&gt;
===Development of the Crow Extended Model===&lt;br /&gt;
Let &amp;lt;math&amp;gt;{{\lambda }_{BD}}\,\!&amp;lt;/math&amp;gt; denote the constant failure intensity for the BD failure modes, and let &amp;lt;math&amp;gt;h(t|BD)\,\!&amp;lt;/math&amp;gt; denote the first occurrence function for the BD failure modes. In addition, as before, let &amp;lt;math&amp;gt;K\,\!&amp;lt;/math&amp;gt; be the number of BD failure modes, let &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt; be the effectiveness factor for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD failure mode and let &amp;lt;math&amp;gt;\overline{d}\,\!&amp;lt;/math&amp;gt; be the average effectiveness factor.&lt;br /&gt;
&lt;br /&gt;
The Crow Extended model projected failure intensity is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\lambda }_{EM}}={{\lambda }_{CA}}-{{\lambda }_{BD}}+\underset{i=1}{\overset{K}{\mathop \sum }}\,(1-{{d}_{i}}){{\lambda }_{i}}+\overline{d}h(T|BD)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;{{\lambda }_{CA}}=\lambda \beta {{T}^{\beta -1}}\,\!&amp;lt;/math&amp;gt; is the achieved failure intensity at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The Crow Extended model projected MTBF is: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
{{M}_{EM}}=1/{{\lambda }_{EM}}&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is the MTBF after the delayed fixes have been implemented. Under the extended reliability growth model, the demonstrated failure intensity before the delayed fixes is the first term, &amp;lt;math&amp;gt;{{\lambda }_{CA}}\,\!&amp;lt;/math&amp;gt;. The demonstrated MTBF at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; before the delayed fixes is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{M}_{CA}}\text{ }={{[{{\lambda }_{CA}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you assume that there are no delayed corrective actions (BD modes), then the model reduces to a special case of the Crow-AMSAA model where the achieved MTBF equals the projection, &amp;lt;math&amp;gt;\lambda_{CA}\,\!&amp;lt;/math&amp;gt;. That is, there is no jump. If you assume that there are no corrective actions during the test (BC modes) then the model reduces to the test-find-test scenario described in the previous section. &lt;br /&gt;
&lt;br /&gt;
===Estimation of the Model===&lt;br /&gt;
In the general estimation of the Crow Extended model, it is required that all failure times during the test are known. Furthermore, the ID of each A, BC and BD failure mode needs to be entered.&lt;br /&gt;
&lt;br /&gt;
The estimate of the projected failure intensity for the Crow Extended model is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{EM}}={{\widehat{\lambda }}_{CA}}-{{\widehat{\lambda }}_{BD}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}})\frac{{{N}_{i}}}{T}+\overline{d}\widehat{h}(T|BD)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;{{N}_{i}}\,\!&amp;lt;/math&amp;gt; is the total number of failures for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode and &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt; is the corresponding assigned EF. In order to obtain the first term, &amp;lt;math&amp;gt;{{\widehat{\lambda }}_{CA}}\,\!&amp;lt;/math&amp;gt;, fit all of the data (regardless of mode classification) to the Crow-AMSAA model to estimate &amp;lt;math&amp;gt;\widehat{\beta }\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\widehat{\lambda }\,\!&amp;lt;/math&amp;gt;, thus:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{CA}}=\widehat{\lambda }\widehat{\beta }{{T}^{\widehat{\beta }-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The remaining terms are analyzed with the Crow Extended model, which is applied only to the BD data. &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{BD}}=\frac{{{N}_{BD}}}{T}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  \widehat{h}(T|BD)  = &amp;amp; {{\widehat{\lambda }}_{BD}}{{\widehat{\beta }}_{BD}}{{T}^{{{\widehat{\beta }}_{BD}}-1}} \\ &lt;br /&gt;
  = &amp;amp; \frac{M{{\widehat{\beta }}_{BD}}}{T}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;{{\widehat{\beta }}_{BD}}\,\!&amp;lt;/math&amp;gt; is the unbiased estimated of &amp;lt;math&amp;gt;\beta \,\!&amp;lt;/math&amp;gt; for the Crow-AMSAA model based on the first occurrence of &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; distinct BD modes. &lt;br /&gt;
&lt;br /&gt;
The structure for the Crow Extended model includes the following special data analysis cases:&lt;br /&gt;
&lt;br /&gt;
#Test-fix-test with no failure modes known or with BC failure modes known. With this type of data, the Crow Extended model will take the form of the [[Crow-AMSAA (NHPP)|traditional Crow-AMSAA analysis]].&lt;br /&gt;
#Test-find-test with BD failure modes known. With this type of data, the Crow Extended model will take the form of the Crow-AMSAA Projection analysis described previously in the [[Crow_Extended#Test-Find-Test|Test-Find-Test section]].&lt;br /&gt;
#Test-fix-find-test with BC and BD failure modes known. With this type of data, the full capabilities of the Crow Extended model will be applied, as described in the following sections.&lt;br /&gt;
&lt;br /&gt;
===Reliability Growth Potential and Maturity Metrics===&lt;br /&gt;
The growth potential and some maturity metrics for the Crow Extended model are calculated as follows.&lt;br /&gt;
&lt;br /&gt;
*Initial system MTBF and failure intensity are given by: &lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{M}}_{I}}=\frac{\Gamma \left( 1+\tfrac{1}{\widehat{\beta }} \right)}{{{\widehat{\lambda }}^{\tfrac{1}{\widehat{\beta }}}}}\,\!&amp;lt;/math&amp;gt;	&lt;br /&gt;
&lt;br /&gt;
and:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{I}}={{[{{\widehat{M}}_{I}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
where &amp;lt;math&amp;gt;\widehat{\beta }\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\widehat{\lambda }\,\!&amp;lt;/math&amp;gt; are the estimators of the Crow-AMSAA model for all data regardless of the failure mode classification (i.e., A, BC or BD).&lt;br /&gt;
&lt;br /&gt;
*The A mode failure intensity and MTBF are given by:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{A}}=\frac{{{N}_{A}}}{T}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
		&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{M}}_{A}}={{[{{\widehat{\lambda }}_{A}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;	&lt;br /&gt;
&lt;br /&gt;
*The Initial BD mode failure intensity is given by: &lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{BD}}=\frac{{{N}_{BD}}}{T}\,\!&amp;lt;/math&amp;gt;	&lt;br /&gt;
&lt;br /&gt;
*The BC mode initial failure intensity and MTBF are given by:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{I(BC)}}={{\widehat{\lambda }}_{I}}-{{\widehat{\lambda }}_{A}}-{{\widehat{\lambda }}_{BD}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{M}}_{I(BC)}}={{[{{\widehat{\lambda }}_{I(BC)}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Failure intensity &amp;lt;math&amp;gt;h(T|BC)\,\!&amp;lt;/math&amp;gt; and instantaneous MTBF &amp;lt;math&amp;gt;M(T|BC)\,\!&amp;lt;/math&amp;gt; for new BC failure modes at the end of test time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; are given by:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\widehat{h}(T|BC)=\widehat{\lambda }\widehat{\beta }{{T}^{\widehat{\beta }-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\widehat{M}(T|BC)={{[\widehat{h}(T|BC)]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;\widehat{\beta }\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\widehat{\lambda }\,\!&amp;lt;/math&amp;gt; are the estimators of the Crow-AMSAA model for the first occurrence of distinct BC modes.&lt;br /&gt;
&lt;br /&gt;
*Average effectiveness factor for BC failure modes is given by:	&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{d}}_{BC}}=\frac{\left[ \tfrac{N_{BC}^{\left( \tfrac{1}{{{{\hat{\beta }}}_{BC}}} \right)}}{\Gamma \left( 1+\tfrac{1}{{{{\hat{\beta }}}_{BC}}} \right)} \right]-{{N}_{BC}}}{\left[ \tfrac{N_{BC}^{\left( \tfrac{1}{{{{\hat{\beta }}}_{BC}}} \right)}}{\Gamma \left( 1+\tfrac{1}{{{{\hat{\beta }}}_{BC}}} \right)} \right]-{{M}_{BC}}}\,\!&amp;lt;/math&amp;gt;	&lt;br /&gt;
	&lt;br /&gt;
:where &amp;lt;math&amp;gt;{{N}_{BC}}\,\!&amp;lt;/math&amp;gt; is the total number of observed BC modes, &amp;lt;math&amp;gt;{{M}_{BC}}\,\!&amp;lt;/math&amp;gt; is the number of unique BC modes and &amp;lt;math&amp;gt;{{\hat{\beta }}_{BC}}\,\!&amp;lt;/math&amp;gt; is the MLE for the first occurrence of distinct BC modes. If &amp;lt;math&amp;gt;{{\hat{\beta }}_{BC}}\ge 1\,\!&amp;lt;/math&amp;gt; then &amp;lt;math&amp;gt;{{\widehat{d}}_{BC}}\,\!&amp;lt;/math&amp;gt; equals zero.&lt;br /&gt;
&lt;br /&gt;
*Growth potential failure intensity and growth potential MTBF are given by:&lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{GP}}={{\widehat{\lambda }}_{CA}}-{{\widehat{\lambda }}_{BD}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}})\frac{{{N}_{i}}}{T}\,\!&amp;lt;/math&amp;gt;	&lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{M}}_{GP}}={{[{{\widehat{\lambda }}_{GP}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Failure Mode Management Strategy===&lt;br /&gt;
Management controls the resources for corrective actions. Consequently, the effectiveness factors are part of the management strategy. For the BD mode failure intensity that has been seen during development testing, 100 &amp;lt;math&amp;gt;d\,\!&amp;lt;/math&amp;gt; percent will be removed and 100 &amp;lt;math&amp;gt;(1-d)\,\!&amp;lt;/math&amp;gt; percent will remain in the system. Therefore, after the corrective actions have been made, the current system instantaneous failure intensity consists of the failure intensity due to the A modes plus the failure intensity for the unseen BC modes, and plus the failure intensity for the unseen BD modes plus the failure intensity for the BD modes that have been seen. The following pie chart shows how the system&#039;s instantaneous failure intensity can be broken down into its individual pieces based on the current failure mode strategy.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.5.png|center|450px|System failure intensity after the corrective actions.]]&lt;br /&gt;
&lt;br /&gt;
Keep in mind that the individual components of the system&#039;s instantaneous failure intensity will depend on the classifications defined in the data. For example, if BC modes are not present within the data, then the BC mode MTBF will not be a part of the overall system MTBF. The individual pieces of the pie, as shown in the above figure, are calculated using the following equations.&lt;br /&gt;
&lt;br /&gt;
Let:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{r}(T)=\hat{\lambda }\hat{\beta }{{T}^{\hat{\beta }-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; is the test time and &amp;lt;math&amp;gt;\hat{\beta }\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\hat{\lambda }\,\!&amp;lt;/math&amp;gt; are the maximum likelihood estimates of the Crow-AMSAA model for all of the data. &amp;lt;math&amp;gt;\hat{\beta }\,\!&amp;lt;/math&amp;gt; is the biased estimate of &amp;lt;math&amp;gt;\beta \,\!&amp;lt;/math&amp;gt;. Therefore:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{\beta }=\frac{N}{\underset{i=1}{\overset{N}{\mathop{\sum }}}\,\ln \left( \tfrac{T}{{{X}_{i}}} \right)}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{\lambda }=\frac{N}{{{T}^{{\hat{\beta }}}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;N\,\!&amp;lt;/math&amp;gt; is the total number of failures, and &amp;lt;math&amp;gt;{{X}_{i}}\,\!&amp;lt;/math&amp;gt; is the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; time-to-failure. Let the successive failures &amp;lt;math&amp;gt;0&amp;lt;{{X}_{1}}&amp;lt;{{X}_{2}}&amp;lt;\ldots &amp;lt;{{X}_{3}}&amp;lt;{{X}_{N}}\,\!&amp;lt;/math&amp;gt; be partitioned into the A mode failures ( &amp;lt;math&amp;gt;{{N}_{A}}\,\!&amp;lt;/math&amp;gt; ), BC first occurrence failures ( &amp;lt;math&amp;gt;{{N}_{BCF}}\,\!&amp;lt;/math&amp;gt; ), BC remaining failures ( &amp;lt;math&amp;gt;{{N}_{BCR}}\,\!&amp;lt;/math&amp;gt; ), BD first occurrence failure ( &amp;lt;math&amp;gt;{{N}_{BDF}}\,\!&amp;lt;/math&amp;gt; ) and the BD remaining failures ( &amp;lt;math&amp;gt;{{N}_{BDR}}\,\!&amp;lt;/math&amp;gt; ). For continuous data, each portion of the pie chart, due to each of the modes, is calculated as follows:&lt;br /&gt;
&lt;br /&gt;
*A modes&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;A=\left( \frac{T}{{{N}^{2}}} \right)\left[ \underset{i=1}{\overset{{{N}_{A}}}{\mathop \sum }}\,\ln \left( \frac{T}{{{X}_{Ai}}} \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BC modes unseen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{C}_{unseen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ \underset{i=1}{\overset{{{N}_{BCF}}}{\mathop \sum }}\,\ln \left( \frac{T}{{{X}_{BCFi}}} \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BC modes seen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{C}_{seen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ \underset{i=1}{\overset{{{N}_{BCR}}}{\mathop \sum }}\,\ln \left( \frac{T}{{{X}_{BCRi}}} \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes unseen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{D}_{unseen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ \underset{i=1}{\overset{{{N}_{BDF}}}{\mathop \sum }}\,\ln \left( \frac{T}{{{X}_{BDFi}}} \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes seen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{D}_{seen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ \underset{i=1}{\overset{{{N}_{BDR}}}{\mathop \sum }}\,\ln \left( \frac{T}{{{X}_{BDRi}}} \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes remain&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  B{{D}_{remain}}  = &amp;amp; \left( 1-\frac{1}{M}\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}} \right)\cdot B{{D}_{seen}} \\ &lt;br /&gt;
  = &amp;amp; \left( 1-\overline{d} \right)\cdot B{{D}_{seen}}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes removed&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  B{{D}_{removed}} = &amp;amp; \frac{1}{M}\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}}\cdot B{{D}_{seen}} \\ &lt;br /&gt;
 = &amp;amp; \overline{d}\cdot B{{D}_{seen}}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For grouped data, the maximum likelihood estimates of &amp;lt;math&amp;gt;\beta \,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\lambda \,\!&amp;lt;/math&amp;gt; from the [[Crow-AMSAA (NHPP)|Crow-AMSAA (NHPP)]] model are calculated such that the following equations are satisfied:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\underset{i=1}{\overset{K}{\mathop \sum }}\,{{N}_{i}}\left[ \frac{t_{i}^{{\hat{\beta }}}\ln ({{t}_{i}})-t_{i-1}^{{\hat{\beta }}}\ln ({{t}_{i-1}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-\ln T \right]=0\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{\lambda }=\frac{N}{T_{K}^{{\hat{\beta }}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;K\,\!&amp;lt;/math&amp;gt; is the number of groups and &amp;lt;math&amp;gt;N=\underset{i=1}{\overset{K}{\mathop{\sum }}}\,{{N}_{i}}\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
*A modes &lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;A=\left( \frac{T}{{{N}^{2}}} \right)\left[ {{N}_{A}}\ln (T)-\underset{i=1}{\overset{K}{\mathop \sum }}\,\frac{{{N}_{Ai}}}{{\hat{\beta }}}\left( \frac{t_{i}^{{\hat{\beta }}}\ln (t_{i}^{{\hat{\beta }}})-t_{i-1}^{{\hat{\beta }}}\ln (t_{i-1}^{{\hat{\beta }}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-1 \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BC modes unseen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{C}_{unseen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ {{N}_{BCF}}\ln (T)-\underset{i=1}{\overset{K}{\mathop \sum }}\,\frac{{{N}_{BCFi}}}{{\hat{\beta }}}\left( \frac{t_{i}^{{\hat{\beta }}}\ln (t_{i}^{{\hat{\beta }}})-t_{i-1}^{{\hat{\beta }}}\ln (t_{i-1}^{{\hat{\beta }}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-1 \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BC modes seen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{C}_{seen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ {{N}_{BCR}}\ln (T)-\underset{i=1}{\overset{K}{\mathop \sum }}\,\frac{{{N}_{BCRi}}}{{\hat{\beta }}}\left( \frac{t_{i}^{{\hat{\beta }}}\ln (t_{i}^{{\hat{\beta }}})-t_{i-1}^{{\hat{\beta }}}\ln (t_{i-1}^{{\hat{\beta }}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-1 \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes unseen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{D}_{unseen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ {{N}_{BDF}}\ln (T)-\underset{i=1}{\overset{K}{\mathop \sum }}\,\frac{{{N}_{BDFi}}}{{\hat{\beta }}}\left( \frac{t_{i}^{{\hat{\beta }}}\ln (t_{i}^{{\hat{\beta }}})-t_{i-1}^{{\hat{\beta }}}\ln (t_{i-1}^{{\hat{\beta }}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-1 \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes seen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{D}_{seen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ {{N}_{BDR}}\ln (T)-\underset{i=1}{\overset{K}{\mathop \sum }}\,\frac{{{N}_{BDRi}}}{{\hat{\beta }}}\left( \frac{t_{i}^{{\hat{\beta }}}\ln (t_{i}^{{\hat{\beta }}})-t_{i-1}^{{\hat{\beta }}}\ln (t_{i-1}^{{\hat{\beta }}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-1 \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes remain&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  B{{D}_{remain}}  = &amp;amp; \left( 1-\frac{1}{M}\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}} \right)\cdot B{{D}_{seen}} \\ &lt;br /&gt;
  = &amp;amp; \left( 1-\overline{d} \right)\cdot B{{D}_{seen}}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes removed&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  B{{D}_{removed}}  = &amp;amp; \frac{1}{M}\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}}\cdot B{{D}_{seen}} \\ &lt;br /&gt;
  = &amp;amp; \overline{d}\cdot B{{D}_{seen}}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Example - Test-Fix-Find-Test Data=== &amp;lt;!-- THIS SECTION HEADER IS LINKED FROM: Operational Mission Profile Testing. IF YOU RENAME THE SECTION, YOU MUST UPDATE THE LINK(S). --&amp;gt;&lt;br /&gt;
{{:Test-Fix-Find-Test_Data_Example}}&lt;br /&gt;
&lt;br /&gt;
==Confidence Bounds==&lt;br /&gt;
The RGA software provides two methods to estimate the confidence bounds for the Crow Extended model when applied to developmental testing data. The Fisher Matrix approach is based on the Fisher Information Matrix and is commonly employed in the reliability field. The Crow bounds were developed by Dr. Larry Crow. &lt;br /&gt;
&lt;br /&gt;
See the [[Crow Extended Confidence Bounds]] chapter for details on how these confidence bounds are calculated. &lt;br /&gt;
&lt;br /&gt;
===Confidence Bounds Example===&lt;br /&gt;
{{:Crow_Extended_Confidence_Bounds_Example}}&lt;br /&gt;
&lt;br /&gt;
===Another Confidence Bounds Example===&lt;br /&gt;
{{:Crow_Extended_Confidence_Bounds_Example_2}}&lt;br /&gt;
&lt;br /&gt;
==Grouped Data== &amp;lt;!-- THIS SECTION HEADER IS LINKED FROM: Operational Mission Profile Testing. IF YOU RENAME THE SECTION, YOU MUST UPDATE THE LINK(S). --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameter estimation for grouped data using the Crow Extended model is the same as the procedure used for the traditional [[Crow-AMSAA (NHPP)#Grouped_Data| Crow-AMSAA (NHPP)]] model. The equations used to estimate the parameters of the Crow Extended model are presented next. For test-find-test data, the maximum likelihood estimates of &amp;lt;math&amp;gt;{{\lambda }_{BD}}\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; are calculated using the first occurrences of the BD modes such that:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\underset{i=1}{\overset{k}{\mathop \sum }}\,{{n}_{i}}\left[ \frac{T_{i}^{\widehat{\beta }}\ln {{T}_{i}}-T_{i-1}^{\widehat{\beta }}\ln {{T}_{i-&lt;br /&gt;
&lt;br /&gt;
1}}}{T_{i}^{\widehat{\beta }}-T_{i-1}^{\widehat{\beta }}}-\ln {{T}_{k}} \right]=0\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\widehat{\lambda }=\frac{n}{T_{k}^{\widehat{\beta }}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;{{n}_{i}}\,\!&amp;lt;/math&amp;gt; is the number of distinct BD modes within the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; interval. For test-fix-find-test data, the maximum likelihood estimates of &amp;lt;math&amp;gt;{{\lambda }_{BC}}\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{{\beta }_{BC}}\,\!&amp;lt;/math&amp;gt; are estimated in the same manner using the first occurrences of the BC modes.&lt;br /&gt;
&lt;br /&gt;
===Confidence Bounds for Grouped Data===&lt;br /&gt;
*&#039;&#039;&#039;Parameters:&#039;&#039;&#039; The confidence bounds on the parameters for the Crow Extended model for grouped data are calculated using the same procedure presented in the [[Crow-AMSAA_Confidence_Bounds|Crow-AMSAA Confidence Bounds]] chapter. &lt;br /&gt;
*&#039;&#039;&#039;Failure Intensity and MTBF:&#039;&#039;&#039; &lt;br /&gt;
**If there are no BC modes, the confidence bounds on the demonstrated failure intensity and MTBF, projected failure intensity and MTBF and growth potential failure intensity and MTBF are the same as the procedure presented for [[Crow Extended Confidence Bounds|non-grouped data]]. &lt;br /&gt;
**If there are BC modes, then the confidence bounds on the demonstrated failure intensity and MTBF are the same as the procedure presented in the Crow-AMSAA Confidence Bounds chapter, and the confidence bounds on the projected failure intensity and MTBF and growth potential failure intensity and MTBF are the same as for non-grouped data. &lt;br /&gt;
*&#039;&#039;&#039;Time:&#039;&#039;&#039; The confidence bounds on time are the same as the procedure presented in the Crow-AMSAA Confidence Bounds chapter.&lt;br /&gt;
&lt;br /&gt;
==Mixed Data==&lt;br /&gt;
The Crow Extended model can also be applied to discrete data from one-shot (success/failure) testing. In the RGA software, the &#039;&#039;&#039;Discrete Data &amp;gt; Mixed Data&#039;&#039;&#039; option creates a data sheet that can accommodate data from tests where a single unit is tested for each successive configuration (individual trial-by-trial), where multiple units are tested for each successive configuration (configurations in groups) or a combination of both. This data sheet can be analyzed with either the Crow-AMSAA (NHPP) model or the Crow Extended model.&lt;br /&gt;
&lt;br /&gt;
For discrete data, corrective actions cannot take place at the time of failure. With that in mind, the mixed data type does not allow for BC modes. For discrete data there are only A or BD modes. In terms of practical applications, think of a growth test for missile systems. Because missiles are one-shot items, any corrective actions applied to the failure modes are delayed until at least the next trial.&lt;br /&gt;
&lt;br /&gt;
Note that for calculation purposes, it is required to have at least three failures in the first interval. If that is not the case, then the data set needs to be grouped before calculating. The RGA software performs this operation in the background.&lt;br /&gt;
&lt;br /&gt;
===Example===&lt;br /&gt;
{{:Mixed_Data_-_Crow_Extended_Example}}&lt;br /&gt;
&lt;br /&gt;
==Multiple Systems with Event Codes==&lt;br /&gt;
&lt;br /&gt;
The Multiple Systems with Event Codes data type is used to analyze the failure data from a reliability growth test in which a number of systems are tested concurrently and the implemented fixes are tracked during the test phase. With this data type, all of the systems under test are assumed to have the same system hours at any given time. The Crow Extended model is used for this data type, so all the underlying assumptions regarding the Crow Extended model apply. As such, this data type is applicable only to data from within a single test phase.&lt;br /&gt;
&lt;br /&gt;
As previously presented, the failure mode classifications for the Crow Extended model are defined as follows:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;A&#039;&#039;&#039; indicates that no corrective action was performed or will be performed (management chooses not to address for technical, financial or other reasons).&lt;br /&gt;
*&#039;&#039;&#039;BC&#039;&#039;&#039; indicates that the corrective action was implemented during the test. The analysis assumes that the effect of the corrective action was experienced during the test (as with other test-fix-test reliability growth analyses).&lt;br /&gt;
*&#039;&#039;&#039;BD&#039;&#039;&#039; indicates that the corrective action will be delayed until after the completion of the current test.&lt;br /&gt;
&lt;br /&gt;
Therefore, implemented fixes can be applied only to BC modes since all BD modes are assumed to be delayed until the end of the test.&lt;br /&gt;
For each BC mode, there must be a separate entry in the data set that records the time when the fix was implemented during the test.&lt;br /&gt;
&lt;br /&gt;
===Event Codes===&lt;br /&gt;
A Multiple Systems with Event Codes data sheet that is analyzed with the Crow Extended model has an &#039;&#039;&#039;Event&#039;&#039;&#039; column that allows you to indicate the types of events that occurred during a test phase. The possible event codes that can be used in the analysis are:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;I&#039;&#039;&#039;&#039;&#039;: denotes that a certain BC failure mode has been corrected at the specific time; in other words, a fix has been implemented. For this data type, each BC mode must have an associated &#039;&#039;I&#039;&#039; event. The &#039;&#039;I&#039;&#039; event is essentially a timestamp for when the fix was implemented during the test.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;Q&#039;&#039;&#039;&#039;&#039;: indicates that the failure was due to a quality issue. An example of this might be a failure caused by a bolt not being tightened down properly. You have the option to decide whether or not to include quality issues in the analysis. This option can be specified by checking or clearing the &#039;&#039;&#039;Include Q Events&#039;&#039;&#039; check box under Event Code Options on the Analysis tab.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;P&#039;&#039;&#039;&#039;&#039;: indicates that the failure was due to a performance issue. You can determine whether or not to include performance issues in the analysis. This option can be specified by checking or clearing the &#039;&#039;&#039;Include P Events&#039;&#039;&#039; check box under Event Code Options on the Analysis tab.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;X&#039;&#039;&#039;&#039;&#039;: indicates that you wish to exclude the data point from the analysis. An &#039;&#039;X&#039;&#039; can be placed in front of any existing event code (e.g., XF to exclude a particular failure time) or entered by itself. The row of data with the &#039;&#039;X&#039;&#039; will not be included in the analysis.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;S&#039;&#039;&#039;&#039;&#039;: indicates the system start time. This event code is only selectable in the Normal View.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;F&#039;&#039;&#039;&#039;&#039;: indicates a failure time.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;E&#039;&#039;&#039;&#039;&#039;: indicates the system end time. This event code is only selectable in the Normal View.&lt;br /&gt;
&lt;br /&gt;
The analysis is based on the equivalent system that combines the operating hours of all the systems. &lt;br /&gt;
&lt;br /&gt;
===Equivalent Single System===&lt;br /&gt;
In order to analyze a Multiple Systems with Event Codes data sheet, the data are converted into a Crow Extended equivalent single system. The implemented fixes (&#039;&#039;I&#039;&#039; events) are taken into account when building the equivalent single system from the data for multiple systems.&lt;br /&gt;
&lt;br /&gt;
The basic assumptions and constraints for the use of this data type are listed below:&lt;br /&gt;
&lt;br /&gt;
*Failure modes are assumed to be independent of each other and with respect to the system configuration. The same applies to their related implemented fixes (&#039;&#039;I&#039;&#039; events). As such, each mode and its related implemented fixes (&#039;&#039;I&#039;&#039; events) are examined separately in terms of their impact to the system configuration.&lt;br /&gt;
*If there are BC modes in the data set, there must be at least 3 unique BC modes to analyze the data (together with implemented fixes for each one of them).&lt;br /&gt;
*If there are BD modes in the data set, there must be at least 3 unique BD modes to analyze the data.&lt;br /&gt;
*To be consistent with the definition of BC modes in the Crow Extended model, every BC mode must have at least one implemented fix (&#039;&#039;I&#039;&#039; event) on at least one system.&lt;br /&gt;
*Implemented fixes (&#039;&#039;I&#039;&#039; events) cannot be delayed to a later phase, because the Crow Extended model applies to a single phase only.&lt;br /&gt;
&lt;br /&gt;
The following list shows the basic rules for calculating the equivalent single system on which the Crow Extended model is applied. Note that the list is not exhaustive since there is an infinite number of scenarios that can occur. These rules cover the most common scenarios. The main concept is to add the time that each system was tested under the same configuration.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;To get to the equivalent single system, each failure time for A modes and BD modes is calculated by adding the time that each system was tested under the same configuration. In practice this means multiplying the failure time in the system by the number of total systems under test. For example, if we have 4 total systems, and system 2 has a BD1 mode at time 30, the BD1 mode failure time in the equivalent single system would be &amp;lt;math&amp;gt;30*4=120\,\!&amp;lt;/math&amp;gt;. If system 3 had another BD1 mode at time 40, then that would yield another BD1 mode in the equivalent single system at time &amp;lt;math&amp;gt;40*4=160\,\!&amp;lt;/math&amp;gt;. These calculations are done assuming that the start time for the systems are at time zero. If the start time is different than zero, then that time would have to be subtracted from the failure time on each system. For example, if system 1 started at time S=10, and there was a failure at time 30, the equivalent system time would be &amp;lt;math&amp;gt;(30-10)*4=80\,\!&amp;lt;/math&amp;gt;.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Each failure time for a BC mode that occurred before an implemented fix (&#039;&#039;I&#039;&#039; event) for that mode is also calculated by multiplying the failure time in the system by the number of total systems in test, as described above.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;The implemented fix (&#039;&#039;I&#039;&#039; event) time in the equivalent single system is calculated by adding the test time invested in each system before that &#039;&#039;I&#039;&#039; event takes place. It is the total time that the system has spent at the same configuration in terms of that specific mode.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;If the same BC mode occurs in another system after a fix (&#039;&#039;I&#039;&#039; event) has been implemented in one or more systems, the failure time in the equivalent single system is calculated by adding the test time for that BC mode, and one of the following for each of the other systems:&lt;br /&gt;
::*If a BC mode occurs in a system that has already seen an &#039;&#039;I&#039;&#039; event for that mode, then you add the time up to the &#039;&#039;I&#039;&#039; event.&lt;br /&gt;
:::or&lt;br /&gt;
::*If the &#039;&#039;I&#039;&#039; events occurred later than the BC failure time or those systems did not have any &#039;&#039;I&#039;&#039; events for that mode, then you add the time of the BC failure.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;If the same BC mode occurs in the same system after a fix (&#039;&#039;I&#039;&#039; event) has been implemented in one or more systems, the failure time in the equivalent single system is calculated by adding the test time of each system after that &#039;&#039;I&#039;&#039; event was implemented to the &#039;&#039;I&#039;&#039; event time in the equivalent single system, or zero if an &#039;&#039;I&#039;&#039; event was not present in that system.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
====Example: Equivalent Single System====&amp;lt;!-- THIS SECTION HEADER IS LINKED FROM ANOTHER PLACE IN THIS DOCUMENT. IF YOU RENAME THE SECTION, YOU MUST UPDATE THE LINK(S). --&amp;gt;&lt;br /&gt;
{{:Equivalent_System_Example}}&lt;br /&gt;
&lt;br /&gt;
===Transferring Data to an Equivalent Single System===&lt;br /&gt;
RGA provides the capability to transfer a Multiple Systems with Event Codes data sheet to various other data types. The following picture shows the available data types that the data sheet can be converted into. When selecting to transfer to an equivalent single system, the data sheet is converted to a Crow Extended - Continuous Evaluation data sheet.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.23.png|center]]&lt;br /&gt;
&lt;br /&gt;
The [[Crow Extended - Continuous Evaluation]] model is designed for analyzing data across multiple test phases, while considering the data for all phases as one data set. Familiarity with this model is necessary for the discussion presented in this section.&lt;br /&gt;
&lt;br /&gt;
When using the Crow Extended - Continuous Evaluation model to transfer the data sheet from Multiple Systems with Event Codes to an equivalent single system, the following rules are used (in addition to the five basic rules presented earlier for calculating the equivalent single system):&lt;br /&gt;
&lt;br /&gt;
*BD modes in the Crow Extended data sheet become BD modes in the equivalent single system of the Crow Extended - Continuous Evaluation data sheet.&lt;br /&gt;
*BC modes in the Crow Extended data sheet become BD modes in the equivalent single system of the Crow Extended - Continuous Evaluation data sheet. These BD modes will have associated implemented fixes (&#039;&#039;I&#039;&#039; events). Implemented fixes (&#039;&#039;I&#039;&#039; events) for BC modes in the Crow Extended data sheet become implemented fixes (&#039;&#039;I&#039;&#039; events) for the converted BD modes in the equivalent single system of the Crow Extended - Continuous Evaluation data sheet.&lt;br /&gt;
*If an implemented fix (&#039;&#039;I&#039;&#039; event) occurred at the same time as the failure, and was implemented at that exact time across all systems, then this becomes a BC mode in the equivalent single system. If the fixes (&#039;&#039;I&#039;&#039; events) were not all implemented at the same time or if the fix was not implemented on all systems at the failure time, then this becomes a BD mode in the equivalent single system.&lt;br /&gt;
&lt;br /&gt;
The next figure shows the transferred equivalent single system Crow Extended - Continuous Evaluation data sheet from the Multiple Systems with Event Codes data sheet for the data from the [[Crow_Extended#Example:_Equivalent_Single_System|Equivalent Single System example]] given above.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.24.png|center|450px]]&lt;br /&gt;
&lt;br /&gt;
===Iteration Method for Naming Repeated Modes===&lt;br /&gt;
When recording modes for transfer from the Multiple Systems with Event Codes to a Crow Extended -Continuous Evaluation equivalent single system, it is recommended to consider using an iteration method to name subsequent recurrences of the same mode. This will help alleviate any issues with the conversion of the definitions of the modes from the Crow Extended model to the Crow Extended - Continuous Evaluation model. For example, if the first occurrence of a mode is BC25, then the second occurrence is suggested to be named as BC25.1. The reasoning behind this recommendation is that in the case that BC25 in the Multiple Systems with Event Codes data sheet has received implemented fixes (&#039;&#039;I&#039;&#039; events) at the same time that the failure occurred in all systems, then this mode will be translated as a BC mode in the Crow Extended - Continuous Evaluation equivalent single system. The next recurring failure would also be treated as a BC mode, but in reality it did not have an implemented fix (&#039;&#039;I&#039;&#039; event) at the time of failure.&lt;br /&gt;
&lt;br /&gt;
For example, consider the data set shown in the following figure, which represents one system only for simplicity. Notice that the modes BC25, BC35 and BC45 received implemented fixes at the time of failure. Based on that, when they get transferred to the Crow Extended - Continuous Evaluation equivalent single system, they will be considered as BC modes. The subsequent failures of the modes 25, 35 and 45 will also be converted to BC modes, when in reality they had implemented fixes (&#039;&#039;I&#039;&#039; events) at a later time.&lt;br /&gt;
 &lt;br /&gt;
[[Image:rga9.25.png|center|450px]]&lt;br /&gt;
&lt;br /&gt;
The RGA software will display a warning if you try to convert this data sheet without using iterations.&lt;br /&gt;
&lt;br /&gt;
The next figure shows the same data sheet with the use of iterations for the modes 25, 35 and 45. The subsequent failures are named as BC25.1, BC35.1 and BC45.1.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.27.png|center|450px]]&lt;br /&gt;
&lt;br /&gt;
This way, the conversion to the Crow Extended - Continuous Evaluation model occurs in a valid fashion, because although the original BC modes are converted to BC25, BC35 and BC45, the subsequent failures are converted to BD25.1, BD35.1 and BD45.1 together with their respective implemented fixes (&#039;&#039;I&#039;&#039; events). This is shown in the next figure below. Note that the use of iterations is recommended only when transferring to the Crow Extended - Continuous Evaluation equivalent single system; it is not necessary when using the Multiple Systems with Event Codes data sheet that is calculated with the Crow Extended model.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.28.png|center|450px]]&lt;br /&gt;
&lt;br /&gt;
==More Examples==&lt;br /&gt;
===Adjusting the Failure Mode Management Strategy===&lt;br /&gt;
{{:Concurrent_Operating_Times_-_Crow_Extended_Example}}&lt;br /&gt;
&lt;br /&gt;
===Estimating the Failure Intensity Remaining After Fixes===&lt;br /&gt;
{{:Grouped_Data_-_Crow_Extended_Example}}&lt;br /&gt;
&lt;br /&gt;
===Determining if Design Will Meet MTBF Goal===&lt;br /&gt;
{{:Known_Operating_Times_-_Crow_Extended_Example}}&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Crow_Extended&amp;diff=65551</id>
		<title>Crow Extended</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Crow_Extended&amp;diff=65551"/>
		<updated>2020-08-19T23:04:42Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: /* Mathematical Formulation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{template:RGA BOOK|3.3|Crow Extended}}&lt;br /&gt;
In reliability growth analysis, the [[Crow-AMSAA (NHPP)|Crow-AMSAA (NHPP) model]] assumes that the corrective actions for the observed failure modes are incorporated during the test (test-fix-test). However, in actual practice, fixes may be delayed until after the completion of the test (test-find-test) or some fixes may be implemented during the test while others are delayed (test-fix-find-test). At the end of a test phase, two reliability estimates are of concern: &#039;&#039;demonstrated reliability&#039;&#039; and &#039;&#039;projected reliability&#039;&#039;. The demonstrated reliability, which is based on data generated during the test phase, is an estimate of the system reliability for its configuration at the end of the test phase. The projected reliability measures the impact of the delayed fixes at the end of the current test phase.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Most of the reliability growth literature are concerned with procedures and models for calculating the demonstrated reliability, and very little attention has been paid to techniques for reliability projections. The procedure for making reliability projections utilizes engineering assessments of the effectiveness of the delayed fixes for each observed failure mode. These effectiveness factors are then used with the data generated during the test phase to obtain a projected estimate for the updated configuration by adjusting the number of failures observed during the test phase. The process of estimating the projected reliability is accomplished using the Crow Extended model. The Crow Extended model allows for a flexible growth strategy that can include corrective actions performed during the test, as well as delayed corrective actions. The test-find-test and test-fix-find-test scenarios are simply subsets of the Crow Extended model.&lt;br /&gt;
&lt;br /&gt;
For developmental testing, the Crow Extended model can be applied when using any of the following [[RGA_Data_Types|data types]]:&lt;br /&gt;
&lt;br /&gt;
*Failure Times Data&lt;br /&gt;
*Multiple Systems (Known Operating Times)&lt;br /&gt;
*Multiple Systems (Concurrent Operating Times)&lt;br /&gt;
*Multiple Systems with Dates&lt;br /&gt;
*Multiple Systems with Event Codes&lt;br /&gt;
*Grouped Failure Times&lt;br /&gt;
*Mixed Data&lt;br /&gt;
&lt;br /&gt;
As the name implies, Crow Extended is simply an &amp;quot;extension&amp;quot; of the Crow-AMSAA (NHPP) model. The calculations for Crow Extended still incorporate the methods for Crow-AMSAA based on the data type, as described on the [[Crow-AMSAA (NHPP)]] page. The Crow-AMSAA model estimates the growth during the test, while the Crow Extended model accounts for the growth after the test based on the delayed corrective actions. Additional details regarding the calculations for the Crow Extended model are presented in the sections below.&lt;br /&gt;
&lt;br /&gt;
==Background==&lt;br /&gt;
When a system is tested and failure modes are observed, management can make one of two possible decisions: to fix or to not fix the failure modes. Failure modes that are not fixed are called &#039;&#039;A modes&#039;&#039; and failure modes that receive a corrective action are called &#039;&#039;B modes&#039;&#039;. The A modes account for all failure modes that management considers to be not economical or not justified to receive corrective action. The B modes provide the assessment and management metric structure for corrective actions during and after a test. There are two types of B modes: BC modes, which are corrected during the test, and BD modes, which are corrected only at the end of the test. The management strategy is defined by how the corrective actions, if any, will be implemented. In summary, the classifications are defined as follows:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;A&#039;&#039;&#039; indicates that no corrective action was performed or will be performed (management chooses not to address for technical, financial or other reasons).&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;BC&#039;&#039;&#039; indicates that the corrective action was implemented during the test. The analysis assumes that the effect of the corrective action was experienced during the test (as with other test-fix-test reliability growth analyses).&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;BD&#039;&#039;&#039; indicates that the corrective action will be delayed until after the completion of the current test. BD modes will provide a jump in the system&#039;s MTBF at the termination time. &lt;br /&gt;
&lt;br /&gt;
In terms of assessing a system&#039;s reliability, there are three specific metrics of interest:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Demonstrated (or achieved) MTBF (DMTBF)&#039;&#039;&#039; is the system&#039;s instantaneous MTBF at the termination time.&lt;br /&gt;
*&#039;&#039;&#039;Projected MTBF (PMTBF)&#039;&#039;&#039; is the system&#039;s expected instantaneous MTBF after the implementation of the delayed corrective actions.&lt;br /&gt;
*&#039;&#039;&#039;Growth Potential MTBF (GPMTBF)&#039;&#039;&#039; is the maximum MTBF that can be attained for the system design and management strategy.&lt;br /&gt;
&lt;br /&gt;
These metrics can also be displayed in RGA in terms of failure intensity (FI). The demonstrated MTBF is calculated using basically the same methods, depending on data type, as presented on the [[Crow-AMSAA (NHPP)]] page. Projected MTBF/FI and growth potential MTBF/FI are presented in detail in the sections below.&lt;br /&gt;
&lt;br /&gt;
The following picture shows an example of data entered for the Crow Extended model.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.1.png|center|500px|Failure times data for a single system in cumulative format, including classification and mode information.]]&lt;br /&gt;
 &lt;br /&gt;
As you can see, each failure is indicated with A, BC or BD in the &#039;&#039;&#039;Classification&#039;&#039;&#039; column. In addition, any number or text can be used to specify the failure mode. In this example, numbers were used in the &#039;&#039;&#039;Mode&#039;&#039;&#039; column for simplicity, but you could just as easily use &amp;quot;Seal Leak,&amp;quot; or whatever designation you deem appropriate for identifying the mode. In RGA, a failure mode is defined as a problem and a cause.&lt;br /&gt;
&lt;br /&gt;
Reliability growth is achieved by decreasing the failure intensity. The failure intensity for the A failure modes will not change; therefore, reliability growth can only be achieved by decreasing the BC and BD mode failure intensity. In general, the only part of the BD mode failure intensity that can be decreased is that which has been seen during testing, since the failure intensity due to BD modes that were unseen during testing still remains. The BC failure modes are corrected during test, and the BC failure intensity will not change any more at the end of test.&lt;br /&gt;
&lt;br /&gt;
It is very important to note that once a BD failure mode is in the system, it is rarely totally eliminated by a corrective action. After a BD mode has been found and fixed, a certain percentage of the failure intensity will be removed, but a certain percentage of the failure intensity will generally remain. For each BD mode, an &#039;&#039;effectiveness factor&#039;&#039; (EF) is required to estimate how effective the corrective action will be in eliminating the failure intensity due to the failure mode. The EF is the fractional decrease in a mode&#039;s failure intensity after a corrective action has been made, and it must be a value between 0 and 1. It has been shown empirically that an average EF, &amp;lt;math&amp;gt;d\,\!&amp;lt;/math&amp;gt;, is about 70%. Therefore, about 30 percent, (i.e., 100 &amp;lt;math&amp;gt;(1-d)\,\!&amp;lt;/math&amp;gt; percent), of the BD mode failure intensity will typically remain in the system after all of the corrective actions have been implemented. However, individual EFs for the failure modes may be larger or smaller than the average. The next figure displays the RGA software&#039;s Effectiveness Factor window where the effectiveness factors for each unique BD failure mode can be specified.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.2.png|center|450px|Effectiveness factors defined for each unique BD mode.]]&lt;br /&gt;
&lt;br /&gt;
The EF does not account for the scenario where additional failure modes are created from the corrective actions. If this happens, then the actual EF will be lower than the assumed value. An EF greater than or equal to 0.9 indicates a significant improvement in a failure mode&#039;s MTBF (or reduction in failure intensity). This is indicative of a design change. The increase in a failure mode&#039;s MTBF, given an EF, can be calculated using:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;Multiplier=\frac{1}{1-EF}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Using this equation, an &amp;lt;math&amp;gt;EF=0.7\,\!&amp;lt;/math&amp;gt; corresponds to an increase of 3.3X. Therefore, if a failure mode had an MTBF of 100 and a delayed fix was applied, an estimate of the failure mode&#039;s MTBF after the fix is equal to &amp;lt;math&amp;gt;\approx 333\,\!&amp;lt;/math&amp;gt;. An &amp;lt;math&amp;gt;EF=0.9\,\!&amp;lt;/math&amp;gt; corresponds to a 10X increase in the failure mode&#039;s MTBF. So there is a large increase between EF = 0.7 and EF = 0.9. Before assigning an EF to a BD mode, it is recommended to run a test to verify the fix and to validate the assumed EF value. Ideally, you want to have some sort of justification for using the entered EF value. If you do not know the EF value for each BD mode, then you can also specify a fixed EF which is then applied to all modes. The average value of EF = 0.7 is a good place to start, but if you want to be a bit more conservative, then an EF = 0.4, or a smaller value, could be used.&lt;br /&gt;
&lt;br /&gt;
==Test-Find-Test==&amp;lt;!-- THIS SECTION HEADER IS LINKED FROM ANOTHER SECTION IN THIS PAGE. IF YOU RENAME THE SECTION, YOU MUST UPDATE THE LINK(S). --&amp;gt;&lt;br /&gt;
Test-find-test is a testing strategy where all corrective actions are delayed until after the test. Therefore, there are not any BC modes when analyzing test-find-test data (only A and BD modes). This scenario is also called the &#039;&#039;Crow-AMSAA Projection&#039;&#039; model, but for the purposes of the RGA software, it is simply a special case of the Crow Extended model. The picture below presents the test-find-test scenario.&lt;br /&gt;
&lt;br /&gt;
[[File:TestFindTest.png|center|400px|Test-find-test.]]&lt;br /&gt;
&lt;br /&gt;
Since there are no fixes applied during the test, the assumption is that the system&#039;s MTBF does not change during the test. In other words, the system&#039;s MTBF is constant. The system should not be exhibiting an increasing or decreasing trend in its reliability if changes are not being made. Therefore, the assumption is that &amp;lt;math&amp;gt;\beta = 1\,\!&amp;lt;/math&amp;gt;. RGA will return two &amp;lt;math&amp;gt;\beta\,\!&amp;lt;/math&amp;gt; values; Beta (hyp) which always shows a value equal to 1 since this is the underlying assumption, and Beta which is the Crow-AMSAA (NHPP) estimate that considers all of the failure times. The assumption of &amp;lt;math&amp;gt;\beta = 1\,\!&amp;lt;/math&amp;gt; can be verified by looking at the confidence bounds on &amp;lt;math&amp;gt;\beta\,\!&amp;lt;/math&amp;gt;. If the confidence bounds on &amp;lt;math&amp;gt;\beta\,\!&amp;lt;/math&amp;gt; include one, then you can fail to reject the hypothesis that &amp;lt;math&amp;gt;\beta = 1\,\!&amp;lt;/math&amp;gt;. RGA does this check automatically and uses a confidence level equal to 1 minus the specified significance level to check if the confidence bounds on &amp;lt;math&amp;gt;\beta\,\!&amp;lt;/math&amp;gt; include one. If the &amp;lt;math&amp;gt;\beta = 1\,\!&amp;lt;/math&amp;gt; assumption is violated, then the value for Beta (hyp) will be displayed in red text. If the confidence bounds on &amp;lt;math&amp;gt;\beta\,\!&amp;lt;/math&amp;gt; do not include 1, then the following questions should be considered as they relate to the data:&lt;br /&gt;
&lt;br /&gt;
*If multiple systems were tested, did they have the same configuration throughout the test? Were the corrective actions applied to all systems?&lt;br /&gt;
*Were the test conditions consistent for each system?&lt;br /&gt;
*Was there a change in the failure definition?&lt;br /&gt;
*Any issues with data entry?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\beta = 1\,\!&amp;lt;/math&amp;gt; is then used to estimate the demonstrated MTBF of the system and it is also used in the goodness-of-fit tests.&lt;br /&gt;
&lt;br /&gt;
===Projected Failure Intensity===&lt;br /&gt;
Suppose a system is subjected to development testing for a period of time, &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt;. The system can be considered as consisting of two types of failure modes: A modes and BD modes. It is assumed that all BD modes are in series and fail independently according to the exponential distribution. Also assume that the rate of occurrence of A modes follows an exponential distribution with failure intensity &amp;lt;math&amp;gt;{{\lambda }_{A}}\,\!&amp;lt;/math&amp;gt;. The system MTBF is constant throughout the test phase since all of the corrective actions are delayed until after the completion of the test. After the delayed fixes have been implemented, the system MTBF will then jump to a higher value.&lt;br /&gt;
&lt;br /&gt;
Let &amp;lt;math&amp;gt;K\,\!&amp;lt;/math&amp;gt; denote the total number of BD modes in the system, and let &amp;lt;math&amp;gt;{{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt; denote the failure intensity for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode, such that &amp;lt;math&amp;gt;i = 1,2,\ldots ,K\,\!&amp;lt;/math&amp;gt;. Then, at time equal to zero, the system failure intensity &amp;lt;math&amp;gt;r(0)\,\!&amp;lt;/math&amp;gt; is:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
r(0)={{\lambda }_{A}}+{{\lambda }_{BD}}&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where:  &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\lambda }_{BD}}=\underset{i=1}{\overset{K}{\mathop{\sum }}}\,{{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
During the test &amp;lt;math&amp;gt;(0,T)\,\!&amp;lt;/math&amp;gt;, a random number of &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; distinct BD modes will be observed, such that &amp;lt;math&amp;gt;M\le K\,\!&amp;lt;/math&amp;gt;. Denote the effectiveness factor (EF) for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode as &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;i = 1,2,\ldots ,K\,\!&amp;lt;/math&amp;gt;. The effectiveness factor &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt; is the percent decrease in &amp;lt;math&amp;gt;{{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt; after a corrective action has been made for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode. That is, the corrective action for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode removes &amp;lt;math&amp;gt;100\times {{d}_{i}}\,\!&amp;lt;/math&amp;gt; percent of the failure rate, and &amp;lt;math&amp;gt;100\times (1-{{d}_{i}})\,\!&amp;lt;/math&amp;gt; percent remains. The failure intensity for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD failure mode after a corrective action is &amp;lt;math&amp;gt;(1-{{d}_{i}}){{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt;. If corrective actions are taken on the &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; BD modes observed by time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt;, then the system failure intensity is reduced from &amp;lt;math&amp;gt;r(0)\,\!&amp;lt;/math&amp;gt; to:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  r\left( T \right)  = &amp;amp; {{\lambda }_{A}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,\left( 1-{{d}_{i}} \right){{\lambda }_{i}}+({{\lambda }_{BD}}-\underset{i=1}{\overset{M}{\mathop \sum }}\,{{\lambda }_{i}}) \\ &lt;br /&gt;
  = &amp;amp; {{\lambda }_{A}}+{{\lambda }_{BD}}-\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}}{{\lambda }_{i}}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;math&amp;gt;\underset{i=1}{\overset{M}{\mathop{\sum }}}\,(1-{{d}_{i}}){{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt; is the failure intensity for the &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; modes after the corrective actions&lt;br /&gt;
*&amp;lt;math&amp;gt;({{\lambda }_{BD}}-\underset{i=1}{\overset{M}{\mathop{\sum }}}\,{{\lambda }_{i}})\,\!&amp;lt;/math&amp;gt; is the remaining failure intensity for all unseen BD modes&lt;br /&gt;
&lt;br /&gt;
All &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; BD modes observed by test time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; may not be fixed by time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; so the actual failure intensity at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; may not be &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt;. However, &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; can be viewed as the achieved failure intensity at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; if all fixes were updated and incorporated into the system. All of the fixes for the BD modes found during the test are incorporated as delayed fixes at the end of the test phase. Therefore, the system failure intensity is constant at &amp;lt;math&amp;gt;r(0)={{\lambda }_{A}}+{{\lambda }_{BD}}\,\!&amp;lt;/math&amp;gt; through the test phase and will then jump to a lower value &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; after the delayed fixes have been implemented. Let &amp;lt;math&amp;gt;{{N}_{A}}\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{{N}_{BD}}\,\!&amp;lt;/math&amp;gt; be the total number of A and BD failures observed during the test &amp;lt;math&amp;gt;(0,T)\,\!&amp;lt;/math&amp;gt; and let &amp;lt;math&amp;gt;N={{N}_{A}}+{{N}_{BD}}\,\!&amp;lt;/math&amp;gt;. In addition, there are &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; distinct BD modes observed during the test. After implementing the &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; fixes, the failure intensity for the system at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; (after the jump) is given by the function &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(0)\,\!&amp;lt;/math&amp;gt; is actually the demonstrated failure intensity, which is based on actual system performance of the hardware tested and not of some future configuration. A demonstrated reliability value should be determined at the end of each test phase. The demonstrated failure intensity is:  &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\hat{\lambda }}_{D}}(T)=r(0)=\frac{{{N}_{A}}+{{N}_{BD}}}{T}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The demonstrated MTBF is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\widehat{{MTBF}_{D}}={{[{{\hat{\lambda }}_{D}}(T)]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The detailed procedure for estimating &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; is given in Crow [[RGA_References|[20]]] and is reviewed here.&lt;br /&gt;
&lt;br /&gt;
Let &amp;lt;math&amp;gt;E[\cdot ]\,\!&amp;lt;/math&amp;gt; denote the expected value:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;E[r(T)]={{\lambda }_{A}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}}){{\lambda }_{i}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}}{{\lambda }_{i}}{{e}^{-{{\lambda }_{i}}T}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Under realistic assumptions, &amp;lt;math&amp;gt;E[r(T)]\,\!&amp;lt;/math&amp;gt; also may be expressed as: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;E[r(T)]={{\lambda }_{A}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}}){{\lambda }_{i}}+\overline{d}h(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;\overline{d}\,\!&amp;lt;/math&amp;gt; is the mean effectiveness factor and &amp;lt;math&amp;gt;h(T)\,\!&amp;lt;/math&amp;gt; is the instantaneous rate at which a new BD mode will occur at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;\overline{d}h(T)\,\!&amp;lt;/math&amp;gt; is the bias term (or sometimes called the 3&amp;lt;sup&amp;gt;rd&amp;lt;/sup&amp;gt; term), such that: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B(T)=\overline{d}h(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The mean &amp;lt;math&amp;gt;\overline{d}\,\!&amp;lt;/math&amp;gt; is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\overline{d}=\frac{1}{M}\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Therefore, the projected failure intensity &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; is then estimated at the end of the test phase by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{r}(T)=\left( \frac{{{N}_{A}}}{T}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}})\frac{{{N}_{i}}}{T} \right)+\overline{d}h(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The projected MTBF is:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\widehat{{MTBF}_{P}}={{[r(T)]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Mathematical Formulation===&lt;br /&gt;
As indicated previously, the failure intensity of the system at &amp;lt;math&amp;gt;t=0\,\!&amp;lt;/math&amp;gt; is given by:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
    {{\lambda }_{System}}= &amp;amp; {{\lambda }_{A}}+{{\lambda }_{BD}} \\&lt;br /&gt;
    = &amp;amp; {{\lambda }_{A}}+{{\lambda }_{B{{D}_{Seen}}}}+{{\lambda }_{B{{D}_{Unseen}}}}&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The estimate for the projected failure intensity, after the corrective actions have been implemented, is then:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
    {{\lambda }_{\Projected}}= &amp;amp;  {{\lambda }_{A}}+\left( 1-d \right)\left( {{\lambda }_{BD}}-h\left( t \right) \right)+h\left( t \right)\\&lt;br /&gt;
    = &amp;amp; {{\lambda }_{A}}+\left( 1-d \right){{\lambda }_{BD}}-\left( 1-d \right)h\left( t \right)+h\left( t \right)\\&lt;br /&gt;
    = &amp;amp; {{\lambda }_{A}}+\left( 1-d \right){{\lambda }_{BD}}-h\left( t \right)+dh\left( t \right)+h\left( t \right)\\&lt;br /&gt;
    = &amp;amp; {{\lambda }_{A}}+\left( 1-d \right){{\lambda }_{BD}}+dh\left( t \right)&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is the basic format of the equation for the projected failure intensity when the Crow Extended model is used with the test-find-test strategy.&lt;br /&gt;
&lt;br /&gt;
===h(t) Function===&lt;br /&gt;
h(t) is defined as the unseen BD mode failure intensity. It is also defined as the rate at which new unique BD modes are being discovered. The maximum likelihood estimate of &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; is calculated using:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{h}\left( t \right)={{\hat{\lambda }}_{BD}}{{\overline{\beta }}_{BD}}{{t}^{{{{\overline{\beta }}}_{BD}}-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;{\overline{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; is the unbiased estimate. The unbiased estimate is always used when calculating &amp;lt;math&amp;gt;\hat{h}\left( t \right)\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The parameters of the &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; function, &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{{\lambda }_{BD}}\,\!&amp;lt;/math&amp;gt;, are calculated using the first occurrence of each BD mode. In order to have growth, &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt;  must be less than one. If &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; is close to one then it is possible that the program could be in trouble since this indicates that there are very few repeat occurrences. In this case, each failure tends to be a unique mode. If &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt;  is less than one then the rate at which new unique BD modes are occurring is decreasing.&lt;br /&gt;
&lt;br /&gt;
Let &amp;lt;math&amp;gt;{{X}_{1}}&amp;lt;{{X}_{2}}&amp;lt;\ldots &amp;lt;{{X}_{M}}&amp;lt;T\,\!&amp;lt;/math&amp;gt; denote the cumulative test times for the first occurrences of BD modes. Then, the maximum likelihood estimates of &amp;lt;math&amp;gt;{{\lambda }_{BD}}\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; are:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\hat{\beta }}_{BD}}=\frac{M}{\underset{i=1}{\overset{M}{\mathop{\sum }}}\,\ln \left( \tfrac{T}{{{X}_{i}}} \right)}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The unbiased estimate of &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; is: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\bar{\beta }}_{BD}}=\frac{M-1}{M}{{\hat{\beta }}_{BD}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\hat{\lambda }}_{BD}}=\frac{M}{{{T}^{{{{\overline{\beta }}}_{BD}}}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In particular, the maximum likelihood estimate for the rate of occurrence for the distinct BD modes at the termination time, &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt;, is: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  \hat{h}(T)  = &amp;amp; {{\hat{\lambda }}_{BD}}{{\overline{\beta }}_{BD}}{{T}^{{{\overline{\beta }}_{BD}}-1}} \\ &lt;br /&gt;
  = &amp;amp; \frac{M{{\overline{\beta }}_{BD}}}{T}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The parameters associated with &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; can be viewed in RGA by selecting &#039;&#039;&#039;BD modes&#039;&#039;&#039; from the dropdown to the right of &#039;&#039;&#039;Results (All Modes)&#039;&#039;&#039; in the Results Area on the control panel to the right of the data sheet. The displayed value for the failure intensity, &#039;&#039;&#039;FI&#039;&#039;&#039;, is &amp;lt;math&amp;gt;h(T)\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Growth Potential===&lt;br /&gt;
Growth Potential, when represented in terms of MTBF, is the maximum system reliability that can be attained for the system design with the current management strategy. The maximum MTBF will be attained when all &amp;lt;math&amp;gt;K\,\!&amp;lt;/math&amp;gt; BD modes have been observed and fixed with EFs &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt;. If the system is tested long enough then the failures that are observed in this case will be either repeat BD modes or A modes. In other words, there is not another unique BD mode to find within the system, and in most cases the growth potential is a value that may never actually be achieved. The growth potential can be thought of as an upper bound on the system&#039;s MTBF and ideally, should be about 30% above the system&#039;s requirement. As the system&#039;s MTBF gets closer to the growth potential, it becomes more difficult to increase the system&#039;s MTBF because it is taking more and more test time to propagate the next unique BD mode. The BD modes present opportunities for growth, but the rate of occurrence for unique BD modes goes down due to the decrease in &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt;. The growth potential is reached when &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; is equal to zero. In other words, the difference between the projected failure intensity and the growth potential is &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt;. At about 2/3 of the growth potential it becomes increasingly difficult to increase the system&#039;s MTBF as &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; function starts to flatten out.&lt;br /&gt;
 &lt;br /&gt;
The failure intensity &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; will depend on the management strategy that determines the classification of the A and BD failure modes. The engineering effort applied to the corrective actions determines the effectiveness factors. In addition, &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; depends on &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt;, which is the rate at which problem failure modes are being seen during testing. &amp;lt;math&amp;gt;h(t)\,\!&amp;lt;/math&amp;gt; drives the opportunity to take corrective actions based on the seen failure modes and it is an important factor in the overall reliability growth rate. The reliability growth potential is the limiting value of &amp;lt;math&amp;gt;r(T)\,\!&amp;lt;/math&amp;gt; as &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; increases. This limit is the maximum MTBF that can be attained with the current management strategy.  In terms of failure intensity, the growth potential is expressed by the following equation: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{r}_{GP}}={{\lambda }_{A}}+\underset{i=1}{\overset{K}{\mathop \sum }}\,(1-{{d}_{i}}){{\lambda }_{i}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In terms of the MTBF, the growth potential is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
MTB{{F}_{GP}}=1/{{r}_{GP}}&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The procedure for estimating the growth potential is as follows. Suppose that the system is tested for a period of time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; and that &amp;lt;math&amp;gt;N\,\!&amp;lt;/math&amp;gt; failures have been observed. According to the management strategy, &amp;lt;math&amp;gt;{{N}_{A}}\,\!&amp;lt;/math&amp;gt; of these failures are A modes and &amp;lt;math&amp;gt;{{N}_{BD}}\,\!&amp;lt;/math&amp;gt; of these failures are BD modes. For the BD modes, there will be &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; distinct fixes. As before, &amp;lt;math&amp;gt;{{N}_{i}}\,\!&amp;lt;/math&amp;gt; is the total number of failures for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode and &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt; is the corresponding assigned EF. From this data, the growth potential failure intensity is estimated by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\hat{r}}_{GP}}(T)=\left( \frac{{{N}_{A}}}{T}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}})\frac{{{N}_{i}}}{T} \right)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The growth potential MTBF is estimated by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;M\hat{T}B{{F}_{GP}}={{[{{\hat{r}}_{GP}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Example - Test-Find-Test Data===&lt;br /&gt;
{{:Test-Find-Test_Data_Example}}&lt;br /&gt;
&lt;br /&gt;
==Test-Fix-Find-Test==&lt;br /&gt;
Traditional reliability growth models provide assessments for two types of testing and corrective action strategies: &#039;&#039;test-fix-test&#039;&#039; and &#039;&#039;test-find-test&#039;&#039;. In test-fix-test, failure modes are found during testing and corrective actions for these modes are incorporated during the test. Data from this type of test can be modeled appropriately with the [[Crow-AMSAA (NHPP)|Crow-AMSAA model]]. In test-find-test, modes are found during testing, but all of the corrective actions are delayed and incorporated after the completion of the test. Data from this type of test can be modeled appropriately with the Crow-AMSAA Projection model, which was described above in the [[Crow_Extended#Test-Find-Test|Test-Find-Test section]]. However, a common strategy involves a combination of these two approaches, where some corrective actions are incorporated during the test and some corrective actions are delayed and incorporated at the end of the test. This strategy is referred to as &#039;&#039;test-fix-find-test&#039;&#039;. Data from this test can be modeled appropriately with the Crow Extended reliability growth model, which is described next.&lt;br /&gt;
&lt;br /&gt;
Recall that B failure modes are all failure modes that will receive a corrective action. In order to provide the assessment and management metric structure for corrective actions during and after a test, two types of B modes are defined. BC failure modes are corrected during the test and BD failure modes are delayed until the end of the test. Type A failure modes are defined as before; (i.e., those failure modes that will not receive a corrective action, either during or at the end of the test).&lt;br /&gt;
&lt;br /&gt;
===Development of the Crow Extended Model===&lt;br /&gt;
Let &amp;lt;math&amp;gt;{{\lambda }_{BD}}\,\!&amp;lt;/math&amp;gt; denote the constant failure intensity for the BD failure modes, and let &amp;lt;math&amp;gt;h(t|BD)\,\!&amp;lt;/math&amp;gt; denote the first occurrence function for the BD failure modes. In addition, as before, let &amp;lt;math&amp;gt;K\,\!&amp;lt;/math&amp;gt; be the number of BD failure modes, let &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt; be the effectiveness factor for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD failure mode and let &amp;lt;math&amp;gt;\overline{d}\,\!&amp;lt;/math&amp;gt; be the average effectiveness factor.&lt;br /&gt;
&lt;br /&gt;
The Crow Extended model projected failure intensity is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\lambda }_{EM}}={{\lambda }_{CA}}-{{\lambda }_{BD}}+\underset{i=1}{\overset{K}{\mathop \sum }}\,(1-{{d}_{i}}){{\lambda }_{i}}+\overline{d}h(T|BD)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;{{\lambda }_{CA}}=\lambda \beta {{T}^{\beta -1}}\,\!&amp;lt;/math&amp;gt; is the achieved failure intensity at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The Crow Extended model projected MTBF is: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
{{M}_{EM}}=1/{{\lambda }_{EM}}&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is the MTBF after the delayed fixes have been implemented. Under the extended reliability growth model, the demonstrated failure intensity before the delayed fixes is the first term, &amp;lt;math&amp;gt;{{\lambda }_{CA}}\,\!&amp;lt;/math&amp;gt;. The demonstrated MTBF at time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; before the delayed fixes is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{M}_{CA}}\text{ }={{[{{\lambda }_{CA}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you assume that there are no delayed corrective actions (BD modes), then the model reduces to a special case of the Crow-AMSAA model where the achieved MTBF equals the projection, &amp;lt;math&amp;gt;\lambda_{CA}\,\!&amp;lt;/math&amp;gt;. That is, there is no jump. If you assume that there are no corrective actions during the test (BC modes) then the model reduces to the test-find-test scenario described in the previous section. &lt;br /&gt;
&lt;br /&gt;
===Estimation of the Model===&lt;br /&gt;
In the general estimation of the Crow Extended model, it is required that all failure times during the test are known. Furthermore, the ID of each A, BC and BD failure mode needs to be entered.&lt;br /&gt;
&lt;br /&gt;
The estimate of the projected failure intensity for the Crow Extended model is given by: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{EM}}={{\widehat{\lambda }}_{CA}}-{{\widehat{\lambda }}_{BD}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}})\frac{{{N}_{i}}}{T}+\overline{d}\widehat{h}(T|BD)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;{{N}_{i}}\,\!&amp;lt;/math&amp;gt; is the total number of failures for the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; BD mode and &amp;lt;math&amp;gt;{{d}_{i}}\,\!&amp;lt;/math&amp;gt; is the corresponding assigned EF. In order to obtain the first term, &amp;lt;math&amp;gt;{{\widehat{\lambda }}_{CA}}\,\!&amp;lt;/math&amp;gt;, fit all of the data (regardless of mode classification) to the Crow-AMSAA model to estimate &amp;lt;math&amp;gt;\widehat{\beta }\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\widehat{\lambda }\,\!&amp;lt;/math&amp;gt;, thus:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{CA}}=\widehat{\lambda }\widehat{\beta }{{T}^{\widehat{\beta }-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The remaining terms are analyzed with the Crow Extended model, which is applied only to the BD data. &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{BD}}=\frac{{{N}_{BD}}}{T}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  \widehat{h}(T|BD)  = &amp;amp; {{\widehat{\lambda }}_{BD}}{{\widehat{\beta }}_{BD}}{{T}^{{{\widehat{\beta }}_{BD}}-1}} \\ &lt;br /&gt;
  = &amp;amp; \frac{M{{\widehat{\beta }}_{BD}}}{T}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;{{\widehat{\beta }}_{BD}}\,\!&amp;lt;/math&amp;gt; is the unbiased estimated of &amp;lt;math&amp;gt;\beta \,\!&amp;lt;/math&amp;gt; for the Crow-AMSAA model based on the first occurrence of &amp;lt;math&amp;gt;M\,\!&amp;lt;/math&amp;gt; distinct BD modes. &lt;br /&gt;
&lt;br /&gt;
The structure for the Crow Extended model includes the following special data analysis cases:&lt;br /&gt;
&lt;br /&gt;
#Test-fix-test with no failure modes known or with BC failure modes known. With this type of data, the Crow Extended model will take the form of the [[Crow-AMSAA (NHPP)|traditional Crow-AMSAA analysis]].&lt;br /&gt;
#Test-find-test with BD failure modes known. With this type of data, the Crow Extended model will take the form of the Crow-AMSAA Projection analysis described previously in the [[Crow_Extended#Test-Find-Test|Test-Find-Test section]].&lt;br /&gt;
#Test-fix-find-test with BC and BD failure modes known. With this type of data, the full capabilities of the Crow Extended model will be applied, as described in the following sections.&lt;br /&gt;
&lt;br /&gt;
===Reliability Growth Potential and Maturity Metrics===&lt;br /&gt;
The growth potential and some maturity metrics for the Crow Extended model are calculated as follows.&lt;br /&gt;
&lt;br /&gt;
*Initial system MTBF and failure intensity are given by: &lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{M}}_{I}}=\frac{\Gamma \left( 1+\tfrac{1}{\widehat{\beta }} \right)}{{{\widehat{\lambda }}^{\tfrac{1}{\widehat{\beta }}}}}\,\!&amp;lt;/math&amp;gt;	&lt;br /&gt;
&lt;br /&gt;
and:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{I}}={{[{{\widehat{M}}_{I}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
where &amp;lt;math&amp;gt;\widehat{\beta }\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\widehat{\lambda }\,\!&amp;lt;/math&amp;gt; are the estimators of the Crow-AMSAA model for all data regardless of the failure mode classification (i.e., A, BC or BD).&lt;br /&gt;
&lt;br /&gt;
*The A mode failure intensity and MTBF are given by:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{A}}=\frac{{{N}_{A}}}{T}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
		&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{M}}_{A}}={{[{{\widehat{\lambda }}_{A}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;	&lt;br /&gt;
&lt;br /&gt;
*The Initial BD mode failure intensity is given by: &lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{BD}}=\frac{{{N}_{BD}}}{T}\,\!&amp;lt;/math&amp;gt;	&lt;br /&gt;
&lt;br /&gt;
*The BC mode initial failure intensity and MTBF are given by:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{I(BC)}}={{\widehat{\lambda }}_{I}}-{{\widehat{\lambda }}_{A}}-{{\widehat{\lambda }}_{BD}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{M}}_{I(BC)}}={{[{{\widehat{\lambda }}_{I(BC)}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Failure intensity &amp;lt;math&amp;gt;h(T|BC)\,\!&amp;lt;/math&amp;gt; and instantaneous MTBF &amp;lt;math&amp;gt;M(T|BC)\,\!&amp;lt;/math&amp;gt; for new BC failure modes at the end of test time &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; are given by:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\widehat{h}(T|BC)=\widehat{\lambda }\widehat{\beta }{{T}^{\widehat{\beta }-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\widehat{M}(T|BC)={{[\widehat{h}(T|BC)]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;\widehat{\beta }\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\widehat{\lambda }\,\!&amp;lt;/math&amp;gt; are the estimators of the Crow-AMSAA model for the first occurrence of distinct BC modes.&lt;br /&gt;
&lt;br /&gt;
*Average effectiveness factor for BC failure modes is given by:	&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{d}}_{BC}}=\frac{\left[ \tfrac{N_{BC}^{\left( \tfrac{1}{{{{\hat{\beta }}}_{BC}}} \right)}}{\Gamma \left( 1+\tfrac{1}{{{{\hat{\beta }}}_{BC}}} \right)} \right]-{{N}_{BC}}}{\left[ \tfrac{N_{BC}^{\left( \tfrac{1}{{{{\hat{\beta }}}_{BC}}} \right)}}{\Gamma \left( 1+\tfrac{1}{{{{\hat{\beta }}}_{BC}}} \right)} \right]-{{M}_{BC}}}\,\!&amp;lt;/math&amp;gt;	&lt;br /&gt;
	&lt;br /&gt;
:where &amp;lt;math&amp;gt;{{N}_{BC}}\,\!&amp;lt;/math&amp;gt; is the total number of observed BC modes, &amp;lt;math&amp;gt;{{M}_{BC}}\,\!&amp;lt;/math&amp;gt; is the number of unique BC modes and &amp;lt;math&amp;gt;{{\hat{\beta }}_{BC}}\,\!&amp;lt;/math&amp;gt; is the MLE for the first occurrence of distinct BC modes. If &amp;lt;math&amp;gt;{{\hat{\beta }}_{BC}}\ge 1\,\!&amp;lt;/math&amp;gt; then &amp;lt;math&amp;gt;{{\widehat{d}}_{BC}}\,\!&amp;lt;/math&amp;gt; equals zero.&lt;br /&gt;
&lt;br /&gt;
*Growth potential failure intensity and growth potential MTBF are given by:&lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{\lambda }}_{GP}}={{\widehat{\lambda }}_{CA}}-{{\widehat{\lambda }}_{BD}}+\underset{i=1}{\overset{M}{\mathop \sum }}\,(1-{{d}_{i}})\frac{{{N}_{i}}}{T}\,\!&amp;lt;/math&amp;gt;	&lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;{{\widehat{M}}_{GP}}={{[{{\widehat{\lambda }}_{GP}}]}^{-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Failure Mode Management Strategy===&lt;br /&gt;
Management controls the resources for corrective actions. Consequently, the effectiveness factors are part of the management strategy. For the BD mode failure intensity that has been seen during development testing, 100 &amp;lt;math&amp;gt;d\,\!&amp;lt;/math&amp;gt; percent will be removed and 100 &amp;lt;math&amp;gt;(1-d)\,\!&amp;lt;/math&amp;gt; percent will remain in the system. Therefore, after the corrective actions have been made, the current system instantaneous failure intensity consists of the failure intensity due to the A modes plus the failure intensity for the unseen BC modes, and plus the failure intensity for the unseen BD modes plus the failure intensity for the BD modes that have been seen. The following pie chart shows how the system&#039;s instantaneous failure intensity can be broken down into its individual pieces based on the current failure mode strategy.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.5.png|center|450px|System failure intensity after the corrective actions.]]&lt;br /&gt;
&lt;br /&gt;
Keep in mind that the individual components of the system&#039;s instantaneous failure intensity will depend on the classifications defined in the data. For example, if BC modes are not present within the data, then the BC mode MTBF will not be a part of the overall system MTBF. The individual pieces of the pie, as shown in the above figure, are calculated using the following equations.&lt;br /&gt;
&lt;br /&gt;
Let:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{r}(T)=\hat{\lambda }\hat{\beta }{{T}^{\hat{\beta }-1}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;T\,\!&amp;lt;/math&amp;gt; is the test time and &amp;lt;math&amp;gt;\hat{\beta }\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\hat{\lambda }\,\!&amp;lt;/math&amp;gt; are the maximum likelihood estimates of the Crow-AMSAA model for all of the data. &amp;lt;math&amp;gt;\hat{\beta }\,\!&amp;lt;/math&amp;gt; is the biased estimate of &amp;lt;math&amp;gt;\beta \,\!&amp;lt;/math&amp;gt;. Therefore:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{\beta }=\frac{N}{\underset{i=1}{\overset{N}{\mathop{\sum }}}\,\ln \left( \tfrac{T}{{{X}_{i}}} \right)}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{\lambda }=\frac{N}{{{T}^{{\hat{\beta }}}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;N\,\!&amp;lt;/math&amp;gt; is the total number of failures, and &amp;lt;math&amp;gt;{{X}_{i}}\,\!&amp;lt;/math&amp;gt; is the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; time-to-failure. Let the successive failures &amp;lt;math&amp;gt;0&amp;lt;{{X}_{1}}&amp;lt;{{X}_{2}}&amp;lt;\ldots &amp;lt;{{X}_{3}}&amp;lt;{{X}_{N}}\,\!&amp;lt;/math&amp;gt; be partitioned into the A mode failures ( &amp;lt;math&amp;gt;{{N}_{A}}\,\!&amp;lt;/math&amp;gt; ), BC first occurrence failures ( &amp;lt;math&amp;gt;{{N}_{BCF}}\,\!&amp;lt;/math&amp;gt; ), BC remaining failures ( &amp;lt;math&amp;gt;{{N}_{BCR}}\,\!&amp;lt;/math&amp;gt; ), BD first occurrence failure ( &amp;lt;math&amp;gt;{{N}_{BDF}}\,\!&amp;lt;/math&amp;gt; ) and the BD remaining failures ( &amp;lt;math&amp;gt;{{N}_{BDR}}\,\!&amp;lt;/math&amp;gt; ). For continuous data, each portion of the pie chart, due to each of the modes, is calculated as follows:&lt;br /&gt;
&lt;br /&gt;
*A modes&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;A=\left( \frac{T}{{{N}^{2}}} \right)\left[ \underset{i=1}{\overset{{{N}_{A}}}{\mathop \sum }}\,\ln \left( \frac{T}{{{X}_{Ai}}} \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BC modes unseen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{C}_{unseen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ \underset{i=1}{\overset{{{N}_{BCF}}}{\mathop \sum }}\,\ln \left( \frac{T}{{{X}_{BCFi}}} \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BC modes seen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{C}_{seen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ \underset{i=1}{\overset{{{N}_{BCR}}}{\mathop \sum }}\,\ln \left( \frac{T}{{{X}_{BCRi}}} \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes unseen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{D}_{unseen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ \underset{i=1}{\overset{{{N}_{BDF}}}{\mathop \sum }}\,\ln \left( \frac{T}{{{X}_{BDFi}}} \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes seen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{D}_{seen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ \underset{i=1}{\overset{{{N}_{BDR}}}{\mathop \sum }}\,\ln \left( \frac{T}{{{X}_{BDRi}}} \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes remain&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  B{{D}_{remain}}  = &amp;amp; \left( 1-\frac{1}{M}\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}} \right)\cdot B{{D}_{seen}} \\ &lt;br /&gt;
  = &amp;amp; \left( 1-\overline{d} \right)\cdot B{{D}_{seen}}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes removed&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  B{{D}_{removed}} = &amp;amp; \frac{1}{M}\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}}\cdot B{{D}_{seen}} \\ &lt;br /&gt;
 = &amp;amp; \overline{d}\cdot B{{D}_{seen}}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For grouped data, the maximum likelihood estimates of &amp;lt;math&amp;gt;\beta \,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\lambda \,\!&amp;lt;/math&amp;gt; from the [[Crow-AMSAA (NHPP)|Crow-AMSAA (NHPP)]] model are calculated such that the following equations are satisfied:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\underset{i=1}{\overset{K}{\mathop \sum }}\,{{N}_{i}}\left[ \frac{t_{i}^{{\hat{\beta }}}\ln ({{t}_{i}})-t_{i-1}^{{\hat{\beta }}}\ln ({{t}_{i-1}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-\ln T \right]=0\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\hat{\lambda }=\frac{N}{T_{K}^{{\hat{\beta }}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;K\,\!&amp;lt;/math&amp;gt; is the number of groups and &amp;lt;math&amp;gt;N=\underset{i=1}{\overset{K}{\mathop{\sum }}}\,{{N}_{i}}\,\!&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
*A modes &lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;A=\left( \frac{T}{{{N}^{2}}} \right)\left[ {{N}_{A}}\ln (T)-\underset{i=1}{\overset{K}{\mathop \sum }}\,\frac{{{N}_{Ai}}}{{\hat{\beta }}}\left( \frac{t_{i}^{{\hat{\beta }}}\ln (t_{i}^{{\hat{\beta }}})-t_{i-1}^{{\hat{\beta }}}\ln (t_{i-1}^{{\hat{\beta }}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-1 \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BC modes unseen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{C}_{unseen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ {{N}_{BCF}}\ln (T)-\underset{i=1}{\overset{K}{\mathop \sum }}\,\frac{{{N}_{BCFi}}}{{\hat{\beta }}}\left( \frac{t_{i}^{{\hat{\beta }}}\ln (t_{i}^{{\hat{\beta }}})-t_{i-1}^{{\hat{\beta }}}\ln (t_{i-1}^{{\hat{\beta }}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-1 \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BC modes seen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{C}_{seen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ {{N}_{BCR}}\ln (T)-\underset{i=1}{\overset{K}{\mathop \sum }}\,\frac{{{N}_{BCRi}}}{{\hat{\beta }}}\left( \frac{t_{i}^{{\hat{\beta }}}\ln (t_{i}^{{\hat{\beta }}})-t_{i-1}^{{\hat{\beta }}}\ln (t_{i-1}^{{\hat{\beta }}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-1 \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes unseen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{D}_{unseen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ {{N}_{BDF}}\ln (T)-\underset{i=1}{\overset{K}{\mathop \sum }}\,\frac{{{N}_{BDFi}}}{{\hat{\beta }}}\left( \frac{t_{i}^{{\hat{\beta }}}\ln (t_{i}^{{\hat{\beta }}})-t_{i-1}^{{\hat{\beta }}}\ln (t_{i-1}^{{\hat{\beta }}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-1 \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes seen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B{{D}_{seen}}=\left( \frac{T}{{{N}^{2}}} \right)\left[ {{N}_{BDR}}\ln (T)-\underset{i=1}{\overset{K}{\mathop \sum }}\,\frac{{{N}_{BDRi}}}{{\hat{\beta }}}\left( \frac{t_{i}^{{\hat{\beta }}}\ln (t_{i}^{{\hat{\beta }}})-t_{i-1}^{{\hat{\beta }}}\ln (t_{i-1}^{{\hat{\beta }}})}{t_{i}^{{\hat{\beta }}}-t_{i-1}^{{\hat{\beta }}}}-1 \right) \right]\hat{r}(T)\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes remain&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  B{{D}_{remain}}  = &amp;amp; \left( 1-\frac{1}{M}\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}} \right)\cdot B{{D}_{seen}} \\ &lt;br /&gt;
  = &amp;amp; \left( 1-\overline{d} \right)\cdot B{{D}_{seen}}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*BD modes removed&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
  B{{D}_{removed}}  = &amp;amp; \frac{1}{M}\underset{i=1}{\overset{M}{\mathop \sum }}\,{{d}_{i}}\cdot B{{D}_{seen}} \\ &lt;br /&gt;
  = &amp;amp; \overline{d}\cdot B{{D}_{seen}}  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Example - Test-Fix-Find-Test Data=== &amp;lt;!-- THIS SECTION HEADER IS LINKED FROM: Operational Mission Profile Testing. IF YOU RENAME THE SECTION, YOU MUST UPDATE THE LINK(S). --&amp;gt;&lt;br /&gt;
{{:Test-Fix-Find-Test_Data_Example}}&lt;br /&gt;
&lt;br /&gt;
==Confidence Bounds==&lt;br /&gt;
The RGA software provides two methods to estimate the confidence bounds for the Crow Extended model when applied to developmental testing data. The Fisher Matrix approach is based on the Fisher Information Matrix and is commonly employed in the reliability field. The Crow bounds were developed by Dr. Larry Crow. &lt;br /&gt;
&lt;br /&gt;
See the [[Crow Extended Confidence Bounds]] chapter for details on how these confidence bounds are calculated. &lt;br /&gt;
&lt;br /&gt;
===Confidence Bounds Example===&lt;br /&gt;
{{:Crow_Extended_Confidence_Bounds_Example}}&lt;br /&gt;
&lt;br /&gt;
===Another Confidence Bounds Example===&lt;br /&gt;
{{:Crow_Extended_Confidence_Bounds_Example_2}}&lt;br /&gt;
&lt;br /&gt;
==Grouped Data== &amp;lt;!-- THIS SECTION HEADER IS LINKED FROM: Operational Mission Profile Testing. IF YOU RENAME THE SECTION, YOU MUST UPDATE THE LINK(S). --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameter estimation for grouped data using the Crow Extended model is the same as the procedure used for the traditional [[Crow-AMSAA (NHPP)#Grouped_Data| Crow-AMSAA (NHPP)]] model. The equations used to estimate the parameters of the Crow Extended model are presented next. For test-find-test data, the maximum likelihood estimates of &amp;lt;math&amp;gt;{{\lambda }_{BD}}\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{{\beta }_{BD}}\,\!&amp;lt;/math&amp;gt; are calculated using the first occurrences of the BD modes such that:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\underset{i=1}{\overset{k}{\mathop \sum }}\,{{n}_{i}}\left[ \frac{T_{i}^{\widehat{\beta }}\ln {{T}_{i}}-T_{i-1}^{\widehat{\beta }}\ln {{T}_{i-&lt;br /&gt;
&lt;br /&gt;
1}}}{T_{i}^{\widehat{\beta }}-T_{i-1}^{\widehat{\beta }}}-\ln {{T}_{k}} \right]=0\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\widehat{\lambda }=\frac{n}{T_{k}^{\widehat{\beta }}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;{{n}_{i}}\,\!&amp;lt;/math&amp;gt; is the number of distinct BD modes within the &amp;lt;math&amp;gt;{{i}^{th}}\,\!&amp;lt;/math&amp;gt; interval. For test-fix-find-test data, the maximum likelihood estimates of &amp;lt;math&amp;gt;{{\lambda }_{BC}}\,\!&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;{{\beta }_{BC}}\,\!&amp;lt;/math&amp;gt; are estimated in the same manner using the first occurrences of the BC modes.&lt;br /&gt;
&lt;br /&gt;
===Confidence Bounds for Grouped Data===&lt;br /&gt;
*&#039;&#039;&#039;Parameters:&#039;&#039;&#039; The confidence bounds on the parameters for the Crow Extended model for grouped data are calculated using the same procedure presented in the [[Crow-AMSAA_Confidence_Bounds|Crow-AMSAA Confidence Bounds]] chapter. &lt;br /&gt;
*&#039;&#039;&#039;Failure Intensity and MTBF:&#039;&#039;&#039; &lt;br /&gt;
**If there are no BC modes, the confidence bounds on the demonstrated failure intensity and MTBF, projected failure intensity and MTBF and growth potential failure intensity and MTBF are the same as the procedure presented for [[Crow Extended Confidence Bounds|non-grouped data]]. &lt;br /&gt;
**If there are BC modes, then the confidence bounds on the demonstrated failure intensity and MTBF are the same as the procedure presented in the Crow-AMSAA Confidence Bounds chapter, and the confidence bounds on the projected failure intensity and MTBF and growth potential failure intensity and MTBF are the same as for non-grouped data. &lt;br /&gt;
*&#039;&#039;&#039;Time:&#039;&#039;&#039; The confidence bounds on time are the same as the procedure presented in the Crow-AMSAA Confidence Bounds chapter.&lt;br /&gt;
&lt;br /&gt;
==Mixed Data==&lt;br /&gt;
The Crow Extended model can also be applied to discrete data from one-shot (success/failure) testing. In the RGA software, the &#039;&#039;&#039;Discrete Data &amp;gt; Mixed Data&#039;&#039;&#039; option creates a data sheet that can accommodate data from tests where a single unit is tested for each successive configuration (individual trial-by-trial), where multiple units are tested for each successive configuration (configurations in groups) or a combination of both. This data sheet can be analyzed with either the Crow-AMSAA (NHPP) model or the Crow Extended model.&lt;br /&gt;
&lt;br /&gt;
For discrete data, corrective actions cannot take place at the time of failure. With that in mind, the mixed data type does not allow for BC modes. For discrete data there are only A or BD modes. In terms of practical applications, think of a growth test for missile systems. Because missiles are one-shot items, any corrective actions applied to the failure modes are delayed until at least the next trial.&lt;br /&gt;
&lt;br /&gt;
Note that for calculation purposes, it is required to have at least three failures in the first interval. If that is not the case, then the data set needs to be grouped before calculating. The RGA software performs this operation in the background.&lt;br /&gt;
&lt;br /&gt;
===Example===&lt;br /&gt;
{{:Mixed_Data_-_Crow_Extended_Example}}&lt;br /&gt;
&lt;br /&gt;
==Multiple Systems with Event Codes==&lt;br /&gt;
&lt;br /&gt;
The Multiple Systems with Event Codes data type is used to analyze the failure data from a reliability growth test in which a number of systems are tested concurrently and the implemented fixes are tracked during the test phase. With this data type, all of the systems under test are assumed to have the same system hours at any given time. The Crow Extended model is used for this data type, so all the underlying assumptions regarding the Crow Extended model apply. As such, this data type is applicable only to data from within a single test phase.&lt;br /&gt;
&lt;br /&gt;
As previously presented, the failure mode classifications for the Crow Extended model are defined as follows:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;A&#039;&#039;&#039; indicates that no corrective action was performed or will be performed (management chooses not to address for technical, financial or other reasons).&lt;br /&gt;
*&#039;&#039;&#039;BC&#039;&#039;&#039; indicates that the corrective action was implemented during the test. The analysis assumes that the effect of the corrective action was experienced during the test (as with other test-fix-test reliability growth analyses).&lt;br /&gt;
*&#039;&#039;&#039;BD&#039;&#039;&#039; indicates that the corrective action will be delayed until after the completion of the current test.&lt;br /&gt;
&lt;br /&gt;
Therefore, implemented fixes can be applied only to BC modes since all BD modes are assumed to be delayed until the end of the test.&lt;br /&gt;
For each BC mode, there must be a separate entry in the data set that records the time when the fix was implemented during the test.&lt;br /&gt;
&lt;br /&gt;
===Event Codes===&lt;br /&gt;
A Multiple Systems with Event Codes data sheet that is analyzed with the Crow Extended model has an &#039;&#039;&#039;Event&#039;&#039;&#039; column that allows you to indicate the types of events that occurred during a test phase. The possible event codes that can be used in the analysis are:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;I&#039;&#039;&#039;&#039;&#039;: denotes that a certain BC failure mode has been corrected at the specific time; in other words, a fix has been implemented. For this data type, each BC mode must have an associated &#039;&#039;I&#039;&#039; event. The &#039;&#039;I&#039;&#039; event is essentially a timestamp for when the fix was implemented during the test.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;Q&#039;&#039;&#039;&#039;&#039;: indicates that the failure was due to a quality issue. An example of this might be a failure caused by a bolt not being tightened down properly. You have the option to decide whether or not to include quality issues in the analysis. This option can be specified by checking or clearing the &#039;&#039;&#039;Include Q Events&#039;&#039;&#039; check box under Event Code Options on the Analysis tab.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;P&#039;&#039;&#039;&#039;&#039;: indicates that the failure was due to a performance issue. You can determine whether or not to include performance issues in the analysis. This option can be specified by checking or clearing the &#039;&#039;&#039;Include P Events&#039;&#039;&#039; check box under Event Code Options on the Analysis tab.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;X&#039;&#039;&#039;&#039;&#039;: indicates that you wish to exclude the data point from the analysis. An &#039;&#039;X&#039;&#039; can be placed in front of any existing event code (e.g., XF to exclude a particular failure time) or entered by itself. The row of data with the &#039;&#039;X&#039;&#039; will not be included in the analysis.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;S&#039;&#039;&#039;&#039;&#039;: indicates the system start time. This event code is only selectable in the Normal View.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;F&#039;&#039;&#039;&#039;&#039;: indicates a failure time.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;E&#039;&#039;&#039;&#039;&#039;: indicates the system end time. This event code is only selectable in the Normal View.&lt;br /&gt;
&lt;br /&gt;
The analysis is based on the equivalent system that combines the operating hours of all the systems. &lt;br /&gt;
&lt;br /&gt;
===Equivalent Single System===&lt;br /&gt;
In order to analyze a Multiple Systems with Event Codes data sheet, the data are converted into a Crow Extended equivalent single system. The implemented fixes (&#039;&#039;I&#039;&#039; events) are taken into account when building the equivalent single system from the data for multiple systems.&lt;br /&gt;
&lt;br /&gt;
The basic assumptions and constraints for the use of this data type are listed below:&lt;br /&gt;
&lt;br /&gt;
*Failure modes are assumed to be independent of each other and with respect to the system configuration. The same applies to their related implemented fixes (&#039;&#039;I&#039;&#039; events). As such, each mode and its related implemented fixes (&#039;&#039;I&#039;&#039; events) are examined separately in terms of their impact to the system configuration.&lt;br /&gt;
*If there are BC modes in the data set, there must be at least 3 unique BC modes to analyze the data (together with implemented fixes for each one of them).&lt;br /&gt;
*If there are BD modes in the data set, there must be at least 3 unique BD modes to analyze the data.&lt;br /&gt;
*To be consistent with the definition of BC modes in the Crow Extended model, every BC mode must have at least one implemented fix (&#039;&#039;I&#039;&#039; event) on at least one system.&lt;br /&gt;
*Implemented fixes (&#039;&#039;I&#039;&#039; events) cannot be delayed to a later phase, because the Crow Extended model applies to a single phase only.&lt;br /&gt;
&lt;br /&gt;
The following list shows the basic rules for calculating the equivalent single system on which the Crow Extended model is applied. Note that the list is not exhaustive since there is an infinite number of scenarios that can occur. These rules cover the most common scenarios. The main concept is to add the time that each system was tested under the same configuration.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;To get to the equivalent single system, each failure time for A modes and BD modes is calculated by adding the time that each system was tested under the same configuration. In practice this means multiplying the failure time in the system by the number of total systems under test. For example, if we have 4 total systems, and system 2 has a BD1 mode at time 30, the BD1 mode failure time in the equivalent single system would be &amp;lt;math&amp;gt;30*4=120\,\!&amp;lt;/math&amp;gt;. If system 3 had another BD1 mode at time 40, then that would yield another BD1 mode in the equivalent single system at time &amp;lt;math&amp;gt;40*4=160\,\!&amp;lt;/math&amp;gt;. These calculations are done assuming that the start time for the systems are at time zero. If the start time is different than zero, then that time would have to be subtracted from the failure time on each system. For example, if system 1 started at time S=10, and there was a failure at time 30, the equivalent system time would be &amp;lt;math&amp;gt;(30-10)*4=80\,\!&amp;lt;/math&amp;gt;.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Each failure time for a BC mode that occurred before an implemented fix (&#039;&#039;I&#039;&#039; event) for that mode is also calculated by multiplying the failure time in the system by the number of total systems in test, as described above.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;The implemented fix (&#039;&#039;I&#039;&#039; event) time in the equivalent single system is calculated by adding the test time invested in each system before that &#039;&#039;I&#039;&#039; event takes place. It is the total time that the system has spent at the same configuration in terms of that specific mode.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;If the same BC mode occurs in another system after a fix (&#039;&#039;I&#039;&#039; event) has been implemented in one or more systems, the failure time in the equivalent single system is calculated by adding the test time for that BC mode, and one of the following for each of the other systems:&lt;br /&gt;
::*If a BC mode occurs in a system that has already seen an &#039;&#039;I&#039;&#039; event for that mode, then you add the time up to the &#039;&#039;I&#039;&#039; event.&lt;br /&gt;
:::or&lt;br /&gt;
::*If the &#039;&#039;I&#039;&#039; events occurred later than the BC failure time or those systems did not have any &#039;&#039;I&#039;&#039; events for that mode, then you add the time of the BC failure.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;If the same BC mode occurs in the same system after a fix (&#039;&#039;I&#039;&#039; event) has been implemented in one or more systems, the failure time in the equivalent single system is calculated by adding the test time of each system after that &#039;&#039;I&#039;&#039; event was implemented to the &#039;&#039;I&#039;&#039; event time in the equivalent single system, or zero if an &#039;&#039;I&#039;&#039; event was not present in that system.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
====Example: Equivalent Single System====&amp;lt;!-- THIS SECTION HEADER IS LINKED FROM ANOTHER PLACE IN THIS DOCUMENT. IF YOU RENAME THE SECTION, YOU MUST UPDATE THE LINK(S). --&amp;gt;&lt;br /&gt;
{{:Equivalent_System_Example}}&lt;br /&gt;
&lt;br /&gt;
===Transferring Data to an Equivalent Single System===&lt;br /&gt;
RGA provides the capability to transfer a Multiple Systems with Event Codes data sheet to various other data types. The following picture shows the available data types that the data sheet can be converted into. When selecting to transfer to an equivalent single system, the data sheet is converted to a Crow Extended - Continuous Evaluation data sheet.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.23.png|center]]&lt;br /&gt;
&lt;br /&gt;
The [[Crow Extended - Continuous Evaluation]] model is designed for analyzing data across multiple test phases, while considering the data for all phases as one data set. Familiarity with this model is necessary for the discussion presented in this section.&lt;br /&gt;
&lt;br /&gt;
When using the Crow Extended - Continuous Evaluation model to transfer the data sheet from Multiple Systems with Event Codes to an equivalent single system, the following rules are used (in addition to the five basic rules presented earlier for calculating the equivalent single system):&lt;br /&gt;
&lt;br /&gt;
*BD modes in the Crow Extended data sheet become BD modes in the equivalent single system of the Crow Extended - Continuous Evaluation data sheet.&lt;br /&gt;
*BC modes in the Crow Extended data sheet become BD modes in the equivalent single system of the Crow Extended - Continuous Evaluation data sheet. These BD modes will have associated implemented fixes (&#039;&#039;I&#039;&#039; events). Implemented fixes (&#039;&#039;I&#039;&#039; events) for BC modes in the Crow Extended data sheet become implemented fixes (&#039;&#039;I&#039;&#039; events) for the converted BD modes in the equivalent single system of the Crow Extended - Continuous Evaluation data sheet.&lt;br /&gt;
*If an implemented fix (&#039;&#039;I&#039;&#039; event) occurred at the same time as the failure, and was implemented at that exact time across all systems, then this becomes a BC mode in the equivalent single system. If the fixes (&#039;&#039;I&#039;&#039; events) were not all implemented at the same time or if the fix was not implemented on all systems at the failure time, then this becomes a BD mode in the equivalent single system.&lt;br /&gt;
&lt;br /&gt;
The next figure shows the transferred equivalent single system Crow Extended - Continuous Evaluation data sheet from the Multiple Systems with Event Codes data sheet for the data from the [[Crow_Extended#Example:_Equivalent_Single_System|Equivalent Single System example]] given above.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.24.png|center|450px]]&lt;br /&gt;
&lt;br /&gt;
===Iteration Method for Naming Repeated Modes===&lt;br /&gt;
When recording modes for transfer from the Multiple Systems with Event Codes to a Crow Extended -Continuous Evaluation equivalent single system, it is recommended to consider using an iteration method to name subsequent recurrences of the same mode. This will help alleviate any issues with the conversion of the definitions of the modes from the Crow Extended model to the Crow Extended - Continuous Evaluation model. For example, if the first occurrence of a mode is BC25, then the second occurrence is suggested to be named as BC25.1. The reasoning behind this recommendation is that in the case that BC25 in the Multiple Systems with Event Codes data sheet has received implemented fixes (&#039;&#039;I&#039;&#039; events) at the same time that the failure occurred in all systems, then this mode will be translated as a BC mode in the Crow Extended - Continuous Evaluation equivalent single system. The next recurring failure would also be treated as a BC mode, but in reality it did not have an implemented fix (&#039;&#039;I&#039;&#039; event) at the time of failure.&lt;br /&gt;
&lt;br /&gt;
For example, consider the data set shown in the following figure, which represents one system only for simplicity. Notice that the modes BC25, BC35 and BC45 received implemented fixes at the time of failure. Based on that, when they get transferred to the Crow Extended - Continuous Evaluation equivalent single system, they will be considered as BC modes. The subsequent failures of the modes 25, 35 and 45 will also be converted to BC modes, when in reality they had implemented fixes (&#039;&#039;I&#039;&#039; events) at a later time.&lt;br /&gt;
 &lt;br /&gt;
[[Image:rga9.25.png|center|450px]]&lt;br /&gt;
&lt;br /&gt;
The RGA software will display a warning if you try to convert this data sheet without using iterations.&lt;br /&gt;
&lt;br /&gt;
The next figure shows the same data sheet with the use of iterations for the modes 25, 35 and 45. The subsequent failures are named as BC25.1, BC35.1 and BC45.1.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.27.png|center|450px]]&lt;br /&gt;
&lt;br /&gt;
This way, the conversion to the Crow Extended - Continuous Evaluation model occurs in a valid fashion, because although the original BC modes are converted to BC25, BC35 and BC45, the subsequent failures are converted to BD25.1, BD35.1 and BD45.1 together with their respective implemented fixes (&#039;&#039;I&#039;&#039; events). This is shown in the next figure below. Note that the use of iterations is recommended only when transferring to the Crow Extended - Continuous Evaluation equivalent single system; it is not necessary when using the Multiple Systems with Event Codes data sheet that is calculated with the Crow Extended model.&lt;br /&gt;
&lt;br /&gt;
[[Image:rga9.28.png|center|450px]]&lt;br /&gt;
&lt;br /&gt;
==More Examples==&lt;br /&gt;
===Adjusting the Failure Mode Management Strategy===&lt;br /&gt;
{{:Concurrent_Operating_Times_-_Crow_Extended_Example}}&lt;br /&gt;
&lt;br /&gt;
===Estimating the Failure Intensity Remaining After Fixes===&lt;br /&gt;
{{:Grouped_Data_-_Crow_Extended_Example}}&lt;br /&gt;
&lt;br /&gt;
===Determining if Design Will Meet MTBF Goal===&lt;br /&gt;
{{:Known_Operating_Times_-_Crow_Extended_Example}}&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Main_Page&amp;diff=65549</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Main_Page&amp;diff=65549"/>
		<updated>2020-08-19T22:09:02Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:ReliaWiki}} __NOTOC__ __NOEDITSECTION__ &lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; display:block; width:100%; margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
ReliaWiki is owned and maintained by [https://koi-3QN72QORVC.marketingautomation.services/net/m?md=p8TH7lvo8O%2FAHl72KXuPWlZmIR3P7GFj HBM Prenscia] and is an extension of [https://koi-3QN72QORVC.marketingautomation.services/net/m?md=vQQfu%2FkoXaOAQyVYZnqaSTIPBB24C0kx weibull.com]. &amp;lt;!--For additional resources, visit [http://www.reliasoft.tv ReliaSoft.tv], [http://www.reliability-discussion.com/ Reliability Discussion Forum] and the [http://www.reliabilityprofessional.org/ Certified Reliability Professional (CRP) Program]. --&amp;gt;Due to continuous improvement to ReliaSoft software, the product images and step-by-step instructions featured on ReliaWiki may not reflect the current version.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; width:100%;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; width:49%; margin:5px;&amp;quot;&amp;gt;&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=blue_triangle.png&lt;br /&gt;
|title=Life Data Analysis&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=Life_Data_Analysis_Reference_Book|text=Reference Book}}&lt;br /&gt;
{{TitleBoxLink|link=Weibull++_Examples|text=Weibull++ Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=green_triangle.png&lt;br /&gt;
|title=System Analysis (RBDs and Fault Trees)&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=System_Analysis_Reference|text=Reference Book}}&lt;br /&gt;
{{TitleBoxLink|link=BlockSim_Examples|text=BlockSim Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=red_triangle.png&lt;br /&gt;
|title=Reliability Growth and Repairable System Analysis&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=Reliability_Growth_and_Repairable_System_Analysis_Reference|text=Reference Book}}&lt;br /&gt;
{{TitleBoxLink|link=RGA_Examples|text=RGA Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=rcm_triangle.png&lt;br /&gt;
|title=Reliability Centered Maintenance (RCM)&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=RCM%2B%2B_Examples|text=RCM++ Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; width:49%; margin:5px;&amp;quot;&amp;gt;&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=yellow_triangle.png&lt;br /&gt;
|title=Accelerated Life Testing Data Analysis&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=Accelerated Life Testing Data Analysis_Reference|text=Reference Book}}&lt;br /&gt;
{{TitleBoxLink|link=ALTA_Examples|text=ALTA Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=doe_triangle.png&lt;br /&gt;
|title=Experiment Design and Analysis (DOE)&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=Experiment_Design_and_Analysis_Reference|text=Reference Book}}&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=fmea_triangle.png&lt;br /&gt;
|title=Failure Modes &amp;amp;amp; Effects Analysis (FMEA)&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=FMEA_and_RCM_Articles|text=Articles}}&lt;br /&gt;
{{TitleBoxLink|link=Xfmea_Examples|text=Xfmea Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=api_triangle.png&lt;br /&gt;
|title=ReliaSoft API&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=ReliaSoft API Reference|text=API Reference}}&lt;br /&gt;
{{TitleBoxLink|link=API_Changelog|text=API Changelog}}&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; width:100%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;cshow logged=&amp;quot;1&amp;quot;&amp;gt;This text will appear if a user with membership to &#039;sysop&#039; group views this page&amp;lt;/cshow&amp;gt; {{ReliaSoft Footer}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Main_Page&amp;diff=65548</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Main_Page&amp;diff=65548"/>
		<updated>2020-08-19T22:08:49Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:ReliaWiki}} __NOTOC__ __NOEDITSECTION__ &lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; display:block; width:100%; margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
ReliaWiki is owned and maintained by [https://koi-3QN72QORVC.marketingautomation.services/net/m?md=p8TH7lvo8O%2FAHl72KXuPWlZmIR3P7GFj HBM Prenscia] and is an extension of [https://koi-3QN72QORVC.marketingautomation.services/net/m?md=vQQfu%2FkoXaOAQyVYZnqaSTIPBB24C0kx weibull.com]. &amp;lt;!--For additional resources, visit [http://www.reliasoft.tv ReliaSoft.tv], [http://www.reliability-discussion.com/ Reliability Discussion Forum] and the [http://www.reliabilityprofessional.org/ Certified Reliability Professional (CRP) Program]. --&amp;gt;Due to continuous improvement to ReliaSoft software, the product images and step-by-step instructions featured on ReliaWiki may not reflect the current version.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; width:100%;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; width:49%; margin:5px;&amp;quot;&amp;gt;&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=blue_triangle.png&lt;br /&gt;
|title=Life Data Analysis TEST&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=Life_Data_Analysis_Reference_Book|text=Reference Book}}&lt;br /&gt;
{{TitleBoxLink|link=Weibull++_Examples|text=Weibull++ Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=green_triangle.png&lt;br /&gt;
|title=System Analysis (RBDs and Fault Trees)&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=System_Analysis_Reference|text=Reference Book}}&lt;br /&gt;
{{TitleBoxLink|link=BlockSim_Examples|text=BlockSim Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=red_triangle.png&lt;br /&gt;
|title=Reliability Growth and Repairable System Analysis&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=Reliability_Growth_and_Repairable_System_Analysis_Reference|text=Reference Book}}&lt;br /&gt;
{{TitleBoxLink|link=RGA_Examples|text=RGA Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=rcm_triangle.png&lt;br /&gt;
|title=Reliability Centered Maintenance (RCM)&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=RCM%2B%2B_Examples|text=RCM++ Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; width:49%; margin:5px;&amp;quot;&amp;gt;&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=yellow_triangle.png&lt;br /&gt;
|title=Accelerated Life Testing Data Analysis&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=Accelerated Life Testing Data Analysis_Reference|text=Reference Book}}&lt;br /&gt;
{{TitleBoxLink|link=ALTA_Examples|text=ALTA Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=doe_triangle.png&lt;br /&gt;
|title=Experiment Design and Analysis (DOE)&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=Experiment_Design_and_Analysis_Reference|text=Reference Book}}&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=fmea_triangle.png&lt;br /&gt;
|title=Failure Modes &amp;amp;amp; Effects Analysis (FMEA)&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=FMEA_and_RCM_Articles|text=Articles}}&lt;br /&gt;
{{TitleBoxLink|link=Xfmea_Examples|text=Xfmea Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=api_triangle.png&lt;br /&gt;
|title=ReliaSoft API&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=ReliaSoft API Reference|text=API Reference}}&lt;br /&gt;
{{TitleBoxLink|link=API_Changelog|text=API Changelog}}&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; width:100%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;cshow logged=&amp;quot;1&amp;quot;&amp;gt;This text will appear if a user with membership to &#039;sysop&#039; group views this page&amp;lt;/cshow&amp;gt; {{ReliaSoft Footer}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=CScheduledTask.SetPools_Method&amp;diff=65544</id>
		<title>CScheduledTask.SetPools Method</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=CScheduledTask.SetPools_Method&amp;diff=65544"/>
		<updated>2020-05-04T17:03:00Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:cScheduledTask.SetPools Method}}{{Template:API}}{{Template:APIBreadcrumb|.[[CScheduledTask_Class|cScheduledTask]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;Sets the Pool IDs and number of parts for all pools required for the task.&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Remarks&#039;&#039;&#039;: Alternatively, .NET users can use the &amp;lt;code&amp;gt;Pools()&amp;lt;/code&amp;gt; property in the class to get or set the crew IDs.&lt;br /&gt;
&lt;br /&gt;
== Syntax ==&lt;br /&gt;
 &#039;&#039;&#039;.SetPools&#039;&#039;&#039;({{APIPrefix|ByRef}} &#039;&#039;arr()&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
===Parameters===&lt;br /&gt;
&#039;&#039;arr()&#039;&#039;&lt;br /&gt;
:Required as [[PoolInfo|PoolInfo]]. An array of the Pool IDs and the number of parts for all pools required for the task.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
This example assumes that the repository contains existing pools.&lt;br /&gt;
 &#039;&#039;&#039;VBA&#039;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|...}}&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|&#039;Add code to create a new task or get an existing task.}}&lt;br /&gt;
  {{APIPrefix|Dim}} aTask {{APIPrefix|As}} cScheduledTask&lt;br /&gt;
 {{APIComment|...}}&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|&#039;Create an array and define the pools to be assigned. For this example,}}&lt;br /&gt;
 {{APIComment|&#039;assume that Pool ID#2 and ID#4 are to be assigned to the task with 3 and 5 parts, respectively.}}&lt;br /&gt;
  {{APIPrefix|Dim}} myarray(1) {{APIPrefix|As PoolInfo}}&lt;br /&gt;
  myarray(0).ID = 2&lt;br /&gt;
  myarray(0).NumParts = 3&lt;br /&gt;
  myarray(1).ID = 4&lt;br /&gt;
  myarray(1).NumParts = 5&lt;br /&gt;
  &lt;br /&gt;
 {{APIComment|&#039;Assign the pools to the task.}}&lt;br /&gt;
  {{APIPrefix|Call}} aTask.SetPools(myarray)&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=CCorrectiveTask.SetPools_Method&amp;diff=65543</id>
		<title>CCorrectiveTask.SetPools Method</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=CCorrectiveTask.SetPools_Method&amp;diff=65543"/>
		<updated>2020-05-04T17:02:21Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:cCorrectiveTask.SetPools Method}}{{Template:API}}{{Template:APIBreadcrumb|.[[CCorrectiveTask_Class|cCorrectiveTask]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;Sets the Pool IDs and number of parts for all pools required for the task.&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Remarks&#039;&#039;&#039;: Alternatively, .NET users can use the &amp;lt;code&amp;gt;Pools()&amp;lt;/code&amp;gt; property in the class to get or set the crew IDs.&lt;br /&gt;
&lt;br /&gt;
== Syntax ==&lt;br /&gt;
 &#039;&#039;&#039;.SetPools&#039;&#039;&#039;({{APIPrefix|ByRef}} &#039;&#039;arr()&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
===Parameters===&lt;br /&gt;
&#039;&#039;arr()&#039;&#039;&lt;br /&gt;
:Required as [[PoolInfo|PoolInfo]]. An array of the Pool IDs and the number of parts for all pools required for the task.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
This example assumes that the repository contains existing pools.&lt;br /&gt;
 &#039;&#039;&#039;VBA&#039;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|...}}&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|&#039;Add code to create a new task or get an existing task.}}&lt;br /&gt;
  {{APIPrefix|Dim}} aTask {{APIPrefix|As}} cCorrectiveTask&lt;br /&gt;
 {{APIComment|...}}&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|&#039;Create an array and define the pools to be assigned. For this example,}}&lt;br /&gt;
 {{APIComment|&#039;assume that Pool ID#2 and ID#4 are to be assigned to the task with 3 and 5 parts, respectively.}}&lt;br /&gt;
  {{APIPrefix|Dim}} myarray(1) {{APIPrefix|As PoolInfo}}&lt;br /&gt;
  myarray(0).ID = 2&lt;br /&gt;
  myarray(0).NumParts = 3&lt;br /&gt;
  myarray(1).ID = 4&lt;br /&gt;
  myarray(1).NumParts = 5&lt;br /&gt;
  &lt;br /&gt;
 {{APIComment|&#039;Assign the pools to the task.}}&lt;br /&gt;
  {{APIPrefix|Call}} aTask.SetPools(myarray)&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=CScheduledTask_Class&amp;diff=65535</id>
		<title>CScheduledTask Class</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=CScheduledTask_Class&amp;diff=65535"/>
		<updated>2019-05-28T16:28:01Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: /* Properties */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:cScheduledTask Class}}{{Template:API}}{{Template:APIBreadcrumb}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;Represents a scheduled task resource. The task may be a preventive maintenance, inspection or on condition task.&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Constructors==&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;width: 240px;&amp;quot;|cScheduledTask||Creates an instance of the cSheduledTask class.&lt;br /&gt;
|-&lt;br /&gt;
|[[CScheduledTask_Constructors|cScheduledTask()]]||{{:CScheduledTask_Constructors}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Methods==&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;width: 240px;&amp;quot;|[[CScheduledTask.OnCondGetTeams_Method|OnCondGetTeams]]||{{:CScheduledTask.OnCondGetTeams_Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[CScheduledTask.OnCondSetTeams_Method|OnCondSetTeams]]||{{:CScheduledTask.OnCondSetTeams_Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[CScheduledTask.GetPools_Method|GetPools]]||{{:CScheduledTask.GetPools_Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[CScheduledTask.SetPools_Method|SetPools]]||{{:CScheduledTask.SetPools_Method}}&lt;br /&gt;
|- &lt;br /&gt;
|[[CScheduledTask.GetTeams_Method|GetTeams]]||{{:CScheduledTask.GetTeams_Method}}&lt;br /&gt;
|- &lt;br /&gt;
|[[CScheduledTask.SetTeams_Method|SetTeams]]||{{:CScheduledTask.SetTeams_Method}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Properties==&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|BringItemDown||Indicates whether the task brings the item down. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = True.&lt;br /&gt;
|-&lt;br /&gt;
|BringSystemDown||Indicates whether the task brings the system down. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = False.&lt;br /&gt;
|-&lt;br /&gt;
|Condition||Gets or sets a description of the condition that indicates that a failure will occur (for reliability centered maintenance analysis), such as a threshold for a measurement of wear, vibration, etc. &#039;&#039;&#039;String&#039;&#039;&#039;. &lt;br /&gt;
|-&lt;br /&gt;
|DurationModelID||Gets or sets the numeric ID of the model that represents the duration of the task. &#039;&#039;&#039;Integer&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|GroupIDs()||Gets an array containing the numeric IDs of the selected maintenance groups when the task is performed based on maintenance groups. (.NET only) &#039;&#039;&#039;Long&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|ID||Gets the numeric ID of the task. &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|Intervals()||Gets or sets an array containing the interval start values when the task is performed based on dynamic intervals. &#039;&#039;&#039;Double&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|{{Template:API_TxtIdentifiers}}&lt;br /&gt;
|-&lt;br /&gt;
|[[CScheduledTask.MaintenanceTriggers|MaintenanceTriggers]]||{{:CScheduledTask.MaintenanceTriggers}}&lt;br /&gt;
|-&lt;br /&gt;
|MiscCostModelID||Gets or sets the numeric ID of the model that represents the task&#039;s cost per task. Applies to preventive and inspection tasks.  &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|MiscCostPerTimeModelID||Gets or sets the numeric ID of the model that represents the task&#039;s downtime rate ($/Hr). Applies to preventive and inspection tasks.  &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|Name||Gets or sets the task&#039;s name. &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|OCMiscCostModelID||Gets or sets the numeric ID of the model that represents the task&#039;s cost per task. Applies to on condition tasks upon detection. &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|OCMiscCostPerTimeModelID||Gets or sets the numeric ID of the model that represents the task&#039;s downtime rate($/Hr). Applies to on condition tasks upon detection.&#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|OnCondBringItemDown||Indicates whether the task brings the item down. Applies to on condition tasks upon detection. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = True.  &lt;br /&gt;
|-&lt;br /&gt;
|OnCondBringSystemDown||Indicates whether the task brings the system down. Applies to on condition tasks upon detection. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = False. &lt;br /&gt;
|-&lt;br /&gt;
|OnCondDurationModelID||Gets or sets the numeric ID of the model that represents the duration of the task. Applies to on condition tasks upon detection. &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|OnCondFailureDetectionThreshold||Gets or sets the value for the task&#039;s failure detection threshold interval (0.9 &amp;amp;#61; 90% percent of life). &#039;&#039;&#039;Double&#039;&#039;&#039;. Default value = 0.9.&lt;br /&gt;
|-&lt;br /&gt;
|OnCondPFInterval||Gets or sets the value for the task&#039;s prior-to-failure (P-F) interval. &#039;&#039;&#039;Double&#039;&#039;&#039;. Default value = 100.&lt;br /&gt;
|-&lt;br /&gt;
|OnCondPFIntervalUnitID||Gets or sets the numeric ID of the unit of measurement applied to the P-F interval.  &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|OnCondResFactorValue||Gets or sets the on condition task&#039;s restoration amount. A value of 1 indicates an &amp;quot;as good as new&amp;quot; condition,&amp;quot; a value of 0 indicates an &amp;quot;as bad as old&amp;quot; condition. A value between 0 and 100 indicates partial restoration. &#039;&#039;&#039;Double&#039;&#039;&#039;. Default value = 1.&lt;br /&gt;
|-&lt;br /&gt;
|OnCondResFactorType||Gets or set a value from the &#039;&#039;&#039;[[TaskRestorationTypeEnum Enumeration|TaskRestorationTypeEnum]]&#039;&#039;&#039; enumeration, which specifies the effect of the restoration. Default value = 1 (restores all accumulated damage).&lt;br /&gt;
|-&lt;br /&gt;
|OnCondTeams||Returns a &#039;&#039;&#039;{{APIPrefix|List}}(Of [[TeamInfo Class|TeamInfo]])&#039;&#039;&#039; containing teams assigned for the &#039;On condition&#039; task (in the order of priority). (.NET Only)&lt;br /&gt;
|-&lt;br /&gt;
|OnCondUsePFInterval||Indicates whether the prior-to-failure (P-F) interval should be used to detect imminent failures. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. If true, specify a value for OnCondPFInterval; if false, specify a value for OnCondFailureDetectionThreshold. Default value = False.&lt;br /&gt;
|-&lt;br /&gt;
|PackageID||Gets the numeric ID of the task package that will override the task&#039;s scheduling properties (0 &amp;amp;#61; no override).  &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|PerformTaskEvenIfItBringsSysDown||Indicates whether the task should be performed if bringing the item down causes the system to go down. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = True.&lt;br /&gt;
|-&lt;br /&gt;
|PerformTaskEvenIfItemAlreadyFailed||Indicates whether the task should be performed even if the item failed before the task was scheduled to occur. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = False.&lt;br /&gt;
|-&lt;br /&gt;
|Pools||Returns the list containing spare pool ID and the number of parts for each pool assigned for the task as a new list of [[PoolInfo|PoolInfo]] (.NET only). In case of duplicate entries (same pool ID), the latest entry takes preference.&lt;br /&gt;
|-&lt;br /&gt;
|ProjectID||Gets the numeric ID of the project the task belongs to. &#039;&#039;&#039;Integer&#039;&#039;&#039;. &lt;br /&gt;
|-&lt;br /&gt;
|PropInterval||Gets or sets the interval value that was initially proposed for the task (for reliability centered maintenance analysis). &#039;&#039;&#039;Variant&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|PropIntervalUnitID||Gets or sets numeric ID for the unit of measurement applied to the proposed interval. &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|RefDoc||Gets or sets the description for the reference document that provides more detailed information about the task (for reliability centered maintenance analysis). &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|ResFactorType||Gets or sets a value from the &#039;&#039;&#039;[[TaskRestorationTypeEnum Enumeration|TaskRestorationTypeEnum]]&#039;&#039;&#039; enumeration, which specifies the effect of the restoration. Default value = 1 (restores all accumulated damage).&lt;br /&gt;
|-&lt;br /&gt;
|ResFactorValue||Gets or sets the scheduled task&#039;s restoration amount. A value of 1 indicates an &amp;quot;as good as new&amp;quot; condition,&amp;quot; a value of 0 indicates an &amp;quot;as bad as old&amp;quot; condition. A value between 0 and 100 indicates partial restoration. &#039;&#039;&#039;Double&#039;&#039;&#039;. Default value = 1.&lt;br /&gt;
|-&lt;br /&gt;
|Status||Gets or sets the status of the task (for reliability centered maintenance analysis). &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|TaskAccess||Gets or sets the access that will be required in order to perform the task (typically for aircraft MSG-3 analyses). &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|TaskClass||Gets or set one of the values of the &#039;&#039;&#039;[[TaskClassEnum Enumeration|TaskClassEnum]]&#039;&#039;&#039;, which specifies the task&#039;s class (e.g., preventive task, inspection or on condition). Default value = 0 (preventive task).&lt;br /&gt;
|-&lt;br /&gt;
|TaskFrequencyID||Gets or sets a value from the &#039;&#039;&#039;[[TaskFrequencyEnum Enumeration|TaskFrequencyEnum]]&#039;&#039;&#039;, which specifies the frequency at which the task is performed. Default value = 5 (whenever system is down). &lt;br /&gt;
|-&lt;br /&gt;
|TaskFrequencyUnitID||Gets or sets the numeric ID of the unit of measurement of the intervals at which the task is performed.  &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|TaskFrequencyValue||Gets or sets the fixed interval at which the task is performed. &#039;&#039;&#039;Double&#039;&#039;&#039;. Default value = 1.&lt;br /&gt;
|-&lt;br /&gt;
|TaskFreqValueVariableID||Gets or sets the numeric ID of the variable that represents the fixed interval at which the task is performed.  &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|TaskTypeID||Gets or sets the numeric ID of the RCM++ or RBI task type (1 = the first task type defined in the repository). &#039;&#039;&#039;Integer&#039;&#039;&#039;. Default value = -1, which indicates no task type is available.&lt;br /&gt;
|-&lt;br /&gt;
|TaskZone||Gets or sets the zone of the system in which the task will be performed (aircraft MSG-3 analyses). &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|Teams||Returns the list containing teams assigned for the task (in the order of priority). &#039;&#039;&#039;List(Of [[TeamInfo Class|TeamInfo]])&#039;&#039;&#039;. (.NET Only)&lt;br /&gt;
|-&lt;br /&gt;
|UDD1||Gets or sets the text in the first user-defined drop-down field. Only applicable to RCM++. (Limited to 50 characters.) &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UDD2||Gets or sets the text in the second user-defined drop-down field. Only applicable to RCM++. (Limited to 50 characters.) &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UDT1||Gets or sets the date in the first user-defined date field. Only applicable to RCM++. &#039;&#039;&#039;Variant&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UDT2||Gets or sets the date in the second user-defined date field. Only applicable to RCM++. &#039;&#039;&#039;Variant&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UN1||Gets or sets the value in the first user-defined number field. Only applicable to RCM++. &#039;&#039;&#039;Variant&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UN2||Gets or sets the value in the second user-defined number field. Only applicable to RCM++. &#039;&#039;&#039;Variant&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UT1||Gets or sets the date in the first user-defined text field. Only applicable to RCM++ and RBI. &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UT2||Gets or sets the date in the second user-defined text field. Only applicable to RCM++ and RBI. &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UT3||Gets or sets the date in the third user-defined text field. Only applicable to RCM++ and RBI. &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UT4||Gets or sets the date in the fourth user-defined text field. Only applicable to RCM++ and RBI. &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UT5||Gets or sets the date in the fifth user-defined text field. Only applicable to RCM++ and RBI. &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
*[[Repository.Task.AddScheduledTask|Repository.Task.AddScheduledTask Method]]&lt;br /&gt;
*[[Repository.Task.GetAllScheduledTasks|Repository.Task.GetAllScheduledTasks Method]]&lt;br /&gt;
*[[Repository.Task.GetScheduledTask|Repository.Task.GetScheduledTask Method]]&lt;br /&gt;
*[[Repository.Task.UpdateScheduledTask|Repository.Task.UpdateScheduledTask Method]]&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=CScheduledTask_Class&amp;diff=65534</id>
		<title>CScheduledTask Class</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=CScheduledTask_Class&amp;diff=65534"/>
		<updated>2019-05-28T16:27:35Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: /* Properties */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:cScheduledTask Class}}{{Template:API}}{{Template:APIBreadcrumb}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;Represents a scheduled task resource. The task may be a preventive maintenance, inspection or on condition task.&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Constructors==&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;width: 240px;&amp;quot;|cScheduledTask||Creates an instance of the cSheduledTask class.&lt;br /&gt;
|-&lt;br /&gt;
|[[CScheduledTask_Constructors|cScheduledTask()]]||{{:CScheduledTask_Constructors}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Methods==&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;width: 240px;&amp;quot;|[[CScheduledTask.OnCondGetTeams_Method|OnCondGetTeams]]||{{:CScheduledTask.OnCondGetTeams_Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[CScheduledTask.OnCondSetTeams_Method|OnCondSetTeams]]||{{:CScheduledTask.OnCondSetTeams_Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[CScheduledTask.GetPools_Method|GetPools]]||{{:CScheduledTask.GetPools_Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[CScheduledTask.SetPools_Method|SetPools]]||{{:CScheduledTask.SetPools_Method}}&lt;br /&gt;
|- &lt;br /&gt;
|[[CScheduledTask.GetTeams_Method|GetTeams]]||{{:CScheduledTask.GetTeams_Method}}&lt;br /&gt;
|- &lt;br /&gt;
|[[CScheduledTask.SetTeams_Method|SetTeams]]||{{:CScheduledTask.SetTeams_Method}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Properties==&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|BringItemDown||Indicates whether the task brings the item down. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = True.&lt;br /&gt;
|-&lt;br /&gt;
|BringSystemDown||Indicates whether the task brings the system down. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = False.&lt;br /&gt;
|-&lt;br /&gt;
|Condition||Gets or sets a description of the condition that indicates that a failure will occur (for reliability centered maintenance analysis), such as a threshold for a measurement of wear, vibration, etc. &#039;&#039;&#039;String&#039;&#039;&#039;. &lt;br /&gt;
|-&lt;br /&gt;
|DurationModelID||Gets or sets the numeric ID of the model that represents the duration of the task. &#039;&#039;&#039;Integer&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|GroupIDs()||Gets an array containing the numeric IDs of the selected maintenance groups when the task is performed based on maintenance groups. (.NET only) &#039;&#039;&#039;Long&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|ID||Gets the numeric ID of the task. &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|Intervals()||Gets or sets an array containing the interval start values when the task is performed based on dynamic intervals. &#039;&#039;&#039;Double&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|{{Template:API_TxtIdentifiers}}&lt;br /&gt;
|-&lt;br /&gt;
|[[CScheduledTask.MaintenanceTriggers|MaintenanceTriggers]]||{{:CScheduledTask.MaintenanceTriggers}}&lt;br /&gt;
|-&lt;br /&gt;
|MiscCostModelID||Gets or sets the numeric ID of the model that represents the task&#039;s cost per task. Applies to preventive and inspection tasks.  &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|MiscCostPerTimeModelID||Gets or sets the numeric ID of the model that represents the task&#039;s downtime rate ($/Hr). Applies to preventive and inspection tasks.  &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|Name||Gets or sets the task&#039;s name. &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|OCMiscCostModelID||Gets or sets the numeric ID of the model that represents the task&#039;s cost per task. Applies to on condition tasks upon detection. &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|OCMiscCostPerTimeModelID||Gets or sets the numeric ID of the model that represents the task&#039;s downtime rate($/Hr). Applies to on condition tasks upon detection.&#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|OnCondBringItemDown||Indicates whether the task brings the item down. Applies to on condition tasks upon detection. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = True.  &lt;br /&gt;
|-&lt;br /&gt;
|OnCondBringSystemDown||Indicates whether the task brings the system down. Applies to on condition tasks upon detection. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = False. &lt;br /&gt;
|-&lt;br /&gt;
|OnCondDurationModelID||Gets or sets the numeric ID of the model that represents the duration of the task. Applies to on condition tasks upon detection. &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|OnCondFailureDetectionThreshold||Gets or sets the value for the task&#039;s failure detection threshold interval (0.9 &amp;amp;#61; 90% percent of life). &#039;&#039;&#039;Double&#039;&#039;&#039;. Default value = 0.9.&lt;br /&gt;
|-&lt;br /&gt;
|OnCondPFInterval||Gets or sets the value for the task&#039;s prior-to-failure (P-F) interval. &#039;&#039;&#039;Double&#039;&#039;&#039;. Default value = 100.&lt;br /&gt;
|-&lt;br /&gt;
|OnCondPFIntervalUnitID||Gets or sets the numeric ID of the unit of measurement applied to the P-F interval.  &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|OnCondResFactorValue||Gets or sets the on condition task&#039;s restoration amount. A value of 1 indicates an &amp;quot;as good as new&amp;quot; condition,&amp;quot; a value of 0 indicates an &amp;quot;as bad as old&amp;quot; condition. A value between 0 and 100 indicates partial restoration. &#039;&#039;&#039;Double&#039;&#039;&#039;. Default value = 1.&lt;br /&gt;
|-&lt;br /&gt;
|OnCondResFactorType||Gets or set a value from the &#039;&#039;&#039;[[TaskRestorationTypeEnum Enumeration|TaskRestorationTypeEnum]]&#039;&#039;&#039; enumeration, which specifies the effect of the restoration. Default value = 1 (restores all accumulated damage).&lt;br /&gt;
|-&lt;br /&gt;
|OnCondTeams||Returns a &#039;&#039;&#039;{{APIPrefix|List}}(Of [[TeamInfo Class|TeamInfo]])&#039;&#039;&#039; containing teams assigned for the &#039;On condition&#039; task (in the order of priority). (.NET Only)&lt;br /&gt;
|-&lt;br /&gt;
|OnCondUsePFInterval||Indicates whether the prior-to-failure (P-F) interval should be used to detect imminent failures. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. If true, specify a value for OnCondPFInterval; if false, specify a value for OnCondFailureDetectionThreshold. Default value = False.&lt;br /&gt;
|-&lt;br /&gt;
|PackageID||Gets the numeric ID of the task package that will override the task&#039;s scheduling properties (0 &amp;amp;#61; no override).  &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|PerformTaskEvenIfItBringsSysDown||Indicates whether the task should be performed if bringing the item down causes the system to go down. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = True.&lt;br /&gt;
|-&lt;br /&gt;
|PerformTaskEvenIfItemAlreadyFailed||Indicates whether the task should be performed even if the item failed before the task was scheduled to occur. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = False.&lt;br /&gt;
|-&lt;br /&gt;
|Pools||Returns the list containing spare pool ID and the number of parts for each pool assigned for the task as a new list of [[PoolInfo|PoolInfo]] (.NET only). In case of duplicate entries (same pool ID), the latest entry takes preference.&lt;br /&gt;
|-&lt;br /&gt;
|ProjectID||Gets the numeric ID of the project the task belongs to. &#039;&#039;&#039;Integer&#039;&#039;&#039;. &lt;br /&gt;
|-&lt;br /&gt;
|PropInterval||Gets or sets the interval value that was initially proposed for the task (for reliability centered maintenance analysis). &#039;&#039;&#039;Variant&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|PropIntervalUnitID||Gets or sets numeric ID for the unit of measurement applied to the proposed interval. &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|RefDoc||Gets or sets the description for the reference document that provides more detailed information about the task (for reliability centered maintenance analysis). &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|ResFactorType||Gets or sets a value from the &#039;&#039;&#039;[[TaskRestorationTypeEnum Enumeration|TaskRestorationTypeEnum]]&#039;&#039;&#039; enumeration, which specifies the effect of the restoration. Default value = 1 (restores all accumulated damage).&lt;br /&gt;
|-&lt;br /&gt;
|ResFactorValue||Gets or sets the scheduled task&#039;s restoration amount. A value of 1 indicates an &amp;quot;as good as new&amp;quot; condition,&amp;quot; a value of 0 indicates an &amp;quot;as bad as old&amp;quot; condition. A value between 0 and 100 indicates partial restoration. &#039;&#039;&#039;Double&#039;&#039;&#039;. Default value = 1.&lt;br /&gt;
|-&lt;br /&gt;
|Status||Gets or sets the status of the task (for reliability centered maintenance analysis). &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|TaskAccess||Gets or sets the access that will be required in order to perform the task (typically for aircraft MSG-3 analyses). &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|TaskClass||Gets or set one of the values of the &#039;&#039;&#039;[[TaskClassEnum Enumeration|TaskClassEnum]]&#039;&#039;&#039;, which specifies the task&#039;s class (e.g., preventive task, inspection or on condition). Default value = 0 (preventive task).&lt;br /&gt;
|-&lt;br /&gt;
|TaskFrequencyID||Gets or sets a value from the &#039;&#039;&#039;[[TaskFrequencyEnum Enumeration|TaskFrequencyEnum]]&#039;&#039;&#039;, which specifies the frequency at which the task is performed. Default value = 5 (whenever system is down). &lt;br /&gt;
|-&lt;br /&gt;
|TaskFrequencyUnitID||Gets or sets the numeric ID of the unit of measurement of the intervals at which the task is performed.  &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|TaskFrequencyValue||Gets or sets the fixed interval at which the task is performed. &#039;&#039;&#039;Double&#039;&#039;&#039;. Default value = 1.&lt;br /&gt;
|-&lt;br /&gt;
|TaskFreqValueVariableID||Gets or sets the numeric ID of the variable that represents the fixed interval at which the task is performed.  &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|TaskTypeID||Gets or sets the numeric ID of the RCM++ or RBI task type (1 = the first task type defined in the repository). &#039;&#039;&#039;Integer&#039;&#039;&#039;. Default value = -1, which indicates no task type is available.&lt;br /&gt;
|-&lt;br /&gt;
|TaskZone||Gets or sets the zone of the system in which the task will be performed (aircraft MSG-3 analyses). &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|Teams||Returns the list containing teams assigned for the task (in the order of priority). &#039;&#039;&#039;List(Of [[TeamInfo Class|TeamInfo]])&#039;&#039;&#039;. (.NET Only)&lt;br /&gt;
|-&lt;br /&gt;
|UDD1||Gets or sets the text in the first user-defined drop-down field. Only applicable to RCM++. (Limited to 50 characters.) &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UDD2||Gets or sets the text in the second user-defined drop-down field. Only applicable to RCM++. (Limited to 50 characters.) &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UDT1||Gets or sets the date in the first user-defined date field. Only applicable to RCM++. &#039;&#039;&#039;Variant&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UDT2||Gets or sets the date in the second user-defined date field. Only applicable to RCM++. &#039;&#039;&#039;Variant&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UN1||Gets or sets the value in the first user-defined number field. Only applicable to RCM++. &#039;&#039;&#039;Variant&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UN2||Gets or sets the value in the second user-defined number field. Only applicable to RCM++. &#039;&#039;&#039;Variant&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UT1||Gets or sets the date in the first user-defined text field. Only applicable to RCM++ and RBI. &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UT2||Gets or sets the date in the second user-defined text field. Only applicable to RCM++ and RBI. &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UT3||Gets or sets the date in the first user-defined text field. Only applicable to RCM++ and RBI. &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UT4||Gets or sets the date in the second user-defined text field. Only applicable to RCM++ and RBI. &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|UT5||Gets or sets the date in the second user-defined text field. Only applicable to RCM++ and RBI. &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
*[[Repository.Task.AddScheduledTask|Repository.Task.AddScheduledTask Method]]&lt;br /&gt;
*[[Repository.Task.GetAllScheduledTasks|Repository.Task.GetAllScheduledTasks Method]]&lt;br /&gt;
*[[Repository.Task.GetScheduledTask|Repository.Task.GetScheduledTask Method]]&lt;br /&gt;
*[[Repository.Task.UpdateScheduledTask|Repository.Task.UpdateScheduledTask Method]]&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=File:RgaA.3.png&amp;diff=65533</id>
		<title>File:RgaA.3.png</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=File:RgaA.3.png&amp;diff=65533"/>
		<updated>2019-05-22T22:22:05Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: uploaded a new version of &amp;quot;File:RgaA.3.png&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=File:RgaA.3.png&amp;diff=65532</id>
		<title>File:RgaA.3.png</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=File:RgaA.3.png&amp;diff=65532"/>
		<updated>2019-05-22T22:19:41Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: uploaded a new version of &amp;quot;File:RgaA.3.png&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=File:RgaA.2.png&amp;diff=65531</id>
		<title>File:RgaA.2.png</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=File:RgaA.2.png&amp;diff=65531"/>
		<updated>2019-05-22T22:17:00Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: uploaded a new version of &amp;quot;File:RgaA.2.png&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Failure_Discounting_Example&amp;diff=65530</id>
		<title>Failure Discounting Example</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Failure_Discounting_Example&amp;diff=65530"/>
		<updated>2019-05-22T22:16:25Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{Banner RGA Examples}}&lt;br /&gt;
&#039;&#039;This example appears in the article [[Failure Discounting]]&#039;&#039;.&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Assume that during the 22 launches given in the first table below, the first failure was caused by Mode 1, the second and fourth failures were caused by Mode 2, the third and fifth failures were caused by Mode 3, the sixth failure was caused by Mode 4 and the seventh failure was caused by Mode 5.&lt;br /&gt;
&lt;br /&gt;
#Find the standard Gompertz reliability growth curve using the results of the first 15 launches.&lt;br /&gt;
#Find the predicted reliability after launch 22.&lt;br /&gt;
#Calculate the reliability after launch 22 based on the full data set from the second table, and compare it with the estimate obtained for question 2.&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; style=&amp;quot;border-collapse: collapse;&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;5&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;10&amp;quot; style=&amp;quot;text-align:center&amp;quot;|&#039;&#039;&#039;Launch Sequence with Failure Modes and Failure Values&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
!Launch	Number	&lt;br /&gt;
!Result/Mode	&lt;br /&gt;
!Failure 1	&lt;br /&gt;
!Failure 2	&lt;br /&gt;
!Failure 3	&lt;br /&gt;
!Failure 4	&lt;br /&gt;
!Failure 5	&lt;br /&gt;
!Sum of Failures&lt;br /&gt;
|-&lt;br /&gt;
|1||	F1||	1.000||		|| ||	||	 ||	1.000&lt;br /&gt;
|-&lt;br /&gt;
|2||	F2||	1.000||	1.000	|| ||	||	 ||	2.000&lt;br /&gt;
|-&lt;br /&gt;
|3||	F3||	0.900||	1.000||	1.000||	||	 ||	2.900&lt;br /&gt;
|-&lt;br /&gt;
|4||	S||	0.684||	0.900||	1.000||	||	 ||	2.584&lt;br /&gt;
|-&lt;br /&gt;
|5||	F2||	0.536||	1.000||	0.900||	||	 ||	2.436&lt;br /&gt;
|-&lt;br /&gt;
|6||	F3||	0.438||	1.000||	1.000||	||	 ||	2.438&lt;br /&gt;
|-&lt;br /&gt;
|7||	S||	0.369||	0.900||	1.000||	||	 ||	2.269&lt;br /&gt;
|-&lt;br /&gt;
|8||	S||	0.319||	0.684||	0.900||	||       ||	1.902&lt;br /&gt;
|-&lt;br /&gt;
|9||	S||	0.280||	0.536||	0.684||	||	 ||	1.500&lt;br /&gt;
|-&lt;br /&gt;
|10||	S||	0.250||	0.438||	0.536||	||	 ||	1.224&lt;br /&gt;
|-&lt;br /&gt;
|11||	S||	0.226||	0.369||	0.438||	||	 ||	1.032&lt;br /&gt;
|-&lt;br /&gt;
|12||	S||	0.206||	0.319||	0.369|| ||	 ||	0.894&lt;br /&gt;
|-&lt;br /&gt;
|13||	S||	0.189||	0.280||	0.319||	||	 ||     0.788&lt;br /&gt;
|-&lt;br /&gt;
|14||	S||	0.175||	0.250||	0.280||	||	 ||	0.705&lt;br /&gt;
|-&lt;br /&gt;
|15||	S||	0.162||	0.226||	0.250||	||	 ||	0.638&lt;br /&gt;
|-&lt;br /&gt;
|16||	S||	0.152||	0.206||	0.226||	||       ||	0.584&lt;br /&gt;
|-&lt;br /&gt;
|17||	F4||	0.142||	0.189||	0.206||	1.000 || ||	1.537&lt;br /&gt;
|-&lt;br /&gt;
|18||	S||	0.134||	0.175||	0.189||	1.000 || ||	1.498&lt;br /&gt;
|-&lt;br /&gt;
|19||	F5||	0.127||	0.162||	0.175||	0.900 || 1.000 || 2.364&lt;br /&gt;
|-&lt;br /&gt;
|20||	S||	0.120||	0.152||	0.162||	0.684 || 1.000 || 2.118&lt;br /&gt;
|-&lt;br /&gt;
|21||	S||	0.114||	0.142||	0.152||	0.536 || 0.900 || 1.844&lt;br /&gt;
|-&lt;br /&gt;
|22||	S||	0.109||	0.134||	0.142||	0.438 || 0.684 || 1.507&lt;br /&gt;
|}&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; style=&amp;quot;border-collapse: collapse;&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;5&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|&#039;&#039;&#039;Comparison of the Predicted Reliability with the Actual Data&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
!Launch	Number&lt;br /&gt;
!Calculated Reliability (%)		&lt;br /&gt;
!ln(R)	&lt;br /&gt;
!Gompertz Reliability (%)&lt;br /&gt;
|-&lt;br /&gt;
|1||	0.000 || || &lt;br /&gt;
|-&lt;br /&gt;
|2||	0.000 || || 		&lt;br /&gt;
|-&lt;br /&gt;
|3||	3.333 || 1.204 ||	&lt;br /&gt;
|-&lt;br /&gt;
|4||	35.406 || 3.567 || 28.617&lt;br /&gt;
|-&lt;br /&gt;
|5||	51.283 || 3.937 || 45.883&lt;br /&gt;
|-&lt;br /&gt;
|6||	59.372 || 4.084 || 60.841&lt;br /&gt;
|-&lt;br /&gt;
|7||	67.585 || 4.213 || 72.017&lt;br /&gt;
|-&lt;br /&gt;
|8||	76.219 || 4.334 || 79.654&lt;br /&gt;
|-&lt;br /&gt;
|9||	83.334 || 4.423 || 84.600&lt;br /&gt;
|-&lt;br /&gt;
| ||	       || &amp;lt;math&amp;gt;{{S}_{1}}\,\!&amp;lt;/math&amp;gt; = 24.558 ||&lt;br /&gt;
|-&lt;br /&gt;
|10||	87.764 || 4.475	|| 87.701&lt;br /&gt;
|-&lt;br /&gt;
|11||	90.614 || 4.507	|| 89.609&lt;br /&gt;
|-&lt;br /&gt;
|12||	92.555 || 4.528	|| 90.769&lt;br /&gt;
|-&lt;br /&gt;
|13||	93.939 || 4.543 || 91.469&lt;br /&gt;
|-&lt;br /&gt;
|14||	94.964 || 4.553 || 91.891&lt;br /&gt;
|-&lt;br /&gt;
|15||	95.746 || 4.562 || 92.143&lt;br /&gt;
|-&lt;br /&gt;
|  ||          || &amp;lt;math&amp;gt;{{S}_{2}}\,\!&amp;lt;/math&amp;gt; = 27.167 ||	&lt;br /&gt;
|-&lt;br /&gt;
|16||	96.356 || 4.568 || 92.295&lt;br /&gt;
|-&lt;br /&gt;
|17||	90.960 || 4.510 || 92.385&lt;br /&gt;
|-&lt;br /&gt;
|18||	91.681 || 4.518	|| 92.439&lt;br /&gt;
|-&lt;br /&gt;
|19||	87.560 || 4.472 || 92.472&lt;br /&gt;
|-&lt;br /&gt;
|20||	89.411 || 4.493	|| 92.491&lt;br /&gt;
|-&lt;br /&gt;
|21||	91.219 || 4.513 || 92.503&lt;br /&gt;
|-&lt;br /&gt;
|  ||	       || &amp;lt;math&amp;gt;{{S}_{3}}\,\!&amp;lt;/math&amp;gt; = 27.076 ||	&lt;br /&gt;
|-&lt;br /&gt;
|22||	93.152	||4.534	|| 92.510&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Solution&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the table above, the failures are represented by columns &amp;quot;Failure 1&amp;quot;, &amp;quot;Failure 2&amp;quot;, etc. The &amp;quot;Result/Mode&amp;quot; column shows whether each launch is a failure (indicated by the failure modes F1, F2, etc.) or a success (S). The values of failure are based on &amp;lt;math&amp;gt;CL=0.90\,\!&amp;lt;/math&amp;gt; and are calculated from:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f=1-{{(1-CL)}^{\tfrac{1}{{{S}_{n}}}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
These values are summed and the reliability is calculated from: &lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;R=\left[ 1-\left( \frac{\mathop{}_{i=1}^{N}{{f}_{i}}}{n} \right) \right]\cdot 100\text{ }%\,\!&amp;lt;/math&amp;gt;		&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;N\,\!&amp;lt;/math&amp;gt; is the number of failures and &amp;lt;math&amp;gt;n\,\!&amp;lt;/math&amp;gt; is the number of events, tests, runs or launches.&lt;br /&gt;
&lt;br /&gt;
*Failure 1 is Mode 1; it occurs at launch 1 and it does not recur throughout the process. So at launch 3, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt;, and so on.&lt;br /&gt;
&lt;br /&gt;
*Failure 2 is Mode 2; it occurs at launch 2 and it recurs at launch 5. Therefore, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt; at launch 4 and at launch 7, and so on.&lt;br /&gt;
&lt;br /&gt;
*Failure 3 is Mode 3; it occurs at launch 3 and it recurs at launch 6. Therefore, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt; at launch 5 and at launch 8, and so on.&lt;br /&gt;
&lt;br /&gt;
*Failure 6 is Mode 4; it occurs at launch 17 and it does not recur throughout the process. So at launch 19, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt;, and so on.&lt;br /&gt;
&lt;br /&gt;
*Failure 7 is Mode 5; it occurs at launch 19 and it does not recur throughout the process. So at launch 21, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt;, and so on.&lt;br /&gt;
&lt;br /&gt;
For launch 3 and failure 1, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
{{f}_{1/3}}=1-{{(1-0.90)}^{1/1}}=0.900&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For launch 4 and failure 1, &amp;lt;math&amp;gt;{{S}_{n}}=2\,\!&amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
{{f}_{1/4}}=1-{{(1-0.90)}^{1/2}}=0.684&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And so on. &lt;br /&gt;
&lt;br /&gt;
Calculate the initial values of the Gompertz parameters using the second table above. Based on the equations from the [[Gompertz Models]] chapter, the initial values are: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
c &amp;amp;= \left ( \frac{S_{2}-S_{3}}{S_{2}-S_{1}} \right )^\frac{1}{n\cdot I} \\&lt;br /&gt;
&amp;amp;= \left [ \frac{27.167-27.076}{27.167-24.558} \right ]^\frac{1}{6} \\&lt;br /&gt;
&amp;amp;= 0.572 \\&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
a &amp;amp;= e^\left [\frac{1}{n}\left (S_{1} + \frac {S_{2}-S_{1}}{1-e^{n\cdot I}} \right )\right ] \\&lt;br /&gt;
&amp;amp;= e^\left [\frac{1}{6}\left (24.558 + \frac{27.167 - 24.558}{1-0.572^{6}}\right ) \right ] \\&lt;br /&gt;
&amp;amp;= 94.024% \\&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
b &amp;amp;= e^\left [\frac{(S_{2}-S_{1})(c-1)}{(1-c^{n})^{2}} \right ] \\&lt;br /&gt;
&amp;amp;= e^\left [\frac{(27.167-24.558)(0.572-1)}{(1-0.572^{6})^{2}} \right ] \\&lt;br /&gt;
&amp;amp;= 0.301 \\&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, since the initial values have been determined, the Gauss-Newton method can be used. Substituting &amp;lt;math&amp;gt;{{Y}_{i}}={{R}_{i}},\,\!&amp;lt;/math&amp;gt; &amp;lt;math&amp;gt;g_{1}^{(0)}=94.024,\,\!&amp;lt;/math&amp;gt; &amp;lt;math&amp;gt;g_{2}^{(0)}=0.301,\,\!&amp;lt;/math&amp;gt; &amp;lt;math&amp;gt;g_{3}^{(0)}=0.572\,\!&amp;lt;/math&amp;gt;. The iterations are continued to solve for the parameters. Using the RGA software, the estimators of the parameters for the given example are: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
   \widehat{a}&amp;amp;= 0.9252 \\ &lt;br /&gt;
  \widehat{b} &amp;amp;= 0.1404 \\ &lt;br /&gt;
  \widehat{c} &amp;amp;= 0.5977  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The next figure shows the entered data and the estimated parameters.&lt;br /&gt;
&lt;br /&gt;
[[Image:rgaA.1.png|center|600px]]&lt;br /&gt;
&lt;br /&gt;
The Gompertz reliability growth curve may now be written as follows where &amp;lt;math&amp;gt;{{L}_{G}}\,\!&amp;lt;/math&amp;gt; is the number of launches, with the first successful launch being counted as &amp;lt;math&amp;gt;{{L}_{G}}=1\,\!&amp;lt;/math&amp;gt;. Therefore, &amp;lt;math&amp;gt;{{L}_{G}}\,\!&amp;lt;/math&amp;gt; is equal to 19, since reliability growth starts with launch 4.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;R=0.9299{{(0.0943)}^{{{0.7170}^{{{L}_{G}}}}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;The predicted reliability after launch 22 is therefore:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
   R &amp;amp;= 0.9252{{(0.1404)}^{{{0.5977}^{19}}}} \\ &lt;br /&gt;
  &amp;amp;= 0.9251&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The predicted reliability after launch 22 is calculated using the Quick Calculation Pad (QCP), as shown next.&lt;br /&gt;
&lt;br /&gt;
[[Image:rgaA.2.png|center|450px]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the second table, the predicted reliability values are compared with the reliabilities that are calculated from the raw data using failure discounting. It can be seen in the table, and in the following figure, that the Gompertz curve appears to provide a good fit to the actual data.&lt;br /&gt;
&lt;br /&gt;
[[Image:rgaA.3.png|center|450px]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=File:RgaA.1.png&amp;diff=65529</id>
		<title>File:RgaA.1.png</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=File:RgaA.1.png&amp;diff=65529"/>
		<updated>2019-05-22T22:12:33Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: uploaded a new version of &amp;quot;File:RgaA.1.png&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Failure_Discounting_Example&amp;diff=65528</id>
		<title>Failure Discounting Example</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Failure_Discounting_Example&amp;diff=65528"/>
		<updated>2019-05-22T22:08:57Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{Banner RGA Examples}}&lt;br /&gt;
&#039;&#039;This example appears in the article [[Failure Discounting]]&#039;&#039;.&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Assume that during the 22 launches given in the first table below, the first failure was caused by Mode 1, the second and fourth failures were caused by Mode 2, the third and fifth failures were caused by Mode 3, the sixth failure was caused by Mode 4 and the seventh failure was caused by Mode 5.&lt;br /&gt;
&lt;br /&gt;
#Find the standard Gompertz reliability growth curve using the results of the first 15 launches.&lt;br /&gt;
#Find the predicted reliability after launch 22.&lt;br /&gt;
#Calculate the reliability after launch 22 based on the full data set from the second table, and compare it with the estimate obtained for question 2.&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; style=&amp;quot;border-collapse: collapse;&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;5&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;10&amp;quot; style=&amp;quot;text-align:center&amp;quot;|&#039;&#039;&#039;Launch Sequence with Failure Modes and Failure Values&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
!Launch	Number	&lt;br /&gt;
!Result/Mode	&lt;br /&gt;
!Failure 1	&lt;br /&gt;
!Failure 2	&lt;br /&gt;
!Failure 3	&lt;br /&gt;
!Failure 4	&lt;br /&gt;
!Failure 5	&lt;br /&gt;
!Sum of Failures&lt;br /&gt;
|-&lt;br /&gt;
|1||	F1||	1.000||		|| ||	||	 ||	1.000&lt;br /&gt;
|-&lt;br /&gt;
|2||	F2||	1.000||	1.000	|| ||	||	 ||	2.000&lt;br /&gt;
|-&lt;br /&gt;
|3||	F3||	0.900||	1.000||	1.000||	||	 ||	2.900&lt;br /&gt;
|-&lt;br /&gt;
|4||	S||	0.684||	0.900||	1.000||	||	 ||	2.584&lt;br /&gt;
|-&lt;br /&gt;
|5||	F2||	0.536||	1.000||	0.900||	||	 ||	2.436&lt;br /&gt;
|-&lt;br /&gt;
|6||	F3||	0.438||	1.000||	1.000||	||	 ||	2.438&lt;br /&gt;
|-&lt;br /&gt;
|7||	S||	0.369||	0.900||	1.000||	||	 ||	2.269&lt;br /&gt;
|-&lt;br /&gt;
|8||	S||	0.319||	0.684||	0.900||	||       ||	1.902&lt;br /&gt;
|-&lt;br /&gt;
|9||	S||	0.280||	0.536||	0.684||	||	 ||	1.500&lt;br /&gt;
|-&lt;br /&gt;
|10||	S||	0.250||	0.438||	0.536||	||	 ||	1.224&lt;br /&gt;
|-&lt;br /&gt;
|11||	S||	0.226||	0.369||	0.438||	||	 ||	1.032&lt;br /&gt;
|-&lt;br /&gt;
|12||	S||	0.206||	0.319||	0.369|| ||	 ||	0.894&lt;br /&gt;
|-&lt;br /&gt;
|13||	S||	0.189||	0.280||	0.319||	||	 ||     0.788&lt;br /&gt;
|-&lt;br /&gt;
|14||	S||	0.175||	0.250||	0.280||	||	 ||	0.705&lt;br /&gt;
|-&lt;br /&gt;
|15||	S||	0.162||	0.226||	0.250||	||	 ||	0.638&lt;br /&gt;
|-&lt;br /&gt;
|16||	S||	0.152||	0.206||	0.226||	||       ||	0.584&lt;br /&gt;
|-&lt;br /&gt;
|17||	F4||	0.142||	0.189||	0.206||	1.000 || ||	1.537&lt;br /&gt;
|-&lt;br /&gt;
|18||	S||	0.134||	0.175||	0.189||	1.000 || ||	1.498&lt;br /&gt;
|-&lt;br /&gt;
|19||	F5||	0.127||	0.162||	0.175||	0.900 || 1.000 || 2.364&lt;br /&gt;
|-&lt;br /&gt;
|20||	S||	0.120||	0.152||	0.162||	0.684 || 1.000 || 2.118&lt;br /&gt;
|-&lt;br /&gt;
|21||	S||	0.114||	0.142||	0.152||	0.536 || 0.900 || 1.844&lt;br /&gt;
|-&lt;br /&gt;
|22||	S||	0.109||	0.134||	0.142||	0.438 || 0.684 || 1.507&lt;br /&gt;
|}&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; style=&amp;quot;border-collapse: collapse;&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;5&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|&#039;&#039;&#039;Comparison of the Predicted Reliability with the Actual Data&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
!Launch	Number&lt;br /&gt;
!Calculated Reliability (%)		&lt;br /&gt;
!ln(R)	&lt;br /&gt;
!Gompertz Reliability (%)&lt;br /&gt;
|-&lt;br /&gt;
|1||	0.000 || || &lt;br /&gt;
|-&lt;br /&gt;
|2||	0.000 || || 		&lt;br /&gt;
|-&lt;br /&gt;
|3||	3.333 || 1.204 ||	&lt;br /&gt;
|-&lt;br /&gt;
|4||	35.406 || 3.567 || 28.617&lt;br /&gt;
|-&lt;br /&gt;
|5||	51.283 || 3.937 || 45.883&lt;br /&gt;
|-&lt;br /&gt;
|6||	59.372 || 4.084 || 60.841&lt;br /&gt;
|-&lt;br /&gt;
|7||	67.585 || 4.213 || 72.017&lt;br /&gt;
|-&lt;br /&gt;
|8||	76.219 || 4.334 || 79.654&lt;br /&gt;
|-&lt;br /&gt;
|9||	83.334 || 4.423 || 84.600&lt;br /&gt;
|-&lt;br /&gt;
| ||	       || &amp;lt;math&amp;gt;{{S}_{1}}\,\!&amp;lt;/math&amp;gt; = 24.558 ||&lt;br /&gt;
|-&lt;br /&gt;
|10||	87.764 || 4.475	|| 87.701&lt;br /&gt;
|-&lt;br /&gt;
|11||	90.614 || 4.507	|| 89.609&lt;br /&gt;
|-&lt;br /&gt;
|12||	92.555 || 4.528	|| 90.769&lt;br /&gt;
|-&lt;br /&gt;
|13||	93.939 || 4.543 || 91.469&lt;br /&gt;
|-&lt;br /&gt;
|14||	94.964 || 4.553 || 91.891&lt;br /&gt;
|-&lt;br /&gt;
|15||	95.746 || 4.562 || 92.143&lt;br /&gt;
|-&lt;br /&gt;
|  ||          || &amp;lt;math&amp;gt;{{S}_{2}}\,\!&amp;lt;/math&amp;gt; = 27.167 ||	&lt;br /&gt;
|-&lt;br /&gt;
|16||	96.356 || 4.568 || 92.295&lt;br /&gt;
|-&lt;br /&gt;
|17||	90.960 || 4.510 || 92.385&lt;br /&gt;
|-&lt;br /&gt;
|18||	91.681 || 4.518	|| 92.439&lt;br /&gt;
|-&lt;br /&gt;
|19||	87.560 || 4.472 || 92.472&lt;br /&gt;
|-&lt;br /&gt;
|20||	89.411 || 4.493	|| 92.491&lt;br /&gt;
|-&lt;br /&gt;
|21||	91.219 || 4.513 || 92.503&lt;br /&gt;
|-&lt;br /&gt;
|  ||	       || &amp;lt;math&amp;gt;{{S}_{3}}\,\!&amp;lt;/math&amp;gt; = 27.076 ||	&lt;br /&gt;
|-&lt;br /&gt;
|22||	93.152	||4.534	|| 92.510&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Solution&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the table above, the failures are represented by columns &amp;quot;Failure 1&amp;quot;, &amp;quot;Failure 2&amp;quot;, etc. The &amp;quot;Result/Mode&amp;quot; column shows whether each launch is a failure (indicated by the failure modes F1, F2, etc.) or a success (S). The values of failure are based on &amp;lt;math&amp;gt;CL=0.90\,\!&amp;lt;/math&amp;gt; and are calculated from:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f=1-{{(1-CL)}^{\tfrac{1}{{{S}_{n}}}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
These values are summed and the reliability is calculated from: &lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;R=\left[ 1-\left( \frac{\mathop{}_{i=1}^{N}{{f}_{i}}}{n} \right) \right]\cdot 100\text{ }%\,\!&amp;lt;/math&amp;gt;		&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;N\,\!&amp;lt;/math&amp;gt; is the number of failures and &amp;lt;math&amp;gt;n\,\!&amp;lt;/math&amp;gt; is the number of events, tests, runs or launches.&lt;br /&gt;
&lt;br /&gt;
*Failure 1 is Mode 1; it occurs at launch 1 and it does not recur throughout the process. So at launch 3, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt;, and so on.&lt;br /&gt;
&lt;br /&gt;
*Failure 2 is Mode 2; it occurs at launch 2 and it recurs at launch 5. Therefore, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt; at launch 4 and at launch 7, and so on.&lt;br /&gt;
&lt;br /&gt;
*Failure 3 is Mode 3; it occurs at launch 3 and it recurs at launch 6. Therefore, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt; at launch 5 and at launch 8, and so on.&lt;br /&gt;
&lt;br /&gt;
*Failure 6 is Mode 4; it occurs at launch 17 and it does not recur throughout the process. So at launch 19, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt;, and so on.&lt;br /&gt;
&lt;br /&gt;
*Failure 7 is Mode 5; it occurs at launch 19 and it does not recur throughout the process. So at launch 21, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt;, and so on.&lt;br /&gt;
&lt;br /&gt;
For launch 3 and failure 1, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
{{f}_{1/3}}=1-{{(1-0.90)}^{1/1}}=0.900&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For launch 4 and failure 1, &amp;lt;math&amp;gt;{{S}_{n}}=2\,\!&amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
{{f}_{1/4}}=1-{{(1-0.90)}^{1/2}}=0.684&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And so on. &lt;br /&gt;
&lt;br /&gt;
Calculate the initial values of the Gompertz parameters using the second table above. Based on the equations from the [[Gompertz Models]] chapter, the initial values are: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
c &amp;amp;= \left ( \frac{S_{2}-S_{3}}{S_{2}-S_{1}} \right )^\frac{1}{n\cdot I} \\&lt;br /&gt;
&amp;amp;= \left [ \frac{27.167-27.076}{27.167-24.558} \right ]^\frac{1}{6} \\&lt;br /&gt;
&amp;amp;= 0.572 \\&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
a &amp;amp;= e^\left [\frac{1}{n}\left (S_{1} + \frac {S_{2}-S_{1}}{1-e^{n\cdot I}} \right )\right ] \\&lt;br /&gt;
&amp;amp;= e^\left [\frac{1}{6}\left (24.558 + \frac{27.167 - 24.558}{1-0.572^{6}}\right ) \right ] \\&lt;br /&gt;
&amp;amp;= 94.024% \\&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
b &amp;amp;= e^\left [\frac{(S_{2}-S_{1})(c-1)}{(1-c^{n})^{2}} \right ] \\&lt;br /&gt;
&amp;amp;= e^\left [\frac{(27.167-24.558)(0.572-1)}{(1-0.572^{6})^{2}} \right ] \\&lt;br /&gt;
&amp;amp;= 0.301 \\&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, since the initial values have been determined, the Gauss-Newton method can be used. Substituting &amp;lt;math&amp;gt;{{Y}_{i}}={{R}_{i}},\,\!&amp;lt;/math&amp;gt; &amp;lt;math&amp;gt;g_{1}^{(0)}=94.024,\,\!&amp;lt;/math&amp;gt; &amp;lt;math&amp;gt;g_{2}^{(0)}=0.301,\,\!&amp;lt;/math&amp;gt; &amp;lt;math&amp;gt;g_{3}^{(0)}=0.572\,\!&amp;lt;/math&amp;gt;. The iterations are continued to solve for the parameters. Using the RGA software, the estimators of the parameters for the given example are: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
   \widehat{a}&amp;amp;= 0.9252 \\ &lt;br /&gt;
  \widehat{b} &amp;amp;= 0.1404 \\ &lt;br /&gt;
  \widehat{c} &amp;amp;= 0.5977  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The next figure shows the entered data and the estimated parameters.&lt;br /&gt;
&lt;br /&gt;
[[Image:rgaA.1.png|center|600px]]&lt;br /&gt;
&lt;br /&gt;
The Gompertz reliability growth curve may now be written as follows where &amp;lt;math&amp;gt;{{L}_{G}}\,\!&amp;lt;/math&amp;gt; is the number of launches, with the first successful launch being counted as &amp;lt;math&amp;gt;{{L}_{G}}=1\,\!&amp;lt;/math&amp;gt;. Therefore, &amp;lt;math&amp;gt;{{L}_{G}}\,\!&amp;lt;/math&amp;gt; is equal to 19, since reliability growth starts with launch 4.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;R=0.9299{{(0.0943)}^{{{0.7170}^{{{L}_{G}}}}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;The predicted reliability after launch 22 is therefore:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
   R &amp;amp;= 0.9299{{(0.0943)}^{{{0.7170}^{19}}}} \\ &lt;br /&gt;
  &amp;amp;= 0.9260  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The predicted reliability after launch 22 is calculated using the Quick Calculation Pad (QCP), as shown next.&lt;br /&gt;
&lt;br /&gt;
[[Image:rgaA.2.png|center|450px]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the second table, the predicted reliability values are compared with the reliabilities that are calculated from the raw data using failure discounting. It can be seen in the table, and in the following figure, that the Gompertz curve appears to provide a good fit to the actual data.&lt;br /&gt;
&lt;br /&gt;
[[Image:rgaA.3.png|center|450px]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Failure_Discounting_Example&amp;diff=65527</id>
		<title>Failure Discounting Example</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Failure_Discounting_Example&amp;diff=65527"/>
		<updated>2019-05-22T22:07:29Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{Banner RGA Examples}}&lt;br /&gt;
&#039;&#039;This example appears in the article [[Failure Discounting]]&#039;&#039;.&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Assume that during the 22 launches given in the first table below, the first failure was caused by Mode 1, the second and fourth failures were caused by Mode 2, the third and fifth failures were caused by Mode 3, the sixth failure was caused by Mode 4 and the seventh failure was caused by Mode 5.&lt;br /&gt;
&lt;br /&gt;
#Find the standard Gompertz reliability growth curve using the results of the first 15 launches.&lt;br /&gt;
#Find the predicted reliability after launch 22.&lt;br /&gt;
#Calculate the reliability after launch 22 based on the full data set from the second table, and compare it with the estimate obtained for question 2.&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; style=&amp;quot;border-collapse: collapse;&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;5&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;10&amp;quot; style=&amp;quot;text-align:center&amp;quot;|&#039;&#039;&#039;Launch Sequence with Failure Modes and Failure Values&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
!Launch	Number	&lt;br /&gt;
!Result/Mode	&lt;br /&gt;
!Failure 1	&lt;br /&gt;
!Failure 2	&lt;br /&gt;
!Failure 3	&lt;br /&gt;
!Failure 4	&lt;br /&gt;
!Failure 5	&lt;br /&gt;
!Sum of Failures&lt;br /&gt;
|-&lt;br /&gt;
|1||	F1||	1.000||		|| ||	||	 ||	1.000&lt;br /&gt;
|-&lt;br /&gt;
|2||	F2||	1.000||	1.000	|| ||	||	 ||	2.000&lt;br /&gt;
|-&lt;br /&gt;
|3||	F3||	0.900||	1.000||	1.000||	||	 ||	2.900&lt;br /&gt;
|-&lt;br /&gt;
|4||	S||	0.684||	0.900||	1.000||	||	 ||	2.584&lt;br /&gt;
|-&lt;br /&gt;
|5||	F2||	0.536||	1.000||	0.900||	||	 ||	2.436&lt;br /&gt;
|-&lt;br /&gt;
|6||	F3||	0.438||	1.000||	1.000||	||	 ||	2.438&lt;br /&gt;
|-&lt;br /&gt;
|7||	S||	0.369||	0.900||	1.000||	||	 ||	2.269&lt;br /&gt;
|-&lt;br /&gt;
|8||	S||	0.319||	0.684||	0.900||	||       ||	1.902&lt;br /&gt;
|-&lt;br /&gt;
|9||	S||	0.280||	0.536||	0.684||	||	 ||	1.500&lt;br /&gt;
|-&lt;br /&gt;
|10||	S||	0.250||	0.438||	0.536||	||	 ||	1.224&lt;br /&gt;
|-&lt;br /&gt;
|11||	S||	0.226||	0.369||	0.438||	||	 ||	1.032&lt;br /&gt;
|-&lt;br /&gt;
|12||	S||	0.206||	0.319||	0.369|| ||	 ||	0.894&lt;br /&gt;
|-&lt;br /&gt;
|13||	S||	0.189||	0.280||	0.319||	||	 ||     0.788&lt;br /&gt;
|-&lt;br /&gt;
|14||	S||	0.175||	0.250||	0.280||	||	 ||	0.705&lt;br /&gt;
|-&lt;br /&gt;
|15||	S||	0.162||	0.226||	0.250||	||	 ||	0.638&lt;br /&gt;
|-&lt;br /&gt;
|16||	S||	0.152||	0.206||	0.226||	||       ||	0.584&lt;br /&gt;
|-&lt;br /&gt;
|17||	F4||	0.142||	0.189||	0.206||	1.000 || ||	1.537&lt;br /&gt;
|-&lt;br /&gt;
|18||	S||	0.134||	0.175||	0.189||	1.000 || ||	1.498&lt;br /&gt;
|-&lt;br /&gt;
|19||	F5||	0.127||	0.162||	0.175||	0.900 || 1.000 || 2.364&lt;br /&gt;
|-&lt;br /&gt;
|20||	S||	0.120||	0.152||	0.162||	0.684 || 1.000 || 2.118&lt;br /&gt;
|-&lt;br /&gt;
|21||	S||	0.114||	0.142||	0.152||	0.536 || 0.900 || 1.844&lt;br /&gt;
|-&lt;br /&gt;
|22||	S||	0.109||	0.134||	0.142||	0.438 || 0.684 || 1.507&lt;br /&gt;
|}&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; style=&amp;quot;border-collapse: collapse;&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;5&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|&#039;&#039;&#039;Comparison of the Predicted Reliability with the Actual Data&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
!Launch	Number&lt;br /&gt;
!Calculated Reliability (%)		&lt;br /&gt;
!ln(R)	&lt;br /&gt;
!Gompertz Reliability (%)&lt;br /&gt;
|-&lt;br /&gt;
|1||	0.000 || || &lt;br /&gt;
|-&lt;br /&gt;
|2||	0.000 || || 		&lt;br /&gt;
|-&lt;br /&gt;
|3||	3.333 || 1.204 ||	&lt;br /&gt;
|-&lt;br /&gt;
|4||	35.406 || 3.567 || 28.617&lt;br /&gt;
|-&lt;br /&gt;
|5||	51.283 || 3.937 || 45.883&lt;br /&gt;
|-&lt;br /&gt;
|6||	59.372 || 4.084 || 60.841&lt;br /&gt;
|-&lt;br /&gt;
|7||	67.585 || 4.213 || 72.017&lt;br /&gt;
|-&lt;br /&gt;
|8||	76.219 || 4.334 || 79.654&lt;br /&gt;
|-&lt;br /&gt;
|9||	83.334 || 4.423 || 84.600&lt;br /&gt;
|-&lt;br /&gt;
| ||	       || &amp;lt;math&amp;gt;{{S}_{1}}\,\!&amp;lt;/math&amp;gt; = 24.558 ||&lt;br /&gt;
|-&lt;br /&gt;
|10||	87.764 || 4.475	|| 87.701&lt;br /&gt;
|-&lt;br /&gt;
|11||	90.614 || 4.507	|| 89.609&lt;br /&gt;
|-&lt;br /&gt;
|12||	92.555 || 4.528	|| 90.769&lt;br /&gt;
|-&lt;br /&gt;
|13||	93.939 || 4.543 || 91.469&lt;br /&gt;
|-&lt;br /&gt;
|14||	94.964 || 4.553 || 91.891&lt;br /&gt;
|-&lt;br /&gt;
|15||	95.746 || 4.562 || 92.143&lt;br /&gt;
|-&lt;br /&gt;
|  ||          || &amp;lt;math&amp;gt;{{S}_{2}}\,\!&amp;lt;/math&amp;gt; = 27.167 ||	&lt;br /&gt;
|-&lt;br /&gt;
|16||	96.356 || 4.568 || 92.295&lt;br /&gt;
|-&lt;br /&gt;
|17||	90.960 || 4.510 || 92.385&lt;br /&gt;
|-&lt;br /&gt;
|18||	91.681 || 4.518	|| 92.439&lt;br /&gt;
|-&lt;br /&gt;
|19||	87.560 || 4.472 || 92.472&lt;br /&gt;
|-&lt;br /&gt;
|20||	89.411 || 4.493	|| 92.491&lt;br /&gt;
|-&lt;br /&gt;
|21||	91.219 || 4.513 || 92.503&lt;br /&gt;
|-&lt;br /&gt;
|  ||	       || &amp;lt;math&amp;gt;{{S}_{3}}\,\!&amp;lt;/math&amp;gt; = 27.076 ||	&lt;br /&gt;
|-&lt;br /&gt;
|22||	93.152	||4.534	|| 92.510&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Solution&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the table above, the failures are represented by columns &amp;quot;Failure 1&amp;quot;, &amp;quot;Failure 2&amp;quot;, etc. The &amp;quot;Result/Mode&amp;quot; column shows whether each launch is a failure (indicated by the failure modes F1, F2, etc.) or a success (S). The values of failure are based on &amp;lt;math&amp;gt;CL=0.90\,\!&amp;lt;/math&amp;gt; and are calculated from:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f=1-{{(1-CL)}^{\tfrac{1}{{{S}_{n}}}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
These values are summed and the reliability is calculated from: &lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;R=\left[ 1-\left( \frac{\mathop{}_{i=1}^{N}{{f}_{i}}}{n} \right) \right]\cdot 100\text{ }%\,\!&amp;lt;/math&amp;gt;		&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;N\,\!&amp;lt;/math&amp;gt; is the number of failures and &amp;lt;math&amp;gt;n\,\!&amp;lt;/math&amp;gt; is the number of events, tests, runs or launches.&lt;br /&gt;
&lt;br /&gt;
*Failure 1 is Mode 1; it occurs at launch 1 and it does not recur throughout the process. So at launch 3, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt;, and so on.&lt;br /&gt;
&lt;br /&gt;
*Failure 2 is Mode 2; it occurs at launch 2 and it recurs at launch 5. Therefore, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt; at launch 4 and at launch 7, and so on.&lt;br /&gt;
&lt;br /&gt;
*Failure 3 is Mode 3; it occurs at launch 3 and it recurs at launch 6. Therefore, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt; at launch 5 and at launch 8, and so on.&lt;br /&gt;
&lt;br /&gt;
*Failure 6 is Mode 4; it occurs at launch 17 and it does not recur throughout the process. So at launch 19, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt;, and so on.&lt;br /&gt;
&lt;br /&gt;
*Failure 7 is Mode 5; it occurs at launch 19 and it does not recur throughout the process. So at launch 21, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt;, and so on.&lt;br /&gt;
&lt;br /&gt;
For launch 3 and failure 1, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
{{f}_{1/3}}=1-{{(1-0.90)}^{1/1}}=0.900&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For launch 4 and failure 1, &amp;lt;math&amp;gt;{{S}_{n}}=2\,\!&amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
{{f}_{1/4}}=1-{{(1-0.90)}^{1/2}}=0.684&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And so on. &lt;br /&gt;
&lt;br /&gt;
Calculate the initial values of the Gompertz parameters using the second table above. Based on the equations from the [[Gompertz Models]] chapter, the initial values are: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
c &amp;amp;= \left ( \frac{S_{2}-S_{3}}{S_{2}-S_{1}} \right )^\frac{1}{n\cdot I} \\&lt;br /&gt;
&amp;amp;= \left [ \frac{27.167-27.076}{27.167-24.558} \right ]^\frac{1}{6} \\&lt;br /&gt;
&amp;amp;= 0.572 \\&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
a &amp;amp;= e^\left [\frac{1}{n}\left (S_{1} + \frac {S_{2}-S_{1}}{1-e^{n\cdot I}} \right )\right ] \\&lt;br /&gt;
&amp;amp;= e^\left [\frac{1}{6}\left (24.558 + \frac{27.167 - 24.558}{1-0.572^{6}}\right ) \right ] \\&lt;br /&gt;
&amp;amp;= 94.024% \\&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
b &amp;amp;= e^\left [\frac{(S_{2}-S_{1})(c-1)}{(1-c^{n})^{2}} \right ] \\&lt;br /&gt;
&amp;amp;= e^\left [\frac{(27.167-24.558)(0.572-1)}{(1-0.572^{6})^{2}} \right ] \\&lt;br /&gt;
&amp;amp;= 0.301 \\&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, since the initial values have been determined, the Gauss-Newton method can be used. Substituting &amp;lt;math&amp;gt;{{Y}_{i}}={{R}_{i}},\,\!&amp;lt;/math&amp;gt; &amp;lt;math&amp;gt;g_{1}^{(0)}=89.31,\,\!&amp;lt;/math&amp;gt; &amp;lt;math&amp;gt;g_{2}^{(0)}=0.127,\,\!&amp;lt;/math&amp;gt; &amp;lt;math&amp;gt;g_{3}^{(0)}=0.578\,\!&amp;lt;/math&amp;gt;. The iterations are continued to solve for the parameters. Using the RGA software, the estimators of the parameters for the given example are: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
   \widehat{a}&amp;amp;= 0.9299 \\ &lt;br /&gt;
  \widehat{b} &amp;amp;= 0.0943 \\ &lt;br /&gt;
  \widehat{c} &amp;amp;= 0.7170  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The next figure shows the entered data and the estimated parameters.&lt;br /&gt;
&lt;br /&gt;
[[Image:rgaA.1.png|center|600px]]&lt;br /&gt;
&lt;br /&gt;
The Gompertz reliability growth curve may now be written as follows where &amp;lt;math&amp;gt;{{L}_{G}}\,\!&amp;lt;/math&amp;gt; is the number of launches, with the first successful launch being counted as &amp;lt;math&amp;gt;{{L}_{G}}=1\,\!&amp;lt;/math&amp;gt;. Therefore, &amp;lt;math&amp;gt;{{L}_{G}}\,\!&amp;lt;/math&amp;gt; is equal to 19, since reliability growth starts with launch 4.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;R=0.9299{{(0.0943)}^{{{0.7170}^{{{L}_{G}}}}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;The predicted reliability after launch 22 is therefore:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
   R &amp;amp;= 0.9299{{(0.0943)}^{{{0.7170}^{19}}}} \\ &lt;br /&gt;
  &amp;amp;= 0.9260  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The predicted reliability after launch 22 is calculated using the Quick Calculation Pad (QCP), as shown next.&lt;br /&gt;
&lt;br /&gt;
[[Image:rgaA.2.png|center|450px]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the second table, the predicted reliability values are compared with the reliabilities that are calculated from the raw data using failure discounting. It can be seen in the table, and in the following figure, that the Gompertz curve appears to provide a good fit to the actual data.&lt;br /&gt;
&lt;br /&gt;
[[Image:rgaA.3.png|center|450px]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Failure_Discounting_Example&amp;diff=65526</id>
		<title>Failure Discounting Example</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Failure_Discounting_Example&amp;diff=65526"/>
		<updated>2019-05-22T21:54:41Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{Banner RGA Examples}}&lt;br /&gt;
&#039;&#039;This example appears in the article [[Failure Discounting]]&#039;&#039;.&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Assume that during the 22 launches given in the first table below, the first failure was caused by Mode 1, the second and fourth failures were caused by Mode 2, the third and fifth failures were caused by Mode 3, the sixth failure was caused by Mode 4 and the seventh failure was caused by Mode 5.&lt;br /&gt;
&lt;br /&gt;
#Find the standard Gompertz reliability growth curve using the results of the first 15 launches.&lt;br /&gt;
#Find the predicted reliability after launch 22.&lt;br /&gt;
#Calculate the reliability after launch 22 based on the full data set from the second table, and compare it with the estimate obtained for question 2.&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; style=&amp;quot;border-collapse: collapse;&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;5&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;10&amp;quot; style=&amp;quot;text-align:center&amp;quot;|&#039;&#039;&#039;Launch Sequence with Failure Modes and Failure Values&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
!Launch	Number	&lt;br /&gt;
!Result/Mode	&lt;br /&gt;
!Failure 1	&lt;br /&gt;
!Failure 2	&lt;br /&gt;
!Failure 3	&lt;br /&gt;
!Failure 4	&lt;br /&gt;
!Failure 5	&lt;br /&gt;
!Sum of Failures&lt;br /&gt;
|-&lt;br /&gt;
|1||	F1||	1.000||		|| ||	||	 ||	1.000&lt;br /&gt;
|-&lt;br /&gt;
|2||	F2||	1.000||	1.000	|| ||	||	 ||	2.000&lt;br /&gt;
|-&lt;br /&gt;
|3||	F3||	0.900||	1.000||	1.000||	||	 ||	2.900&lt;br /&gt;
|-&lt;br /&gt;
|4||	S||	0.684||	0.900||	1.000||	||	 ||	2.584&lt;br /&gt;
|-&lt;br /&gt;
|5||	F2||	0.536||	1.000||	0.900||	||	 ||	2.436&lt;br /&gt;
|-&lt;br /&gt;
|6||	F3||	0.438||	1.000||	1.000||	||	 ||	2.438&lt;br /&gt;
|-&lt;br /&gt;
|7||	S||	0.369||	0.900||	1.000||	||	 ||	2.269&lt;br /&gt;
|-&lt;br /&gt;
|8||	S||	0.319||	0.684||	0.900||	||       ||	1.902&lt;br /&gt;
|-&lt;br /&gt;
|9||	S||	0.280||	0.536||	0.684||	||	 ||	1.500&lt;br /&gt;
|-&lt;br /&gt;
|10||	S||	0.250||	0.438||	0.536||	||	 ||	1.224&lt;br /&gt;
|-&lt;br /&gt;
|11||	S||	0.226||	0.369||	0.438||	||	 ||	1.032&lt;br /&gt;
|-&lt;br /&gt;
|12||	S||	0.206||	0.319||	0.369|| ||	 ||	0.894&lt;br /&gt;
|-&lt;br /&gt;
|13||	S||	0.189||	0.280||	0.319||	||	 ||     0.788&lt;br /&gt;
|-&lt;br /&gt;
|14||	S||	0.175||	0.250||	0.280||	||	 ||	0.705&lt;br /&gt;
|-&lt;br /&gt;
|15||	S||	0.162||	0.226||	0.250||	||	 ||	0.638&lt;br /&gt;
|-&lt;br /&gt;
|16||	S||	0.152||	0.206||	0.226||	||       ||	0.584&lt;br /&gt;
|-&lt;br /&gt;
|17||	F4||	0.142||	0.189||	0.206||	1.000 || ||	1.537&lt;br /&gt;
|-&lt;br /&gt;
|18||	S||	0.134||	0.175||	0.189||	1.000 || ||	1.498&lt;br /&gt;
|-&lt;br /&gt;
|19||	F5||	0.127||	0.162||	0.175||	0.900 || 1.000 || 2.364&lt;br /&gt;
|-&lt;br /&gt;
|20||	S||	0.120||	0.152||	0.162||	0.684 || 1.000 || 2.118&lt;br /&gt;
|-&lt;br /&gt;
|21||	S||	0.114||	0.142||	0.152||	0.536 || 0.900 || 1.844&lt;br /&gt;
|-&lt;br /&gt;
|22||	S||	0.109||	0.134||	0.142||	0.438 || 0.684 || 1.507&lt;br /&gt;
|}&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; style=&amp;quot;border-collapse: collapse;&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;5&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|&#039;&#039;&#039;Comparison of the Predicted Reliability with the Actual Data&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
!Launch	Number&lt;br /&gt;
!Calculated Reliability (%)		&lt;br /&gt;
!ln(R)	&lt;br /&gt;
!Gompertz Reliability (%)&lt;br /&gt;
|-&lt;br /&gt;
|1||	0.000 || || &lt;br /&gt;
|-&lt;br /&gt;
|2||	0.000 || || 		&lt;br /&gt;
|-&lt;br /&gt;
|3||	3.333 || 1.204 ||	&lt;br /&gt;
|-&lt;br /&gt;
|4||	35.406 || 3.567 || 28.617&lt;br /&gt;
|-&lt;br /&gt;
|5||	51.283 || 3.937 || 45.883&lt;br /&gt;
|-&lt;br /&gt;
|6||	59.372 || 4.084 || 60.841&lt;br /&gt;
|-&lt;br /&gt;
|7||	67.585 || 4.213 || 72.017&lt;br /&gt;
|-&lt;br /&gt;
|8||	76.219 || 4.334 || 79.654&lt;br /&gt;
|-&lt;br /&gt;
|9||	83.334 || 4.423 || 84.600&lt;br /&gt;
|-&lt;br /&gt;
| ||	       || &amp;lt;math&amp;gt;{{S}_{1}}\,\!&amp;lt;/math&amp;gt; = 24.558 ||&lt;br /&gt;
|-&lt;br /&gt;
|10||	87.764 || 4.475	|| 87.701&lt;br /&gt;
|-&lt;br /&gt;
|11||	90.614 || 4.507	|| 89.609&lt;br /&gt;
|-&lt;br /&gt;
|12||	92.555 || 4.528	|| 90.769&lt;br /&gt;
|-&lt;br /&gt;
|13||	93.939 || 4.543 || 91.469&lt;br /&gt;
|-&lt;br /&gt;
|14||	94.964 || 4.553 || 91.891&lt;br /&gt;
|-&lt;br /&gt;
|15||	95.746 || 4.562 || 92.143&lt;br /&gt;
|-&lt;br /&gt;
|  ||          || &amp;lt;math&amp;gt;{{S}_{2}}\,\!&amp;lt;/math&amp;gt; = 27.167 ||	&lt;br /&gt;
|-&lt;br /&gt;
|16||	96.356 || 4.568 || 92.295&lt;br /&gt;
|-&lt;br /&gt;
|17||	90.960 || 4.510 || 92.385&lt;br /&gt;
|-&lt;br /&gt;
|18||	91.681 || 4.518	|| 92.439&lt;br /&gt;
|-&lt;br /&gt;
|19||	87.560 || 4.472 || 92.472&lt;br /&gt;
|-&lt;br /&gt;
|20||	89.411 || 4.493	|| 92.491&lt;br /&gt;
|-&lt;br /&gt;
|21||	91.219 || 4.513 || 92.503&lt;br /&gt;
|-&lt;br /&gt;
|  ||	       || &amp;lt;math&amp;gt;{{S}_{3}}\,\!&amp;lt;/math&amp;gt; = 27.076 ||	&lt;br /&gt;
|-&lt;br /&gt;
|22||	93.152	||4.534	|| 92.510&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Solution&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the table above, the failures are represented by columns &amp;quot;Failure 1&amp;quot;, &amp;quot;Failure 2&amp;quot;, etc. The &amp;quot;Result/Mode&amp;quot; column shows whether each launch is a failure (indicated by the failure modes F1, F2, etc.) or a success (S). The values of failure are based on &amp;lt;math&amp;gt;CL=0.90\,\!&amp;lt;/math&amp;gt; and are calculated from:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f=1-{{(1-CL)}^{\tfrac{1}{{{S}_{n}}}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
These values are summed and the reliability is calculated from: &lt;br /&gt;
	&lt;br /&gt;
:&amp;lt;math&amp;gt;R=\left[ 1-\left( \frac{\mathop{}_{i=1}^{N}{{f}_{i}}}{n} \right) \right]\cdot 100\text{ }%\,\!&amp;lt;/math&amp;gt;		&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;N\,\!&amp;lt;/math&amp;gt; is the number of failures and &amp;lt;math&amp;gt;n\,\!&amp;lt;/math&amp;gt; is the number of events, tests, runs or launches.&lt;br /&gt;
&lt;br /&gt;
*Failure 1 is Mode 1; it occurs at launch 1 and it does not recur throughout the process. So at launch 3, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt;, and so on.&lt;br /&gt;
&lt;br /&gt;
*Failure 2 is Mode 2; it occurs at launch 2 and it recurs at launch 5. Therefore, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt; at launch 4 and at launch 7, and so on.&lt;br /&gt;
&lt;br /&gt;
*Failure 3 is Mode 3; it occurs at launch 3 and it recurs at launch 6. Therefore, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt; at launch 5 and at launch 8, and so on.&lt;br /&gt;
&lt;br /&gt;
*Failure 6 is Mode 4; it occurs at launch 17 and it does not recur throughout the process. So at launch 19, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt;, and so on.&lt;br /&gt;
&lt;br /&gt;
*Failure 7 is Mode 5; it occurs at launch 19 and it does not recur throughout the process. So at launch 21, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt;, and so on.&lt;br /&gt;
&lt;br /&gt;
For launch 3 and failure 1, &amp;lt;math&amp;gt;{{S}_{n}}=1\,\!&amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
{{f}_{1/3}}=1-{{(1-0.90)}^{1/1}}=0.900&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For launch 4 and failure 1, &amp;lt;math&amp;gt;{{S}_{n}}=2\,\!&amp;lt;/math&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
{{f}_{1/4}}=1-{{(1-0.90)}^{1/2}}=0.684&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And so on. &lt;br /&gt;
&lt;br /&gt;
Calculate the initial values of the Gompertz parameters using the second table above. Based on the equations from the [[Gompertz Models]] chapter, the initial values are: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
c &amp;amp;= \left ( \frac{S_{3}-S_{2}}{S_{2}-S_{1}} \right )^\frac{1}{n\cdot I} \\&lt;br /&gt;
&amp;amp;= \left [ \frac{26.946-26.776}{26.776-22.218} \right ]^\frac{1}{6} \\&lt;br /&gt;
&amp;amp;= 0.578 \\&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
a &amp;amp;= e^\left [\frac{1}{n}\left (S_{1} + \frac {S_{2}-S_{1}}{1-e^{n\cdot I}} \right )\right ] \\&lt;br /&gt;
&amp;amp;= e^\left [\frac{1}{6}\left (22.218 + \frac{26.776 - 22.218}{1-0.578^{6}}\right ) \right ] \\&lt;br /&gt;
&amp;amp;= 89.31% \\&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
b &amp;amp;= e^\left [\frac{(S_{2}-S_{1})(c-1)}{(1-c^{n})^{2}} \right ] \\&lt;br /&gt;
&amp;amp;= e^\left [\frac{(26.776-22.218)(0.578-1)}{(1-0.578^{6})^{2}} \right ] \\&lt;br /&gt;
&amp;amp;= 0.127 \\&lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, since the initial values have been determined, the Gauss-Newton method can be used. Substituting &amp;lt;math&amp;gt;{{Y}_{i}}={{R}_{i}},\,\!&amp;lt;/math&amp;gt; &amp;lt;math&amp;gt;g_{1}^{(0)}=89.31,\,\!&amp;lt;/math&amp;gt; &amp;lt;math&amp;gt;g_{2}^{(0)}=0.127,\,\!&amp;lt;/math&amp;gt; &amp;lt;math&amp;gt;g_{3}^{(0)}=0.578\,\!&amp;lt;/math&amp;gt;. The iterations are continued to solve for the parameters. Using the RGA software, the estimators of the parameters for the given example are: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
   \widehat{a}&amp;amp;= 0.9299 \\ &lt;br /&gt;
  \widehat{b} &amp;amp;= 0.0943 \\ &lt;br /&gt;
  \widehat{c} &amp;amp;= 0.7170  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The next figure shows the entered data and the estimated parameters.&lt;br /&gt;
&lt;br /&gt;
[[Image:rgaA.1.png|center|600px]]&lt;br /&gt;
&lt;br /&gt;
The Gompertz reliability growth curve may now be written as follows where &amp;lt;math&amp;gt;{{L}_{G}}\,\!&amp;lt;/math&amp;gt; is the number of launches, with the first successful launch being counted as &amp;lt;math&amp;gt;{{L}_{G}}=1\,\!&amp;lt;/math&amp;gt;. Therefore, &amp;lt;math&amp;gt;{{L}_{G}}\,\!&amp;lt;/math&amp;gt; is equal to 19, since reliability growth starts with launch 4.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;R=0.9299{{(0.0943)}^{{{0.7170}^{{{L}_{G}}}}}}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;The predicted reliability after launch 22 is therefore:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
   R &amp;amp;= 0.9299{{(0.0943)}^{{{0.7170}^{19}}}} \\ &lt;br /&gt;
  &amp;amp;= 0.9260  &lt;br /&gt;
\end{align}\,\!&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The predicted reliability after launch 22 is calculated using the Quick Calculation Pad (QCP), as shown next.&lt;br /&gt;
&lt;br /&gt;
[[Image:rgaA.2.png|center|450px]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the second table, the predicted reliability values are compared with the reliabilities that are calculated from the raw data using failure discounting. It can be seen in the table, and in the following figure, that the Gompertz curve appears to provide a good fit to the actual data.&lt;br /&gt;
&lt;br /&gt;
[[Image:rgaA.3.png|center|450px]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=CScheduledTask.OnCondGetTeams_Method&amp;diff=65524</id>
		<title>CScheduledTask.OnCondGetTeams Method</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=CScheduledTask.OnCondGetTeams_Method&amp;diff=65524"/>
		<updated>2019-03-14T18:27:28Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:cScheduledTask.OnCondGetTeams Method}}{{Template:API}}{{Template:APIBreadcrumb|.[[CScheduledTask_Class|cScheduledTask]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;Returns an array teams required for the &#039;On condition&#039; task.&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Remarks&#039;&#039;&#039;: Designed for VB6/VBA users, but can also be used in .NET. Alternatively, .NET users can use the &amp;lt;code&amp;gt;OnCondTeams()&amp;lt;/code&amp;gt; property in the class to get or set the teams.&lt;br /&gt;
&lt;br /&gt;
== Syntax ==&lt;br /&gt;
 &#039;&#039;&#039;.OnCondGetTeams&#039;&#039;&#039;({{APIPrefix|ByRef}} &#039;&#039;arr()&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
===Parameters===&lt;br /&gt;
&#039;&#039;arr()&#039;&#039;&lt;br /&gt;
:Required as [[TeamInfo Class|TeamInfo]]. An array of the team IDs for the task.&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
 &#039;&#039;&#039;VBA&#039;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|&#039;Declare a new Repository object and connect to a Synthesis repository.}}&lt;br /&gt;
   {{APIPrefix|Dim}} MyRepository {{APIPrefix|As New}} Repository&lt;br /&gt;
   MyRepository.ConnectToAccessRepository({{APIString|&amp;quot;C:\RSRepository1.rsr19&amp;quot;}})&lt;br /&gt;
   MyRepository.Project.SetCurrentProject(1)&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|&#039;Get a particular task with ID of 2 from repository.}}&lt;br /&gt;
   {{APIPrefix|Dim}} aTask {{APIPrefix|As}} cScheduledTask&lt;br /&gt;
   {{APIPrefix|Set}} aTask = MyRespository.Task.GetScheduledTask(2)&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|&#039;Create instance of TeamInfo if on condition task}}&lt;br /&gt;
   {{APIPrefix|If}} aTask.TaskClass = TaskClassEnum_OnCondition {{APIPrefix|Then}}&lt;br /&gt;
     {{APIPrefix|Dim}} Teams() {{APIPrefix|As}} TeamInfo&lt;br /&gt;
     {{APIPrefix|Call}} aTask.OnCondGetTeams(Teams)&lt;br /&gt;
   {{APIPrefix|End If}}&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=CScheduledTask.GetTeams_Method&amp;diff=65523</id>
		<title>CScheduledTask.GetTeams Method</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=CScheduledTask.GetTeams_Method&amp;diff=65523"/>
		<updated>2019-03-14T18:27:07Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:cScheduledTask.GetTeams Method}}{{Template:API}}{{Template:APIBreadcrumb|.[[CScheduledTask_Class|cScheduledTask]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;Returns an array teams required for the task.&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Remarks&#039;&#039;&#039;: Designed for VB6/VBA users, but can also be used in .NET. Alternatively, .NET users can use the &amp;lt;code&amp;gt;Teams()&amp;lt;/code&amp;gt; property in the class to get or set the teams.&lt;br /&gt;
&lt;br /&gt;
== Syntax ==&lt;br /&gt;
 &#039;&#039;&#039;.GetTeams&#039;&#039;&#039;({{APIPrefix|ByRef}} &#039;&#039;arr()&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
===Parameters===&lt;br /&gt;
&#039;&#039;arr()&#039;&#039;&lt;br /&gt;
:Required as [[TeamInfo Class|TeamInfo]]. An array of the team IDs for the task.&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
 &#039;&#039;&#039;VBA&#039;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|&#039;Declare a new Repository object and connect to a repository.}}&lt;br /&gt;
   {{APIPrefix|Dim}} MyRepository {{APIPrefix|As New}} Repository&lt;br /&gt;
   MyRepository.ConnectToAccessRepository({{APIString|&amp;quot;C:\RSRepository1.rsr19&amp;quot;}})&lt;br /&gt;
   MyRepository.Project.SetCurrentProject(1)&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|&#039;Get a particular task with ID of 2 from repository.}}&lt;br /&gt;
   {{APIPrefix|Dim}} aTask {{APIPrefix|As}} cCorrectiveTask&lt;br /&gt;
   {{APIPrefix|Set}} aTask = MyRespository.Task.GetScheduledTask(2)&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|&#039;Create instance of TeamInfo.}}&lt;br /&gt;
   {{APIPrefix|Dim}} Teams() {{APIPrefix|As}} TeamInfo&lt;br /&gt;
   {{APIPrefix|Call}} aTask.GetTeams(Teams)&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=CCorrectiveTask.GetTeams_Method&amp;diff=65522</id>
		<title>CCorrectiveTask.GetTeams Method</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=CCorrectiveTask.GetTeams_Method&amp;diff=65522"/>
		<updated>2019-03-14T18:26:41Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:cCorrectiveTask.GetTeams Method}}{{Template:API}}{{Template:APIBreadcrumb|.[[CCorrectiveTask_Class|cCorrectiveTask]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;Returns an array teams required for the task.&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Remarks&#039;&#039;&#039;: Designed for VB6/VBA users, but can also be used in .NET. Alternatively, .NET users can use the &amp;lt;code&amp;gt;Teams()&amp;lt;/code&amp;gt; property in the class to get or set the teams.&lt;br /&gt;
&lt;br /&gt;
== Syntax ==&lt;br /&gt;
 &#039;&#039;&#039;.GetTeams&#039;&#039;&#039;({{APIPrefix|ByRef}} &#039;&#039;arr()&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
===Parameters===&lt;br /&gt;
&#039;&#039;arr()&#039;&#039;&lt;br /&gt;
:Required as [[TeamInfo Class|TeamInfo]]. An array of the team IDs for the task.&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
 &#039;&#039;&#039;VBA&#039;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|&#039;Declare a new Repository object and connect to a Synthesis repository.}}&lt;br /&gt;
   {{APIPrefix|Dim}} MyRepository {{APIPrefix|As New}} Repository&lt;br /&gt;
   MyRepository.ConnectToAccessRepository({{APIString|&amp;quot;C:\RSRepository1.rsr19&amp;quot;}})&lt;br /&gt;
   MyRepository.Project.SetCurrentProject(1)&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|&#039;Get a particular task with ID of 2 from repository.}}&lt;br /&gt;
   {{APIPrefix|Dim}} aTask {{APIPrefix|As}} cCorrectiveTask&lt;br /&gt;
   {{APIPrefix|Set}} aTask = MyRespository.Task.GetCorrectiveTask(2)&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|&#039;Create instance of TeamInfo.}}&lt;br /&gt;
   {{APIPrefix|Dim}} Teams() {{APIPrefix|As}} TeamInfo&lt;br /&gt;
   {{APIPrefix|Call}} aTask.GetTeams(Teams)&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=API_Changelog&amp;diff=65521</id>
		<title>API Changelog</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=API_Changelog&amp;diff=65521"/>
		<updated>2019-03-14T17:54:51Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}{{Template:APIUpgradesNavBox}}&lt;br /&gt;
 &lt;br /&gt;
Before you upgrade to the latest version of the ReliaSoft API, review what&#039;s new and what has changed since the last version. The latest version may have introduced some code-breaking changes, requiring you to make changes to your code before upgrading. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to get the latest version of the ReliaSoft API object library file&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The object library file is located in the folder where the ReliaSoft applications are installed. By default, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
To get the latest version of the file, choose &#039;&#039;&#039;File &amp;gt; Help &amp;gt; Check for Updates&#039;&#039;&#039; or download the latest software update from [https://support.hbmprenscia.com HBM Prenscia Support Portal]. You may need to to update the library reference of your custom applications to point to the location of the object library file. For VBA applications, use the ReliaSoftAPI19.tlb file. For .NET applications, use the ReliaSoftAPI19.dll file. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
Here&#039;s a brief overview of the most significant enhancements and deprecations in the API since the previous version.&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all new classes and enumerations added to the object library, see [[New Classes and Enumerations]].&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all new methods and properties added to existing objects, see [[New Members and Constants]].&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all deprecations, see [[Deprecated and Removed Members]].&lt;br /&gt;
&lt;br /&gt;
===19.0.1===&lt;br /&gt;
*Changed the name of the libraries to ReliaSoftAPI19.tlb and ReliaSoftAPI19.dll. The API&#039;s are also now version dependent.&lt;br /&gt;
*Added the following to the [[Repository Class|Repository]] class:&lt;br /&gt;
:*[[Repository.Action.GetFMEAActionLocatorLinkPath|Repository.Action.GetFMEAActionLocatorLinkPath]]&lt;br /&gt;
*Added the following methods and properties to [[CCorrectiveTask Class|cCorrectiveTask]] class:&lt;br /&gt;
:*[[CCorrectiveTask.GetPools_Method|GetPools]]&lt;br /&gt;
:*[[CCorrectiveTask.SetPools_Method|SetPools]]&lt;br /&gt;
:*[[CCorrectiveTask.GetTeams_Method|GetTeams]]&lt;br /&gt;
:*[[CCorrectiveTask.GetTeams_Method|SetTeams]]&lt;br /&gt;
:*Pools&lt;br /&gt;
:*Teams&lt;br /&gt;
*Removed the following methods and property from the [[CCorrectiveTask Class|cCorrectiveTask]] class:&lt;br /&gt;
:*SetCrewIDs&lt;br /&gt;
:*GetCrewIDs&lt;br /&gt;
:*CrewIDs&lt;br /&gt;
*Added the following methods and properties to the [[CScheduledTask Class|cScheduledTask]] class:&lt;br /&gt;
:*[[CScheduledTask.OnCondGetTeams_Method|OnCondGetTeams]]&lt;br /&gt;
:*[[CScheduledTask.OnCondSetTeams_Method|OnCondSetTeams]]&lt;br /&gt;
:*[[CScheduledTask.GetPools_Method|GetPools]]&lt;br /&gt;
:*[[CScheduledTask.SetPools_Method|SetPools]]&lt;br /&gt;
:*[[CScheduledTask.GetTeams_Method|GetTeams]]&lt;br /&gt;
:*[[CScheduledTask.GetTeams_Method|SetTeams]]&lt;br /&gt;
:*OnCondTeams&lt;br /&gt;
:*Pools&lt;br /&gt;
:*Teams&lt;br /&gt;
*Removed the following methods and property from the [[CScheduledTask Class|cScheduledTask]] class:&lt;br /&gt;
:*SetCrewIDs&lt;br /&gt;
:*GetCrewIDs&lt;br /&gt;
:*CrewIDs&lt;br /&gt;
:*OnCondCrewIDs&lt;br /&gt;
*Added the [[PoolInfo|PoolInfo]] structure to be used with the [[CScheduledTask.GetPools_Method|GetPools]] and [[CScheduledTask.SetPools_Method|SetPools]] methods, as well as the Pools property.&lt;br /&gt;
*Added the [[TeamInfo Class|TeamInfo]] class which contains the following methods and property:&lt;br /&gt;
:*[[TeamInfo.GetCrewIDs_Method|GetCrewIDs]]&lt;br /&gt;
:*[[TeamInfo.SetCrewIDs_Method|SetCrewIDs]]&lt;br /&gt;
:*CrewIDs&lt;br /&gt;
*Added the following properties to the [[XfmeaEffect Class|XFMEAEffect]] class:&lt;br /&gt;
:*SubSev1Init&lt;br /&gt;
:*SubSev1Rev&lt;br /&gt;
:*SubSev2Init&lt;br /&gt;
:*SubSev2Rev&lt;br /&gt;
:*SubSev3Init&lt;br /&gt;
:*SubSev3Rev&lt;br /&gt;
:*SubSev4Init&lt;br /&gt;
:*SubSev4Rev&lt;br /&gt;
:*SubSev5Init&lt;br /&gt;
:*SubSev5Rev&lt;br /&gt;
:*SubSev6Init&lt;br /&gt;
:*SubSev6Rev&lt;br /&gt;
:*SubSev7Init&lt;br /&gt;
:*SubSev7Rev&lt;br /&gt;
:*SubSev8Init&lt;br /&gt;
:*SubSev8Rev&lt;br /&gt;
*Added the following property to the [[XfmeaItem Class|XFMEAItem]] class:&lt;br /&gt;
:*Qty&lt;br /&gt;
&lt;br /&gt;
===18.0.3===&lt;br /&gt;
*Added the following methods to the [[Repository Class|Repository]] class:&lt;br /&gt;
:*[[Repository.Project.GetUserAccessibleProjects|Repository.Project.GetUserAccessibleProjects]]&lt;br /&gt;
:*[[Repository.Project.GetUserPermissions|Repository.Project.GetUserPermissions ]]&lt;br /&gt;
&lt;br /&gt;
===18.0.2===&lt;br /&gt;
*Increased the length of a scheduled task name up to 2,000 characters to match the desktop applications.&lt;br /&gt;
&lt;br /&gt;
===18.0.1===&lt;br /&gt;
Initial public release for Version 2018 applications.&lt;br /&gt;
&lt;br /&gt;
*In the &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WeibullDataSet Class|WeibullDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object, the type for the NumberInGroup parameter was changed from Integer to Double to allow fractional failure calculations.&lt;br /&gt;
*In &amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaItem Class|XfmeaItem]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object, added the ReliabilityPolicyType property.&lt;br /&gt;
*Added the following properties to the [[WAPlotSettings Class|WAPlotSettings ]]:&lt;br /&gt;
**ShowDataPoints&lt;br /&gt;
**Show3PWeibullAdjustedItems&lt;br /&gt;
**Show3PWeibullUnadjustedItems&lt;br /&gt;
*Added the following methods to the Repository class:&lt;br /&gt;
:*[[Repository.Xfmea.AssignActionToXfmeaCause Method|Repository.Xfmea.AssignActionToXfmeaCause]]&lt;br /&gt;
:*[[Repository.Xfmea.AssignControlToXfmeaCause Method|Repository.Xfmea.AssignControlToXfmeaCause]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseActions Method|Repository.Xfmea.GetXfmeaCauseActions]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseActionsDictionary Method|Repository.Xfmea.GetXfmeaCauseActionsDictionary]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseControls Method|Repository.Xfmea.GetXfmeaCauseControls]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseControlsDictionary Method |Repository.Xfmea.GetXfmeaCauseControlsDictionary]]&lt;br /&gt;
&lt;br /&gt;
===11.0.1===&lt;br /&gt;
Initial public release for Version 11 applications. &lt;br /&gt;
 &lt;br /&gt;
*Added new classes and methods for accessing &#039;&#039;profiles&#039;&#039;, which is a new type of Synthesis resource introduced in the latest version of the Synthesis desktop applications.&lt;br /&gt;
*Removed the obsolete [[ALTAStressProfile_Class|ALTAStressProfile]] class and replaced it with the new [[CProfile Class|cProfile]] class.&lt;br /&gt;
*Removed the obsolete [[ALTASegment Class|ALTASegment]] class and replaced it with the new [[ProfileSegment Class|ProfileSegment]] class.&lt;br /&gt;
&lt;br /&gt;
===10.1.4===&lt;br /&gt;
*Added ability to assign a URD to a BlockSim block in a Synthesis repository. Includes ability to get an array of BlockSim block names, RBDs, fault trees and properties.&lt;br /&gt;
*Added ability to hide messages when doing batch calculations and customize event procedures for &amp;lt;code&amp;gt;Repository&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WeibullDataSet&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;ALTADataSet&amp;lt;/code&amp;gt; objects.&lt;br /&gt;
*For locally-hosted licensing, added the [http://www.synthesisplatform.net/synthesis_api_ante_service.htm Synthesis API Ante Service] to improve response times.&lt;br /&gt;
&lt;br /&gt;
===10.1.1===&lt;br /&gt;
*Added ability to get global and reference resources. An optional &amp;lt;code&amp;gt;Filter&amp;lt;/code&amp;gt; parameter has been added to the following methods. The filter&#039;s default value is 0, which returns local resources.&lt;br /&gt;
:*[[Repository.Action.GetAllActions]]&lt;br /&gt;
:*[[Repository.Control.GetAllXfmeaControls]]  &lt;br /&gt;
:*[[Repository.Model.GetAllModels]]&lt;br /&gt;
:*[[Repository.Model.GetAllModelsInfo]]&lt;br /&gt;
:*[[Repository.Crew.GetAllCrews]]&lt;br /&gt;
:*[[Repository.Pool.GetAllPools]]&lt;br /&gt;
:*[[Repository.Task.GetAllScheduledTasks]]&lt;br /&gt;
:*[[Repository.Task.GetAllCorrectiveTasks]]&lt;br /&gt;
:*[[Repository.URD.GetAllURDs]]&lt;br /&gt;
:*[[Repository.Variable.GetAllVariables]]&lt;br /&gt;
*Added a class that allows VBA users to change the API library language.&lt;br /&gt;
*Added a method for getting a single system hierarchy item.&lt;br /&gt;
*Added new user-defined properties to relevant resource classes.&lt;br /&gt;
*Deprecated a couple of obsolete properties.&lt;br /&gt;
*Various fixes and non-breaking changes.&lt;br /&gt;
&lt;br /&gt;
===10.0.3===&lt;br /&gt;
Initial public release for Version 10 applications. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improved flexibility&#039;&#039;&#039;&lt;br /&gt;
:*Added all new classes and methods for accessing FMEA and related data from Xfmea, RCM++ and RBI.&lt;br /&gt;
:*Added several new methods in the Repository class to provide more options for manipulating Synthesis resources. The most significant of these is the ability to get a single resource from a Synthesis repository. You are no longer limited to using arrays to access a particular resource item. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;New features incorporated&#039;&#039;&#039;&lt;br /&gt;
:*Added new properties and enumerations in the cAction class to take advantage of the expanded action-tracking capabilities introduced in the latest version of the Synthesis platform. This includes action properties relevant to the project planner and Xfmea/RCM++/RBI test plans.&lt;br /&gt;
:*For all resource objects (e.g., cModel, cURD, cCrew, etc.), added a new set of properties for accessing the Synthesis identifiers fields in the platform.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Deprecations&#039;&#039;&#039;&lt;br /&gt;
:*The Repository class has been restructured to organize its growing number of members. All of its members are now organized into fields named after the object type they apply to. For example, the &amp;lt;code&amp;gt;Repository.GetAllModels()&amp;lt;/code&amp;gt; method, which returns a cModel object, has been renamed to &amp;lt;code&amp;gt;Repository.Model.GetAllModels()&amp;lt;/code&amp;gt;; similarly, the &amp;lt;code&amp;gt;Repository.ImportBlockSimXMLFile&amp;lt;/code&amp;gt; method has been renamed to &amp;lt;code&amp;gt;Repository.BlockSim.ImportBlockSimXMLFile&amp;lt;/code&amp;gt;, etc. The previous versions of the methods still exist so your code is not broken, but they are deprecated and may be removed in future versions of the API.&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=API_Changelog&amp;diff=65520</id>
		<title>API Changelog</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=API_Changelog&amp;diff=65520"/>
		<updated>2019-03-14T17:52:12Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}{{Template:APIUpgradesNavBox}}&lt;br /&gt;
 &lt;br /&gt;
Before you upgrade to the latest version of the ReliaSoft API, review what&#039;s new and what has changed since the last version. The latest version may have introduced some code-breaking changes, requiring you to make changes to your code before upgrading. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to get the latest version of the ReliaSoft API object library file&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The object library file is located in the folder where the ReliaSoft applications are installed. By default, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
To get the latest version of the file, choose &#039;&#039;&#039;File &amp;gt; Help &amp;gt; Check for Updates&#039;&#039;&#039; or download the latest software update from our website at [http://www.reliasoft.com/synthesis/downloads.htm http://www.ReliaSoft.com/synthesis/downloads.htm]. You may need to to update the library reference of your custom applications to point to the location of the object library file. For VBA applications, use the SynthesisAPI.tlb file. For .NET applications, use the SynthesisAPI.dll file. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
Here&#039;s a brief overview of the most significant enhancements and deprecations in the API since the previous version.&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all new classes and enumerations added to the object library, see [[New Classes and Enumerations]].&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all new methods and properties added to existing objects, see [[New Members and Constants]].&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all deprecations, see [[Deprecated and Removed Members]].&lt;br /&gt;
&lt;br /&gt;
===19.0.1===&lt;br /&gt;
*Changed the name of the libraries to ReliaSoftAPI19.tlb and ReliaSoftAPI19.dll. The API&#039;s are also now version dependent.&lt;br /&gt;
*Added the following to the [[Repository Class|Repository]] class:&lt;br /&gt;
:*[[Repository.Action.GetFMEAActionLocatorLinkPath|Repository.Action.GetFMEAActionLocatorLinkPath]]&lt;br /&gt;
*Added the following methods and properties to [[CCorrectiveTask Class|cCorrectiveTask]] class:&lt;br /&gt;
:*[[CCorrectiveTask.GetPools_Method|GetPools]]&lt;br /&gt;
:*[[CCorrectiveTask.SetPools_Method|SetPools]]&lt;br /&gt;
:*[[CCorrectiveTask.GetTeams_Method|GetTeams]]&lt;br /&gt;
:*[[CCorrectiveTask.GetTeams_Method|SetTeams]]&lt;br /&gt;
:*Pools&lt;br /&gt;
:*Teams&lt;br /&gt;
*Removed the following methods and property from the [[CCorrectiveTask Class|cCorrectiveTask]] class:&lt;br /&gt;
:*SetCrewIDs&lt;br /&gt;
:*GetCrewIDs&lt;br /&gt;
:*CrewIDs&lt;br /&gt;
*Added the following methods and properties to the [[CScheduledTask Class|cScheduledTask]] class:&lt;br /&gt;
:*[[CScheduledTask.OnCondGetTeams_Method|OnCondGetTeams]]&lt;br /&gt;
:*[[CScheduledTask.OnCondSetTeams_Method|OnCondSetTeams]]&lt;br /&gt;
:*[[CScheduledTask.GetPools_Method|GetPools]]&lt;br /&gt;
:*[[CScheduledTask.SetPools_Method|SetPools]]&lt;br /&gt;
:*[[CScheduledTask.GetTeams_Method|GetTeams]]&lt;br /&gt;
:*[[CScheduledTask.GetTeams_Method|SetTeams]]&lt;br /&gt;
:*OnCondTeams&lt;br /&gt;
:*Pools&lt;br /&gt;
:*Teams&lt;br /&gt;
*Removed the following methods and property from the [[CScheduledTask Class|cScheduledTask]] class:&lt;br /&gt;
:*SetCrewIDs&lt;br /&gt;
:*GetCrewIDs&lt;br /&gt;
:*CrewIDs&lt;br /&gt;
:*OnCondCrewIDs&lt;br /&gt;
*Added the [[PoolInfo|PoolInfo]] structure to be used with the [[CScheduledTask.GetPools_Method|GetPools]] and [[CScheduledTask.SetPools_Method|SetPools]] methods, as well as the Pools property.&lt;br /&gt;
*Added the [[TeamInfo Class|TeamInfo]] class which contains the following methods and property:&lt;br /&gt;
:*[[TeamInfo.GetCrewIDs_Method|GetCrewIDs]]&lt;br /&gt;
:*[[TeamInfo.SetCrewIDs_Method|SetCrewIDs]]&lt;br /&gt;
:*CrewIDs&lt;br /&gt;
*Added the following properties to the [[XfmeaEffect Class|XFMEAEffect]] class:&lt;br /&gt;
:*SubSev1Init&lt;br /&gt;
:*SubSev1Rev&lt;br /&gt;
:*SubSev2Init&lt;br /&gt;
:*SubSev2Rev&lt;br /&gt;
:*SubSev3Init&lt;br /&gt;
:*SubSev3Rev&lt;br /&gt;
:*SubSev4Init&lt;br /&gt;
:*SubSev4Rev&lt;br /&gt;
:*SubSev5Init&lt;br /&gt;
:*SubSev5Rev&lt;br /&gt;
:*SubSev6Init&lt;br /&gt;
:*SubSev6Rev&lt;br /&gt;
:*SubSev7Init&lt;br /&gt;
:*SubSev7Rev&lt;br /&gt;
:*SubSev8Init&lt;br /&gt;
:*SubSev8Rev&lt;br /&gt;
*Added the following property to the [[XfmeaItem Class|XFMEAItem]] class:&lt;br /&gt;
:*Qty&lt;br /&gt;
&lt;br /&gt;
===18.0.3===&lt;br /&gt;
*Added the following methods to the [[Repository Class|Repository]] class:&lt;br /&gt;
:*[[Repository.Project.GetUserAccessibleProjects|Repository.Project.GetUserAccessibleProjects]]&lt;br /&gt;
:*[[Repository.Project.GetUserPermissions|Repository.Project.GetUserPermissions ]]&lt;br /&gt;
&lt;br /&gt;
===18.0.2===&lt;br /&gt;
*Increased the length of a scheduled task name up to 2,000 characters to match the desktop applications.&lt;br /&gt;
&lt;br /&gt;
===18.0.1===&lt;br /&gt;
Initial public release for Version 2018 applications.&lt;br /&gt;
&lt;br /&gt;
*In the &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WeibullDataSet Class|WeibullDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object, the type for the NumberInGroup parameter was changed from Integer to Double to allow fractional failure calculations.&lt;br /&gt;
*In &amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaItem Class|XfmeaItem]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object, added the ReliabilityPolicyType property.&lt;br /&gt;
*Added the following properties to the [[WAPlotSettings Class|WAPlotSettings ]]:&lt;br /&gt;
**ShowDataPoints&lt;br /&gt;
**Show3PWeibullAdjustedItems&lt;br /&gt;
**Show3PWeibullUnadjustedItems&lt;br /&gt;
*Added the following methods to the Repository class:&lt;br /&gt;
:*[[Repository.Xfmea.AssignActionToXfmeaCause Method|Repository.Xfmea.AssignActionToXfmeaCause]]&lt;br /&gt;
:*[[Repository.Xfmea.AssignControlToXfmeaCause Method|Repository.Xfmea.AssignControlToXfmeaCause]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseActions Method|Repository.Xfmea.GetXfmeaCauseActions]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseActionsDictionary Method|Repository.Xfmea.GetXfmeaCauseActionsDictionary]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseControls Method|Repository.Xfmea.GetXfmeaCauseControls]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseControlsDictionary Method |Repository.Xfmea.GetXfmeaCauseControlsDictionary]]&lt;br /&gt;
&lt;br /&gt;
===11.0.1===&lt;br /&gt;
Initial public release for Version 11 applications. &lt;br /&gt;
 &lt;br /&gt;
*Added new classes and methods for accessing &#039;&#039;profiles&#039;&#039;, which is a new type of Synthesis resource introduced in the latest version of the Synthesis desktop applications.&lt;br /&gt;
*Removed the obsolete [[ALTAStressProfile_Class|ALTAStressProfile]] class and replaced it with the new [[CProfile Class|cProfile]] class.&lt;br /&gt;
*Removed the obsolete [[ALTASegment Class|ALTASegment]] class and replaced it with the new [[ProfileSegment Class|ProfileSegment]] class.&lt;br /&gt;
&lt;br /&gt;
===10.1.4===&lt;br /&gt;
*Added ability to assign a URD to a BlockSim block in a Synthesis repository. Includes ability to get an array of BlockSim block names, RBDs, fault trees and properties.&lt;br /&gt;
*Added ability to hide messages when doing batch calculations and customize event procedures for &amp;lt;code&amp;gt;Repository&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WeibullDataSet&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;ALTADataSet&amp;lt;/code&amp;gt; objects.&lt;br /&gt;
*For locally-hosted licensing, added the [http://www.synthesisplatform.net/synthesis_api_ante_service.htm Synthesis API Ante Service] to improve response times.&lt;br /&gt;
&lt;br /&gt;
===10.1.1===&lt;br /&gt;
*Added ability to get global and reference resources. An optional &amp;lt;code&amp;gt;Filter&amp;lt;/code&amp;gt; parameter has been added to the following methods. The filter&#039;s default value is 0, which returns local resources.&lt;br /&gt;
:*[[Repository.Action.GetAllActions]]&lt;br /&gt;
:*[[Repository.Control.GetAllXfmeaControls]]  &lt;br /&gt;
:*[[Repository.Model.GetAllModels]]&lt;br /&gt;
:*[[Repository.Model.GetAllModelsInfo]]&lt;br /&gt;
:*[[Repository.Crew.GetAllCrews]]&lt;br /&gt;
:*[[Repository.Pool.GetAllPools]]&lt;br /&gt;
:*[[Repository.Task.GetAllScheduledTasks]]&lt;br /&gt;
:*[[Repository.Task.GetAllCorrectiveTasks]]&lt;br /&gt;
:*[[Repository.URD.GetAllURDs]]&lt;br /&gt;
:*[[Repository.Variable.GetAllVariables]]&lt;br /&gt;
*Added a class that allows VBA users to change the API library language.&lt;br /&gt;
*Added a method for getting a single system hierarchy item.&lt;br /&gt;
*Added new user-defined properties to relevant resource classes.&lt;br /&gt;
*Deprecated a couple of obsolete properties.&lt;br /&gt;
*Various fixes and non-breaking changes.&lt;br /&gt;
&lt;br /&gt;
===10.0.3===&lt;br /&gt;
Initial public release for Version 10 applications. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improved flexibility&#039;&#039;&#039;&lt;br /&gt;
:*Added all new classes and methods for accessing FMEA and related data from Xfmea, RCM++ and RBI.&lt;br /&gt;
:*Added several new methods in the Repository class to provide more options for manipulating Synthesis resources. The most significant of these is the ability to get a single resource from a Synthesis repository. You are no longer limited to using arrays to access a particular resource item. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;New features incorporated&#039;&#039;&#039;&lt;br /&gt;
:*Added new properties and enumerations in the cAction class to take advantage of the expanded action-tracking capabilities introduced in the latest version of the Synthesis platform. This includes action properties relevant to the project planner and Xfmea/RCM++/RBI test plans.&lt;br /&gt;
:*For all resource objects (e.g., cModel, cURD, cCrew, etc.), added a new set of properties for accessing the Synthesis identifiers fields in the platform.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Deprecations&#039;&#039;&#039;&lt;br /&gt;
:*The Repository class has been restructured to organize its growing number of members. All of its members are now organized into fields named after the object type they apply to. For example, the &amp;lt;code&amp;gt;Repository.GetAllModels()&amp;lt;/code&amp;gt; method, which returns a cModel object, has been renamed to &amp;lt;code&amp;gt;Repository.Model.GetAllModels()&amp;lt;/code&amp;gt;; similarly, the &amp;lt;code&amp;gt;Repository.ImportBlockSimXMLFile&amp;lt;/code&amp;gt; method has been renamed to &amp;lt;code&amp;gt;Repository.BlockSim.ImportBlockSimXMLFile&amp;lt;/code&amp;gt;, etc. The previous versions of the methods still exist so your code is not broken, but they are deprecated and may be removed in future versions of the API.&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=API_Changelog&amp;diff=65519</id>
		<title>API Changelog</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=API_Changelog&amp;diff=65519"/>
		<updated>2019-03-14T17:51:54Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}{{Template:APIUpgradesNavBox}}&lt;br /&gt;
 &lt;br /&gt;
Before you upgrade to the latest version of the ReliaSoft API, review what&#039;s new and what has changed since the last version. The latest version may have introduced some code-breaking changes, requiring you to make changes to your code before upgrading. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to get the latest version of the ReliaSoft API object library file&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The object library file is located in the folder where the ReliaSoft applications are installed. By default, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
To get the latest version of the file, choose &#039;&#039;&#039;File &amp;gt; Help &amp;gt; Check for Updates&#039;&#039;&#039; or download the latest software update from our website at [http://www.reliasoft.com/synthesis/downloads.htm http://www.ReliaSoft.com/synthesis/downloads.htm]. You may need to to update the library reference of your custom applications to point to the location of the object library file. For VBA applications, use the SynthesisAPI.tlb file. For .NET applications, use the SynthesisAPI.dll file. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
Here&#039;s a brief overview of the most significant enhancements and deprecations in the API since the previous version.&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all new classes and enumerations added to the object library, see [[New Classes and Enumerations]].&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all new methods and properties added to existing objects, see [[New Members and Constants]].&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all deprecations, see [[Deprecated and Removed Members]].&lt;br /&gt;
&lt;br /&gt;
===19.0.1===&lt;br /&gt;
*Changed the name of the libraries to ReliaSoftAPI19.tlb and ReliaSoftAPI19.dll. The API&#039;s are also now version dependent.&lt;br /&gt;
*Added the following to the [[Repository Class|Repository]] class:&lt;br /&gt;
:*[[Repository.Action.GetFMEAActionLocatorLinkPath|Repository.Action.GetFMEAActionLocatorLinkPath]]&lt;br /&gt;
*Added the following methods and properties to [[CCorrectiveTask Class|cCorrectiveTask]] class:&lt;br /&gt;
:*[[CCorrectiveTask.GetPools_Method|GetPools]]&lt;br /&gt;
:*[[CCorrectiveTask.SetPools_Method|SetPools]]&lt;br /&gt;
:*[[CCorrectiveTask.GetTeams_Method|GetTeams]]&lt;br /&gt;
:*[[CCorrectiveTask.GetTeams_Method|SetTeams]]&lt;br /&gt;
:*Pools&lt;br /&gt;
:*Teams&lt;br /&gt;
*Removed the following methods and property from the [[CCorrectiveTask Class|cCorrectiveTask]] class:&lt;br /&gt;
:*SetCrewIDs&lt;br /&gt;
:*GetCrewIDs&lt;br /&gt;
:*CrewIDs&lt;br /&gt;
*Added the following methods and properties to the [[CScheduledTask Class|cScheduledTask]] class:&lt;br /&gt;
:*[[CScheduledTask.OnCondGetTeams_Method|OnCondGetTeams]]&lt;br /&gt;
:*[[CScheduledTask.OnCondSetTeams_Method|OnCondSetTeams]]&lt;br /&gt;
:*[[CScheduledTask.GetPools_Method|GetPools]]&lt;br /&gt;
:*[[CScheduledTask.SetPools_Method|SetPools]]&lt;br /&gt;
:*[[CScheduledTask.GetTeams_Method|GetTeams]]&lt;br /&gt;
:*[[CScheduledTask.GetTeams_Method|SetTeams]]&lt;br /&gt;
:*OnCondTeams&lt;br /&gt;
:*Pools&lt;br /&gt;
:*Teams&lt;br /&gt;
*Removed the following methods and property from the [[CScheduledTask Class|cScheduledTask]] class:&lt;br /&gt;
:*SetCrewIDs&lt;br /&gt;
:*GetCrewIDs&lt;br /&gt;
:*CrewIDs&lt;br /&gt;
:*OnCondCrewIDs&lt;br /&gt;
*Added the [[PoolInfo|PoolInfo]] structure to be used with the [[CScheduledTask.GetPools_Method|GetPools]] and [[CScheduledTask.SetPools_Method|SetPools]] methods, as well as the Pools property.&lt;br /&gt;
*Added the [[TeamInfo Class|TeamInfo]] class which contains the following methods and property:&lt;br /&gt;
:*[[TeamInfo.GetCrewIDs_Method|GetCrewIDs]]&lt;br /&gt;
:*[[TeamInfo.SetCrewIDs_Method|SetCrewIDs]]&lt;br /&gt;
:*CrewIDs&lt;br /&gt;
*Added the following properties to the [[XfmeaEffect Class|XFMEAEffect]] class:&lt;br /&gt;
:*SubSev1Init&lt;br /&gt;
:*SubSev1Rev&lt;br /&gt;
:*SubSev2Init&lt;br /&gt;
:*SubSev2Rev&lt;br /&gt;
:*SubSev3Init&lt;br /&gt;
:*SubSev3Rev&lt;br /&gt;
:*SubSev4Init&lt;br /&gt;
:*SubSev4Rev&lt;br /&gt;
:*SubSev5Init&lt;br /&gt;
:*SubSev5Rev&lt;br /&gt;
:*SubSev6Init&lt;br /&gt;
:*SubSev6Rev&lt;br /&gt;
:*SubSev7Init&lt;br /&gt;
:*SubSev7Rev&lt;br /&gt;
:*SubSev8Init&lt;br /&gt;
:*SubSev8Rev&lt;br /&gt;
*Added the following property to the [[XfmeaItem Class|XFMEAItem]] class:&lt;br /&gt;
:*Qty&lt;br /&gt;
&lt;br /&gt;
===18.0.3===&lt;br /&gt;
*Added the following methods to the [[Repository Class|Repository]] class:&lt;br /&gt;
:*[[Repository.Project.GetUserAccessibleProjects|Repository.Project.GetUserAccessibleProjects]]&lt;br /&gt;
:*[[Repository.Project.GetUserPermissions|Repository.Project.GetUserPermissions ]]&lt;br /&gt;
&lt;br /&gt;
===18.0.2===&lt;br /&gt;
*Increased the length of a scheduled task name up to 2,000 characters to match the desktop applications.&lt;br /&gt;
&lt;br /&gt;
===18.0.1===&lt;br /&gt;
Initial public release for Version 2018 applications.&lt;br /&gt;
&lt;br /&gt;
*In the &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WeibullDataSet Class|WeibullDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object, the type for the NumberInGroup parameter was changed from Integer to Double to allow fractional failure calculations.&lt;br /&gt;
*In &amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaItem Class|XfmeaItem]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object, added the ReliabilityPolicyType property.&lt;br /&gt;
*Added the following properties to the [[WAPlotSettings Class|WAPlotSettings ]]:&lt;br /&gt;
**ShowDataPoints&lt;br /&gt;
**Show3PWeibullAdjustedItems&lt;br /&gt;
**Show3PWeibullUnadjustedItems&lt;br /&gt;
*Added the following methods to the Repository class:&lt;br /&gt;
:*[[Repository.Xfmea.AssignActionToXfmeaCause Method|Repository.Xfmea.AssignActionToXfmeaCause]]&lt;br /&gt;
:*[[Repository.Xfmea.AssignControlToXfmeaCause Method|Repository.Xfmea.AssignControlToXfmeaCause]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseActions Method|Repository.Xfmea.GetXfmeaCauseActions]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseActionsDictionary Method|Repository.Xfmea.GetXfmeaCauseActionsDictionary]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseControls Method|Repository.Xfmea.GetXfmeaCauseControls]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseControlsDictionary Method |Repository.Xfmea.GetXfmeaCauseControlsDictionary]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===11.0.1===&lt;br /&gt;
Initial public release for Version 11 applications. &lt;br /&gt;
 &lt;br /&gt;
*Added new classes and methods for accessing &#039;&#039;profiles&#039;&#039;, which is a new type of Synthesis resource introduced in the latest version of the Synthesis desktop applications.&lt;br /&gt;
*Removed the obsolete [[ALTAStressProfile_Class|ALTAStressProfile]] class and replaced it with the new [[CProfile Class|cProfile]] class.&lt;br /&gt;
*Removed the obsolete [[ALTASegment Class|ALTASegment]] class and replaced it with the new [[ProfileSegment Class|ProfileSegment]] class.&lt;br /&gt;
&lt;br /&gt;
===10.1.4===&lt;br /&gt;
*Added ability to assign a URD to a BlockSim block in a Synthesis repository. Includes ability to get an array of BlockSim block names, RBDs, fault trees and properties.&lt;br /&gt;
*Added ability to hide messages when doing batch calculations and customize event procedures for &amp;lt;code&amp;gt;Repository&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WeibullDataSet&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;ALTADataSet&amp;lt;/code&amp;gt; objects.&lt;br /&gt;
*For locally-hosted licensing, added the [http://www.synthesisplatform.net/synthesis_api_ante_service.htm Synthesis API Ante Service] to improve response times.&lt;br /&gt;
&lt;br /&gt;
===10.1.1===&lt;br /&gt;
*Added ability to get global and reference resources. An optional &amp;lt;code&amp;gt;Filter&amp;lt;/code&amp;gt; parameter has been added to the following methods. The filter&#039;s default value is 0, which returns local resources.&lt;br /&gt;
:*[[Repository.Action.GetAllActions]]&lt;br /&gt;
:*[[Repository.Control.GetAllXfmeaControls]]  &lt;br /&gt;
:*[[Repository.Model.GetAllModels]]&lt;br /&gt;
:*[[Repository.Model.GetAllModelsInfo]]&lt;br /&gt;
:*[[Repository.Crew.GetAllCrews]]&lt;br /&gt;
:*[[Repository.Pool.GetAllPools]]&lt;br /&gt;
:*[[Repository.Task.GetAllScheduledTasks]]&lt;br /&gt;
:*[[Repository.Task.GetAllCorrectiveTasks]]&lt;br /&gt;
:*[[Repository.URD.GetAllURDs]]&lt;br /&gt;
:*[[Repository.Variable.GetAllVariables]]&lt;br /&gt;
*Added a class that allows VBA users to change the API library language.&lt;br /&gt;
*Added a method for getting a single system hierarchy item.&lt;br /&gt;
*Added new user-defined properties to relevant resource classes.&lt;br /&gt;
*Deprecated a couple of obsolete properties.&lt;br /&gt;
*Various fixes and non-breaking changes.&lt;br /&gt;
&lt;br /&gt;
===10.0.3===&lt;br /&gt;
Initial public release for Version 10 applications. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improved flexibility&#039;&#039;&#039;&lt;br /&gt;
:*Added all new classes and methods for accessing FMEA and related data from Xfmea, RCM++ and RBI.&lt;br /&gt;
:*Added several new methods in the Repository class to provide more options for manipulating Synthesis resources. The most significant of these is the ability to get a single resource from a Synthesis repository. You are no longer limited to using arrays to access a particular resource item. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;New features incorporated&#039;&#039;&#039;&lt;br /&gt;
:*Added new properties and enumerations in the cAction class to take advantage of the expanded action-tracking capabilities introduced in the latest version of the Synthesis platform. This includes action properties relevant to the project planner and Xfmea/RCM++/RBI test plans.&lt;br /&gt;
:*For all resource objects (e.g., cModel, cURD, cCrew, etc.), added a new set of properties for accessing the Synthesis identifiers fields in the platform.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Deprecations&#039;&#039;&#039;&lt;br /&gt;
:*The Repository class has been restructured to organize its growing number of members. All of its members are now organized into fields named after the object type they apply to. For example, the &amp;lt;code&amp;gt;Repository.GetAllModels()&amp;lt;/code&amp;gt; method, which returns a cModel object, has been renamed to &amp;lt;code&amp;gt;Repository.Model.GetAllModels()&amp;lt;/code&amp;gt;; similarly, the &amp;lt;code&amp;gt;Repository.ImportBlockSimXMLFile&amp;lt;/code&amp;gt; method has been renamed to &amp;lt;code&amp;gt;Repository.BlockSim.ImportBlockSimXMLFile&amp;lt;/code&amp;gt;, etc. The previous versions of the methods still exist so your code is not broken, but they are deprecated and may be removed in future versions of the API.&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=ReliaSoft_API_Object_IDs&amp;diff=65518</id>
		<title>ReliaSoft API Object IDs</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=ReliaSoft_API_Object_IDs&amp;diff=65518"/>
		<updated>2019-03-14T17:51:14Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}&lt;br /&gt;
{{Template:BacktoPrevPage}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- This page is linked to a common Help file topic. See: http://help.synthesisplatform.net/weibull_alta11/index.htm#application_setup_other_synthesis_settings.htm --&amp;gt; &lt;br /&gt;
Each item in a ReliaSoft repository is identified by a unique record identifier called an &#039;&#039;object ID&#039;&#039;. Object IDs can help you trace responses from the API, which are helpful when learning how to use the API to read/write data to a repository. &lt;br /&gt;
&lt;br /&gt;
To display the object ID in a ReliaSoft desktop application, choose &#039;&#039;&#039;File &amp;gt; Application Setup&#039;&#039;&#039;, then click &#039;&#039;&#039;Other&#039;&#039;&#039; under the &#039;&#039;&#039;Synthesis Settings&#039;&#039;&#039; heading in the navigation panel. Select the check box for &#039;&#039;&#039;Display Object IDs&#039;&#039;&#039;. The object IDs will be displayed for the following items:&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border-collapse: collapse; text-align: left; cellborder&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background:#F2F2F2;&amp;quot; &lt;br /&gt;
!&amp;lt;span style=&amp;quot;color:#585858;&amp;quot;&amp;gt;Item&amp;lt;/span&amp;gt;&lt;br /&gt;
!&amp;lt;span style=&amp;quot;color:#585858;&amp;quot;&amp;gt;Location of ID in the application&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Project||The ID is displayed in two locations:&lt;br /&gt;
&lt;br /&gt;
* The Project Properties window (&#039;&#039;&#039;Project &amp;gt; Management &amp;gt; Edit Project Properties&#039;&#039;&#039;) displays the project&#039;s object ID at the caption bar of the window.&lt;br /&gt;
&lt;br /&gt;
* The Manage Projects window (&#039;&#039;&#039;Project &amp;gt; Management &amp;gt; Manage Projects&#039;&#039;&#039;) displays a column containing the object IDs of each project in the database.&lt;br /&gt;
|-&lt;br /&gt;
|Resource (e.g., models,URDs, etc.)||The Resource Manager (&#039;&#039;&#039;Home &amp;gt; Synthesis &amp;gt; Resource Manager&#039;&#039;&#039;) displays a column containing the object IDs of the resources.&lt;br /&gt;
|-&lt;br /&gt;
|Xfmea, RCM++ or RBI system hierarchy item||To display the object ID (also called &#039;&#039;record ID&#039;&#039;) of a system hierarchy item, right-click any of the column headers in the System Hierarchy panel and choose &#039;&#039;&#039;Customize Columns&#039;&#039;&#039;. Select the &#039;&#039;&#039;Record ID&#039;&#039;&#039; check box.&lt;br /&gt;
|-&lt;br /&gt;
|FMEA records (e.g., functions, causes, etc.)||To display the object IDs of FMEA functions, causes, effects, controls and actions, right-click any of the column headers in the FMEA analysis and choose &#039;&#039;&#039;Customize Columns&#039;&#039;&#039;. Select the &#039;&#039;&#039;Record ID&#039;&#039;&#039; check box.&lt;br /&gt;
|-&lt;br /&gt;
|BlockSim diagrams and block IDs ||The IDs are displayed on the diagram control panel.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=API_Changelog&amp;diff=65517</id>
		<title>API Changelog</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=API_Changelog&amp;diff=65517"/>
		<updated>2019-03-14T17:44:29Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}{{Template:APIUpgradesNavBox}}&lt;br /&gt;
 &lt;br /&gt;
Before you upgrade to the latest version of the ReliaSoft API, review what&#039;s new and what has changed since the last version. The latest version may have introduced some code-breaking changes, requiring you to make changes to your code before upgrading. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to get the latest version of the ReliaSoft API object library file&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The object library file is located in the folder where the ReliaSoft applications are installed. By default, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
To get the latest version of the file, choose &#039;&#039;&#039;File &amp;gt; Help &amp;gt; Check for Updates&#039;&#039;&#039; or download the latest software update from our website at [http://www.reliasoft.com/synthesis/downloads.htm http://www.ReliaSoft.com/synthesis/downloads.htm]. You may need to to update the library reference of your custom applications to point to the location of the object library file. For VBA applications, use the SynthesisAPI.tlb file. For .NET applications, use the SynthesisAPI.dll file. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
Here&#039;s a brief overview of the most significant enhancements and deprecations in the API since the previous version.&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all new classes and enumerations added to the object library, see [[New Classes and Enumerations]].&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all new methods and properties added to existing objects, see [[New Members and Constants]].&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all deprecations, see [[Deprecated and Removed Members]].&lt;br /&gt;
&lt;br /&gt;
===19.0.1===&lt;br /&gt;
*Changed the name of the libraries to ReliaSoftAPI19.tlb and ReliaSoftAPI19.dll. The API&#039;s are also now version dependent.&lt;br /&gt;
*Added the following to the [[Repository Class|Repository]] class:&lt;br /&gt;
:*[[Repository.Action.GetFMEAActionLocatorLinkPath|Repository.Action.GetFMEAActionLocatorLinkPath]]&lt;br /&gt;
*Added the following methods and properties to [[CCorrectiveTask Class|cCorrectiveTask]] class:&lt;br /&gt;
:*[[CCorrectiveTask.GetPools_Method|GetPools]]&lt;br /&gt;
:*[[CCorrectiveTask.SetPools_Method|SetPools]]&lt;br /&gt;
:*[[CCorrectiveTask.GetTeams_Method|GetTeams]]&lt;br /&gt;
:*[[CCorrectiveTask.GetTeams_Method|SetTeams]]&lt;br /&gt;
:*Pools&lt;br /&gt;
:*Teams&lt;br /&gt;
*Removed the following methods and property from the [[CCorrectiveTask Class|cCorrectiveTask]] class:&lt;br /&gt;
:*SetCrewIDs&lt;br /&gt;
:*GetCrewIDs&lt;br /&gt;
:*CrewIDs&lt;br /&gt;
*Added the following methods and properties to the [[CScheduledTask Class|cScheduledTask]] class:&lt;br /&gt;
:*[[CScheduledTask.OnCondGetTeams_Method|OnCondGetTeams]]&lt;br /&gt;
:*[[CScheduledTask.OnCondSetTeams_Method|OnCondSetTeams]]&lt;br /&gt;
:*[[CScheduledTask.GetPools_Method|GetPools]]&lt;br /&gt;
:*[[CScheduledTask.SetPools_Method|SetPools]]&lt;br /&gt;
:*[[CScheduledTask.GetTeams_Method|GetTeams]]&lt;br /&gt;
:*[[CScheduledTask.GetTeams_Method|SetTeams]]&lt;br /&gt;
:*OnCondTeams&lt;br /&gt;
:*Pools&lt;br /&gt;
:*Teams&lt;br /&gt;
*Removed the following methods and property from the [[CScheduledTask Class|cScheduledTask]] class:&lt;br /&gt;
:*SetCrewIDs&lt;br /&gt;
:*GetCrewIDs&lt;br /&gt;
:*CrewIDs&lt;br /&gt;
:*OnCondCrewIDs&lt;br /&gt;
*Added the [[PoolInfo|PoolInfo]] structure to be used with the [[CScheduledTask.GetPools_Method|GetPools]] and [[CScheduledTask.SetPools_Method|SetPools]] methods, as well as the Pools property.&lt;br /&gt;
*Added the [[TeamInfo Class|TeamInfo]] class which contains the following methods and property:&lt;br /&gt;
:*[[TeamInfo.GetCrewIDs_Method|GetCrewIDs]]&lt;br /&gt;
:*[[TeamInfo.SetCrewIDs_Method|SetCrewIDs]]&lt;br /&gt;
:*CrewIDs&lt;br /&gt;
*Added the following properties to the [[XfmeaEffect Class|XFMEAEffect]] class:&lt;br /&gt;
:*SubSev1Init&lt;br /&gt;
:*SubSev1Rev&lt;br /&gt;
:*SubSev2Init&lt;br /&gt;
:*SubSev2Rev&lt;br /&gt;
:*SubSev3Init&lt;br /&gt;
:*SubSev3Rev&lt;br /&gt;
:*SubSev4Init&lt;br /&gt;
:*SubSev4Rev&lt;br /&gt;
:*SubSev5Init&lt;br /&gt;
:*SubSev5Rev&lt;br /&gt;
:*SubSev6Init&lt;br /&gt;
:*SubSev6Rev&lt;br /&gt;
:*SubSev7Init&lt;br /&gt;
:*SubSev7Rev&lt;br /&gt;
:*SubSev8Init&lt;br /&gt;
:*SubSev8Rev&lt;br /&gt;
*Added the following property to the [[XfmeaItem Class|XFMEAItem]] class:&lt;br /&gt;
:*Qty&lt;br /&gt;
&lt;br /&gt;
===18.0.3===&lt;br /&gt;
*Added the following methods to the [[Repository Class|Repository]] class:&lt;br /&gt;
:*[[Repository.Project.GetUserAccessibleProjects|Repository.Project.GetUserAccessibleProjects]]&lt;br /&gt;
:*[[Repository.Project.GetUserPermissions|Repository.Project.GetUserPermissions ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===18.0.2===&lt;br /&gt;
*Increased the length of a scheduled task name up to 2,000 characters to match the desktop applications.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===18.0.1===&lt;br /&gt;
Initial public release for Version 2018 applications.&lt;br /&gt;
&lt;br /&gt;
*In the &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WeibullDataSet Class|WeibullDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object, the type for the NumberInGroup parameter was changed from Integer to Double to allow fractional failure calculations.&lt;br /&gt;
*In &amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaItem Class|XfmeaItem]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object, added the ReliabilityPolicyType property.&lt;br /&gt;
*Added the following properties to the [[WAPlotSettings Class|WAPlotSettings ]]:&lt;br /&gt;
**ShowDataPoints&lt;br /&gt;
**Show3PWeibullAdjustedItems&lt;br /&gt;
**Show3PWeibullUnadjustedItems&lt;br /&gt;
*Added the following methods to the Repository class:&lt;br /&gt;
:*[[Repository.Xfmea.AssignActionToXfmeaCause Method|Repository.Xfmea.AssignActionToXfmeaCause]]&lt;br /&gt;
:*[[Repository.Xfmea.AssignControlToXfmeaCause Method|Repository.Xfmea.AssignControlToXfmeaCause]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseActions Method|Repository.Xfmea.GetXfmeaCauseActions]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseActionsDictionary Method|Repository.Xfmea.GetXfmeaCauseActionsDictionary]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseControls Method|Repository.Xfmea.GetXfmeaCauseControls]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseControlsDictionary Method |Repository.Xfmea.GetXfmeaCauseControlsDictionary]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===11.0.1===&lt;br /&gt;
Initial public release for Version 11 applications. &lt;br /&gt;
 &lt;br /&gt;
*Added new classes and methods for accessing &#039;&#039;profiles&#039;&#039;, which is a new type of Synthesis resource introduced in the latest version of the Synthesis desktop applications.&lt;br /&gt;
*Removed the obsolete [[ALTAStressProfile_Class|ALTAStressProfile]] class and replaced it with the new [[CProfile Class|cProfile]] class.&lt;br /&gt;
*Removed the obsolete [[ALTASegment Class|ALTASegment]] class and replaced it with the new [[ProfileSegment Class|ProfileSegment]] class.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===10.1.4===&lt;br /&gt;
*Added ability to assign a URD to a BlockSim block in a Synthesis repository. Includes ability to get an array of BlockSim block names, RBDs, fault trees and properties.&lt;br /&gt;
*Added ability to hide messages when doing batch calculations and customize event procedures for &amp;lt;code&amp;gt;Repository&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WeibullDataSet&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;ALTADataSet&amp;lt;/code&amp;gt; objects.&lt;br /&gt;
*For locally-hosted licensing, added the [http://www.synthesisplatform.net/synthesis_api_ante_service.htm Synthesis API Ante Service] to improve response times.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===10.1.1===&lt;br /&gt;
*Added ability to get global and reference resources. An optional &amp;lt;code&amp;gt;Filter&amp;lt;/code&amp;gt; parameter has been added to the following methods. The filter&#039;s default value is 0, which returns local resources.&lt;br /&gt;
:*[[Repository.Action.GetAllActions]]&lt;br /&gt;
:*[[Repository.Control.GetAllXfmeaControls]]  &lt;br /&gt;
:*[[Repository.Model.GetAllModels]]&lt;br /&gt;
:*[[Repository.Model.GetAllModelsInfo]]&lt;br /&gt;
:*[[Repository.Crew.GetAllCrews]]&lt;br /&gt;
:*[[Repository.Pool.GetAllPools]]&lt;br /&gt;
:*[[Repository.Task.GetAllScheduledTasks]]&lt;br /&gt;
:*[[Repository.Task.GetAllCorrectiveTasks]]&lt;br /&gt;
:*[[Repository.URD.GetAllURDs]]&lt;br /&gt;
:*[[Repository.Variable.GetAllVariables]]&lt;br /&gt;
*Added a class that allows VBA users to change the API library language.&lt;br /&gt;
*Added a method for getting a single system hierarchy item.&lt;br /&gt;
*Added new user-defined properties to relevant resource classes.&lt;br /&gt;
*Deprecated a couple of obsolete properties.&lt;br /&gt;
*Various fixes and non-breaking changes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===10.0.3===&lt;br /&gt;
Initial public release for Version 10 applications. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improved flexibility&#039;&#039;&#039;&lt;br /&gt;
:*Added all new classes and methods for accessing FMEA and related data from Xfmea, RCM++ and RBI.&lt;br /&gt;
:*Added several new methods in the Repository class to provide more options for manipulating Synthesis resources. The most significant of these is the ability to get a single resource from a Synthesis repository. You are no longer limited to using arrays to access a particular resource item. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;New features incorporated&#039;&#039;&#039;&lt;br /&gt;
:*Added new properties and enumerations in the cAction class to take advantage of the expanded action-tracking capabilities introduced in the latest version of the Synthesis platform. This includes action properties relevant to the project planner and Xfmea/RCM++/RBI test plans.&lt;br /&gt;
:*For all resource objects (e.g., cModel, cURD, cCrew, etc.), added a new set of properties for accessing the Synthesis identifiers fields in the platform.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Deprecations&#039;&#039;&#039;&lt;br /&gt;
:*The Repository class has been restructured to organize its growing number of members. All of its members are now organized into fields named after the object type they apply to. For example, the &amp;lt;code&amp;gt;Repository.GetAllModels()&amp;lt;/code&amp;gt; method, which returns a cModel object, has been renamed to &amp;lt;code&amp;gt;Repository.Model.GetAllModels()&amp;lt;/code&amp;gt;; similarly, the &amp;lt;code&amp;gt;Repository.ImportBlockSimXMLFile&amp;lt;/code&amp;gt; method has been renamed to &amp;lt;code&amp;gt;Repository.BlockSim.ImportBlockSimXMLFile&amp;lt;/code&amp;gt;, etc. The previous versions of the methods still exist so your code is not broken, but they are deprecated and may be removed in future versions of the API.&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Deprecated_and_Removed_Members&amp;diff=65516</id>
		<title>Deprecated and Removed Members</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Deprecated_and_Removed_Members&amp;diff=65516"/>
		<updated>2019-03-14T17:32:32Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}{{Template:APIUpgradesNavBox}}&lt;br /&gt;
&lt;br /&gt;
Below is a summary of what has been changed, removed and deprecated in the Synthesis API since its previous version. The status of an object member may be any of the following:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Changed&#039;&#039;&#039; - The syntax of the member has changed.&lt;br /&gt;
*&#039;&#039;&#039;Deprecated&#039;&#039;&#039; - The member is obsolete and may be removed in future versions of the API. Do not use it in new applications.&lt;br /&gt;
*&#039;&#039;&#039;Removed&#039;&#039;&#039; - The member has been removed from the object model.&lt;br /&gt;
&lt;br /&gt;
==Revisions since 19.0.1==&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#FCF8F8; background-color:#1D572F&amp;quot;&amp;gt;&amp;amp;nbsp; Major &amp;amp;nbsp;&amp;lt;/span&amp;gt;&#039;&#039;&#039; Removed the following depracated properties from the [[Repository Class|Repository]] class. The methods with the same names exist in the relevant sub-sections (for example instead of Repository.GetAllProjects, use Repository.Project.GetAllProjects).&lt;br /&gt;
:*GetAllProjects&lt;br /&gt;
:*GetCurrentProjects&lt;br /&gt;
:*SetCurrentProject&lt;br /&gt;
:*GetAllUnits&lt;br /&gt;
:*GetDefaultUnitID&lt;br /&gt;
:*GetAllModelsInfo&lt;br /&gt;
:*GetModel&lt;br /&gt;
:*GetAllModels&lt;br /&gt;
:*AddModel&lt;br /&gt;
:*UpdateModel&lt;br /&gt;
:*GetAllURDs&lt;br /&gt;
:*AddURD&lt;br /&gt;
:*UpdateURD&lt;br /&gt;
:*GetAllVariables&lt;br /&gt;
:*AddVariable&lt;br /&gt;
:*UpdateVariable&lt;br /&gt;
:*GetAllCorrectiveTasks&lt;br /&gt;
:*AddCorrectiveTask&lt;br /&gt;
:*UpdateCorrectiveTask&lt;br /&gt;
:*GetAllScheduledTasks&lt;br /&gt;
:*AddScheduledTask&lt;br /&gt;
:*UpdateScheduledTask&lt;br /&gt;
:*GetAllTaskTypes&lt;br /&gt;
:*GetAllCrews&lt;br /&gt;
:*AddCrew&lt;br /&gt;
:*UpdateCrew&lt;br /&gt;
:*GetAllPools&lt;br /&gt;
:*AddPool&lt;br /&gt;
:*UpdatePool&lt;br /&gt;
:*GetAllActions&lt;br /&gt;
:*AddAction&lt;br /&gt;
:*UpdateAction&lt;br /&gt;
:*ImportBlockSimXMLFile&lt;br /&gt;
:*ExportBlockSimXMLFile&lt;br /&gt;
:*SaveRawDataSet&lt;br /&gt;
:*GetAllXfracasEntities&lt;br /&gt;
:*ImportXfracasXmlFile&lt;br /&gt;
:*ImportXfracasXmlString&lt;br /&gt;
:*ImportXfracasXml&lt;br /&gt;
:*SerializeXMLObjectToByteArray&lt;br /&gt;
:*ProcessXfracasImports&lt;br /&gt;
:*WriteToDiagnosticsLog&lt;br /&gt;
:*WriteToDiagnosticsLog&lt;br /&gt;
&lt;br /&gt;
*Removed the following obsolete methods and properties from [[CCorrectiveTask Class|cCorrectiveTask]] class:&lt;br /&gt;
:*[[CCorrectiveTask.GetCrewIDs_Method|GetCrewIDs]]&lt;br /&gt;
:*[[CCorrectiveTask.SetCrewIDs_Method|SetCrewIDs]]&lt;br /&gt;
:*CrewIDs&lt;br /&gt;
:*PoolID&lt;br /&gt;
&lt;br /&gt;
*Removed the following obsolete methods and properties from [[CScheduledTask Class|cScheduledTask]] class: &lt;br /&gt;
:*[[CScheduledTask.GetCrewIDs_Method|GetCrewIDs]]&lt;br /&gt;
:*[[CScheduledTask.SetCrewIDs_Method|SetCrewIDs]]&lt;br /&gt;
:*PoolID&lt;br /&gt;
:*OnCondCrewIDs&lt;br /&gt;
:*OnCondPoolID&lt;br /&gt;
&lt;br /&gt;
==Revisions since 11.0.1==&lt;br /&gt;
*Removed the obsolete [[ALTAStressProfile_Class|ALTAStressProfile]] class. Use the [[CProfile Class|cProfile]] class going forward.&lt;br /&gt;
*Removed the obsolete [[ALTASegment Class|ALTASegment]] class. Use the [[ProfileSegment Class|ProfileSegment]] class going forward.&lt;br /&gt;
&lt;br /&gt;
==Revisions since 10.1.1==&lt;br /&gt;
*Removed the obsolete &amp;lt;code&amp;gt;Nr&amp;lt;/code&amp;gt; property in [[XfmeaItem Class|XfmeaItem]] class. Use the &amp;lt;code&amp;gt;PartNr&amp;lt;/code&amp;gt; property going forward.&lt;br /&gt;
*Removed the obsolete &amp;lt;code&amp;gt;OnCondPerformTaskEvenIfItBringsSysDown&amp;lt;/code&amp;gt; property in [[CScheduledTask_Class|cScheduledTask]] class.&lt;br /&gt;
*Non-breaking changes were made to the following methods. An optional &amp;lt;code&amp;gt;Filter&amp;lt;/code&amp;gt; parameter has been added to give the ability to get global or reference resources. The filter&#039;s default value is 0, which returns local resources.&lt;br /&gt;
:*[[Repository.Action.GetAllActions]]&lt;br /&gt;
:*[[Repository.Control.GetAllXfmeaControls]]  &lt;br /&gt;
:*[[Repository.Model.GetAllModels]]&lt;br /&gt;
:*[[Repository.Model.GetAllModelsInfo]]&lt;br /&gt;
:*[[Repository.Crew.GetAllCrews]]&lt;br /&gt;
:*[[Repository.Pool.GetAllPools]]&lt;br /&gt;
:*[[Repository.Task.GetAllScheduledTasks]]&lt;br /&gt;
:*[[Repository.Task.GetAllCorrectiveTasks]]&lt;br /&gt;
:*[[Repository.URD.GetAllURDs]]&lt;br /&gt;
:*[[Repository.Variable.GetAllVariables]]&lt;br /&gt;
&lt;br /&gt;
==Revisions since 10.0.3==&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#FCF8F8; background-color:#1D572F&amp;quot;&amp;gt;&amp;amp;nbsp; Major &amp;amp;nbsp;&amp;lt;/span&amp;gt;&#039;&#039;&#039; The [[Repository Class|Repository]] class has been restructured. All of its members are now organized into fields named after the object type they apply to. For example, the &amp;lt;code&amp;gt;Repository.GetAllModels()&amp;lt;/code&amp;gt; method, which returns a cModel object, has been renamed to &amp;lt;code&amp;gt;Repository.Model.GetAllModels()&amp;lt;/code&amp;gt;; similarly, the &amp;lt;code&amp;gt;Repository.ImportBlockSimXMLFile&amp;lt;/code&amp;gt; method has been renamed to &amp;lt;code&amp;gt;Repository.BlockSim.ImportBlockSimXMLFile&amp;lt;/code&amp;gt;, etc. The previous versions of the methods still exist so your code is not broken, but they are deprecated and may be removed in future versions of the API. &lt;br /&gt;
* Deprecated the [[Repository.Model.GetAllModelsInfo|Repository.Model.GetAllModelsInfo()]] method.&lt;br /&gt;
* Removed the following obsolete properties in [[CAction Class|cAction]] class: &lt;br /&gt;
:*AppDate&lt;br /&gt;
:*AppUserID&lt;br /&gt;
:*CompDate&lt;br /&gt;
:*DueDate&lt;br /&gt;
:*Duration&lt;br /&gt;
:*EstCost&lt;br /&gt;
:*PersonResp&lt;br /&gt;
:*RespUserID&lt;br /&gt;
:*ShortDsc&lt;br /&gt;
:*StartDate&lt;br /&gt;
:*StatusFlag&lt;br /&gt;
*Removed the following obsolete properties in [[CScheduledTask_Class|cScheduledTask]] class:&lt;br /&gt;
:*TaskFrequencyIDOrig&lt;br /&gt;
:*TaskFrequencyUnitIDOrig&lt;br /&gt;
:*TaskFrequencyValueOrig&lt;br /&gt;
:*TaskFreqValueVariableIDOrig&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Deprecated_and_Removed_Members&amp;diff=65515</id>
		<title>Deprecated and Removed Members</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Deprecated_and_Removed_Members&amp;diff=65515"/>
		<updated>2019-03-14T17:32:17Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}{{Template:APIUpgradesNavBox}}&lt;br /&gt;
&lt;br /&gt;
Below is a summary of what has been changed, removed and deprecated in the Synthesis API since its previous version. The status of an object member may be any of the following:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Changed&#039;&#039;&#039; - The syntax of the member has changed.&lt;br /&gt;
*&#039;&#039;&#039;Deprecated&#039;&#039;&#039; - The member is obsolete and may be removed in future versions of the API. Do not use it in new applications.&lt;br /&gt;
*&#039;&#039;&#039;Removed&#039;&#039;&#039; - The member has been removed from the object model.&lt;br /&gt;
&lt;br /&gt;
==Revisions since 19.0.1==&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#FCF8F8; background-color:#1D572F&amp;quot;&amp;gt;&amp;amp;nbsp; Major &amp;amp;nbsp;&amp;lt;/span&amp;gt;&#039;&#039;&#039; Removed the following depracated properties from the [[Repository Class|Repository]] class. The methods with the same names exist in the relevant sub-sections (for example instead of Repository.GetAllProjects, use Repository.Project.GetAllProjects).&lt;br /&gt;
:*GetAllProjects&lt;br /&gt;
:*GetCurrentProjects&lt;br /&gt;
:*SetCurrentProject&lt;br /&gt;
:*GetAllUnits&lt;br /&gt;
:*GetDefaultUnitID&lt;br /&gt;
:*GetAllModelsInfo&lt;br /&gt;
:*GetModel&lt;br /&gt;
:*GetAllModels&lt;br /&gt;
:*AddModel&lt;br /&gt;
:*UpdateModel&lt;br /&gt;
:*GetAllURDs&lt;br /&gt;
:*AddURD&lt;br /&gt;
:*UpdateURD&lt;br /&gt;
:*GetAllVariables&lt;br /&gt;
:*AddVariable&lt;br /&gt;
:*UpdateVariable&lt;br /&gt;
:*GetAllCorrectiveTasks&lt;br /&gt;
:*AddCorrectiveTask&lt;br /&gt;
:*UpdateCorrectiveTask&lt;br /&gt;
:*GetAllScheduledTasks&lt;br /&gt;
:*AddScheduledTask&lt;br /&gt;
:*UpdateScheduledTask&lt;br /&gt;
:*GetAllTaskTypes&lt;br /&gt;
:*GetAllCrews&lt;br /&gt;
:*AddCrew&lt;br /&gt;
:*UpdateCrew&lt;br /&gt;
:*GetAllPools&lt;br /&gt;
:*AddPool&lt;br /&gt;
:*UpdatePool&lt;br /&gt;
:*GetAllActions&lt;br /&gt;
:*AddAction&lt;br /&gt;
:*UpdateAction&lt;br /&gt;
:*ImportBlockSimXMLFile&lt;br /&gt;
:*ExportBlockSimXMLFile&lt;br /&gt;
:*SaveRawDataSet&lt;br /&gt;
:*GetAllXfracasEntities&lt;br /&gt;
:*ImportXfracasXmlFile&lt;br /&gt;
:*ImportXfracasXmlString&lt;br /&gt;
:*ImportXfracasXml&lt;br /&gt;
:*SerializeXMLObjectToByteArray&lt;br /&gt;
:*ProcessXfracasImports&lt;br /&gt;
:*WriteToDiagnosticsLog&lt;br /&gt;
:*WriteToDiagnosticsLog&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Removed the following obsolete methods and properties from [[CCorrectiveTask Class|cCorrectiveTask]] class:&lt;br /&gt;
:*[[CCorrectiveTask.GetCrewIDs_Method|GetCrewIDs]]&lt;br /&gt;
:*[[CCorrectiveTask.SetCrewIDs_Method|SetCrewIDs]]&lt;br /&gt;
:*CrewIDs&lt;br /&gt;
:*PoolID&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Removed the following obsolete methods and properties from [[CScheduledTask Class|cScheduledTask]] class: &lt;br /&gt;
:*[[CScheduledTask.GetCrewIDs_Method|GetCrewIDs]]&lt;br /&gt;
:*[[CScheduledTask.SetCrewIDs_Method|SetCrewIDs]]&lt;br /&gt;
:*PoolID&lt;br /&gt;
:*OnCondCrewIDs&lt;br /&gt;
:*OnCondPoolID&lt;br /&gt;
&lt;br /&gt;
==Revisions since 11.0.1==&lt;br /&gt;
*Removed the obsolete [[ALTAStressProfile_Class|ALTAStressProfile]] class. Use the [[CProfile Class|cProfile]] class going forward.&lt;br /&gt;
*Removed the obsolete [[ALTASegment Class|ALTASegment]] class. Use the [[ProfileSegment Class|ProfileSegment]] class going forward.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Revisions since 10.1.1==&lt;br /&gt;
*Removed the obsolete &amp;lt;code&amp;gt;Nr&amp;lt;/code&amp;gt; property in [[XfmeaItem Class|XfmeaItem]] class. Use the &amp;lt;code&amp;gt;PartNr&amp;lt;/code&amp;gt; property going forward.&lt;br /&gt;
*Removed the obsolete &amp;lt;code&amp;gt;OnCondPerformTaskEvenIfItBringsSysDown&amp;lt;/code&amp;gt; property in [[CScheduledTask_Class|cScheduledTask]] class.&lt;br /&gt;
*Non-breaking changes were made to the following methods. An optional &amp;lt;code&amp;gt;Filter&amp;lt;/code&amp;gt; parameter has been added to give the ability to get global or reference resources. The filter&#039;s default value is 0, which returns local resources.&lt;br /&gt;
:*[[Repository.Action.GetAllActions]]&lt;br /&gt;
:*[[Repository.Control.GetAllXfmeaControls]]  &lt;br /&gt;
:*[[Repository.Model.GetAllModels]]&lt;br /&gt;
:*[[Repository.Model.GetAllModelsInfo]]&lt;br /&gt;
:*[[Repository.Crew.GetAllCrews]]&lt;br /&gt;
:*[[Repository.Pool.GetAllPools]]&lt;br /&gt;
:*[[Repository.Task.GetAllScheduledTasks]]&lt;br /&gt;
:*[[Repository.Task.GetAllCorrectiveTasks]]&lt;br /&gt;
:*[[Repository.URD.GetAllURDs]]&lt;br /&gt;
:*[[Repository.Variable.GetAllVariables]]&lt;br /&gt;
&lt;br /&gt;
==Revisions since 10.0.3==&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#FCF8F8; background-color:#1D572F&amp;quot;&amp;gt;&amp;amp;nbsp; Major &amp;amp;nbsp;&amp;lt;/span&amp;gt;&#039;&#039;&#039; The [[Repository Class|Repository]] class has been restructured. All of its members are now organized into fields named after the object type they apply to. For example, the &amp;lt;code&amp;gt;Repository.GetAllModels()&amp;lt;/code&amp;gt; method, which returns a cModel object, has been renamed to &amp;lt;code&amp;gt;Repository.Model.GetAllModels()&amp;lt;/code&amp;gt;; similarly, the &amp;lt;code&amp;gt;Repository.ImportBlockSimXMLFile&amp;lt;/code&amp;gt; method has been renamed to &amp;lt;code&amp;gt;Repository.BlockSim.ImportBlockSimXMLFile&amp;lt;/code&amp;gt;, etc. The previous versions of the methods still exist so your code is not broken, but they are deprecated and may be removed in future versions of the API. &lt;br /&gt;
* Deprecated the [[Repository.Model.GetAllModelsInfo|Repository.Model.GetAllModelsInfo()]] method.&lt;br /&gt;
* Removed the following obsolete properties in [[CAction Class|cAction]] class: &lt;br /&gt;
:*AppDate&lt;br /&gt;
:*AppUserID&lt;br /&gt;
:*CompDate&lt;br /&gt;
:*DueDate&lt;br /&gt;
:*Duration&lt;br /&gt;
:*EstCost&lt;br /&gt;
:*PersonResp&lt;br /&gt;
:*RespUserID&lt;br /&gt;
:*ShortDsc&lt;br /&gt;
:*StartDate&lt;br /&gt;
:*StatusFlag&lt;br /&gt;
*Removed the following obsolete properties in [[CScheduledTask_Class|cScheduledTask]] class:&lt;br /&gt;
:*TaskFrequencyIDOrig&lt;br /&gt;
:*TaskFrequencyUnitIDOrig&lt;br /&gt;
:*TaskFrequencyValueOrig&lt;br /&gt;
:*TaskFreqValueVariableIDOrig&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=CCorrectiveTask_Class&amp;diff=65514</id>
		<title>CCorrectiveTask Class</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=CCorrectiveTask_Class&amp;diff=65514"/>
		<updated>2019-03-14T17:31:08Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:cCorrectiveTask Class}}{{Template:API}}{{Template:APIBreadcrumb}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;Represents a corrective task resource.&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Constructors==&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|CCorrectiveTask||Creates an instance of the cCorrectiveTask class.&lt;br /&gt;
|-&lt;br /&gt;
|[[CCorrectiveTask Constructors|cCorrectiveTask()]]||{{:CCorrectiveTask Constructors}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Methods==&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;width: 240px;&amp;quot;|[[CCorrectiveTask.GetPools_Method|GetPools]]||{{:CCorrectiveTask.GetPools_Method}} &lt;br /&gt;
|- &lt;br /&gt;
|[[CCorrectiveTask.SetPools_Method|SetPools]]||{{:CCorrectiveTask.SetPools_Method}}&lt;br /&gt;
|- &lt;br /&gt;
|[[CCorrectiveTask.GetTeams_Method|GetTeams]]||{{:CCorrectiveTask.GetTeams_Method}}&lt;br /&gt;
|- &lt;br /&gt;
|[[CCorrectiveTask.SetTeams_Method|SetTeams]]||{{:CCorrectiveTask.SetTeams_Method}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Properties  ==&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|BringItemDown||Indicates whether the task will bring the item down. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = True.&lt;br /&gt;
|-&lt;br /&gt;
|BringSystemDown||Indicates whether the task will bring the system down. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = False. &lt;br /&gt;
|-&lt;br /&gt;
|DurationModelID||Gets or sets the numeric ID of the duration model assigned to the task. &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|ID||Gets the numeric ID of the task. &#039;&#039;&#039;Integer&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|{{Template:API_TxtIdentifiers}}&lt;br /&gt;
|-&lt;br /&gt;
|MiscCostModelID||Gets or sets the numeric ID of the model that represents the cost per task. &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|MiscCostPerTimeModelID||Gets or sets the numeric ID of the model that represents the downtime rate. &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|Name||Gets or sets the name of the task. &#039;&#039;&#039;String&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|PerformTaskEvenIfItBringsSysDown||Indicates whether the task should be performed if bringing the item down causes the system to go down. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = True.&lt;br /&gt;
|-&lt;br /&gt;
|ProjectID||Gets the numeric ID of the project the task belongs to. &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|ResFactorType||Gets or sets a value from the &#039;&#039;&#039;[[TaskRestorationTypeEnum Enumeration|TaskRestorationTypeEnum]]&#039;&#039;&#039;, which specifies the effect of the restoration. Default value = 1 (restores all accumulated damage).&lt;br /&gt;
|-&lt;br /&gt;
|ResFactorValue||Gets or sets the restoration amount (0.9 = 90% restoration). A value = 1 indicates an as good as new condition, a value = 0 indicates an as bad as old condition. A values greater than zero but less than 1 indicates a partial restoration. &#039;&#039;&#039;Double&#039;&#039;&#039;.&lt;br /&gt;
|-&lt;br /&gt;
|TaskFrequencyID||Gets or sets a value from the &#039;&#039;&#039;[[TaskFrequencyEnum Enumeration|TaskFrequencyEnum]]&#039;&#039;&#039;, which specifies the frequency at which the task is performed. Default value = 8 (task is performed upon item failure).&lt;br /&gt;
|-&lt;br /&gt;
|Teams||Returns a &#039;&#039;&#039;{{APIPrefix|List}}(Of [[TeamInfo Class|TeamInfo]])&#039;&#039;&#039; containing teams assigned for the task (in the order of priority). (.NET Only)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
*[[Repository.Task.AddCorrectiveTask|Repository.Task.AddCorrectiveTask Method]]&lt;br /&gt;
*[[Repository.Task.GetAllCorrectiveTasks|Repository.Task.GetAllCorrectiveTasks Method]]&lt;br /&gt;
*[[Repository.Task.GetCorrectiveTask|Repository.Task.GetCorrectiveTask Method]]&lt;br /&gt;
*[[Repository.Task.UpdateCorrectiveTask|Repository.Task.UpdateCorrectiveTask Method]]&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=API_Changelog&amp;diff=65513</id>
		<title>API Changelog</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=API_Changelog&amp;diff=65513"/>
		<updated>2019-03-14T17:30:28Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}{{Template:APIUpgradesNavBox}}&lt;br /&gt;
 &lt;br /&gt;
Before you upgrade to the latest version of the ReliaSoft API, review what&#039;s new and what has changed since the last version. The latest version may have introduced some code-breaking changes, requiring you to make changes to your code before upgrading. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to get the latest version of the ReliaSoft API object library file&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The object library file is located in the folder where the ReliaSoft applications are installed. By default, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
To get the latest version of the file, choose &#039;&#039;&#039;File &amp;gt; Help &amp;gt; Check for Updates&#039;&#039;&#039; or download the latest software update from our website at [http://www.reliasoft.com/synthesis/downloads.htm http://www.ReliaSoft.com/synthesis/downloads.htm]. You may need to to update the library reference of your custom applications to point to the location of the object library file. For VBA applications, use the SynthesisAPI.tlb file. For .NET applications, use the SynthesisAPI.dll file. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
Here&#039;s a brief overview of the most significant enhancements and deprecations in the API since the previous version.&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all new classes and enumerations added to the object library, see [[New Classes and Enumerations]].&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all new methods and properties added to existing objects, see [[New Members and Constants]].&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all deprecations, see [[Deprecated and Removed Members]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===19.0.1===&lt;br /&gt;
*Changed the name of the libraries to ReliaSoftAPI19.tlb and ReliaSoftAPI19.dll. The API&#039;s are also now version dependent.&lt;br /&gt;
*Added the following to the [[Repository Class|Repository]] class:&lt;br /&gt;
:*[[Repository.Action.GetFMEAActionLocatorLinkPath|Repository.Action.GetFMEAActionLocatorLinkPath]]&lt;br /&gt;
*Added the following to the [[CCorrectiveTask Class|cCorrectiveTask]] class:&lt;br /&gt;
:*[[CCorrectiveTask.GetPools_Method|GetPools]]&lt;br /&gt;
:*[[CCorrectiveTask.SetPools_Method|SetPools]]&lt;br /&gt;
:*[[CCorrectiveTask.GetTeams_Method|GetTeams]]&lt;br /&gt;
:*[[CCorrectiveTask.GetTeams_Method|SetTeams]]&lt;br /&gt;
*Added the following properties to the [[CCorrectiveTask Class|cCorrectiveTask]] class:&lt;br /&gt;
:*Pools&lt;br /&gt;
:*Teams&lt;br /&gt;
*Added the following to the [[CScheduledTask Class|cScheduledTask]] class:&lt;br /&gt;
:*[[CScheduledTask.OnCondGetTeams_Method|OnCondGetTeams]]&lt;br /&gt;
:*[[CScheduledTask.OnCondSetTeams_Method|OnCondSetTeams]]&lt;br /&gt;
:*[[CScheduledTask.GetPools_Method|GetPools]]&lt;br /&gt;
:*[[CScheduledTask.SetPools_Method|SetPools]]&lt;br /&gt;
:*[[CScheduledTask.GetTeams_Method|GetTeams]]&lt;br /&gt;
:*[[CScheduledTask.GetTeams_Method|SetTeams]]&lt;br /&gt;
*Added the following properties to the [[CScheduledTask Class|cScheduledTask]] class:&lt;br /&gt;
:*OnCondTeams&lt;br /&gt;
:*Pools&lt;br /&gt;
:*Teams&lt;br /&gt;
*Added the following properties to the [[XfmeaEffect Class|XFMEAEffect]] class:&lt;br /&gt;
:*SubSev1Init&lt;br /&gt;
:*SubSev1Rev&lt;br /&gt;
:*SubSev2Init&lt;br /&gt;
:*SubSev2Rev&lt;br /&gt;
:*SubSev3Init&lt;br /&gt;
:*SubSev3Rev&lt;br /&gt;
:*SubSev4Init&lt;br /&gt;
:*SubSev4Rev&lt;br /&gt;
:*SubSev5Init&lt;br /&gt;
:*SubSev5Rev&lt;br /&gt;
:*SubSev6Init&lt;br /&gt;
:*SubSev6Rev&lt;br /&gt;
:*SubSev7Init&lt;br /&gt;
:*SubSev7Rev&lt;br /&gt;
:*SubSev8Init&lt;br /&gt;
:*SubSev8Rev&lt;br /&gt;
*Added the following property to the [[XfmeaItem Class|XFMEAItem]] class:&lt;br /&gt;
:*Qty&lt;br /&gt;
&lt;br /&gt;
===18.0.3===&lt;br /&gt;
*Added the following methods to the [[Repository Class|Repository]] class:&lt;br /&gt;
:*[[Repository.Project.GetUserAccessibleProjects|Repository.Project.GetUserAccessibleProjects]]&lt;br /&gt;
:*[[Repository.Project.GetUserPermissions|Repository.Project.GetUserPermissions ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===18.0.2===&lt;br /&gt;
*Increased the length of a scheduled task name up to 2,000 characters to match the desktop applications.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===18.0.1===&lt;br /&gt;
Initial public release for Version 2018 applications.&lt;br /&gt;
&lt;br /&gt;
*In the &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WeibullDataSet Class|WeibullDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object, the type for the NumberInGroup parameter was changed from Integer to Double to allow fractional failure calculations.&lt;br /&gt;
*In &amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaItem Class|XfmeaItem]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object, added the ReliabilityPolicyType property.&lt;br /&gt;
*Added the following properties to the [[WAPlotSettings Class|WAPlotSettings ]]:&lt;br /&gt;
**ShowDataPoints&lt;br /&gt;
**Show3PWeibullAdjustedItems&lt;br /&gt;
**Show3PWeibullUnadjustedItems&lt;br /&gt;
*Added the following methods to the Repository class:&lt;br /&gt;
:*[[Repository.Xfmea.AssignActionToXfmeaCause Method|Repository.Xfmea.AssignActionToXfmeaCause]]&lt;br /&gt;
:*[[Repository.Xfmea.AssignControlToXfmeaCause Method|Repository.Xfmea.AssignControlToXfmeaCause]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseActions Method|Repository.Xfmea.GetXfmeaCauseActions]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseActionsDictionary Method|Repository.Xfmea.GetXfmeaCauseActionsDictionary]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseControls Method|Repository.Xfmea.GetXfmeaCauseControls]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseControlsDictionary Method |Repository.Xfmea.GetXfmeaCauseControlsDictionary]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===11.0.1===&lt;br /&gt;
Initial public release for Version 11 applications. &lt;br /&gt;
 &lt;br /&gt;
*Added new classes and methods for accessing &#039;&#039;profiles&#039;&#039;, which is a new type of Synthesis resource introduced in the latest version of the Synthesis desktop applications.&lt;br /&gt;
*Removed the obsolete [[ALTAStressProfile_Class|ALTAStressProfile]] class and replaced it with the new [[CProfile Class|cProfile]] class.&lt;br /&gt;
*Removed the obsolete [[ALTASegment Class|ALTASegment]] class and replaced it with the new [[ProfileSegment Class|ProfileSegment]] class.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===10.1.4===&lt;br /&gt;
*Added ability to assign a URD to a BlockSim block in a Synthesis repository. Includes ability to get an array of BlockSim block names, RBDs, fault trees and properties.&lt;br /&gt;
*Added ability to hide messages when doing batch calculations and customize event procedures for &amp;lt;code&amp;gt;Repository&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WeibullDataSet&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;ALTADataSet&amp;lt;/code&amp;gt; objects.&lt;br /&gt;
*For locally-hosted licensing, added the [http://www.synthesisplatform.net/synthesis_api_ante_service.htm Synthesis API Ante Service] to improve response times.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===10.1.1===&lt;br /&gt;
*Added ability to get global and reference resources. An optional &amp;lt;code&amp;gt;Filter&amp;lt;/code&amp;gt; parameter has been added to the following methods. The filter&#039;s default value is 0, which returns local resources.&lt;br /&gt;
:*[[Repository.Action.GetAllActions]]&lt;br /&gt;
:*[[Repository.Control.GetAllXfmeaControls]]  &lt;br /&gt;
:*[[Repository.Model.GetAllModels]]&lt;br /&gt;
:*[[Repository.Model.GetAllModelsInfo]]&lt;br /&gt;
:*[[Repository.Crew.GetAllCrews]]&lt;br /&gt;
:*[[Repository.Pool.GetAllPools]]&lt;br /&gt;
:*[[Repository.Task.GetAllScheduledTasks]]&lt;br /&gt;
:*[[Repository.Task.GetAllCorrectiveTasks]]&lt;br /&gt;
:*[[Repository.URD.GetAllURDs]]&lt;br /&gt;
:*[[Repository.Variable.GetAllVariables]]&lt;br /&gt;
*Added a class that allows VBA users to change the API library language.&lt;br /&gt;
*Added a method for getting a single system hierarchy item.&lt;br /&gt;
*Added new user-defined properties to relevant resource classes.&lt;br /&gt;
*Deprecated a couple of obsolete properties.&lt;br /&gt;
*Various fixes and non-breaking changes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===10.0.3===&lt;br /&gt;
Initial public release for Version 10 applications. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improved flexibility&#039;&#039;&#039;&lt;br /&gt;
:*Added all new classes and methods for accessing FMEA and related data from Xfmea, RCM++ and RBI.&lt;br /&gt;
:*Added several new methods in the Repository class to provide more options for manipulating Synthesis resources. The most significant of these is the ability to get a single resource from a Synthesis repository. You are no longer limited to using arrays to access a particular resource item. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;New features incorporated&#039;&#039;&#039;&lt;br /&gt;
:*Added new properties and enumerations in the cAction class to take advantage of the expanded action-tracking capabilities introduced in the latest version of the Synthesis platform. This includes action properties relevant to the project planner and Xfmea/RCM++/RBI test plans.&lt;br /&gt;
:*For all resource objects (e.g., cModel, cURD, cCrew, etc.), added a new set of properties for accessing the Synthesis identifiers fields in the platform.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Deprecations&#039;&#039;&#039;&lt;br /&gt;
:*The Repository class has been restructured to organize its growing number of members. All of its members are now organized into fields named after the object type they apply to. For example, the &amp;lt;code&amp;gt;Repository.GetAllModels()&amp;lt;/code&amp;gt; method, which returns a cModel object, has been renamed to &amp;lt;code&amp;gt;Repository.Model.GetAllModels()&amp;lt;/code&amp;gt;; similarly, the &amp;lt;code&amp;gt;Repository.ImportBlockSimXMLFile&amp;lt;/code&amp;gt; method has been renamed to &amp;lt;code&amp;gt;Repository.BlockSim.ImportBlockSimXMLFile&amp;lt;/code&amp;gt;, etc. The previous versions of the methods still exist so your code is not broken, but they are deprecated and may be removed in future versions of the API.&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=API_Changelog&amp;diff=65512</id>
		<title>API Changelog</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=API_Changelog&amp;diff=65512"/>
		<updated>2019-03-14T17:24:06Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}{{Template:APIUpgradesNavBox}}&lt;br /&gt;
 &lt;br /&gt;
Before you upgrade to the latest version of the ReliaSoft API, review what&#039;s new and what has changed since the last version. The latest version may have introduced some code-breaking changes, requiring you to make changes to your code before upgrading. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to get the latest version of the ReliaSoft API object library file&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The object library file is located in the folder where the ReliaSoft applications are installed. By default, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
To get the latest version of the file, choose &#039;&#039;&#039;File &amp;gt; Help &amp;gt; Check for Updates&#039;&#039;&#039; or download the latest software update from our website at [http://www.reliasoft.com/synthesis/downloads.htm http://www.ReliaSoft.com/synthesis/downloads.htm]. You may need to to update the library reference of your custom applications to point to the location of the object library file. For VBA applications, use the SynthesisAPI.tlb file. For .NET applications, use the SynthesisAPI.dll file. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
Here&#039;s a brief overview of the most significant enhancements and deprecations in the API since the previous version.&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all new classes and enumerations added to the object library, see [[New Classes and Enumerations]].&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all new methods and properties added to existing objects, see [[New Members and Constants]].&lt;br /&gt;
&lt;br /&gt;
*For a complete list of all deprecations, see [[Deprecated and Removed Members]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===19.0.1===&lt;br /&gt;
*Changed the name of the libraries to ReliaSoftAPI19.tlb and ReliaSoftAPI19.dll. The API&#039;s are also now version dependent.&lt;br /&gt;
*Added the following to the Repository class:&lt;br /&gt;
:*[[Repository.Action.GetFMEAActionLocatorLinkPath|Repository.Action.GetFMEAActionLocatorLinkPath]]&lt;br /&gt;
*Added the following to the cCorrectiveTask class:&lt;br /&gt;
:*[[CCorrectiveTask.GetPools_Method|GetPools]]&lt;br /&gt;
:*[[CCorrectiveTask.SetPools_Method|SetPools]]&lt;br /&gt;
:*[[CCorrectiveTask.GetTeams_Method|GetTeams]]&lt;br /&gt;
:*[[CCorrectiveTask.GetTeams_Method|SetTeams]]&lt;br /&gt;
*Added the following properties to the cCorrectiveTask Class:&lt;br /&gt;
:*Pools&lt;br /&gt;
:*Teams&lt;br /&gt;
*Added the following to the cScheduledTask class:&lt;br /&gt;
:*[[CScheduledTask.OnCondGetTeams_Method|OnCondGetTeams]]&lt;br /&gt;
:*[[CScheduledTask.OnCondSetTeams_Method|OnCondSetTeams]]&lt;br /&gt;
:*[[CScheduledTask.GetPools_Method|GetPools]]&lt;br /&gt;
:*[[CScheduledTask.SetPools_Method|SetPools]]&lt;br /&gt;
:*[[CScheduledTask.GetTeams_Method|GetTeams]]&lt;br /&gt;
:*[[CScheduledTask.GetTeams_Method|SetTeams]]&lt;br /&gt;
*Added the following properties to the cScheduledTask Class:&lt;br /&gt;
:*OnCondTeams&lt;br /&gt;
:*Pools&lt;br /&gt;
:*Teams&lt;br /&gt;
*Added the following properties to the XfmeaEffect class:&lt;br /&gt;
:*SubSev1Init&lt;br /&gt;
:*SubSev1Rev&lt;br /&gt;
:*SubSev2Init&lt;br /&gt;
:*SubSev2Rev&lt;br /&gt;
:*SubSev3Init&lt;br /&gt;
:*SubSev3Rev&lt;br /&gt;
:*SubSev4Init&lt;br /&gt;
:*SubSev4Rev&lt;br /&gt;
:*SubSev5Init&lt;br /&gt;
:*SubSev5Rev&lt;br /&gt;
:*SubSev6Init&lt;br /&gt;
:*SubSev6Rev&lt;br /&gt;
:*SubSev7Init&lt;br /&gt;
:*SubSev7Rev&lt;br /&gt;
:*SubSev8Init&lt;br /&gt;
:*SubSev8Rev&lt;br /&gt;
*Added the following property to the XfmeaItem class:&lt;br /&gt;
:*Qty&lt;br /&gt;
&lt;br /&gt;
===18.0.3===&lt;br /&gt;
*Added the following methods to the Repository class:&lt;br /&gt;
:*[[Repository.Project.GetUserAccessibleProjects|Repository.Project.GetUserAccessibleProjects]]&lt;br /&gt;
:*[[Repository.Project.GetUserPermissions|Repository.Project.GetUserPermissions ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===18.0.2===&lt;br /&gt;
*Increased the length of a scheduled task name up to 2,000 characters to match the desktop applications.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===18.0.1===&lt;br /&gt;
Initial public release for Version 2018 applications.&lt;br /&gt;
&lt;br /&gt;
*In the &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WeibullDataSet Class|WeibullDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object, the type for the NumberInGroup parameter was changed from Integer to Double to allow fractional failure calculations.&lt;br /&gt;
*In &amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaItem Class|XfmeaItem]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object, added the ReliabilityPolicyType property.&lt;br /&gt;
*Added the following properties to the [[WAPlotSettings Class|WAPlotSettings ]]:&lt;br /&gt;
**ShowDataPoints&lt;br /&gt;
**Show3PWeibullAdjustedItems&lt;br /&gt;
**Show3PWeibullUnadjustedItems&lt;br /&gt;
*Added the following methods to the Repository class:&lt;br /&gt;
:*[[Repository.Xfmea.AssignActionToXfmeaCause Method|Repository.Xfmea.AssignActionToXfmeaCause]]&lt;br /&gt;
:*[[Repository.Xfmea.AssignControlToXfmeaCause Method|Repository.Xfmea.AssignControlToXfmeaCause]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseActions Method|Repository.Xfmea.GetXfmeaCauseActions]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseActionsDictionary Method|Repository.Xfmea.GetXfmeaCauseActionsDictionary]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseControls Method|Repository.Xfmea.GetXfmeaCauseControls]]&lt;br /&gt;
:*[[Repository.Xfmea.GetXfmeaCauseControlsDictionary Method |Repository.Xfmea.GetXfmeaCauseControlsDictionary]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===11.0.1===&lt;br /&gt;
Initial public release for Version 11 applications. &lt;br /&gt;
 &lt;br /&gt;
*Added new classes and methods for accessing &#039;&#039;profiles&#039;&#039;, which is a new type of Synthesis resource introduced in the latest version of the Synthesis desktop applications.&lt;br /&gt;
*Removed the obsolete [[ALTAStressProfile_Class|ALTAStressProfile]] class and replaced it with the new [[CProfile Class|cProfile]] class.&lt;br /&gt;
*Removed the obsolete [[ALTASegment Class|ALTASegment]] class and replaced it with the new [[ProfileSegment Class|ProfileSegment]] class.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===10.1.4===&lt;br /&gt;
*Added ability to assign a URD to a BlockSim block in a Synthesis repository. Includes ability to get an array of BlockSim block names, RBDs, fault trees and properties.&lt;br /&gt;
*Added ability to hide messages when doing batch calculations and customize event procedures for &amp;lt;code&amp;gt;Repository&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WeibullDataSet&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;ALTADataSet&amp;lt;/code&amp;gt; objects.&lt;br /&gt;
*For locally-hosted licensing, added the [http://www.synthesisplatform.net/synthesis_api_ante_service.htm Synthesis API Ante Service] to improve response times.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===10.1.1===&lt;br /&gt;
*Added ability to get global and reference resources. An optional &amp;lt;code&amp;gt;Filter&amp;lt;/code&amp;gt; parameter has been added to the following methods. The filter&#039;s default value is 0, which returns local resources.&lt;br /&gt;
:*[[Repository.Action.GetAllActions]]&lt;br /&gt;
:*[[Repository.Control.GetAllXfmeaControls]]  &lt;br /&gt;
:*[[Repository.Model.GetAllModels]]&lt;br /&gt;
:*[[Repository.Model.GetAllModelsInfo]]&lt;br /&gt;
:*[[Repository.Crew.GetAllCrews]]&lt;br /&gt;
:*[[Repository.Pool.GetAllPools]]&lt;br /&gt;
:*[[Repository.Task.GetAllScheduledTasks]]&lt;br /&gt;
:*[[Repository.Task.GetAllCorrectiveTasks]]&lt;br /&gt;
:*[[Repository.URD.GetAllURDs]]&lt;br /&gt;
:*[[Repository.Variable.GetAllVariables]]&lt;br /&gt;
*Added a class that allows VBA users to change the API library language.&lt;br /&gt;
*Added a method for getting a single system hierarchy item.&lt;br /&gt;
*Added new user-defined properties to relevant resource classes.&lt;br /&gt;
*Deprecated a couple of obsolete properties.&lt;br /&gt;
*Various fixes and non-breaking changes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===10.0.3===&lt;br /&gt;
Initial public release for Version 10 applications. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improved flexibility&#039;&#039;&#039;&lt;br /&gt;
:*Added all new classes and methods for accessing FMEA and related data from Xfmea, RCM++ and RBI.&lt;br /&gt;
:*Added several new methods in the Repository class to provide more options for manipulating Synthesis resources. The most significant of these is the ability to get a single resource from a Synthesis repository. You are no longer limited to using arrays to access a particular resource item. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;New features incorporated&#039;&#039;&#039;&lt;br /&gt;
:*Added new properties and enumerations in the cAction class to take advantage of the expanded action-tracking capabilities introduced in the latest version of the Synthesis platform. This includes action properties relevant to the project planner and Xfmea/RCM++/RBI test plans.&lt;br /&gt;
:*For all resource objects (e.g., cModel, cURD, cCrew, etc.), added a new set of properties for accessing the Synthesis identifiers fields in the platform.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Deprecations&#039;&#039;&#039;&lt;br /&gt;
:*The Repository class has been restructured to organize its growing number of members. All of its members are now organized into fields named after the object type they apply to. For example, the &amp;lt;code&amp;gt;Repository.GetAllModels()&amp;lt;/code&amp;gt; method, which returns a cModel object, has been renamed to &amp;lt;code&amp;gt;Repository.Model.GetAllModels()&amp;lt;/code&amp;gt;; similarly, the &amp;lt;code&amp;gt;Repository.ImportBlockSimXMLFile&amp;lt;/code&amp;gt; method has been renamed to &amp;lt;code&amp;gt;Repository.BlockSim.ImportBlockSimXMLFile&amp;lt;/code&amp;gt;, etc. The previous versions of the methods still exist so your code is not broken, but they are deprecated and may be removed in future versions of the API.&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=ReliaSoft_API_Object_IDs&amp;diff=65511</id>
		<title>ReliaSoft API Object IDs</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=ReliaSoft_API_Object_IDs&amp;diff=65511"/>
		<updated>2019-03-14T17:03:17Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}&lt;br /&gt;
{{Template:BacktoPrevPage}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- This page is linked to a common Help file topic. See: http://help.synthesisplatform.net/weibull_alta11/index.htm#application_setup_other_synthesis_settings.htm --&amp;gt; &lt;br /&gt;
Each item in a ReliaSoft repository is identified by a unique record identifier called an &#039;&#039;object ID&#039;&#039;. Object IDs can help you trace responses from the API, which are helpful when learning how to use the API to read/write data to a repository. &lt;br /&gt;
&lt;br /&gt;
To display the object ID in a ReliaSoft desktop application, choose &#039;&#039;&#039;File &amp;gt; Application Setup&#039;&#039;&#039;, then click &#039;&#039;&#039;Other&#039;&#039;&#039; under the &#039;&#039;&#039;Synthesis Settings&#039;&#039;&#039; heading in the navigation panel. Select the check box for &#039;&#039;&#039;Display Object IDs&#039;&#039;&#039;. The object IDs will be displayed for the following items:&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border-collapse: collapse; text-align: left; cellborder&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background:#F2F2F2;&amp;quot; &lt;br /&gt;
!&amp;lt;span style=&amp;quot;color:#585858;&amp;quot;&amp;gt;Item&amp;lt;/span&amp;gt;&lt;br /&gt;
!&amp;lt;span style=&amp;quot;color:#585858;&amp;quot;&amp;gt;Location of ID in the application&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Project||The ID is displayed in two locations:&lt;br /&gt;
&lt;br /&gt;
* The Project Properties window (&#039;&#039;&#039;Project &amp;gt; Management &amp;gt; Edit Project Properties&#039;&#039;&#039;) displays the project&#039;s object ID at the caption bar of the window.&lt;br /&gt;
&lt;br /&gt;
* The Manage Projects window (&#039;&#039;&#039;Project &amp;gt; Management &amp;gt; Manage Projects&#039;&#039;&#039;) displays a column containing the object IDs of each project in the database.&lt;br /&gt;
|-&lt;br /&gt;
|Resource (e.g., models,URDs, etc.)||The Resource Manager (&#039;&#039;&#039;Project &amp;gt; Synthesis &amp;gt; Resource Manager&#039;&#039;&#039;) displays a column containing the object IDs of the resources.&lt;br /&gt;
|-&lt;br /&gt;
|Xfmea, RCM++ or RBI system hierarchy item||To display the object ID (also called &#039;&#039;record ID&#039;&#039;) of a system hierarchy item, right-click any of the column headers in the System Hierarchy panel and choose &#039;&#039;&#039;Customize Columns&#039;&#039;&#039;. Select the &#039;&#039;&#039;Record ID&#039;&#039;&#039; check box.&lt;br /&gt;
|-&lt;br /&gt;
|FMEA records (e.g., functions, causes, etc.)||To display the object IDs of FMEA functions, causes, effects, controls and actions, right-click any of the column headers in the FMEA analysis and choose &#039;&#039;&#039;Customize Columns&#039;&#039;&#039;. Select the &#039;&#039;&#039;Record ID&#039;&#039;&#039; check box.&lt;br /&gt;
|-&lt;br /&gt;
|BlockSim diagrams and block IDs ||The IDs are displayed on the diagram control panel.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Synthesis_API_Object_IDs&amp;diff=65510</id>
		<title>Synthesis API Object IDs</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Synthesis_API_Object_IDs&amp;diff=65510"/>
		<updated>2019-03-14T17:00:38Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: moved Synthesis API Object IDs to ReliaSoft API Object IDs:&amp;amp;#32;Remove reference to &amp;quot;Synthesis&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[ReliaSoft API Object IDs]]&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=ReliaSoft_API_Object_IDs&amp;diff=65509</id>
		<title>ReliaSoft API Object IDs</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=ReliaSoft_API_Object_IDs&amp;diff=65509"/>
		<updated>2019-03-14T17:00:38Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: moved Synthesis API Object IDs to ReliaSoft API Object IDs:&amp;amp;#32;Remove reference to &amp;quot;Synthesis&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}&lt;br /&gt;
{{Template:BacktoPrevPage}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- This page is linked to a common Help file topic. See: http://help.synthesisplatform.net/weibull_alta11/index.htm#application_setup_other_synthesis_settings.htm --&amp;gt; &lt;br /&gt;
Each item in a Synthesis repository is identified by a unique record identifier called an &#039;&#039;object ID&#039;&#039;. Object IDs can help you trace responses from the API, which are helpful when learning how to use the API to read/write data to a repository. &lt;br /&gt;
&lt;br /&gt;
To display the object ID in a Synthesis application, choose &#039;&#039;&#039;File &amp;gt; Application Setup&#039;&#039;&#039;, then click &#039;&#039;&#039;Other&#039;&#039;&#039; under the &#039;&#039;&#039;Synthesis Settings&#039;&#039;&#039; heading in the navigation panel. Select the check box for &#039;&#039;&#039;Display Object IDs&#039;&#039;&#039;. The object IDs will be displayed for the following items:&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border-collapse: collapse; text-align: left; cellborder&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background:#F2F2F2;&amp;quot; &lt;br /&gt;
!&amp;lt;span style=&amp;quot;color:#585858;&amp;quot;&amp;gt;Item&amp;lt;/span&amp;gt;&lt;br /&gt;
!&amp;lt;span style=&amp;quot;color:#585858;&amp;quot;&amp;gt;Location of ID in the application&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Project||The ID is displayed in two locations:&lt;br /&gt;
&lt;br /&gt;
* The Project Properties window (&#039;&#039;&#039;Project &amp;gt; Management &amp;gt; Edit Project Properties&#039;&#039;&#039;) displays the project&#039;s object ID at the caption bar of the window.&lt;br /&gt;
&lt;br /&gt;
* The Manage Projects window (&#039;&#039;&#039;Project &amp;gt; Management &amp;gt; Manage Projects&#039;&#039;&#039;) displays a column containing the object IDs of each project in the database.&lt;br /&gt;
|-&lt;br /&gt;
|Resource (e.g., models,URDs, etc.)||The Resource Manager (&#039;&#039;&#039;Project &amp;gt; Synthesis &amp;gt; Resource Manager&#039;&#039;&#039;) displays a column containing the object IDs of the resources.&lt;br /&gt;
|-&lt;br /&gt;
|Xfmea, RCM++ or RBI system hierarchy item||To display the object ID (also called &#039;&#039;record ID&#039;&#039;) of a system hierarchy item, right-click any of the column headers in the System Hierarchy panel and choose &#039;&#039;&#039;Customize Columns&#039;&#039;&#039;. Select the &#039;&#039;&#039;Record ID&#039;&#039;&#039; check box.&lt;br /&gt;
|-&lt;br /&gt;
|FMEA records (e.g., functions, causes, etc.)||To display the object IDs of FMEA functions, causes, effects, controls and actions, right-click any of the column headers in the FMEA analysis and choose &#039;&#039;&#039;Customize Columns&#039;&#039;&#039;. Select the &#039;&#039;&#039;Record ID&#039;&#039;&#039; check box.&lt;br /&gt;
|-&lt;br /&gt;
|BlockSim diagrams and block IDs ||The IDs are displayed on the diagram control panel.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Main_Page&amp;diff=65508</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Main_Page&amp;diff=65508"/>
		<updated>2019-03-14T16:57:08Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:ReliaWiki}} __NOTOC__ __NOEDITSECTION__ &lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; display:block; width:100%; margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
ReliaWiki is owned and maintained by [https://koi-3QN72QORVC.marketingautomation.services/net/m?md=p8TH7lvo8O%2FAHl72KXuPWlZmIR3P7GFj HBM Prenscia] and is an extension of &amp;amp;nbsp;[https://koi-3QN72QORVC.marketingautomation.services/net/m?md=vQQfu%2FkoXaOAQyVYZnqaSTIPBB24C0kx weibull.com]. &amp;lt;!--For additional resources, visit [http://www.reliasoft.tv ReliaSoft.tv], [http://www.reliability-discussion.com/ Reliability Discussion Forum] and the [http://www.reliabilityprofessional.org/ Certified Reliability Professional (CRP) Program]. --&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; width:100%;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; width:49%; margin:5px;&amp;quot;&amp;gt;&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=blue_triangle.png&lt;br /&gt;
|title=Life Data Analysis&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=Life_Data_Analysis_Reference_Book|text=Reference Book}}&lt;br /&gt;
{{TitleBoxLink|link=Weibull++_Examples|text=Weibull++ Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=green_triangle.png&lt;br /&gt;
|title=System Analysis (RBDs and Fault Trees)&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=System_Analysis_Reference|text=Reference Book}}&lt;br /&gt;
{{TitleBoxLink|link=BlockSim_Examples|text=BlockSim Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=red_triangle.png&lt;br /&gt;
|title=Reliability Growth and Repairable System Analysis&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=Reliability_Growth_and_Repairable_System_Analysis_Reference|text=Reference Book}}&lt;br /&gt;
{{TitleBoxLink|link=RGA_Examples|text=RGA Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=rcm_triangle.png&lt;br /&gt;
|title=Reliability Centered Maintenance (RCM)&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=RCM%2B%2B_Examples|text=RCM++ Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; width:49%; margin:5px;&amp;quot;&amp;gt;&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=yellow_triangle.png&lt;br /&gt;
|title=Accelerated Life Testing Data Analysis&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=Accelerated Life Testing Data Analysis_Reference|text=Reference Book}}&lt;br /&gt;
{{TitleBoxLink|link=ALTA_Examples|text=ALTA Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=doe_triangle.png&lt;br /&gt;
|title=Experiment Design and Analysis (DOE)&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=Experiment_Design_and_Analysis_Reference|text=Reference Book}}&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=fmea_triangle.png&lt;br /&gt;
|title=Failure Modes &amp;amp;amp; Effects Analysis (FMEA)&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=FMEA_and_RCM_Articles|text=Articles}}&lt;br /&gt;
{{TitleBoxLink|link=Xfmea_Examples|text=Xfmea Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=api_triangle.png&lt;br /&gt;
|title=ReliaSoft API&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=ReliaSoft API Reference|text=API Reference}}&lt;br /&gt;
{{TitleBoxLink|link=API_Changelog|text=API Changelog}}&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; width:100%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;cshow logged=&amp;quot;1&amp;quot;&amp;gt;This text will appear if a user with membership to &#039;sysop&#039; group views this page&amp;lt;/cshow&amp;gt; {{ReliaSoft Footer}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Main_Page&amp;diff=65507</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Main_Page&amp;diff=65507"/>
		<updated>2019-03-14T16:56:46Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:ReliaWiki}} __NOTOC__ __NOEDITSECTION__ &lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; display:block; width:100%; margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
ReliaWiki is owned and maintained by [https://koi-3QN72QORVC.marketingautomation.services/net/m?md=p8TH7lvo8O%2FAHl72KXuPWlZmIR3P7GFj HBM Prenscia] and is an extension of &amp;amp;nbsp;[https://koi-3QN72QORVC.marketingautomation.services/net/m?md=vQQfu%2FkoXaOAQyVYZnqaSTIPBB24C0kx weibull.com]. &amp;lt;!--For additional resources, visit [http://www.reliasoft.tv ReliaSoft.tv], [http://www.reliability-discussion.com/ Reliability Discussion Forum] and the [http://www.reliabilityprofessional.org/ Certified Reliability Professional (CRP) Program]. --&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; width:100%;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; width:49%; margin:5px;&amp;quot;&amp;gt;&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=blue_triangle.png&lt;br /&gt;
|title=Life Data Analysis&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=Life_Data_Analysis_Reference_Book|text=Reference Book}}&lt;br /&gt;
{{TitleBoxLink|link=Weibull++_Examples|text=Weibull++ Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=green_triangle.png&lt;br /&gt;
|title=System Analysis (RBDs and Fault Trees)&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=System_Analysis_Reference|text=Reference Book}}&lt;br /&gt;
{{TitleBoxLink|link=BlockSim_Examples|text=BlockSim Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=red_triangle.png&lt;br /&gt;
|title=Reliability Growth and Repairable System Analysis&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=Reliability_Growth_and_Repairable_System_Analysis_Reference|text=Reference Book}}&lt;br /&gt;
{{TitleBoxLink|link=RGA_Examples|text=RGA Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=rcm_triangle.png&lt;br /&gt;
|title=Reliability Centered Maintenance (RCM)&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=RCM%2B%2B_Examples|text=RCM++ Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; width:49%; margin:5px;&amp;quot;&amp;gt;&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=yellow_triangle.png&lt;br /&gt;
|title=Accelerated Life Testing Data Analysis&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=Accelerated Life Testing Data Analysis_Reference|text=Reference Book}}&lt;br /&gt;
{{TitleBoxLink|link=ALTA_Examples|text=ALTA Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=doe_triangle.png&lt;br /&gt;
|title=Experiment Design and Analysis (DOE)&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=Experiment_Design_and_Analysis_Reference|text=Reference Book}}&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=fmea_triangle.png&lt;br /&gt;
|title=Failure Modes &amp;amp;amp; Effects Analysis (FMEA)&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=FMEA_and_RCM_Articles|text=Articles}}&lt;br /&gt;
{{TitleBoxLink|link=Xfmea_Examples|text=Xfmea Software Examples}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{TitleBox&lt;br /&gt;
|bgcolor=#C8D4E0&lt;br /&gt;
|image=api_triangle.png&lt;br /&gt;
|title=Synthesis API&lt;br /&gt;
|links=&lt;br /&gt;
{{TitleBoxLink|link=ReliaSoft API Reference|text=API Reference}}&lt;br /&gt;
{{TitleBoxLink|link=API_Changelog|text=API Changelog}}&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;position:relative; float:left; width:100%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;cshow logged=&amp;quot;1&amp;quot;&amp;gt;This text will appear if a user with membership to &#039;sysop&#039; group views this page&amp;lt;/cshow&amp;gt; {{ReliaSoft Footer}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Synthesis_API_Reference&amp;diff=65506</id>
		<title>Synthesis API Reference</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Synthesis_API_Reference&amp;diff=65506"/>
		<updated>2019-03-14T16:56:08Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: moved Synthesis API Reference to ReliaSoft API Reference:&amp;amp;#32;Remove reference to &amp;quot;Synthesis&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[ReliaSoft API Reference]]&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=ReliaSoft_API_Reference&amp;diff=65505</id>
		<title>ReliaSoft API Reference</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=ReliaSoft_API_Reference&amp;diff=65505"/>
		<updated>2019-03-14T16:56:08Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: moved Synthesis API Reference to ReliaSoft API Reference:&amp;amp;#32;Remove reference to &amp;quot;Synthesis&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #D0CDE8; background:#EEEDF7; border-radius:10px; width:auto; margin:0 0 1em 1em; padding:1em; float:right;&amp;quot;&amp;gt;&lt;br /&gt;
*&#039;&#039;&#039;[[API Changelog|Changelog]]&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;[[API Reference Documentation|API Documentation]]&lt;br /&gt;
*&#039;&#039;&#039;[[API Tutorials|Tutorials]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The ReliaSoft &#039;&#039;Application Programming Interface&#039;&#039; (API) enables you to programmatically read and write data to ReliaSoft repositories, as well as analyze and plot data sets from external sources. It is provided for Visual Basic for Applications (VBA) and .NET applications, allowing you to create automated solutions using popular Microsoft Office applications, such as Excel and PowerPoint, or create custom applications for your organization. &lt;br /&gt;
&lt;br /&gt;
Implementing the ReliaSoft API allows you to connect data in repositories with the systems and tools used within your organization. It provides the functionality to:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Transfer and synchronize data via XML&#039;&#039;&#039;&lt;br /&gt;
:Use XML files to manage structured data (such as system hierarchies/BOMs, incidents and work orders) between ReliaSoft’s [https://www.reliasoft.com/products/reliability-management/xfracas/ XFRACAS] and a variety of different PLMs, ERPs, CMMS and other external systems. You can also use XML files to create reliability block diagrams (RBDs) in [http://www.reliasoft.com/products/reliability-analysis/blocksim BlockSim]. &lt;br /&gt;
*&#039;&#039;&#039;Read/write specific data elements&#039;&#039;&#039;&lt;br /&gt;
:Read or write data to resources (models, actions, URDs, etc.), system hierarchy items and FMEA records (causes, effects, failures, etc.). Initiate batch data processing and create custom solutions for importing/exporting data from ReliaSoft repositories, as well as load data into the Synthesis Data Warehouse (SDW). &lt;br /&gt;
*&#039;&#039;&#039;Obtain calculated results&#039;&#039;&#039;&lt;br /&gt;
:Read data from published models and obtain calculated results such as reliability, probability of failure, BX% life, failure rate and mean time. &lt;br /&gt;
*&#039;&#039;&#039;Analyze data&#039;&#039;&#039;&lt;br /&gt;
:Use [http://www.reliasoft.com/products/reliability-analysis/weibull Weibull++&#039;s] or [http://www.reliasoft.com/products/reliability-analysis/alta ALTA’s] analysis and plotting engines to analyze data from third-party sources, and incorporate the functionality into your own custom applications. (Requires a ReliaSoft API license.)&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
*&#039;&#039;&#039;Getting the latest version&#039;&#039;&#039;&lt;br /&gt;
:The ReliaSoft API consists of a library file that contains the classes, methods and events that provide access to ReliaSoft applications. The file is located in the folder where the ReliaSoft desktop applications are installed. By default, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019.&amp;quot; As of Version 2019, the library names are now version dependent. For VBA, you will use the &#039;&#039;&#039;ReliaSoftAPI19.tlb&#039;&#039;&#039; file; for .NET applications, you will use the &#039;&#039;&#039;ReliaSoftAPI19.dll&#039;&#039;&#039; file. Prior to Version 2019, the files to use were SynthesisAPI.tlb (VBA) and SynthesisAPI.dll (.NET).&lt;br /&gt;
&lt;br /&gt;
:To obtain the latest version of the library file and the ReliaSoft applications, choose &#039;&#039;&#039;File &amp;gt; Help &amp;gt; Check for Updates&#039;&#039;&#039; or download the latest version from the [https://support.hbmprenscia.com HBM Prenscia Support Portal].&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Build environment&#039;&#039;&#039;&lt;br /&gt;
:For Visual Studio projects using Version 10 or 11, at minimum you will need Visual Studio 2010 and the .NET Framework 4.0 runtime. Version 2018 and later require Visual Studio 2015 and the .NET Framework 4.6.1 developer pack and runtime.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;32- vs. 64-bit&#039;&#039;&#039;&lt;br /&gt;
:For VBA, the bit version of the ReliaSoft applications that you&#039;ve installed must match your installed version of Microsoft Office. If they do not match, you may see an error related to ActiveX controls.) &lt;br /&gt;
&lt;br /&gt;
:For Visual Studio projects targeting the .NET Framework 4.5 (or later) and compiled to run an any platform (Any CPU), turn off the &#039;&#039;&#039;Prefer 32-bit&#039;&#039;&#039; property of the build configuration if you want instances of your application to run as a 64-bit process; otherwise, the application will run as a 32-bit process on both 32- and 64-bit versions of Windows. Note that when using [https://www.reliasoft.com/locally-hosted-licensing locally hosted licensing], it is necessary to ensure your application bitness matches the bitness of the ReliaSoft desktop applications installed wherever your application is run due to dependencies on platform-specific libraries.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Running API applications on a server &lt;br /&gt;
:If you plan to run the API on a Windows server, you must use [https://www.reliasoft.com/locally-hosted-licensing locally hosted licensing] and you’ll need to install the ReliaSoft API Ante Service to scale the implementation (the service is not required when running the API on a Windows desktop environment). For instructions on how to install and configure the service, see https://www.reliasoft.com/reliasoft-api-ante-service. &lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Access to calculations functionality&lt;br /&gt;
:Access to Weibull++&#039;s and ALTA’s analysis and plotting engines require a ReliaSoft API license. To obtain a license, please see [http://www.reliasoft.com/contact.htm contact ReliaSoft].&lt;br /&gt;
&lt;br /&gt;
==Getting Started==&lt;br /&gt;
&lt;br /&gt;
====Referencing the ReliaSoft API Library File====&lt;br /&gt;
&amp;lt;!-- This &amp;quot;onlyinclude&amp;quot; section is transcluded into the API Tutorials page --&amp;gt;&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;To use the ReliaSoft API in your code, you must reference the ReliaSoft API library in your VBA or .NET projects. The file is located in the folder where the ReliaSoft desktop applications are installed. By default for Version 2019, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019.&amp;quot; For VBA, you will use the &#039;&#039;&#039;ReliaSoftAPI19.tlb&#039;&#039;&#039; file; for .NET applications, you will use the &#039;&#039;&#039;ReliaSoftAPI19.dll&#039;&#039;&#039; file.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;To reference the library in VBA&#039;&#039;&#039;:&lt;br /&gt;
:#Enter the VBA environment by clicking the &#039;&#039;&#039;Visual Basic&#039;&#039;&#039; command on the Developer tab (If the Developer tab is not visible, see [https://msdn.microsoft.com/en-us/library/bb608625.aspx this Microsoft article]). &lt;br /&gt;
:#In the VBA environment, choose &#039;&#039;&#039;Tools &amp;gt; References&#039;&#039;&#039;.&lt;br /&gt;
:#Click &#039;&#039;&#039;Browse&#039;&#039;&#039; and find the ReliaSoftAPI19.tlb file on your computer. Click &#039;&#039;&#039;OK&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;To reference the library in Visual Studio:&#039;&#039;&#039;&lt;br /&gt;
:#In the Solution Explorer, right-click the &#039;&#039;&#039;References&#039;&#039;&#039; node and choose &#039;&#039;&#039;Add References&#039;&#039;&#039;. &lt;br /&gt;
:#In the Reference Manager window, click the &#039;&#039;&#039;Browse&#039;&#039;&#039; tab and find the ReliaSoftAPI19.dll file on your computer. Click &#039;&#039;&#039;OK&#039;&#039;&#039;. &lt;br /&gt;
:#Copy the following files from the ReliaSoft installation folder to your target folder (e.g., bin/Debug or bin/Release Folder). &lt;br /&gt;
:::*licncr.dll&lt;br /&gt;
:::*licncr.dll.nsign&lt;br /&gt;
:::*licshr.dll&lt;br /&gt;
:::*licshr.dll.nsign&lt;br /&gt;
:::*msvcp110.dll&lt;br /&gt;
:::*msvcr110.dll&lt;br /&gt;
:::*RSDB.dll&lt;br /&gt;
:::*RSLM8nCodeDotNetWrapper.dll&lt;br /&gt;
:::*utlibr.dll&lt;br /&gt;
&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
====Examples====&lt;br /&gt;
Sample applications that you can test and tweak yourself are included with the ReliaSoft installation. The files are stored on your computer at C:\Users\Public\Public Documents\ReliaSoft\Examples19\API.&lt;br /&gt;
 &lt;br /&gt;
The sample applications are available for Excel VBA and VB.NET projects. (To run the Excel examples, macros must be enabled. See [http://office.microsoft.com/en-us/excel-help/enable-or-disable-macros-in-office-documents-HA010031071.aspx this Microsoft article].) &lt;br /&gt;
&lt;br /&gt;
====Tutorials====&lt;br /&gt;
[[API Tutorials|Tutorials]] are available to help you learn the core objects of the ReliaSoft API and start coding right away. The tutorials include code samples for both VBA and VB.NET.&lt;br /&gt;
&lt;br /&gt;
==Object Library ==&lt;br /&gt;
Below is a summary of the core objects in the ReliaSoft API library. For an alphabetical listing of all objects in the latest version, see [[API Reference Documentation]].&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[Repository Class|Repository]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents the ReliaSoft repository. All other objects use the functions in this class to read or write data to the repository. This class also contains the functions for importing/exporting XML files. &lt;br /&gt;
&lt;br /&gt;
*The following objects represent the ReliaSoft resources. Instances of each class can be used to store data for an existing or new resource.  &lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CAction Class|cAction]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CCorrectiveTask Class|cCorrectiveTask]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CScheduledTask Class|cScheduledTask]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CCrew Class|cCrew]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CModel Class|cModel]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CPool Class|cPool]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CProfile Class|cProfile]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CURD Class|cURD]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CVariable Class|cVariable]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CXfmeaControl Class|cXfmeaControl]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*The following objects build data sets for the Synthesis Data Warehouse (SDW).&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[RawData Class|RawData]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; represents a single data point.&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[RawDataSet Class|RawDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; serves as the data container for &amp;lt;code&amp;gt;RawData&amp;lt;/code&amp;gt; objects.&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaItem Class|XfmeaItem]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a system hierarchy item. Instances of this class can be used to store data for a system or assembly, as well as build a multi-level system configuration. &lt;br /&gt;
&lt;br /&gt;
*The following objects represent the FMEA records. Instances of each class can be used to store data for an existing or new FMEA analysis. &lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaFunction Class|XfmeaFunction]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaCause Class|XfmeaCause]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaEffect Class|XfmeaEffect]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaFailure Class|XfmeaFailure]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WeibullDataSet Class|WeibullDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a Weibull++ data sheet for life data analysis. Instances of this class are used to define a data set and fit a statistical distribution to the data.&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[ALTADataSet Class|ALTADataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents an ALTA data sheet for accelerated life testing data analysis. Instances of this class are used to define a data set, and fit a distribution and life-stress relationship to the data. &lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WAPlots Class|WAPlots]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a plot based on a &amp;lt;code&amp;gt;cModel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WeibullDataSet&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;ALTADataSet&amp;lt;/code&amp;gt; object. Instances of this class are used to display a plot of the analysis results.&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=ReliaSoft_API_Reference&amp;diff=65504</id>
		<title>ReliaSoft API Reference</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=ReliaSoft_API_Reference&amp;diff=65504"/>
		<updated>2019-03-14T15:50:00Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #D0CDE8; background:#EEEDF7; border-radius:10px; width:auto; margin:0 0 1em 1em; padding:1em; float:right;&amp;quot;&amp;gt;&lt;br /&gt;
*&#039;&#039;&#039;[[API Changelog|Changelog]]&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;[[API Reference Documentation|API Documentation]]&lt;br /&gt;
*&#039;&#039;&#039;[[API Tutorials|Tutorials]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The ReliaSoft &#039;&#039;Application Programming Interface&#039;&#039; (API) enables you to programmatically read and write data to ReliaSoft repositories, as well as analyze and plot data sets from external sources. It is provided for Visual Basic for Applications (VBA) and .NET applications, allowing you to create automated solutions using popular Microsoft Office applications, such as Excel and PowerPoint, or create custom applications for your organization. &lt;br /&gt;
&lt;br /&gt;
Implementing the ReliaSoft API allows you to connect data in repositories with the systems and tools used within your organization. It provides the functionality to:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Transfer and synchronize data via XML&#039;&#039;&#039;&lt;br /&gt;
:Use XML files to manage structured data (such as system hierarchies/BOMs, incidents and work orders) between ReliaSoft’s [https://www.reliasoft.com/products/reliability-management/xfracas/ XFRACAS] and a variety of different PLMs, ERPs, CMMS and other external systems. You can also use XML files to create reliability block diagrams (RBDs) in [http://www.reliasoft.com/products/reliability-analysis/blocksim BlockSim]. &lt;br /&gt;
*&#039;&#039;&#039;Read/write specific data elements&#039;&#039;&#039;&lt;br /&gt;
:Read or write data to resources (models, actions, URDs, etc.), system hierarchy items and FMEA records (causes, effects, failures, etc.). Initiate batch data processing and create custom solutions for importing/exporting data from ReliaSoft repositories, as well as load data into the Synthesis Data Warehouse (SDW). &lt;br /&gt;
*&#039;&#039;&#039;Obtain calculated results&#039;&#039;&#039;&lt;br /&gt;
:Read data from published models and obtain calculated results such as reliability, probability of failure, BX% life, failure rate and mean time. &lt;br /&gt;
*&#039;&#039;&#039;Analyze data&#039;&#039;&#039;&lt;br /&gt;
:Use [http://www.reliasoft.com/products/reliability-analysis/weibull Weibull++&#039;s] or [http://www.reliasoft.com/products/reliability-analysis/alta ALTA’s] analysis and plotting engines to analyze data from third-party sources, and incorporate the functionality into your own custom applications. (Requires a ReliaSoft API license.)&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
*&#039;&#039;&#039;Getting the latest version&#039;&#039;&#039;&lt;br /&gt;
:The ReliaSoft API consists of a library file that contains the classes, methods and events that provide access to ReliaSoft applications. The file is located in the folder where the ReliaSoft desktop applications are installed. By default, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019.&amp;quot; As of Version 2019, the library names are now version dependent. For VBA, you will use the &#039;&#039;&#039;ReliaSoftAPI19.tlb&#039;&#039;&#039; file; for .NET applications, you will use the &#039;&#039;&#039;ReliaSoftAPI19.dll&#039;&#039;&#039; file. Prior to Version 2019, the files to use were SynthesisAPI.tlb (VBA) and SynthesisAPI.dll (.NET).&lt;br /&gt;
&lt;br /&gt;
:To obtain the latest version of the library file and the ReliaSoft applications, choose &#039;&#039;&#039;File &amp;gt; Help &amp;gt; Check for Updates&#039;&#039;&#039; or download the latest version from the [https://support.hbmprenscia.com HBM Prenscia Support Portal].&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Build environment&#039;&#039;&#039;&lt;br /&gt;
:For Visual Studio projects using Version 10 or 11, at minimum you will need Visual Studio 2010 and the .NET Framework 4.0 runtime. Version 2018 and later require Visual Studio 2015 and the .NET Framework 4.6.1 developer pack and runtime.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;32- vs. 64-bit&#039;&#039;&#039;&lt;br /&gt;
:For VBA, the bit version of the ReliaSoft applications that you&#039;ve installed must match your installed version of Microsoft Office. If they do not match, you may see an error related to ActiveX controls.) &lt;br /&gt;
&lt;br /&gt;
:For Visual Studio projects targeting the .NET Framework 4.5 (or later) and compiled to run an any platform (Any CPU), turn off the &#039;&#039;&#039;Prefer 32-bit&#039;&#039;&#039; property of the build configuration if you want instances of your application to run as a 64-bit process; otherwise, the application will run as a 32-bit process on both 32- and 64-bit versions of Windows. Note that when using [https://www.reliasoft.com/locally-hosted-licensing locally hosted licensing], it is necessary to ensure your application bitness matches the bitness of the ReliaSoft desktop applications installed wherever your application is run due to dependencies on platform-specific libraries.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Running API applications on a server &lt;br /&gt;
:If you plan to run the API on a Windows server, you must use [https://www.reliasoft.com/locally-hosted-licensing locally hosted licensing] and you’ll need to install the ReliaSoft API Ante Service to scale the implementation (the service is not required when running the API on a Windows desktop environment). For instructions on how to install and configure the service, see https://www.reliasoft.com/reliasoft-api-ante-service. &lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Access to calculations functionality&lt;br /&gt;
:Access to Weibull++&#039;s and ALTA’s analysis and plotting engines require a ReliaSoft API license. To obtain a license, please see [http://www.reliasoft.com/contact.htm contact ReliaSoft].&lt;br /&gt;
&lt;br /&gt;
==Getting Started==&lt;br /&gt;
&lt;br /&gt;
====Referencing the ReliaSoft API Library File====&lt;br /&gt;
&amp;lt;!-- This &amp;quot;onlyinclude&amp;quot; section is transcluded into the API Tutorials page --&amp;gt;&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;To use the ReliaSoft API in your code, you must reference the ReliaSoft API library in your VBA or .NET projects. The file is located in the folder where the ReliaSoft desktop applications are installed. By default for Version 2019, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019.&amp;quot; For VBA, you will use the &#039;&#039;&#039;ReliaSoftAPI19.tlb&#039;&#039;&#039; file; for .NET applications, you will use the &#039;&#039;&#039;ReliaSoftAPI19.dll&#039;&#039;&#039; file.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;To reference the library in VBA&#039;&#039;&#039;:&lt;br /&gt;
:#Enter the VBA environment by clicking the &#039;&#039;&#039;Visual Basic&#039;&#039;&#039; command on the Developer tab (If the Developer tab is not visible, see [https://msdn.microsoft.com/en-us/library/bb608625.aspx this Microsoft article]). &lt;br /&gt;
:#In the VBA environment, choose &#039;&#039;&#039;Tools &amp;gt; References&#039;&#039;&#039;.&lt;br /&gt;
:#Click &#039;&#039;&#039;Browse&#039;&#039;&#039; and find the ReliaSoftAPI19.tlb file on your computer. Click &#039;&#039;&#039;OK&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;To reference the library in Visual Studio:&#039;&#039;&#039;&lt;br /&gt;
:#In the Solution Explorer, right-click the &#039;&#039;&#039;References&#039;&#039;&#039; node and choose &#039;&#039;&#039;Add References&#039;&#039;&#039;. &lt;br /&gt;
:#In the Reference Manager window, click the &#039;&#039;&#039;Browse&#039;&#039;&#039; tab and find the ReliaSoftAPI19.dll file on your computer. Click &#039;&#039;&#039;OK&#039;&#039;&#039;. &lt;br /&gt;
:#Copy the following files from the ReliaSoft installation folder to your target folder (e.g., bin/Debug or bin/Release Folder). &lt;br /&gt;
:::*licncr.dll&lt;br /&gt;
:::*licncr.dll.nsign&lt;br /&gt;
:::*licshr.dll&lt;br /&gt;
:::*licshr.dll.nsign&lt;br /&gt;
:::*msvcp110.dll&lt;br /&gt;
:::*msvcr110.dll&lt;br /&gt;
:::*RSDB.dll&lt;br /&gt;
:::*RSLM8nCodeDotNetWrapper.dll&lt;br /&gt;
:::*utlibr.dll&lt;br /&gt;
&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
====Examples====&lt;br /&gt;
Sample applications that you can test and tweak yourself are included with the ReliaSoft installation. The files are stored on your computer at C:\Users\Public\Public Documents\ReliaSoft\Examples19\API.&lt;br /&gt;
 &lt;br /&gt;
The sample applications are available for Excel VBA and VB.NET projects. (To run the Excel examples, macros must be enabled. See [http://office.microsoft.com/en-us/excel-help/enable-or-disable-macros-in-office-documents-HA010031071.aspx this Microsoft article].) &lt;br /&gt;
&lt;br /&gt;
====Tutorials====&lt;br /&gt;
[[API Tutorials|Tutorials]] are available to help you learn the core objects of the ReliaSoft API and start coding right away. The tutorials include code samples for both VBA and VB.NET.&lt;br /&gt;
&lt;br /&gt;
==Object Library ==&lt;br /&gt;
Below is a summary of the core objects in the ReliaSoft API library. For an alphabetical listing of all objects in the latest version, see [[API Reference Documentation]].&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[Repository Class|Repository]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents the ReliaSoft repository. All other objects use the functions in this class to read or write data to the repository. This class also contains the functions for importing/exporting XML files. &lt;br /&gt;
&lt;br /&gt;
*The following objects represent the ReliaSoft resources. Instances of each class can be used to store data for an existing or new resource.  &lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CAction Class|cAction]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CCorrectiveTask Class|cCorrectiveTask]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CScheduledTask Class|cScheduledTask]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CCrew Class|cCrew]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CModel Class|cModel]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CPool Class|cPool]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CProfile Class|cProfile]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CURD Class|cURD]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CVariable Class|cVariable]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CXfmeaControl Class|cXfmeaControl]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*The following objects build data sets for the Synthesis Data Warehouse (SDW).&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[RawData Class|RawData]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; represents a single data point.&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[RawDataSet Class|RawDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; serves as the data container for &amp;lt;code&amp;gt;RawData&amp;lt;/code&amp;gt; objects.&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaItem Class|XfmeaItem]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a system hierarchy item. Instances of this class can be used to store data for a system or assembly, as well as build a multi-level system configuration. &lt;br /&gt;
&lt;br /&gt;
*The following objects represent the FMEA records. Instances of each class can be used to store data for an existing or new FMEA analysis. &lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaFunction Class|XfmeaFunction]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaCause Class|XfmeaCause]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaEffect Class|XfmeaEffect]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaFailure Class|XfmeaFailure]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WeibullDataSet Class|WeibullDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a Weibull++ data sheet for life data analysis. Instances of this class are used to define a data set and fit a statistical distribution to the data.&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[ALTADataSet Class|ALTADataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents an ALTA data sheet for accelerated life testing data analysis. Instances of this class are used to define a data set, and fit a distribution and life-stress relationship to the data. &lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WAPlots Class|WAPlots]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a plot based on a &amp;lt;code&amp;gt;cModel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WeibullDataSet&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;ALTADataSet&amp;lt;/code&amp;gt; object. Instances of this class are used to display a plot of the analysis results.&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=ReliaSoft_API_Reference&amp;diff=65503</id>
		<title>ReliaSoft API Reference</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=ReliaSoft_API_Reference&amp;diff=65503"/>
		<updated>2019-03-14T15:49:37Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #D0CDE8; background:#EEEDF7; border-radius:10px; width:auto; margin:0 0 1em 1em; padding:1em; float:right;&amp;quot;&amp;gt;&lt;br /&gt;
*&#039;&#039;&#039;[[API Changelog|Changelog]]&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;[[API Reference Documentation|API Documentation]]&lt;br /&gt;
*&#039;&#039;&#039;[[API Tutorials|Tutorials]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The ReliaSoft &#039;&#039;Application Programming Interface&#039;&#039; (API) enables you to programmatically read and write data to ReliaSoft repositories, as well as analyze and plot data sets from external sources. It is provided for Visual Basic for Applications (VBA) and .NET applications, allowing you to create automated solutions using popular Microsoft Office applications, such as Excel and PowerPoint, or create custom applications for your organization. &lt;br /&gt;
&lt;br /&gt;
Implementing the ReliaSoft API allows you to connect data in repositories with the systems and tools used within your organization. It provides the functionality to:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Transfer and synchronize data via XML&#039;&#039;&#039;&lt;br /&gt;
:Use XML files to manage structured data (such as system hierarchies/BOMs, incidents and work orders) between ReliaSoft’s [https://www.reliasoft.com/products/reliability-management/xfracas/ XFRACAS] and a variety of different PLMs, ERPs, CMMS and other external systems. You can also use XML files to create reliability block diagrams (RBDs) in [http://www.reliasoft.com/products/reliability-analysis/blocksim BlockSim]. &lt;br /&gt;
*&#039;&#039;&#039;Read/write specific data elements&#039;&#039;&#039;&lt;br /&gt;
:Read or write data to resources (models, actions, URDs, etc.), system hierarchy items and FMEA records (causes, effects, failures, etc.). Initiate batch data processing and create custom solutions for importing/exporting data from ReliaSoft repositories, as well as load data into the Synthesis Data Warehouse (SDW). &lt;br /&gt;
*&#039;&#039;&#039;Obtain calculated results&#039;&#039;&#039;&lt;br /&gt;
:Read data from published models and obtain calculated results such as reliability, probability of failure, BX% life, failure rate and mean time. &lt;br /&gt;
*&#039;&#039;&#039;Analyze data&#039;&#039;&#039;&lt;br /&gt;
:Use [http://www.reliasoft.com/products/reliability-analysis/weibull Weibull++&#039;s] or [http://www.reliasoft.com/products/reliability-analysis/alta ALTA’s] analysis and plotting engines to analyze data from third-party sources, and incorporate the functionality into your own custom applications. (Requires a ReliaSoft API license.)&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
*&#039;&#039;&#039;Getting the latest version&#039;&#039;&#039;&lt;br /&gt;
:The ReliaSoft API consists of a library file that contains the classes, methods and events that provide access to ReliaSoft applications. The file is located in the folder where the ReliaSoft desktop applications are installed. By default, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019.&amp;quot; As of Version 2019, the library names are now version dependent. For VBA, you will use the &#039;&#039;&#039;ReliaSoftAPI19.tlb&#039;&#039;&#039; file; for .NET applications, you will use the &#039;&#039;&#039;ReliaSoftAPI19.dll&#039;&#039;&#039; file. Prior to Version 2019, the files to use were SynthesisAPI.tlb (VBA) and SynthesisAPI.dll (.NET).&lt;br /&gt;
&lt;br /&gt;
:To obtain the latest version of the library file and the ReliaSoft applications, choose &#039;&#039;&#039;File &amp;gt; Help &amp;gt; Check for Updates&#039;&#039;&#039; or download the latest version from the [https://support.hbmprenscia.com Support Portal].&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Build environment&#039;&#039;&#039;&lt;br /&gt;
:For Visual Studio projects using Version 10 or 11, at minimum you will need Visual Studio 2010 and the .NET Framework 4.0 runtime. Version 2018 and later require Visual Studio 2015 and the .NET Framework 4.6.1 developer pack and runtime.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;32- vs. 64-bit&#039;&#039;&#039;&lt;br /&gt;
:For VBA, the bit version of the ReliaSoft applications that you&#039;ve installed must match your installed version of Microsoft Office. If they do not match, you may see an error related to ActiveX controls.) &lt;br /&gt;
&lt;br /&gt;
:For Visual Studio projects targeting the .NET Framework 4.5 (or later) and compiled to run an any platform (Any CPU), turn off the &#039;&#039;&#039;Prefer 32-bit&#039;&#039;&#039; property of the build configuration if you want instances of your application to run as a 64-bit process; otherwise, the application will run as a 32-bit process on both 32- and 64-bit versions of Windows. Note that when using [https://www.reliasoft.com/locally-hosted-licensing locally hosted licensing], it is necessary to ensure your application bitness matches the bitness of the ReliaSoft desktop applications installed wherever your application is run due to dependencies on platform-specific libraries.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Running API applications on a server &lt;br /&gt;
:If you plan to run the API on a Windows server, you must use [https://www.reliasoft.com/locally-hosted-licensing locally hosted licensing] and you’ll need to install the ReliaSoft API Ante Service to scale the implementation (the service is not required when running the API on a Windows desktop environment). For instructions on how to install and configure the service, see https://www.reliasoft.com/reliasoft-api-ante-service. &lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Access to calculations functionality&lt;br /&gt;
:Access to Weibull++&#039;s and ALTA’s analysis and plotting engines require a ReliaSoft API license. To obtain a license, please see [http://www.reliasoft.com/contact.htm contact ReliaSoft].&lt;br /&gt;
&lt;br /&gt;
==Getting Started==&lt;br /&gt;
&lt;br /&gt;
====Referencing the ReliaSoft API Library File====&lt;br /&gt;
&amp;lt;!-- This &amp;quot;onlyinclude&amp;quot; section is transcluded into the API Tutorials page --&amp;gt;&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;To use the ReliaSoft API in your code, you must reference the ReliaSoft API library in your VBA or .NET projects. The file is located in the folder where the ReliaSoft desktop applications are installed. By default for Version 2019, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019.&amp;quot; For VBA, you will use the &#039;&#039;&#039;ReliaSoftAPI19.tlb&#039;&#039;&#039; file; for .NET applications, you will use the &#039;&#039;&#039;ReliaSoftAPI19.dll&#039;&#039;&#039; file.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;To reference the library in VBA&#039;&#039;&#039;:&lt;br /&gt;
:#Enter the VBA environment by clicking the &#039;&#039;&#039;Visual Basic&#039;&#039;&#039; command on the Developer tab (If the Developer tab is not visible, see [https://msdn.microsoft.com/en-us/library/bb608625.aspx this Microsoft article]). &lt;br /&gt;
:#In the VBA environment, choose &#039;&#039;&#039;Tools &amp;gt; References&#039;&#039;&#039;.&lt;br /&gt;
:#Click &#039;&#039;&#039;Browse&#039;&#039;&#039; and find the ReliaSoftAPI19.tlb file on your computer. Click &#039;&#039;&#039;OK&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;To reference the library in Visual Studio:&#039;&#039;&#039;&lt;br /&gt;
:#In the Solution Explorer, right-click the &#039;&#039;&#039;References&#039;&#039;&#039; node and choose &#039;&#039;&#039;Add References&#039;&#039;&#039;. &lt;br /&gt;
:#In the Reference Manager window, click the &#039;&#039;&#039;Browse&#039;&#039;&#039; tab and find the ReliaSoftAPI19.dll file on your computer. Click &#039;&#039;&#039;OK&#039;&#039;&#039;. &lt;br /&gt;
:#Copy the following files from the ReliaSoft installation folder to your target folder (e.g., bin/Debug or bin/Release Folder). &lt;br /&gt;
:::*licncr.dll&lt;br /&gt;
:::*licncr.dll.nsign&lt;br /&gt;
:::*licshr.dll&lt;br /&gt;
:::*licshr.dll.nsign&lt;br /&gt;
:::*msvcp110.dll&lt;br /&gt;
:::*msvcr110.dll&lt;br /&gt;
:::*RSDB.dll&lt;br /&gt;
:::*RSLM8nCodeDotNetWrapper.dll&lt;br /&gt;
:::*utlibr.dll&lt;br /&gt;
&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
====Examples====&lt;br /&gt;
Sample applications that you can test and tweak yourself are included with the ReliaSoft installation. The files are stored on your computer at C:\Users\Public\Public Documents\ReliaSoft\Examples19\API.&lt;br /&gt;
 &lt;br /&gt;
The sample applications are available for Excel VBA and VB.NET projects. (To run the Excel examples, macros must be enabled. See [http://office.microsoft.com/en-us/excel-help/enable-or-disable-macros-in-office-documents-HA010031071.aspx this Microsoft article].) &lt;br /&gt;
&lt;br /&gt;
====Tutorials====&lt;br /&gt;
[[API Tutorials|Tutorials]] are available to help you learn the core objects of the ReliaSoft API and start coding right away. The tutorials include code samples for both VBA and VB.NET.&lt;br /&gt;
&lt;br /&gt;
==Object Library ==&lt;br /&gt;
Below is a summary of the core objects in the ReliaSoft API library. For an alphabetical listing of all objects in the latest version, see [[API Reference Documentation]].&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[Repository Class|Repository]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents the ReliaSoft repository. All other objects use the functions in this class to read or write data to the repository. This class also contains the functions for importing/exporting XML files. &lt;br /&gt;
&lt;br /&gt;
*The following objects represent the ReliaSoft resources. Instances of each class can be used to store data for an existing or new resource.  &lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CAction Class|cAction]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CCorrectiveTask Class|cCorrectiveTask]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CScheduledTask Class|cScheduledTask]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CCrew Class|cCrew]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CModel Class|cModel]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CPool Class|cPool]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CProfile Class|cProfile]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CURD Class|cURD]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CVariable Class|cVariable]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CXfmeaControl Class|cXfmeaControl]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*The following objects build data sets for the Synthesis Data Warehouse (SDW).&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[RawData Class|RawData]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; represents a single data point.&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[RawDataSet Class|RawDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; serves as the data container for &amp;lt;code&amp;gt;RawData&amp;lt;/code&amp;gt; objects.&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaItem Class|XfmeaItem]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a system hierarchy item. Instances of this class can be used to store data for a system or assembly, as well as build a multi-level system configuration. &lt;br /&gt;
&lt;br /&gt;
*The following objects represent the FMEA records. Instances of each class can be used to store data for an existing or new FMEA analysis. &lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaFunction Class|XfmeaFunction]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaCause Class|XfmeaCause]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaEffect Class|XfmeaEffect]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaFailure Class|XfmeaFailure]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WeibullDataSet Class|WeibullDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a Weibull++ data sheet for life data analysis. Instances of this class are used to define a data set and fit a statistical distribution to the data.&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[ALTADataSet Class|ALTADataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents an ALTA data sheet for accelerated life testing data analysis. Instances of this class are used to define a data set, and fit a distribution and life-stress relationship to the data. &lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WAPlots Class|WAPlots]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a plot based on a &amp;lt;code&amp;gt;cModel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WeibullDataSet&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;ALTADataSet&amp;lt;/code&amp;gt; object. Instances of this class are used to display a plot of the analysis results.&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=ReliaSoft_API_Reference&amp;diff=65502</id>
		<title>ReliaSoft API Reference</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=ReliaSoft_API_Reference&amp;diff=65502"/>
		<updated>2019-03-14T15:48:00Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #D0CDE8; background:#EEEDF7; border-radius:10px; width:auto; margin:0 0 1em 1em; padding:1em; float:right;&amp;quot;&amp;gt;&lt;br /&gt;
*&#039;&#039;&#039;[[API Changelog|Changelog]]&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;[[API Reference Documentation|API Documentation]]&lt;br /&gt;
*&#039;&#039;&#039;[[API Tutorials|Tutorials]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The ReliaSoft &#039;&#039;Application Programming Interface&#039;&#039; (API) enables you to programmatically read and write data to ReliaSoft repositories, as well as analyze and plot data sets from external sources. It is provided for Visual Basic for Applications (VBA) and .NET applications, allowing you to create automated solutions using popular Microsoft Office applications, such as Excel and PowerPoint, or create custom applications for your organization. &lt;br /&gt;
&lt;br /&gt;
Implementing the ReliaSoft API allows you to connect data in repositories with the systems and tools used within your organization. It provides the functionality to:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Transfer and synchronize data via XML&#039;&#039;&#039;&lt;br /&gt;
:Use XML files to manage structured data (such as system hierarchies/BOMs, incidents and work orders) between ReliaSoft’s [https://www.reliasoft.com/products/reliability-management/xfracas/ XFRACAS] and a variety of different PLMs, ERPs, CMMS and other external systems. You can also use XML files to create reliability block diagrams (RBDs) in [http://www.reliasoft.com/products/reliability-analysis/blocksim BlockSim]. &lt;br /&gt;
*&#039;&#039;&#039;Read/write specific data elements&#039;&#039;&#039;&lt;br /&gt;
:Read or write data to resources (models, actions, URDs, etc.), system hierarchy items and FMEA records (causes, effects, failures, etc.). Initiate batch data processing and create custom solutions for importing/exporting data from ReliaSoft repositories, as well as load data into the Synthesis Data Warehouse (SDW). &lt;br /&gt;
*&#039;&#039;&#039;Obtain calculated results&#039;&#039;&#039;&lt;br /&gt;
:Read data from published models and obtain calculated results such as reliability, probability of failure, BX% life, failure rate and mean time. &lt;br /&gt;
*&#039;&#039;&#039;Analyze data&#039;&#039;&#039;&lt;br /&gt;
:Use [http://www.reliasoft.com/products/reliability-analysis/weibull Weibull++&#039;s] or [http://www.reliasoft.com/products/reliability-analysis/alta ALTA’s] analysis and plotting engines to analyze data from third-party sources, and incorporate the functionality into your own custom applications. (Requires a ReliaSoft API license.)&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
*&#039;&#039;&#039;Getting the latest version&#039;&#039;&#039;&lt;br /&gt;
:The ReliaSoft API consists of a library file that contains the classes, methods and events that provide access to ReliaSoft applications. The file is located in the folder where the ReliaSoft desktop applications are installed. By default, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019.&amp;quot; As of Version 2019, the library names are now version dependent. For VBA, you will use the &#039;&#039;&#039;ReliaSoftAPI19.tlb&#039;&#039;&#039; file; for .NET applications, you will use the &#039;&#039;&#039;ReliaSoftAPI19.dll&#039;&#039;&#039; file. Prior to Version 2019, the files to use were SynthesisAPI.tlb (VBA) and SynthesisAPI.dll (.NET).&lt;br /&gt;
&lt;br /&gt;
:To obtain the latest version of the library file and the ReliaSoft applications, choose &#039;&#039;&#039;File &amp;gt; Help &amp;gt; Check for Updates&#039;&#039;&#039; or download the latest version from the Support Portal at https://support.hbmprenscia.com.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Build environment&#039;&#039;&#039;&lt;br /&gt;
:For Visual Studio projects using Version 10 or 11, at minimum you will need Visual Studio 2010 and the .NET Framework 4.0 runtime. Version 2018 and later require Visual Studio 2015 and the .NET Framework 4.6.1 developer pack and runtime.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;32- vs. 64-bit&#039;&#039;&#039;&lt;br /&gt;
:For VBA, the bit version of the ReliaSoft applications that you&#039;ve installed must match your installed version of Microsoft Office. If they do not match, you may see an error related to ActiveX controls.) &lt;br /&gt;
&lt;br /&gt;
:For Visual Studio projects targeting the .NET Framework 4.5 (or later) and compiled to run an any platform (Any CPU), turn off the &#039;&#039;&#039;Prefer 32-bit&#039;&#039;&#039; property of the build configuration if you want instances of your application to run as a 64-bit process; otherwise, the application will run as a 32-bit process on both 32- and 64-bit versions of Windows. Note that when using [https://www.reliasoft.com/locally-hosted-licensing locally hosted licensing], it is necessary to ensure your application bitness matches the bitness of the ReliaSoft desktop applications installed wherever your application is run due to dependencies on platform-specific libraries.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Running API applications on a server &lt;br /&gt;
:If you plan to run the API on a Windows server, you must use [https://www.reliasoft.com/locally-hosted-licensing locally hosted licensing] and you’ll need to install the ReliaSoft API Ante Service to scale the implementation (the service is not required when running the API on a Windows desktop environment). For instructions on how to install and configure the service, see https://www.reliasoft.com/reliasoft-api-ante-service. &lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Access to calculations functionality&lt;br /&gt;
:Access to Weibull++&#039;s and ALTA’s analysis and plotting engines require a ReliaSoft API license. To obtain a license, please see [http://www.reliasoft.com/contact.htm contact ReliaSoft].&lt;br /&gt;
&lt;br /&gt;
==Getting Started==&lt;br /&gt;
&lt;br /&gt;
====Referencing the ReliaSoft API Library File====&lt;br /&gt;
&amp;lt;!-- This &amp;quot;onlyinclude&amp;quot; section is transcluded into the API Tutorials page --&amp;gt;&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;To use the ReliaSoft API in your code, you must reference the ReliaSoft API library in your VBA or .NET projects. The file is located in the folder where the ReliaSoft desktop applications are installed. By default for Version 2019, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019.&amp;quot; For VBA, you will use the &#039;&#039;&#039;ReliaSoftAPI19.tlb&#039;&#039;&#039; file; for .NET applications, you will use the &#039;&#039;&#039;ReliaSoftAPI19.dll&#039;&#039;&#039; file.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;To reference the library in VBA&#039;&#039;&#039;:&lt;br /&gt;
:#Enter the VBA environment by clicking the &#039;&#039;&#039;Visual Basic&#039;&#039;&#039; command on the Developer tab (If the Developer tab is not visible, see [https://msdn.microsoft.com/en-us/library/bb608625.aspx this Microsoft article]). &lt;br /&gt;
:#In the VBA environment, choose &#039;&#039;&#039;Tools &amp;gt; References&#039;&#039;&#039;.&lt;br /&gt;
:#Click &#039;&#039;&#039;Browse&#039;&#039;&#039; and find the ReliaSoftAPI19.tlb file on your computer. Click &#039;&#039;&#039;OK&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;To reference the library in Visual Studio:&#039;&#039;&#039;&lt;br /&gt;
:#In the Solution Explorer, right-click the &#039;&#039;&#039;References&#039;&#039;&#039; node and choose &#039;&#039;&#039;Add References&#039;&#039;&#039;. &lt;br /&gt;
:#In the Reference Manager window, click the &#039;&#039;&#039;Browse&#039;&#039;&#039; tab and find the ReliaSoftAPI19.dll file on your computer. Click &#039;&#039;&#039;OK&#039;&#039;&#039;. &lt;br /&gt;
:#Copy the following files from the ReliaSoft installation folder to your target folder (e.g., bin/Debug or bin/Release Folder). &lt;br /&gt;
:::*licncr.dll&lt;br /&gt;
:::*licncr.dll.nsign&lt;br /&gt;
:::*licshr.dll&lt;br /&gt;
:::*licshr.dll.nsign&lt;br /&gt;
:::*msvcp110.dll&lt;br /&gt;
:::*msvcr110.dll&lt;br /&gt;
:::*RSDB.dll&lt;br /&gt;
:::*RSLM8nCodeDotNetWrapper.dll&lt;br /&gt;
:::*utlibr.dll&lt;br /&gt;
&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
====Examples====&lt;br /&gt;
Sample applications that you can test and tweak yourself are included with the ReliaSoft installation. The files are stored on your computer at C:\Users\Public\Public Documents\ReliaSoft\Examples19\API.&lt;br /&gt;
 &lt;br /&gt;
The sample applications are available for Excel VBA and VB.NET projects. (To run the Excel examples, macros must be enabled. See [http://office.microsoft.com/en-us/excel-help/enable-or-disable-macros-in-office-documents-HA010031071.aspx this Microsoft article].) &lt;br /&gt;
&lt;br /&gt;
====Tutorials====&lt;br /&gt;
[[API Tutorials|Tutorials]] are available to help you learn the core objects of the ReliaSoft API and start coding right away. The tutorials include code samples for both VBA and VB.NET.&lt;br /&gt;
&lt;br /&gt;
==Object Library ==&lt;br /&gt;
Below is a summary of the core objects in the ReliaSoft API library. For an alphabetical listing of all objects in the latest version, see [[API Reference Documentation]].&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[Repository Class|Repository]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents the ReliaSoft repository. All other objects use the functions in this class to read or write data to the repository. This class also contains the functions for importing/exporting XML files. &lt;br /&gt;
&lt;br /&gt;
*The following objects represent the ReliaSoft resources. Instances of each class can be used to store data for an existing or new resource.  &lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CAction Class|cAction]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CCorrectiveTask Class|cCorrectiveTask]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CScheduledTask Class|cScheduledTask]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CCrew Class|cCrew]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CModel Class|cModel]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CPool Class|cPool]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CProfile Class|cProfile]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CURD Class|cURD]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CVariable Class|cVariable]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CXfmeaControl Class|cXfmeaControl]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*The following objects build data sets for the Synthesis Data Warehouse (SDW).&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[RawData Class|RawData]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; represents a single data point.&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[RawDataSet Class|RawDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; serves as the data container for &amp;lt;code&amp;gt;RawData&amp;lt;/code&amp;gt; objects.&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaItem Class|XfmeaItem]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a system hierarchy item. Instances of this class can be used to store data for a system or assembly, as well as build a multi-level system configuration. &lt;br /&gt;
&lt;br /&gt;
*The following objects represent the FMEA records. Instances of each class can be used to store data for an existing or new FMEA analysis. &lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaFunction Class|XfmeaFunction]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaCause Class|XfmeaCause]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaEffect Class|XfmeaEffect]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaFailure Class|XfmeaFailure]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WeibullDataSet Class|WeibullDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a Weibull++ data sheet for life data analysis. Instances of this class are used to define a data set and fit a statistical distribution to the data.&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[ALTADataSet Class|ALTADataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents an ALTA data sheet for accelerated life testing data analysis. Instances of this class are used to define a data set, and fit a distribution and life-stress relationship to the data. &lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WAPlots Class|WAPlots]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a plot based on a &amp;lt;code&amp;gt;cModel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WeibullDataSet&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;ALTADataSet&amp;lt;/code&amp;gt; object. Instances of this class are used to display a plot of the analysis results.&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=ReliaSoft_API_Reference&amp;diff=65501</id>
		<title>ReliaSoft API Reference</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=ReliaSoft_API_Reference&amp;diff=65501"/>
		<updated>2019-03-14T15:42:55Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #D0CDE8; background:#EEEDF7; border-radius:10px; width:auto; margin:0 0 1em 1em; padding:1em; float:right;&amp;quot;&amp;gt;&lt;br /&gt;
*&#039;&#039;&#039;[[API Changelog|Changelog]]&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;[[API Reference Documentation|API Documentation]]&lt;br /&gt;
*&#039;&#039;&#039;[[API Tutorials|Tutorials]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The ReliaSoft &#039;&#039;Application Programming Interface&#039;&#039; (API) enables you to programmatically read and write data to ReliaSoft repositories, as well as analyze and plot data sets from external sources. It is provided for Visual Basic for Applications (VBA) and .NET applications, allowing you to create automated solutions using popular Microsoft Office applications, such as Excel and PowerPoint, or create custom applications for your organization. &lt;br /&gt;
&lt;br /&gt;
Implementing the ReliaSoft API allows you to connect data in repositories with the systems and tools used within your organization. It provides the functionality to:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Transfer and synchronize data via XML&#039;&#039;&#039;&lt;br /&gt;
:Use XML files to manage structured data (such as system hierarchies/BOMs, incidents and work orders) between ReliaSoft’s [https://www.reliasoft.com/products/reliability-management/xfracas/ XFRACAS] and a variety of different PLMs, ERPs, CMMS and other external systems. You can also use XML files to create reliability block diagrams (RBDs) in [http://www.reliasoft.com/products/reliability-analysis/blocksim BlockSim]. &lt;br /&gt;
*&#039;&#039;&#039;Read/write specific data elements&#039;&#039;&#039;&lt;br /&gt;
:Read or write data to resources (models, actions, URDs, etc.), system hierarchy items and FMEA records (causes, effects, failures, etc.). Initiate batch data processing and create custom solutions for importing/exporting data from ReliaSoft repositories, as well as load data into the Synthesis Data Warehouse (SDW). &lt;br /&gt;
*&#039;&#039;&#039;Obtain calculated results&#039;&#039;&#039;&lt;br /&gt;
:Read data from published models and obtain calculated results such as reliability, probability of failure, BX% life, failure rate and mean time. &lt;br /&gt;
*&#039;&#039;&#039;Analyze data&#039;&#039;&#039;&lt;br /&gt;
:Use [http://www.reliasoft.com/products/reliability-analysis/weibull Weibull++&#039;s] or [http://www.reliasoft.com/products/reliability-analysis/alta ALTA’s] analysis and plotting engines to analyze data from third-party sources, and incorporate the functionality into your own custom applications. (Requires a ReliaSoft API license.)&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
*&#039;&#039;&#039;Getting the latest version&#039;&#039;&#039;&lt;br /&gt;
:The ReliaSoft API consists of a library file that contains the classes, methods and events that provide access to ReliaSoft applications. The file is located in the folder where the ReliaSoft desktop applications are installed. By default, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019.&amp;quot; As of Version 2019, the library names are now version dependent. For VBA, you will use the &#039;&#039;&#039;ReliaSoftAPI19.tlb&#039;&#039;&#039; file; for .NET applications, you will use the &#039;&#039;&#039;ReliaSoftAPI19.dll&#039;&#039;&#039; file. Prior to Version 2019, the files to use were SynthesisAPI.tlb (VBA) and SynthesisAPI.dll (.NET).&lt;br /&gt;
&lt;br /&gt;
:To obtain the latest version of the library file and the ReliaSoft applications, choose &#039;&#039;&#039;File &amp;gt; Help &amp;gt; Check for Updates&#039;&#039;&#039; or download the latest version from the Support Portal at https://support.hbmprenscia.com.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Build environment&#039;&#039;&#039;&lt;br /&gt;
:For Visual Studio projects using Version 10 or 11, at minimum you will need Visual Studio 2010 and the .NET Framework 4.0 runtime. Version 2018 and later require Visual Studio 2015 and the .NET Framework 4.6.1 developer pack and runtime.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;32- vs. 64-bit&#039;&#039;&#039;&lt;br /&gt;
:For VBA, the bit version of the ReliaSoft applications that you&#039;ve installed must match your installed version of Microsoft Office. If they do not match, you may see an error related to ActiveX controls. (See [http://www.reliasoft.com/support/rs20024.htm ReliaSoft KB article RS20024].) &lt;br /&gt;
&lt;br /&gt;
:For Visual Studio projects targeting the .NET Framework 4.5 (or later) and compiled to run an any platform (Any CPU), turn off the &#039;&#039;&#039;Prefer 32-bit&#039;&#039;&#039; property of the build configuration if you want instances of your application to run as a 64-bit process; otherwise, the application will run as a 32-bit process on both 32- and 64-bit versions of Windows. Note that when using [https://www.reliasoft.com/locally-hosted-licensing locally hosted licensing], it is necessary to ensure your application bitness matches the bitness of the ReliaSoft desktop applications installed wherever your application is run due to dependencies on platform-specific libraries.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Running API applications on a server &lt;br /&gt;
:If you plan to run the API on a Windows server, you must use [https://www.reliasoft.com/locally-hosted-licensing locally hosted licensing] and you’ll need to install the ReliaSoft API Ante Service to scale the implementation (the service is not required when running the API on a Windows desktop environment). For instructions on how to install and configure the service, see https://www.reliasoft.com/reliasoft-api-ante-service. &lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Access to calculations functionality&lt;br /&gt;
:Access to Weibull++&#039;s and ALTA’s analysis and plotting engines require a ReliaSoft API license. To obtain a license, please see [http://www.reliasoft.com/contact.htm contact ReliaSoft].&lt;br /&gt;
&lt;br /&gt;
==Getting Started==&lt;br /&gt;
&lt;br /&gt;
====Referencing the ReliaSoft API Library File====&lt;br /&gt;
&amp;lt;!-- This &amp;quot;onlyinclude&amp;quot; section is transcluded into the API Tutorials page --&amp;gt;&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;To use the ReliaSoft API in your code, you must reference the ReliaSoft API library in your VBA or .NET projects. The file is located in the folder where the ReliaSoft desktop applications are installed. By default for Version 2019, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019.&amp;quot; For VBA, you will use the &#039;&#039;&#039;ReliaSoftAPI19.tlb&#039;&#039;&#039; file; for .NET applications, you will use the &#039;&#039;&#039;ReliaSoftAPI19.dll&#039;&#039;&#039; file.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;To reference the library in VBA&#039;&#039;&#039;:&lt;br /&gt;
:#Enter the VBA environment by clicking the &#039;&#039;&#039;Visual Basic&#039;&#039;&#039; command on the Developer tab (If the Developer tab is not visible, see [https://msdn.microsoft.com/en-us/library/bb608625.aspx this Microsoft article]). &lt;br /&gt;
:#In the VBA environment, choose &#039;&#039;&#039;Tools &amp;gt; References&#039;&#039;&#039;.&lt;br /&gt;
:#Click &#039;&#039;&#039;Browse&#039;&#039;&#039; and find the ReliaSoftAPI19.tlb file on your computer. Click &#039;&#039;&#039;OK&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;To reference the library in Visual Studio:&#039;&#039;&#039;&lt;br /&gt;
:#In the Solution Explorer, right-click the &#039;&#039;&#039;References&#039;&#039;&#039; node and choose &#039;&#039;&#039;Add References&#039;&#039;&#039;. &lt;br /&gt;
:#In the Reference Manager window, click the &#039;&#039;&#039;Browse&#039;&#039;&#039; tab and find the ReliaSoftAPI19.dll file on your computer. Click &#039;&#039;&#039;OK&#039;&#039;&#039;. &lt;br /&gt;
:#Copy the following files from the ReliaSoft installation folder to your target folder (e.g., bin/Debug or bin/Release Folder). &lt;br /&gt;
:::*licncr.dll&lt;br /&gt;
:::*licncr.dll.nsign&lt;br /&gt;
:::*licshr.dll&lt;br /&gt;
:::*licshr.dll.nsign&lt;br /&gt;
:::*msvcp110.dll&lt;br /&gt;
:::*msvcr110.dll&lt;br /&gt;
:::*RSDB.dll&lt;br /&gt;
:::*RSLM8nCodeDotNetWrapper.dll&lt;br /&gt;
:::*utlibr.dll&lt;br /&gt;
&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
====Examples====&lt;br /&gt;
Sample applications that you can test and tweak yourself are included with the ReliaSoft installation. The files are stored on your computer at C:\Users\Public\Public Documents\ReliaSoft\Examples19\API.&lt;br /&gt;
 &lt;br /&gt;
The sample applications are available for Excel VBA and VB.NET projects. (To run the Excel examples, macros must be enabled. See [http://office.microsoft.com/en-us/excel-help/enable-or-disable-macros-in-office-documents-HA010031071.aspx this Microsoft article].) &lt;br /&gt;
&lt;br /&gt;
====Tutorials====&lt;br /&gt;
[[API Tutorials|Tutorials]] are available to help you learn the core objects of the ReliaSoft API and start coding right away. The tutorials include code samples for both VBA and VB.NET.&lt;br /&gt;
&lt;br /&gt;
==Object Library ==&lt;br /&gt;
Below is a summary of the core objects in the ReliaSoft API library. For an alphabetical listing of all objects in the latest version, see [[API Reference Documentation]].&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[Repository Class|Repository]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents the ReliaSoft repository. All other objects use the functions in this class to read or write data to the repository. This class also contains the functions for importing/exporting XML files. &lt;br /&gt;
&lt;br /&gt;
*The following objects represent the ReliaSoft resources. Instances of each class can be used to store data for an existing or new resource.  &lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CAction Class|cAction]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CCorrectiveTask Class|cCorrectiveTask]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CScheduledTask Class|cScheduledTask]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CCrew Class|cCrew]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CModel Class|cModel]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CPool Class|cPool]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CProfile Class|cProfile]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CURD Class|cURD]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CVariable Class|cVariable]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CXfmeaControl Class|cXfmeaControl]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*The following objects build data sets for the Synthesis Data Warehouse (SDW).&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[RawData Class|RawData]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; represents a single data point.&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[RawDataSet Class|RawDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; serves as the data container for &amp;lt;code&amp;gt;RawData&amp;lt;/code&amp;gt; objects.&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaItem Class|XfmeaItem]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a system hierarchy item. Instances of this class can be used to store data for a system or assembly, as well as build a multi-level system configuration. &lt;br /&gt;
&lt;br /&gt;
*The following objects represent the FMEA records. Instances of each class can be used to store data for an existing or new FMEA analysis. &lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaFunction Class|XfmeaFunction]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaCause Class|XfmeaCause]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaEffect Class|XfmeaEffect]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaFailure Class|XfmeaFailure]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WeibullDataSet Class|WeibullDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a Weibull++ data sheet for life data analysis. Instances of this class are used to define a data set and fit a statistical distribution to the data.&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[ALTADataSet Class|ALTADataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents an ALTA data sheet for accelerated life testing data analysis. Instances of this class are used to define a data set, and fit a distribution and life-stress relationship to the data. &lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WAPlots Class|WAPlots]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a plot based on a &amp;lt;code&amp;gt;cModel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WeibullDataSet&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;ALTADataSet&amp;lt;/code&amp;gt; object. Instances of this class are used to display a plot of the analysis results.&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Repository.Action.GetFMEAActionLocatorLinkPath&amp;diff=65500</id>
		<title>Repository.Action.GetFMEAActionLocatorLinkPath</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Repository.Action.GetFMEAActionLocatorLinkPath&amp;diff=65500"/>
		<updated>2019-03-13T23:53:28Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}{{Template:APIBreadcrumb|.[[Repository Class|Repository]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;Creates a locator link file for the action and returns the path.&amp;lt;/onlyinclude&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
== Syntax ==&lt;br /&gt;
 &#039;&#039;&#039;.Action.GetFMEAActionLocatorLinkPath&#039;&#039;&#039;(&#039;&#039;actionID&#039;&#039;, &#039;&#039;[causeID]&#039;&#039;) {{APIPrefix|As}} String&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&#039;&#039;actionID&#039;&#039;&lt;br /&gt;
:Required. The ID of the action.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;causeID&#039;&#039;&lt;br /&gt;
:Optional. The ID of the cause that the action belongs to. Set to 0 to use the first cause where the action is used.&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;VBA&#039;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|&#039;Declare a new Repository object and connect to a Synthesis repository.}}&lt;br /&gt;
   {{APIPrefix|Dim}} MyRepository {{APIPrefix|As New}} Repository&lt;br /&gt;
   MyRepository.ConnectToAccessRepository({{APIString|&amp;quot;C:\RSRepository1.rsr10&amp;quot;}})&lt;br /&gt;
  &lt;br /&gt;
 {{APIComment|&#039;Get action #1 from project #1.}}&lt;br /&gt;
   {{APIPrefix|Dim}} MyAction {{APIPrefix|As}} cAction&lt;br /&gt;
   MyRepository.Project.SetCurrentProject(1)&lt;br /&gt;
   {{APIPrefix|Set}} MyAction = MyRepository.Action.GetAction(1)&lt;br /&gt;
 {{APIComment|&#039;Get string which contains the path to the action}}&lt;br /&gt;
   {{APIPrefix|Dim}} sPath {{APIPrefix|As}} String&lt;br /&gt;
   sPath = MyAction.GetFMEAActionLocatorLinkPath&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Repository_Class&amp;diff=65499</id>
		<title>Repository Class</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Repository_Class&amp;diff=65499"/>
		<updated>2019-03-13T23:53:16Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}{{Template:APIBreadcrumb}}&amp;lt;div style=&amp;quot;border:1px solid #D0CDE8; background:#EEEDF7; border-radius:10px; width:auto; margin:0 0 1em 1em; padding:1em; float:right;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-family:arial;font-size:5;color:#585858&amp;quot;&amp;gt;Other Versions: [[Repository Class 10|Version 10]]&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Represents a Synthesis repository. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Remarks&#039;&#039;&#039;: Use any of the first four methods to establish a connection to a Synthesis repository. Once you have a connection, you can use any of the rest of the methods to read/write data to the repository.&lt;br /&gt;
&lt;br /&gt;
==Constructors==&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|Repository||Creates an instance of the Repository class.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Methods==&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|[[Repository.ConnectToAccessRepository|ConnectToAccessRepository]]||{{:Repository.ConnectToAccessRepository}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.ConnectToOracleRepository|ConnectToOracleRepository]]||{{:Repository.ConnectToOracleRepository}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.ConnectToRepository|ConnectToRepository]]||{{:Repository.ConnectToRepository}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.ConnectToSQLRepository|ConnectToSQLRepository]]||{{:Repository.ConnectToSQLRepository}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.DisconnectFromRepository|DisconnectFromRepository]]||{{:Repository.DisconnectFromRepository}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#585858&amp;quot;&amp;gt;Action&amp;lt;/span&amp;gt;=== &lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|[[Repository.Action.AddAction|Action.AddAction]]||{{:Repository.Action.AddAction}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Action.GetAction|Action.GetAction]]||{{:Repository.Action.GetAction}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Action.GetAllActions|Action.GetAllActions]]||{{:Repository.Action.GetAllActions}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Action.GetAllActionsDictionary|Action.GetAllActionsDictionary]]||{{:Repository.Action.GetAllActionsDictionary}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Action.GetFMEAActionLocatorLinkPath|Action.GetFMEAActionLocatorLinkPath]]||{{:Repository.Action.GetFMEAActionLocatorLinkPath}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Action.UpdateAction|Action.UpdateAction]]||{{:Repository.Action.UpdateAction}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#585858&amp;quot;&amp;gt;BlockSim&amp;lt;/span&amp;gt;===&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|[[Repository.BlockSim.ExportBlockSimXMLFile|BlockSim.ExportBlockSimXMLFile]]||{{:Repository.BlockSim.ExportBlockSimXMLFile}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.BlockSim.GetAllFaultTrees|BlockSim.GetAllFaultTrees]]||{{:Repository.BlockSim.GetAllFaultTrees}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.BlockSim.GetAllRBDBlocksData|BlockSim.GetAllRBDBlocksData]]||{{:Repository.BlockSim.GetAllRBDBlocksData}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.BlockSim.GetAllRBDs|BlockSim.GetAllRBDs]]||{{:Repository.BlockSim.GetAllRBDs}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.BlockSim.GetRBDBlockData|BlockSim.GetRBDBlockData]]||{{:Repository.BlockSim.GetRBDBlockData}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.BlockSim.ImportBlockSimXMLFile|BlockSim.ImportBlockSimXMLFile]]||{{:Repository.BlockSim.ImportBlockSimXMLFile}} &lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.BlockSim.UpdateRBDBlockData|BlockSim.UpdateRBDBlockData]]||{{:Repository.BlockSim.UpdateRBDBlockData}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#585858&amp;quot;&amp;gt;Control&amp;lt;/span&amp;gt;===&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|[[Repository.Control.AddXfmeaControl|Control.AddXfmeaControl]]||{{:Repository.Control.AddXfmeaControl}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Control.GetAllXfmeaControls|Control.GetAllXfmeaControls]]||{{:Repository.Control.GetAllXfmeaControls}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Control.GetAllXfmeaControlsDictionary|Control.GetAllXfmeaControlsDictionary]]||{{:Repository.Control.GetAllXfmeaControlsDictionary}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Control.GetXfmeaControl|Control.GetXfmeaControl]]||{{:Repository.Control.GetXfmeaControl}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Control.UpdateXfmeaControl|Control.UpdateXfmeaControl]]||{{:Repository.Control.UpdateXfmeaControl}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#585858&amp;quot;&amp;gt;Crew&amp;lt;/span&amp;gt;===&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|[[Repository.Crew.AddCrew|Crew.AddCrew]]||{{:Repository.AddCrew}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Crew.GetAllCrews|Crew.GetAllCrews]]||{{:Repository.GetAllCrews}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Crew.GetCrew|Crew.GetCrew]]||{{:Repository.GetCrew}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Crew.UpdateCrew|Crew.UpdateCrew]]||{{:Repository.UpdateCrew}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#585858&amp;quot;&amp;gt;Data Warehouse&amp;lt;/span&amp;gt;===&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|[[Repository.DataWarehouse.SaveRawDataSet|DataWarehouse.SaveRawDataSet]]||{{:Repository.DataWarehouse.SaveRawDataSet}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#585858&amp;quot;&amp;gt;Model&amp;lt;/span&amp;gt;===&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|[[Repository.Model.AddModel|Model.AddModel]]||{{:Repository.Model.AddModel}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Model.DeleteModel|Model.DeleteModel]]||{{:Repository.Model.DeleteModel}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Model.GetAllModels|Model.GetAllModels]]||{{:Repository.Model.GetAllModels}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Model.GetModel|Model.GetModel]]||{{:Repository.Model.GetModel}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Model.IsModelUsed|Model.IsModelUsed]]||{{:Repository.Model.IsModelUsed}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Model.UpdateModel|Model.UpdateModel]]||{{:Repository.Model.UpdateModel}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Model.GetAllModelsInfo|Model.GetAllModelsInfo]]||{{:Repository.Model.GetAllModelsInfo}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#585858&amp;quot;&amp;gt;Pool&amp;lt;/span&amp;gt;===&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|[[Repository.Pool.AddPool|Pool.AddPool]]||{{:Repository.Pool.AddPool}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Pool.GetAllPools|Pool.GetAllPools]]||{{:Repository.Pool.GetAllPools}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Pool.GetPool|Pool.GetPool]]||{{:Repository.Pool.GetPool}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Pool.UpdatePool|Pool.UpdatePool]]||{{:Repository.Pool.UpdatePool}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#585858&amp;quot;&amp;gt;Profiles&amp;lt;/span&amp;gt;=== &lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|[[Repository.Profile.AddProfile|Profile.AddProfile]]||{{:Repository.Profile.AddProfile}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Profile.GetProfile|Profile.GetProfile]]||{{:Repository.Profile.GetProfile}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Profile.GetAllProfiles|Profile.GetAllProfiles]]||{{:Repository.Profile.GetAllProfiles}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Profile.UpdateProfile|Profile.UpdateProfile]]||{{:Repository.Profile.UpdateProfile}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#585858&amp;quot;&amp;gt;Project&amp;lt;/span&amp;gt;===&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|[[Repository.Project.GetAllProjects|Project.GetAllProjects]]||{{:Repository.Project.GetAllProjects}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Project.GetCurrentProject|Project.GetCurrentProject]]||{{:Repository.Project.GetCurrentProject}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Project.GetUserAccessibleProjects|Project.GetUserAccessibleProjects]]||{{:Repository.Project.GetUserAccessibleProjects}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Project.GetUserPermissions|Project.GetUserPermissions]]||{{:Repository.Project.GetUserPermissions}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Project.SetCurrentProject|Project.SetCurrentProject]]||{{:Repository.Project.SetCurrentProject}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#585858&amp;quot;&amp;gt;Task&amp;lt;/span&amp;gt;===&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|[[Repository.Task.AddCorrectiveTask|Task.AddCorrectiveTask]]||{{:Repository.Task.AddCorrectiveTask}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Task.AddScheduledTask|Task.AddScheduledTask]]||{{:Repository.Task.AddScheduledTask}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Task.GetAllCorrectiveTasks|Task.GetAllCorrectiveTasks]]||{{:Repository.Task.GetAllCorrectiveTasks}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Task.GetAllScheduledTasks|Task.GetAllScheduledTasks]]||{{:Repository.Task.GetAllScheduledTasks}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Task.GetAllTaskTypes|Task.GetAllTaskTypes]]||{{:Repository.Task.GetAllTaskTypes}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Task.GetCorrectiveTask|Task.GetCorrectiveTask]]||{{:Repository.Task.GetCorrectiveTask}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Task.GetScheduledTask|Task.GetScheduledTask]]||{{:Repository.Task.GetScheduledTask}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Task.UpdateCorrectiveTask|Task.UpdateCorrectiveTask]]||{{:Repository.Task.UpdateCorrectiveTask}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Task.UpdateScheduledTask|Task.UpdateScheduledTask]]||{{:Repository.Task.UpdateScheduledTask}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#585858&amp;quot;&amp;gt;Unit&amp;lt;/span&amp;gt;===&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|[[Repository.Unit.GetAllUnits|Unit.GetAllUnits]]||{{:Repository.Unit.GetAllUnits}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#585858&amp;quot;&amp;gt;URD&amp;lt;/span&amp;gt;===&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|[[Repository.URD.AddURD|URD.AddURD]]||{{:Repository.URD.AddURD}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.URD.GetAllURDs|URD.GetAllURDs]]||{{:Repository.URD.GetAllURDs}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.URD.GetURD|URD.GetURD]]||{{:Repository.URD.GetURD}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.URD.UpdateURD|URD.UpdateURD]]||{{:Repository.URD.UpdateURD}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#585858&amp;quot;&amp;gt;Variable&amp;lt;/span&amp;gt;=== &lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|[[Repository.Variable.AddVariable|Variables.AddVariable]]||{{:Repository.Variable.AddVariable}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Variable.GetAllVariables|Variables.GetAllVariables]]||{{:Repository.Variable.GetAllVariables}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Variable.GetVariable|Variables.GetVariable]]||{{:Repository.Variable.GetVariable}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Variable.UpdateVariable|Variables.UpdateVariable]]||{{:Repository.Variable.UpdateVariable}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#585858&amp;quot;&amp;gt;XFMEA&amp;lt;/span&amp;gt;===&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 250px;&amp;quot;|[[Repository.Xfmea.AddItemToSystemHierarchy Method|Xfmea.AddItemToSystemHierarchy]]||{{:Repository.Xfmea.AddItemToSystemHierarchy  Method}} &lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.AddXfmeaCause Method|Xfmea.AddXfmeaCause]]|| {{:Repository.Xfmea.AddXfmeaCause Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.AddXfmeaEffect Method|Xfmea.AddXfmeaEffect]]||{{:Repository.Xfmea.AddXfmeaEffect Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.AddXfmeaFailure Method|Xfmea.AddXfmeaFailure]]||{{:Repository.Xfmea.AddXfmeaFailure Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.AddXfmeaFunction Method|Xfmea.AddXfmeaFunction]]|| {{:Repository.Xfmea.AddXfmeaFunction Method}} &lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetAllItemsInSystemHierarchy Method|Xfmea.GetAllItemsInSystemHierarchy]]||{{:Repository.Xfmea.GetAllItemsInSystemHierarchy  Method}} &lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetAllItemsInSystemHierarchyDictionary Method|Xfmea.GetAllItemsInSystemHierarchyDictionary]]|| {{:Repository.Xfmea.GetAllItemsInSystemHierarchyDictionary Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetAllXfmeaCauses Method|Xfmea.GetAllXfmeaCauses]]||{{:Repository.Xfmea.GetAllXfmeaCauses Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetAllXfmeaCausesDictionary Method|Xfmea.GetAllXfmeaCausesDictionary]]||{{:Repository.Xfmea.GetAllXfmeaCausesDictionary Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetAllXfmeaEffects Method|Xfmea.GetAllXfmeaEffects]]||{{:Repository.Xfmea.GetAllXfmeaEffects Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetAllXfmeaEffectsDictionary Method|Xfmea.GetAllXfmeaEffectsDictionary]]||{{:Repository.Xfmea.GetAllXfmeaEffectsDictionary Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetAllXfmeaFailures Method|Xfmea.GetAllXfmeaFailures]]||{{:Repository.Xfmea.GetAllXfmeaFailures Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetAllXfmeaFailuresDictionary Method|Xfmea.GetAllXfmeaFailuresDictionary]]||{{:Repository.Xfmea.GetAllXfmeaFailuresDictionary Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetAllXfmeaFunctions Method|Xfmea.GetAllXfmeaFunctions]]|| {{:Repository.Xfmea.GetAllXfmeaFunctions Method}} &lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetAllXfmeaFunctionsDictionary Method|Xfmea.GetAllXfmeaFunctionsDictionary]]||{{:Repository.Xfmea.GetAllXfmeaFunctionsDictionary Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetItemInSystemHierarchy_Method|Xfmea.GetItemInSystemHierarchy]]||{{:Repository.Xfmea.GetItemInSystemHierarchy_Method}} &lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetXfmeaCause Method|Xfmea.GetXfmeaCause]]||{{:Repository.Xfmea.GetXfmeaCause Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetXfmeaEffect Method|Xfmea.GetXfmeaEffect]]||{{:Repository.Xfmea.GetXfmeaEffect Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetXfmeaFailure Method|Xfmea.GetXfmeaFailure]]||{{:Repository.Xfmea.GetXfmeaFailure Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetXfmeaFunction Method|Xfmea.GetXfmeaFunction]]|| {{:Repository.Xfmea.GetXfmeaFunction Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.UpdateItemInSystemHierarchy Method|Xfmea.UpdateItemInSystemHierarchy]]||{{:Repository.Xfmea.UpdateItemInSystemHierarchy  Method}} &lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.UpdateXfmeaCause Method|Xfmea.UpdateXfmeaCause]]||{{:Repository.Xfmea.UpdateXfmeaCause Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.UpdateXfmeaEffect Method|Xfmea.UpdateXfmeaEffect]]||{{:Repository.Xfmea.UpdateXfmeaEffect Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.UpdateXfmeaFailure Method|Xfmea.UpdateXfmeaFailure]]||{{:Repository.Xfmea.UpdateXfmeaFailure Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.UpdateXfmeaFunction Method|Xfmea.UpdateXfmeaFunction]]|| {{:Repository.Xfmea.UpdateXfmeaFunction Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.AssignActionToXfmeaCause Method|Xfmea.AssignActionToXfmeaCause]]|| {{:Repository.Xfmea.AssignActionToXfmeaCause Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.AssignControlToXfmeaCause Method|Xfmea.AssignControlToXfmeaCause]]|| {{:Repository.Xfmea.AssignControlToXfmeaCause Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetXfmeaCauseActions Method|Xfmea.GetXfmeaCauseActions]]|| {{:Repository.Xfmea.GetXfmeaCauseActions Method}}&lt;br /&gt;
|- &lt;br /&gt;
|[[Repository.Xfmea.GetXfmeaCauseActionsDictionary Method|Xfmea.GetXfmeaCauseActionsDictionary]]|| {{:Repository.Xfmea.GetXfmeaCauseActionsDictionary Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetXfmeaCauseControls Method|Xfmea.GetXfmeaCauseControls]]|| {{:Repository.Xfmea.GetXfmeaCauseControls Method}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.Xfmea.GetXfmeaCauseControlsDictionary Method|Xfmea.GetXfmeaCauseControlsDictionary]]|| {{:Repository.Xfmea.GetXfmeaCauseControlsDictionary Method}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:#585858&amp;quot;&amp;gt;XFRACAS&amp;lt;/span&amp;gt;===&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 240px;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.XFRACAS.AddSystemMetric1|XFRACAS.AddSystemMetric1]] ||{{:Repository.XFRACAS.AddSystemMetric1}} &lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.XFRACAS.AddSystemMetric2|XFRACAS.AddSystemMetric2]]||{{:Repository.XFRACAS.AddSystemMetric2}} &lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.XFRACAS.AddSystemMetric3|XFRACAS.AddSystemMetric3]]||{{:Repository.XFRACAS.AddSystemMetric3}} &lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.XFRACAS.GetAllXFRACASEntities|XFRACAS.GetAllXFRACASEntities]]|| {{:Repository.XFRACAS.GetAllXFRACASEntities}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.XFRACAS.ImportXFRACASXML|XFRACAS.ImportXFRACASXML]]|| {{:Repository.XFRACAS.ImportXFRACASXML}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.XFRACAS.ImportXFRACASXMLFile|XFRACAS.ImportXFRACASXMLFile]]|| {{:Repository.XFRACAS.ImportXFRACASXMLFile}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.XFRACAS.ImportXFRACASXMLString|XFRACAS.ImportXFRACASXMLString]] ||{{:Repository.XFRACAS.ImportXFRACASXMLString}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.XFRACAS.ProcessXfracasImports|XFRACAS.ProcessXfracasImports]]|| {{:Repository.XFRACAS.ProcessXfracasImports}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.XFRACAS.SerializeXMLObjectToByteArray|XFRACAS.SerializeXMLObjectToByteArray]]||{{:Repository.XFRACAS.SerializeXMLObjectToByteArray}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.XFRACAS.WriteExceptionToDiagnosticsLog|XFRACAS.WriteExceptionToDiagnosticsLog]]||{{:Repository.XFRACAS.WriteExceptionToDiagnosticsLog}}&lt;br /&gt;
|-&lt;br /&gt;
|[[Repository.XFRACAS.WriteMessageToDiagnosticsLog|XFRACAS.WriteMessageToDiagnosticsLog]]||{{:Repository.XFRACAS.WriteMessageToDiagnosticsLog}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Properties==&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 250px;&amp;quot;|EnforceRENOCompliance||Indicates whether spaces and special characters are allowed in the names of models created via the Synthesis API. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = True.  &lt;br /&gt;
|-&lt;br /&gt;
|Use Events||Indicates whether to enable user-defined event procedures for the &amp;lt;code&amp;gt;Repository&amp;lt;/code&amp;gt; object. &#039;&#039;&#039;Boolean&#039;&#039;&#039;. Default value = False.&lt;br /&gt;
|-&lt;br /&gt;
|XFRACAS.XFRACASCommandTimeout||Gets or sets the wait time in seconds before terminating the attempt to execute an XFRACAS command. &#039;&#039;&#039;Integer&#039;&#039;&#039;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Events==&lt;br /&gt;
{| {{APITable}}&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 250px;&amp;quot;|[[Repository.Message|Message]]||{{:Repository.Message}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Repository.Action.GetFMEAActionLocatorLinkPath&amp;diff=65498</id>
		<title>Repository.Action.GetFMEAActionLocatorLinkPath</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Repository.Action.GetFMEAActionLocatorLinkPath&amp;diff=65498"/>
		<updated>2019-03-13T23:51:29Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}{{Template:APIBreadcrumb|.[[Repository Class|Repository]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;Creates a locator link file for the action and returns the path to the file.&amp;lt;/onlyinclude&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
== Syntax ==&lt;br /&gt;
 &#039;&#039;&#039;.Action.GetFMEAActionLocatorLinkPath&#039;&#039;&#039;(&#039;&#039;actionID&#039;&#039;, &#039;&#039;[causeID]&#039;&#039;) {{APIPrefix|As}} String&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&#039;&#039;actionID&#039;&#039;&lt;br /&gt;
:Required. The ID of the action.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;causeID&#039;&#039;&lt;br /&gt;
:Optional. The ID of the cause that the action belongs to. Set to 0 to use the first cause where the action is used.&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;VBA&#039;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
 {{APIComment|&#039;Declare a new Repository object and connect to a Synthesis repository.}}&lt;br /&gt;
   {{APIPrefix|Dim}} MyRepository {{APIPrefix|As New}} Repository&lt;br /&gt;
   MyRepository.ConnectToAccessRepository({{APIString|&amp;quot;C:\RSRepository1.rsr10&amp;quot;}})&lt;br /&gt;
  &lt;br /&gt;
 {{APIComment|&#039;Get action #1 from project #1.}}&lt;br /&gt;
   {{APIPrefix|Dim}} MyAction {{APIPrefix|As}} cAction&lt;br /&gt;
   MyRepository.Project.SetCurrentProject(1)&lt;br /&gt;
   {{APIPrefix|Set}} MyAction = MyRepository.Action.GetAction(1)&lt;br /&gt;
 {{APIComment|&#039;Get string which contains the path to the action}}&lt;br /&gt;
   {{APIPrefix|Dim}} sPath {{APIPrefix|As}} String&lt;br /&gt;
   sPath = MyAction.GetFMEAActionLocatorLinkPath&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=Repository.Action.GetFMEAActionLocatorLinkPath&amp;diff=65497</id>
		<title>Repository.Action.GetFMEAActionLocatorLinkPath</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=Repository.Action.GetFMEAActionLocatorLinkPath&amp;diff=65497"/>
		<updated>2019-03-13T23:44:55Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: Created page with &amp;#039;{{Template:API}}{{Template:APIBreadcrumb|.Repository}}   &amp;lt;onlyinclude&amp;gt;Creates a locator link file for the action and returns the path to the file.&amp;lt;/onlyinclu…&amp;#039;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}{{Template:APIBreadcrumb|.[[Repository Class|Repository]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;Creates a locator link file for the action and returns the path to the file.&amp;lt;/onlyinclude&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
== Syntax ==&lt;br /&gt;
 &#039;&#039;&#039;.Action.GetFMEAActionLocatorLinkPath&#039;&#039;&#039;(&#039;&#039;actionID&#039;&#039;, &#039;&#039;[causeID]&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&#039;&#039;actionID&#039;&#039;&lt;br /&gt;
:Required. The ID of the action.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;causeID&#039;&#039;&lt;br /&gt;
:Optional. The ID of the cause that the action belongs to. Set to 0 to use the first cause where the action is used.&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;VBA&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=ReliaSoft_API_Reference&amp;diff=65496</id>
		<title>ReliaSoft API Reference</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=ReliaSoft_API_Reference&amp;diff=65496"/>
		<updated>2019-03-13T23:36:33Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #D0CDE8; background:#EEEDF7; border-radius:10px; width:auto; margin:0 0 1em 1em; padding:1em; float:right;&amp;quot;&amp;gt;&lt;br /&gt;
*&#039;&#039;&#039;[[API Changelog|Changelog]]&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;[[API Reference Documentation|API Documentation]]&lt;br /&gt;
*&#039;&#039;&#039;[[API Tutorials|Tutorials]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The ReliaSoft &#039;&#039;Application Programming Interface&#039;&#039; (API) enables you to programmatically read and write data to ReliaSoft repositories, as well as analyze and plot data sets from external sources. It is provided for Visual Basic for Applications (VBA) and .NET applications, allowing you to create automated solutions using popular Microsoft Office applications, such as Excel and PowerPoint, or create custom applications for your organization. &lt;br /&gt;
&lt;br /&gt;
Implementing the ReliaSoft API allows you to connect data in repositories with the systems and tools used within your organization. It provides the functionality to:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Transfer and synchronize data via XML&#039;&#039;&#039;&lt;br /&gt;
:Use XML files to manage structured data (such as system hierarchies/BOMs, incidents and work orders) between ReliaSoft’s [http://xfracas.reliasoft.com/ XFRACAS] and a variety of different PLMs, ERPs, CMMS and other external systems. You can also use XML files to create reliability block diagrams (RBDs) in [http://www.reliasoft.com/products/reliability-analysis/blocksim BlockSim]. &lt;br /&gt;
*&#039;&#039;&#039;Read/write specific data elements&#039;&#039;&#039;&lt;br /&gt;
:Read or write data to resources (models, actions, URDs, etc.), system hierarchy items and FMEA records (causes, effects, failures, etc.). Initiate batch data processing and create custom solutions for importing/exporting data from ReliaSoft repositories, as well as load data into the Synthesis Data Warehouse (SDW). &lt;br /&gt;
*&#039;&#039;&#039;Obtain calculated results&#039;&#039;&#039;&lt;br /&gt;
:Read data from published models and obtain calculated results such as reliability, probability of failure, BX% life, failure rate and mean time. &lt;br /&gt;
*&#039;&#039;&#039;Analyze data&#039;&#039;&#039;&lt;br /&gt;
:Use [http://www.reliasoft.com/products/reliability-analysis/weibull Weibull++&#039;s] or [http://www.reliasoft.com/products/reliability-analysis/alta ALTA’s] analysis and plotting engines to analyze data from third-party sources, and incorporate the functionality into your own custom applications. (Requires a ReliaSoft API license.)&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
*&#039;&#039;&#039;Getting the latest version&#039;&#039;&#039;&lt;br /&gt;
:The ReliaSoft API consists of a library file that contains the classes, methods and events that provide access to ReliaSoft applications. The file is located in the folder where the ReliaSoft desktop applications are installed. By default, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019.&amp;quot; As of Version 2019, the library names are now version dependent. For VBA, you will use the &#039;&#039;&#039;ReliaSoftAPI19.tlb&#039;&#039;&#039; file; for .NET applications, you will use the &#039;&#039;&#039;ReliaSoftAPI19.dll&#039;&#039;&#039; file. Prior to Version 2019, the files to use were SynthesisAPI.tlb (VBA) and SynthesisAPI.dll (.NET).&lt;br /&gt;
&lt;br /&gt;
:To obtain the latest version of the library file and the ReliaSoft applications, choose &#039;&#039;&#039;File &amp;gt; Help &amp;gt; Check for Updates&#039;&#039;&#039; or download the latest version from the Support Portal at https://support.hbmprenscia.com.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Build environment&#039;&#039;&#039;&lt;br /&gt;
:For Visual Studio projects using Version 10 or 11, at minimum you will need Visual Studio 2010 and the .NET Framework 4.0 runtime. Version 2018 and later require Visual Studio 2015 and the .NET Framework 4.6.1 developer pack and runtime.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;32- vs. 64-bit&#039;&#039;&#039;&lt;br /&gt;
:For VBA, the bit version of the ReliaSoft applications that you&#039;ve installed must match your installed version of Microsoft Office. If they do not match, you may see an error related to ActiveX controls. (See [http://www.reliasoft.com/support/rs20024.htm ReliaSoft KB article RS20024].) &lt;br /&gt;
&lt;br /&gt;
:For Visual Studio projects targeting the .NET Framework 4.5 (or later) and compiled to run an any platform (Any CPU), turn off the &#039;&#039;&#039;Prefer 32-bit&#039;&#039;&#039; property of the build configuration if you want instances of your application to run as a 64-bit process; otherwise, the application will run as a 32-bit process on both 32- and 64-bit versions of Windows. Note that when using [https://www.reliasoft.com/locally-hosted-licensing locally hosted licensing], it is necessary to ensure your application bitness matches the bitness of the ReliaSoft desktop applications installed wherever your application is run due to dependencies on platform-specific libraries.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Running API applications on a server &lt;br /&gt;
:If you plan to run the API on a Windows server, you must use [https://www.reliasoft.com/locally-hosted-licensing locally hosted licensing] and you’ll need to install the ReliaSoft API Ante Service to scale the implementation (the service is not required when running the API on a Windows desktop environment). For instructions on how to install and configure the service, see https://www.reliasoft.com/reliasoft-api-ante-service. &lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Access to calculations functionality&lt;br /&gt;
:Access to Weibull++&#039;s and ALTA’s analysis and plotting engines require a ReliaSoft API license. To obtain a license, please see [http://www.reliasoft.com/contact.htm contact ReliaSoft].&lt;br /&gt;
&lt;br /&gt;
==Getting Started==&lt;br /&gt;
&lt;br /&gt;
====Referencing the ReliaSoft API Library File====&lt;br /&gt;
&amp;lt;!-- This &amp;quot;onlyinclude&amp;quot; section is transcluded into the API Tutorials page --&amp;gt;&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;To use the ReliaSoft API in your code, you must reference the ReliaSoft API library in your VBA or .NET projects. The file is located in the folder where the ReliaSoft desktop applications are installed. By default for Version 2019, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019.&amp;quot; For VBA, you will use the &#039;&#039;&#039;ReliaSoftAPI19.tlb&#039;&#039;&#039; file; for .NET applications, you will use the &#039;&#039;&#039;ReliaSoftAPI19.dll&#039;&#039;&#039; file.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;To reference the library in VBA&#039;&#039;&#039;:&lt;br /&gt;
:#Enter the VBA environment by clicking the &#039;&#039;&#039;Visual Basic&#039;&#039;&#039; command on the Developer tab (If the Developer tab is not visible, see [https://msdn.microsoft.com/en-us/library/bb608625.aspx this Microsoft article]). &lt;br /&gt;
:#In the VBA environment, choose &#039;&#039;&#039;Tools &amp;gt; References&#039;&#039;&#039;.&lt;br /&gt;
:#Click &#039;&#039;&#039;Browse&#039;&#039;&#039; and find the ReliaSoftAPI19.tlb file on your computer. Click &#039;&#039;&#039;OK&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;To reference the library in Visual Studio:&#039;&#039;&#039;&lt;br /&gt;
:#In the Solution Explorer, right-click the &#039;&#039;&#039;References&#039;&#039;&#039; node and choose &#039;&#039;&#039;Add References&#039;&#039;&#039;. &lt;br /&gt;
:#In the Reference Manager window, click the &#039;&#039;&#039;Browse&#039;&#039;&#039; tab and find the ReliaSoftAPI19.dll file on your computer. Click &#039;&#039;&#039;OK&#039;&#039;&#039;. &lt;br /&gt;
:#Copy the following files from the ReliaSoft installation folder to your target folder (e.g., bin/Debug or bin/Release Folder). &lt;br /&gt;
:::*licncr.dll&lt;br /&gt;
:::*licncr.dll.nsign&lt;br /&gt;
:::*licshr.dll&lt;br /&gt;
:::*licshr.dll.nsign&lt;br /&gt;
:::*msvcp110.dll&lt;br /&gt;
:::*msvcr110.dll&lt;br /&gt;
:::*RSDB.dll&lt;br /&gt;
:::*RSLM8nCodeDotNetWrapper.dll&lt;br /&gt;
:::*utlibr.dll&lt;br /&gt;
&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
====Examples====&lt;br /&gt;
Sample applications that you can test and tweak yourself are included with the ReliaSoft installation. The files are stored on your computer at C:\Users\Public\Public Documents\ReliaSoft\Examples19\API.&lt;br /&gt;
 &lt;br /&gt;
The sample applications are available for Excel VBA and VB.NET projects. (To run the Excel examples, macros must be enabled. See [http://office.microsoft.com/en-us/excel-help/enable-or-disable-macros-in-office-documents-HA010031071.aspx this Microsoft article].) &lt;br /&gt;
&lt;br /&gt;
====Tutorials====&lt;br /&gt;
[[API Tutorials|Tutorials]] are available to help you learn the core objects of the ReliaSoft API and start coding right away. The tutorials include code samples for both VBA and VB.NET.&lt;br /&gt;
&lt;br /&gt;
==Object Library ==&lt;br /&gt;
Below is a summary of the core objects in the ReliaSoft API library. For an alphabetical listing of all objects in the latest version, see [[API Reference Documentation]].&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[Repository Class|Repository]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents the ReliaSoft repository. All other objects use the functions in this class to read or write data to the repository. This class also contains the functions for importing/exporting XML files. &lt;br /&gt;
&lt;br /&gt;
*The following objects represent the ReliaSoft resources. Instances of each class can be used to store data for an existing or new resource.  &lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CAction Class|cAction]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CCorrectiveTask Class|cCorrectiveTask]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CScheduledTask Class|cScheduledTask]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CCrew Class|cCrew]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CModel Class|cModel]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CPool Class|cPool]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CProfile Class|cProfile]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CURD Class|cURD]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CVariable Class|cVariable]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CXfmeaControl Class|cXfmeaControl]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*The following objects build data sets for the Synthesis Data Warehouse (SDW).&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[RawData Class|RawData]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; represents a single data point.&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[RawDataSet Class|RawDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; serves as the data container for &amp;lt;code&amp;gt;RawData&amp;lt;/code&amp;gt; objects.&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaItem Class|XfmeaItem]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a system hierarchy item. Instances of this class can be used to store data for a system or assembly, as well as build a multi-level system configuration. &lt;br /&gt;
&lt;br /&gt;
*The following objects represent the FMEA records. Instances of each class can be used to store data for an existing or new FMEA analysis. &lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaFunction Class|XfmeaFunction]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaCause Class|XfmeaCause]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaEffect Class|XfmeaEffect]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaFailure Class|XfmeaFailure]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WeibullDataSet Class|WeibullDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a Weibull++ data sheet for life data analysis. Instances of this class are used to define a data set and fit a statistical distribution to the data.&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[ALTADataSet Class|ALTADataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents an ALTA data sheet for accelerated life testing data analysis. Instances of this class are used to define a data set, and fit a distribution and life-stress relationship to the data. &lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WAPlots Class|WAPlots]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a plot based on a &amp;lt;code&amp;gt;cModel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WeibullDataSet&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;ALTADataSet&amp;lt;/code&amp;gt; object. Instances of this class are used to display a plot of the analysis results.&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=ReliaSoft_API_Reference&amp;diff=65495</id>
		<title>ReliaSoft API Reference</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=ReliaSoft_API_Reference&amp;diff=65495"/>
		<updated>2019-03-13T23:27:45Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #D0CDE8; background:#EEEDF7; border-radius:10px; width:auto; margin:0 0 1em 1em; padding:1em; float:right;&amp;quot;&amp;gt;&lt;br /&gt;
*&#039;&#039;&#039;[[API Changelog|Changelog]]&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;[[API Reference Documentation|API Documentation]]&lt;br /&gt;
*&#039;&#039;&#039;[[API Tutorials|Tutorials]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The ReliaSoft &#039;&#039;Application Programming Interface&#039;&#039; (API) enables you to programmatically read and write data to ReliaSoft repositories, as well as analyze and plot data sets from external sources. It is provided for Visual Basic for Applications (VBA) and .NET applications, allowing you to create automated solutions using popular Microsoft Office applications, such as Excel and PowerPoint, or create custom applications for your organization. &lt;br /&gt;
&lt;br /&gt;
Implementing the ReliaSoft API allows you to connect data in repositories with the systems and tools used within your organization. It provides the functionality to:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Transfer and synchronize data via XML&#039;&#039;&#039;&lt;br /&gt;
:Use XML files to manage structured data (such as system hierarchies/BOMs, incidents and work orders) between ReliaSoft’s [http://xfracas.reliasoft.com/ XFRACAS] and a variety of different PLMs, ERPs, CMMS and other external systems. You can also use XML files to create reliability block diagrams (RBDs) in [http://www.reliasoft.com/products/reliability-analysis/blocksim BlockSim]. &lt;br /&gt;
*&#039;&#039;&#039;Read/write specific data elements&#039;&#039;&#039;&lt;br /&gt;
:Read or write data to resources (models, actions, URDs, etc.), system hierarchy items and FMEA records (causes, effects, failures, etc.). Initiate batch data processing and create custom solutions for importing/exporting data from ReliaSoft repositories, as well as load data into the Synthesis Data Warehouse (SDW). &lt;br /&gt;
*&#039;&#039;&#039;Obtain calculated results&#039;&#039;&#039;&lt;br /&gt;
:Read data from published models and obtain calculated results such as reliability, probability of failure, BX% life, failure rate and mean time. &lt;br /&gt;
*&#039;&#039;&#039;Analyze data&#039;&#039;&#039;&lt;br /&gt;
:Use [http://www.reliasoft.com/products/reliability-analysis/weibull Weibull++&#039;s] or [http://www.reliasoft.com/products/reliability-analysis/alta ALTA’s] analysis and plotting engines to analyze data from third-party sources, and incorporate the functionality into your own custom applications. (Requires a ReliaSoft API license.)&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
*&#039;&#039;&#039;Getting the latest version&#039;&#039;&#039;&lt;br /&gt;
:The ReliaSoft API consists of a library file that contains the classes, methods and events that provide access to ReliaSoft applications. The file is located in the folder where the ReliaSoft desktop applications are installed. By default, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019.&amp;quot; For VBA, you will use the &#039;&#039;&#039;ReliaSoftAPI19.tlb&#039;&#039;&#039; file; for .NET applications, you will use the &#039;&#039;&#039;ReliaSoftAPI19.dll&#039;&#039;&#039; file.&lt;br /&gt;
&lt;br /&gt;
:To obtain the latest version of the library file and the ReliaSoft applications, choose &#039;&#039;&#039;File &amp;gt; Help &amp;gt; Check for Updates&#039;&#039;&#039; or download the latest version from the Support Portal at https://support.hbmprenscia.com.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Build environment&#039;&#039;&#039;&lt;br /&gt;
:For Visual Studio projects using Version 10 or 11, at minimum you will need Visual Studio 2010 and the .NET Framework 4.0 runtime. Version 2018 and later require Visual Studio 2015 and the .NET Framework 4.6.1 developer pack and runtime.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;32- vs. 64-bit&#039;&#039;&#039;&lt;br /&gt;
:For VBA, the bit version of the ReliaSoft applications that you&#039;ve installed must match your installed version of Microsoft Office. If they do not match, you may see an error related to ActiveX controls. (See [http://www.reliasoft.com/support/rs20024.htm ReliaSoft KB article RS20024].) &lt;br /&gt;
&lt;br /&gt;
:For Visual Studio projects targeting the .NET Framework 4.5 (or later) and compiled to run an any platform (Any CPU), turn off the &#039;&#039;&#039;Prefer 32-bit&#039;&#039;&#039; property of the build configuration if you want instances of your application to run as a 64-bit process; otherwise, the application will run as a 32-bit process on both 32- and 64-bit versions of Windows. Note that when using [https://www.reliasoft.com/locally-hosted-licensing locally hosted licensing], it is necessary to ensure your application bitness matches the bitness of the ReliaSoft desktop applications installed wherever your application is run due to dependencies on platform-specific libraries.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Running API applications on a server &lt;br /&gt;
:If you plan to run the API on a Windows server, you must use [https://www.reliasoft.com/locally-hosted-licensing locally hosted licensing] and you’ll need to install the ReliaSoft API Ante Service to scale the implementation (the service is not required when running the API on a Windows desktop environment). For instructions on how to install and configure the service, see https://www.reliasoft.com/reliasoft-api-ante-service. &lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Access to calculations functionality&lt;br /&gt;
:Access to Weibull++&#039;s and ALTA’s analysis and plotting engines require a ReliaSoft API license. To obtain a license, please see [http://www.reliasoft.com/contact.htm contact ReliaSoft].&lt;br /&gt;
&lt;br /&gt;
==Getting Started==&lt;br /&gt;
&lt;br /&gt;
====Referencing the ReliaSoft API Library File====&lt;br /&gt;
&amp;lt;!-- This &amp;quot;onlyinclude&amp;quot; section is transcluded into the API Tutorials page --&amp;gt;&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;To use the ReliaSoft API in your code, you must reference the ReliaSoft API library in your VBA or .NET projects. The file is located in the folder where the ReliaSoft desktop applications are installed. By default for Version 2019, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019.&amp;quot; For VBA, you will use the &#039;&#039;&#039;ReliaSoftAPI19.tlb&#039;&#039;&#039; file; for .NET applications, you will use the &#039;&#039;&#039;ReliaSoftAPI19.dll&#039;&#039;&#039; file.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;To reference the library in VBA&#039;&#039;&#039;:&lt;br /&gt;
:#Enter the VBA environment by clicking the &#039;&#039;&#039;Visual Basic&#039;&#039;&#039; command on the Developer tab (If the Developer tab is not visible, see [https://msdn.microsoft.com/en-us/library/bb608625.aspx this Microsoft article]). &lt;br /&gt;
:#In the VBA environment, choose &#039;&#039;&#039;Tools &amp;gt; References&#039;&#039;&#039;.&lt;br /&gt;
:#Click &#039;&#039;&#039;Browse&#039;&#039;&#039; and find the ReliaSoftAPI19.tlb file on your computer. Click &#039;&#039;&#039;OK&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;To reference the library in Visual Studio:&#039;&#039;&#039;&lt;br /&gt;
:#In the Solution Explorer, right-click the &#039;&#039;&#039;References&#039;&#039;&#039; node and choose &#039;&#039;&#039;Add References&#039;&#039;&#039;. &lt;br /&gt;
:#In the Reference Manager window, click the &#039;&#039;&#039;Browse&#039;&#039;&#039; tab and find the ReliaSoftAPI19.dll file on your computer. Click &#039;&#039;&#039;OK&#039;&#039;&#039;. &lt;br /&gt;
:#Copy the following files from the ReliaSoft installation folder to your target folder (e.g., bin/Debug or bin/Release Folder). &lt;br /&gt;
:::*licncr.dll&lt;br /&gt;
:::*licncr.dll.nsign&lt;br /&gt;
:::*licshr.dll&lt;br /&gt;
:::*licshr.dll.nsign&lt;br /&gt;
:::*msvcp110.dll&lt;br /&gt;
:::*msvcr110.dll&lt;br /&gt;
:::*RSDB.dll&lt;br /&gt;
:::*RSLM8nCodeDotNetWrapper.dll&lt;br /&gt;
:::*utlibr.dll&lt;br /&gt;
&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
====Examples====&lt;br /&gt;
Sample applications that you can test and tweak yourself are included with the ReliaSoft installation. The files are stored on your computer at C:\Users\Public\Public Documents\ReliaSoft\Examples19\API.&lt;br /&gt;
 &lt;br /&gt;
The sample applications are available for Excel VBA and VB.NET projects. (To run the Excel examples, macros must be enabled. See [http://office.microsoft.com/en-us/excel-help/enable-or-disable-macros-in-office-documents-HA010031071.aspx this Microsoft article].) &lt;br /&gt;
&lt;br /&gt;
====Tutorials====&lt;br /&gt;
[[API Tutorials|Tutorials]] are available to help you learn the core objects of the ReliaSoft API and start coding right away. The tutorials include code samples for both VBA and VB.NET.&lt;br /&gt;
&lt;br /&gt;
==Object Library ==&lt;br /&gt;
Below is a summary of the core objects in the ReliaSoft API library. For an alphabetical listing of all objects in the latest version, see [[API Reference Documentation]].&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[Repository Class|Repository]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents the ReliaSoft repository. All other objects use the functions in this class to read or write data to the repository. This class also contains the functions for importing/exporting XML files. &lt;br /&gt;
&lt;br /&gt;
*The following objects represent the ReliaSoft resources. Instances of each class can be used to store data for an existing or new resource.  &lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CAction Class|cAction]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CCorrectiveTask Class|cCorrectiveTask]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CScheduledTask Class|cScheduledTask]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CCrew Class|cCrew]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CModel Class|cModel]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CPool Class|cPool]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CProfile Class|cProfile]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CURD Class|cURD]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CVariable Class|cVariable]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CXfmeaControl Class|cXfmeaControl]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*The following objects build data sets for the Synthesis Data Warehouse (SDW).&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[RawData Class|RawData]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; represents a single data point.&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[RawDataSet Class|RawDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; serves as the data container for &amp;lt;code&amp;gt;RawData&amp;lt;/code&amp;gt; objects.&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaItem Class|XfmeaItem]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a system hierarchy item. Instances of this class can be used to store data for a system or assembly, as well as build a multi-level system configuration. &lt;br /&gt;
&lt;br /&gt;
*The following objects represent the FMEA records. Instances of each class can be used to store data for an existing or new FMEA analysis. &lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaFunction Class|XfmeaFunction]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaCause Class|XfmeaCause]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaEffect Class|XfmeaEffect]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaFailure Class|XfmeaFailure]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WeibullDataSet Class|WeibullDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a Weibull++ data sheet for life data analysis. Instances of this class are used to define a data set and fit a statistical distribution to the data.&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[ALTADataSet Class|ALTADataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents an ALTA data sheet for accelerated life testing data analysis. Instances of this class are used to define a data set, and fit a distribution and life-stress relationship to the data. &lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WAPlots Class|WAPlots]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a plot based on a &amp;lt;code&amp;gt;cModel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WeibullDataSet&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;ALTADataSet&amp;lt;/code&amp;gt; object. Instances of this class are used to display a plot of the analysis results.&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=ReliaSoft_API_Reference&amp;diff=65494</id>
		<title>ReliaSoft API Reference</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=ReliaSoft_API_Reference&amp;diff=65494"/>
		<updated>2019-03-13T23:27:32Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:API}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #D0CDE8; background:#EEEDF7; border-radius:10px; width:auto; margin:0 0 1em 1em; padding:1em; float:right;&amp;quot;&amp;gt;&lt;br /&gt;
*&#039;&#039;&#039;[[API Changelog|Changelog]]&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;[[API Reference Documentation|API Documentation]]&lt;br /&gt;
*&#039;&#039;&#039;[[API Tutorials|Tutorials]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The ReliaSoft &#039;&#039;Application Programming Interface&#039;&#039; (API) enables you to programmatically read and write data to ReliaSoft repositories, as well as analyze and plot data sets from external sources. It is provided for Visual Basic for Applications (VBA) and .NET applications, allowing you to create automated solutions using popular Microsoft Office applications, such as Excel and PowerPoint, or create custom applications for your organization. &lt;br /&gt;
&lt;br /&gt;
Implementing the ReliaSoft API allows you to connect data in repositories with the systems and tools used within your organization. It provides the functionality to:&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Transfer and synchronize data via XML&#039;&#039;&#039;&lt;br /&gt;
:Use XML files to manage structured data (such as system hierarchies/BOMs, incidents and work orders) between ReliaSoft’s [http://xfracas.reliasoft.com/ XFRACAS] and a variety of different PLMs, ERPs, CMMS and other external systems. You can also use XML files to create reliability block diagrams (RBDs) in [http://www.reliasoft.com/products/reliability-analysis/blocksim BlockSim]. &lt;br /&gt;
*&#039;&#039;&#039;Read/write specific data elements&#039;&#039;&#039;&lt;br /&gt;
:Read or write data to resources (models, actions, URDs, etc.), system hierarchy items and FMEA records (causes, effects, failures, etc.). Initiate batch data processing and create custom solutions for importing/exporting data from ReliaSoft repositories, as well as load data into the Synthesis Data Warehouse (SDW). &lt;br /&gt;
*&#039;&#039;&#039;Obtain calculated results&#039;&#039;&#039;&lt;br /&gt;
:Read data from published models and obtain calculated results such as reliability, probability of failure, BX% life, failure rate and mean time. &lt;br /&gt;
*&#039;&#039;&#039;Analyze data&#039;&#039;&#039;&lt;br /&gt;
:Use [http://www.reliasoft.com/products/reliability-analysis/weibull Weibull++&#039;s] or [http://www.reliasoft.com/products/reliability-analysis/alta ALTA’s] analysis and plotting engines to analyze data from third-party sources, and incorporate the functionality into your own custom applications. (Requires a ReliaSoft API license.)&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
*&#039;&#039;&#039;Getting the latest version&#039;&#039;&#039;&lt;br /&gt;
:The ReliaSoft API consists of a library file that contains the classes, methods and events that provide access to ReliaSoft applications. The file is located in the folder where the ReliaSoft desktop applications are installed. By default, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019.&amp;quot; For VBA, you will use the &#039;&#039;&#039;ReliaSoftAPI19.tlb&#039;&#039;&#039; file; for .NET applications, you will use the &#039;&#039;&#039;ReliaSoftAPI19.dll&#039;&#039;&#039; file.&lt;br /&gt;
&lt;br /&gt;
:To obtain the latest version of the library file and the ReliaSoft applications, choose &#039;&#039;&#039;File &amp;gt; Help &amp;gt; Check for Updates&#039;&#039;&#039; or download the latest version from the Support Portal at https://support.hbmprenscia.com.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Build environment&#039;&#039;&#039;&lt;br /&gt;
:For Visual Studio projects using Version 10 or 11, at minimum you will need Visual Studio 2010 and the .NET Framework 4.0 runtime. Version 2018 and later require Visual Studio 2015 and the .NET Framework 4.6.1 developer pack and runtime.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;32- vs. 64-bit&#039;&#039;&#039;&lt;br /&gt;
:For VBA, the bit version of the ReliaSoft applications that you&#039;ve installed must match your installed version of Microsoft Office. If they do not match, you may see an error related to ActiveX controls. (See [http://www.reliasoft.com/support/rs20024.htm ReliaSoft KB article RS20024].) &lt;br /&gt;
&lt;br /&gt;
:For Visual Studio projects targeting the .NET Framework 4.5 (or later) and compiled to run an any platform (Any CPU), turn off the &#039;&#039;&#039;Prefer 32-bit&#039;&#039;&#039; property of the build configuration if you want instances of your application to run as a 64-bit process; otherwise, the application will run as a 32-bit process on both 32- and 64-bit versions of Windows. Note that when using [https://www.reliasoft.com/locally-hosted-licensing locally hosted licensing], it is necessary to ensure your application bitness matches the bitness of the ReliaSoft desktop applications installed wherever your application is run due to dependencies on platform-specific libraries.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Running API applications on a server &lt;br /&gt;
:If you plan to run the API on a Windows server, you must use [https://www.reliasoft.com/locally-hosted-licensing locally hosted licensing] and you’ll need to install the ReliaSoft API Ante Service to scale the implementation (the service is not required when running the API on a Windows desktop environment). For instructions on how to install and configure the service, see https://www.reliasoft.com/reliasoft-api-ante-service. &lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Access to calculations functionality&lt;br /&gt;
:Access to Weibull++&#039;s and ALTA’s analysis and plotting engines require a ReliaSoft API license. To obtain a license, please see [http://www.reliasoft.com/contact.htm contact ReliaSoft].&lt;br /&gt;
&lt;br /&gt;
==Getting Started==&lt;br /&gt;
&lt;br /&gt;
====Referencing the ReliaSoft API Library File====&lt;br /&gt;
&amp;lt;!-- This &amp;quot;onlyinclude&amp;quot; section is transcluded into the API Tutorials page --&amp;gt;&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;To use the ReliaSoft API in your code, you must reference the ReliaSoft API library in your VBA or .NET projects. The file is located in the folder where the ReliaSoft desktop applications are installed. By default for Version 2019, this folder is at &amp;quot;C:\Program Files\ReliaSoft\ReliaSoft 2019.&amp;quot; For VBA, you will use the &#039;&#039;&#039;ReliaSoftAPI19.tlb&#039;&#039;&#039; file; for .NET applications, you will use the &#039;&#039;&#039;ReliaSoftAPI19.dll&#039;&#039;&#039; file.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;To reference the library in VBA&#039;&#039;&#039;:&lt;br /&gt;
:#Enter the VBA environment by clicking the &#039;&#039;&#039;Visual Basic&#039;&#039;&#039; command on the Developer tab (If the Developer tab is not visible, see [https://msdn.microsoft.com/en-us/library/bb608625.aspx this Microsoft article]). &lt;br /&gt;
:#In the VBA environment, choose &#039;&#039;&#039;Tools &amp;gt; References&#039;&#039;&#039;.&lt;br /&gt;
:#Click &#039;&#039;&#039;Browse&#039;&#039;&#039; and find the ReliaSoftAPI19.tlb file on your computer. Click &#039;&#039;&#039;OK&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;To reference the library in Visual Studio:&#039;&#039;&#039;&lt;br /&gt;
:#In the Solution Explorer, right-click the &#039;&#039;&#039;References&#039;&#039;&#039; node and choose &#039;&#039;&#039;Add References&#039;&#039;&#039;. &lt;br /&gt;
:#In the Reference Manager window, click the &#039;&#039;&#039;Browse&#039;&#039;&#039; tab and find the ReliaSoftAPI19.dll file on your computer. Click &#039;&#039;&#039;OK&#039;&#039;&#039;. &lt;br /&gt;
:#Copy the following files from the ReliaSoft installation folder to your target folder (e.g., bin/Debug or bin/Release Folder). &lt;br /&gt;
:::*licncr.dll&lt;br /&gt;
:::*licncr.dll.nsign&lt;br /&gt;
:::*licshr.dll&lt;br /&gt;
:::*licshr.dll.nsign&lt;br /&gt;
:::*msvcp110.dll&lt;br /&gt;
:::*msvcr110.dll&lt;br /&gt;
:::*RSDB.dll&lt;br /&gt;
:::*RSLM8nCodeDotNetWrapper.dll&lt;br /&gt;
:::*utlibr.dll&lt;br /&gt;
&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
====Examples====&lt;br /&gt;
Sample applications that you can test and tweak yourself are included with the ReliaSoft installation. The files are stored on your computer at C:\Users\Public\Public Documents\ReliaSoft\Examples19\API.&lt;br /&gt;
 &lt;br /&gt;
The sample applications are available for Excel VBA and VB.NET projects. (To run the Excel examples, macros must be enabled. See [http://office.microsoft.com/en-us/excel-help/enable-or-disable-macros-in-office-documents-HA010031071.aspx this Microsoft article].) &lt;br /&gt;
&lt;br /&gt;
====Tutorials====&lt;br /&gt;
[[API Tutorials|Tutorials]] are available to help you learn the core objects of the ReliaSoft API and start coding right away. The tutorials include code samples for both VBA and VB.NET.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Object Library ==&lt;br /&gt;
Below is a summary of the core objects in the ReliaSoft API library. For an alphabetical listing of all objects in the latest version, see [[API Reference Documentation]].&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[Repository Class|Repository]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents the ReliaSoft repository. All other objects use the functions in this class to read or write data to the repository. This class also contains the functions for importing/exporting XML files. &lt;br /&gt;
&lt;br /&gt;
*The following objects represent the ReliaSoft resources. Instances of each class can be used to store data for an existing or new resource.  &lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CAction Class|cAction]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CCorrectiveTask Class|cCorrectiveTask]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CScheduledTask Class|cScheduledTask]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CCrew Class|cCrew]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CModel Class|cModel]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CPool Class|cPool]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CProfile Class|cProfile]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CURD Class|cURD]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CVariable Class|cVariable]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[CXfmeaControl Class|cXfmeaControl]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*The following objects build data sets for the Synthesis Data Warehouse (SDW).&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[RawData Class|RawData]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; represents a single data point.&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[RawDataSet Class|RawDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; serves as the data container for &amp;lt;code&amp;gt;RawData&amp;lt;/code&amp;gt; objects.&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaItem Class|XfmeaItem]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a system hierarchy item. Instances of this class can be used to store data for a system or assembly, as well as build a multi-level system configuration. &lt;br /&gt;
&lt;br /&gt;
*The following objects represent the FMEA records. Instances of each class can be used to store data for an existing or new FMEA analysis. &lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaFunction Class|XfmeaFunction]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaCause Class|XfmeaCause]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaEffect Class|XfmeaEffect]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;code&amp;gt;&#039;&#039;&#039;[[XfmeaFailure Class|XfmeaFailure]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WeibullDataSet Class|WeibullDataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a Weibull++ data sheet for life data analysis. Instances of this class are used to define a data set and fit a statistical distribution to the data.&lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[ALTADataSet Class|ALTADataSet]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents an ALTA data sheet for accelerated life testing data analysis. Instances of this class are used to define a data set, and fit a distribution and life-stress relationship to the data. &lt;br /&gt;
&lt;br /&gt;
*The &amp;lt;code&amp;gt;&#039;&#039;&#039;[[WAPlots Class|WAPlots]]&#039;&#039;&#039;&amp;lt;/code&amp;gt; object represents a plot based on a &amp;lt;code&amp;gt;cModel&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WeibullDataSet&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;ALTADataSet&amp;lt;/code&amp;gt; object. Instances of this class are used to display a plot of the analysis results.&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=File:APIWiki.png&amp;diff=65493</id>
		<title>File:APIWiki.png</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=File:APIWiki.png&amp;diff=65493"/>
		<updated>2019-03-13T23:25:31Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: uploaded a new version of &amp;quot;File:APIWiki.png&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;For API banner&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
	<entry>
		<id>https://www.reliawiki.com/index.php?title=File:APIWiki.png&amp;diff=65492</id>
		<title>File:APIWiki.png</title>
		<link rel="alternate" type="text/html" href="https://www.reliawiki.com/index.php?title=File:APIWiki.png&amp;diff=65492"/>
		<updated>2019-03-13T23:25:10Z</updated>

		<summary type="html">&lt;p&gt;David J. Groebel: uploaded a new version of &amp;quot;File:APIWiki.png&amp;quot;:&amp;amp;#32;Reverted to version as of 21:03, 24 July 2015&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;For API banner&lt;/div&gt;</summary>
		<author><name>David J. Groebel</name></author>
	</entry>
</feed>