10.1.1 Software Systems Analysis Using Stress‐Strength Probability Functions
James O. Wilder · INCOSE International Symposium · 2011
Abstract The potential variability of external inputs and their possible “drift” outside the software design boundaries is a common cause of failure in real‐time mission software. Critical interactions increase as the complexities and breadth of the interacting software systems increases. In system‐of‐systems interactions, the possible combinations of critical interactions can be very large. A software fault in one module of a system may coincide with a fault of an entirely different module within the same system, or another subsystem, to produce unsafe conditions or even system failure. Unforeseeable combinations can cause cascading failures within the system. When such systems have availability or safety requirements that are defined in terms of probabilities over time, these requirements must be applied at the top‐level of the system to characterize overall systemic performance. The requirement could be stipulated as a probability that the system does not encounter failure during the mission. This paper introduces the concept of analyzing critical system interactions in terms of both the operational profile of the system as a stressing function, and the strength of the system, a function of software complexity. The stressing and strength probability distribution functions are analyzed for interferences. In cases where variates within the stressing probability density function exceed variates within the composite system strength density function, the system will be prone to failure during operations. The region of interference between the stressing and strength distributions is itself a probability distribution function, which enables the statistical assessments of large scale system of systems, similar to the stress – strength analysis of reliability theory.