A Methodology for Model-Based Reliability Estimation

A Methodology for Model-Based Reliability Estimation

DOI: 10.4018/978-1-4666-6026-7.ch020
(Individual Chapters)
No Current Special Offers


In recent years, reliability assessment is an essential process in system quality assessments. However, the best practice of software engineering for reliability analysis is not yet of its matured stage. The existing works are only capable to explicitly apply a small portion of reliability analysis in a standard software development process. In addition, an existing reliability assessment is based on an assumption provided by domain experts. This assumption is often exposed to errors. An effective reliability assessment should be based on reliability requirements that could be quantitatively estimated using metrics. The reliability requirements can be visualized using reliability model. However, existing reliability models are not expressive enough and do not provide consistence-modeling mechanism to allow developers to estimate reliability parameter values. Consequently, the reliability estimation using those parameters is usually oversimplified. With this situation, the inconsistency problem could happen between different estimation stages. In this chapter, a new Model-Based Reliability Estimation (MBRE) methodology is developed. The methodology consists of reliability model and reliability estimation model. The methodology provides a systematic way to estimate system reliability, emphasizing the reliability model for producing reliability parameters which will be used by the reliability estimation model. These models are built upon the timing properties, which is the primary input value for reliability assessment.
Chapter Preview


System software has become vastly more complicated in recent years, and ranges from e-commerce to industrial embedded systems, which support both functional and non-functional requirements of the system. In fact, the satisfaction of non-functional requirements or software quality, such as performance, reliability, security and adaptability, towards functional requirements are often treated as critical. Performance-sensitive systems are widely used to support various application domains, such as telecommunications, embedded systems, and industrial control systems. The unreliability of such systems is often related to underperformance of systems and could affect the whole system. Therefore, it is largely necessary to ensure promising software quality from as early as possible in the design phase to satisfy today’s demanding standards.

Software qualities generally can be defined as a combination of quality attributes of a system in a certain accepted degree (IEEE 1061, 1992). According to ISO 25000 (ISO/IEC, 2005), software quality is defined as a set of qualities of a system that satisfies the given system’s requirements’. In recent years, several researchers and standard organizations have proposed the software quality taxonomy in order to define exactly which software quality is justified as being important for the software systems (McCall et al., 1977; Boehm, 1978; Dromey, 1995; ISO 25000, 2005).

Among software quality attributes, considerable significance has been given to reliability attributes (Kramer and Volker, 1997). Software reliability is described as the capability of the system/component/services to perform a given task under a specific condition and time frame (IEC 9126-1, 2001). The system operation is said to be reliable when continuously operating with minimal failure. Software reliability generally acknowledges the probability that a system may fail within a certain period. The failure elements can be traced from the system’s error and fault information (Eusgeld et al., 2008). Faults in the system will impose a certain error that will lead to a system failure if no specific approach is applied to handle this matter. A system failure might be due to faults in implementation, unreliable system resources or misplaced system tasks (Salfner and Lenk, 2010; Valis and Bartlett, 2010). Therefore, wherever the operation of the system is disturbed, the consequences may result in an enormous risk to either people or the environment. On the other hand, the risk can be greatly reduced if an adequate reliability analysis is carried out before deploying the system (Krishna and Mall, 2010).

Key Terms in this Chapter

Model: An abstract representation of a real world.

Estimation: An approximation or informal guesstimate that don't need for real measurement data validation.

System Quality Analysis: An assessment for evaluating the quality of the system.

System Reliability: A capability for a system to operate in a specific time and condition.

Systematic Process: An organized process to execute something.

System Design: The process of defining the architecture, components, modules, interfaces, and data for a system to satisfy specified requirements.

Methodology: A framework that is structured, planned and consists of models to develop something.

Complete Chapter List

Search this Book: