The goal of this thesis is to develop a framework for integrating model-based dependability assessment techniques in the early stages of the software development process. This will support designers in taking the right design decisions and avoiding costly corrective actions later on, after the implementation and deployment have been completed.
The first objective of the thesis is to introduce an aspect-based modeling approach for representing the erroneous behavior of UML components and for capturing failure propagation between connected components. This approach, called Component Erroneous Behavior Aspect Modeling approach (CeBAM), supports the definition of aspects representing component erroneous behavior and composes the aspects automatically with the normal component behavior represented as a state-machine. It also enables the compatibility verification between interacting components and conformance verification of their internal behavior with the corresponding ports protocol behavior.
The next objective is to provide an automated transformation chain for deriving a Stochastic Reward Net (SRN) reliability analysis model from the software model in four phases: a) In-Place transformation to automate CeBAM approach, b) model-to-model transformation from UML software model extended with dependability annotations to SRN model, c) intermediate model-to-model transformation to build a CSPL model, and d) model-to-text transformation from the generated CSPL model to a C-based SRN Programming Language (CSPL) specification. The derived SRN model is used first to verify the conformance and compatibility of the involved components in the selected scenario. Once it passes the verification, the CSPL code is generated and used to obtain the required reliability analysis results. These results are fed back to the designer, to support the selection of proper software fault tolerance mechanisms for the software. Moreover, we developed the Single Version Fault Tolerance Aspect Modeling approach (SvFTAM), which captures architectural and behavioral models of single version fault tolerance tactics into a generic reusable aspect model.
The state space explosion is a well-known problem of state-based analysis models such as SRN. To address this problem, we use decomposition and reduction techniques of the derived SRN model to compute approximate system reliability measures.