Architecture-Based Software Reliability Analysis

Wen-Li Wang and Ye Wu and Mei-Hwa Chen

Software architecture design is an important and critical stage in software development. Early quality prediction at the architecture design stage is highly desired by software managers and developers. In this paper we present an analytical approach for estimating the reliability of software based on its architecture and operational profile. Our studies include a Markovian-based reliability analysis for heterogeneous software architectures and a state-based analysis for parallel architectures. The heterogeneous architecture we studied consists of several architectural styles including batch-sequential, call and return, parallel, and backup styles. For the parallel architecture, the states of the components are analyzed, so that multiple components can be running concurrently. Moreover, we address how an architectural style should be represented to be able to utilize the Markov model.