| Failure mode and effects analysis(FMEA) is a technique used to identify and eliminate potential failures in systems, which has been widely applied to evaluate the reliability and safety of systems. However, when applied in software analysis, the traditional FMEA has some drawbacks. For example, the traditional FMEA uses Risk Priority Number(RPN) to determine the ranking of failure modes, but RPN is just a simple production of risk factors, Occurrence, Severity, and Detection, without considering their weights. Hence, this paper presents a fuzzy FMEA method based on software architecture to overcome these shortcomings. By using modified fuzzy FMEA to analyze software failure at architecture level, we can improve the reliability and safety of software system. Specifically, the contributions of this paper are: 1) we use architecture description language Breeze/ADL to model systems, and extend Breeze/ADL by adding FMEA attributes to support the proposed method. 2) Based on fuzzy theory, we present a new method to evaluate risk factors by combining objective components’ complexity and subjective experts’ knowledge, in order to modify the subjective evaluation strategy in traditional FMEA. 3) Compared with RPN, we use entropy weight-based fuzzy ‘Technique for Order Performance by Similarity to Ideal Solution’(TOPSIS) to obtain a more rational and accurate ranking result based on the closeness coefficients of failure modes. 4) We develop a FMEA plugin in Breeze Tool to support the proposed method. And a case study of a pacemaker system is provided to demonstrate the feasibility and benefits of our method. |