a novel model for software risk mitigation plan to improve ... · a novel model for software risk...

6

Click here to load reader

Upload: lecong

Post on 04-Jun-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A Novel Model for Software Risk Mitigation Plan to Improve ... · A Novel Model for Software Risk Mitigation Plan to Improve the Fault Tolerance Process ... 3 show@um.edu.my

A Novel Model for Software Risk Mitigation Plan to Improve the Fault Tolerance Process

1Ahdieh Khatavakhotan (IEEE / ACM Member)

2 Navid Hashemitaba (IEEE Member) 3 Siew Hock Ow

Department of Software Engineering, Faculty of Computer Science and Information Technology,

University of Malaya Kuala Lumpur, Malaysia

1 [email protected] 2 [email protected]

3 [email protected]

Abstract :

Mitigating the risks might increase the fault tolerance of a system; On the other hand, increasing the fault tolerance might raise the risks occurrence. This study considers the dynamic bidirectional link between the fault tolerance process and risk mitigation of software systems. This research proposes a model for increasing the fault tolerance process of software. This process starts with fault injection, which entails the identification of corresponding risks to potential faults while the core of the model is designing risk mitigation plans to reduce the risks consequences and their occurrence probabilities. A conducted case study showed a sound performance for the model to support increasing the fault tolerance for the software system.

Keywords-component; fault tolearnce process; risk mitigation; risk consequences; fault injection; fault detection; Failure Occurrence; Contigency Plan

I. INTRODUCTION

Any fault occurrence affects and modifies the performance of the system. If an unperceived fault occurs and

the system still resumes its function with normal performance, the error must be identified and the system must

compensate for this unfamiliar activity. The most common method for fault tolerance in software systems are the

forward and backward recovery fault mechanisms [1].

The methods of reducing risk consequences or decreasing the risk occurrence probability are called risk

mitigation techniques. This research determines the mutual impacts of the fault tolerance process and risk

mitigation activities and presents a model for increasing the dependability of software fault tolerance with the

implementation of a risk mitigation plan. In the following sections, concise descriptions of the fault tolerance

process, fault injection and a presented model for IT systems mitigation plan are discussed. Finally a case study

has been done to verify the performance of the model.

II. FAULT TOLERANCE AND RISK MITIGATION

There is a bidirectional relation between risk reduction and fault tolerance. An increase in fault tolerance may

cause several risks. On the contrary, designing and implementing risk mitigation plans may also increase the

tolerance of the faults [2].

Page 2: A Novel Model for Software Risk Mitigation Plan to Improve ... · A Novel Model for Software Risk Mitigation Plan to Improve the Fault Tolerance Process ... 3 show@um.edu.my

Finally, Fault tolerance process defines as some interdependent activities to remove potential errors before the

occurrence of a failure [3]. Fault tolerance process has four main steps including error detection, error diagnosis,

error isolation, and error recovery which are shown in Fig 1.

Figure 1. Fault Tolerance Process

The first step, error detection, is identifying the potential error cases. While in the second step which is error

diagnosis the assessment of the probable damage will be determined. In error isolation step, the errors are

prevented to be propagated. The last step that is error recovery the potential error state will be substituted with an

error-free state [4].

III. RISK MITIGATION AND CONTIGENCY PLAN

After The Fault Tolerance Risk Mitigation (FTRM) model is based on the verified and extracted data from

information systems. This model splits into four steps as follows:

• Step 1: Creating risk mitigation plan. According to obtained information from the previous phases of II

project and historical data, a mitigation plan should be designed. This plan reduces the likelihood of

risks occurrence and lessens the intensity of the adverse consequences of each risk [5].

• Step 2: Defining triggers. Some criteria are defined collectively with assessment routines during

continuous monitoring in order to clarify the exact time when a risk occurred [6].

• Step 3: Designing a contingency plan. If risks occur, risks characteristics determine what measures

should be taken to compensate for their outcome [7].

• Step 4: Driving the actual risks. In case of any risk occurrence, a contingency plan must be executed.

Concurrently, checklists and reports should be dispatched to risk managers to take upon the immediate

necessary modifications.

Fig 2 shows a propped model for risk mitigation in IT and software systems and highlights the four steps

mentioned above.

Page 3: A Novel Model for Software Risk Mitigation Plan to Improve ... · A Novel Model for Software Risk Mitigation Plan to Improve the Fault Tolerance Process ... 3 show@um.edu.my

Figure 2. A Proposed FTRM Model for Risk Mitigation in Software Systems

IV. FAULT INJECTION AND SOFTWARE FAULTS

Fault injection is the core of the model for risks diagnosis. By injecting the potential faults in different

dimensions, the hidden risks are identified and the software fault tolerance is tested as well. Fig 3 shows probable

faults of software [8].

Figure 3. Types of Software Faults

Page 4: A Novel Model for Software Risk Mitigation Plan to Improve ... · A Novel Model for Software Risk Mitigation Plan to Improve the Fault Tolerance Process ... 3 show@um.edu.my

V. PERFORMANCE FORMULAE FOR FTRM MODEL

The proposed performance formulae for the model are shown in equations (1) and (2) as follows [9].

However, five used variables of the formulae are defined respectively:

• EFJ(i) : Effort for Fault Injection for each Potential Fault

• EFA (i) : Effort for Fault Analysis for each Fault Injection

• EFR (i) : Effort for Risk Mitigation Activity

• EFI : Effort for Integration of the Mitigation Plan

• SV (i) : Saving Time by Increasing the Fault Tolerance for each Potential Fault

Total Effort (TE) = �� ������ ���� ����� ������������ ��� ���

��� � ��� (1)

Total performance = �� ������������ ���� ������ ������������ ��� ������ � � ��� (2)

VI. CASE STUDY

In the case study conducted, the users’ interaction with the system was researched and the plausible errors

were identified [10]. When the user chose incorrectly and disrupted the command of a crucial activity and the

process was halted in the midst of execution, potential faults were injected into the system.

The first column of Table I illustrates the two injected faults while the second column shows the corresponding

risks to the aforementioned faults. Third column respectively indicates the activities of a relevant intenerated

mitigation plan.

TABLE I. RISK MITIGATION ACTIVITIES

Mitigation Activity

Corresponding Risks

Injected Fault

����Informing Users of Selecting Reliable Commands

����Controlling Resources to Prevent Waste

����Providing Knowledge-Based Similar Decisions and Presenting

the Difference Table

�Wrong Output

�Wasted Resources

�Making a Wrong decision

Based on the Result

Inaccurate

Instructions

����Creating Back-Up and Revealing Susceptible Activities

Caution and Warning

�Wasted Resources

�Redundant Work

�Repair

Aborting a Necessary

Activity

����Server Back-Up for Recovery Upon Errors

�System Crash

�Unreliable Circumstances

Halt the

Run-Time Program

Page 5: A Novel Model for Software Risk Mitigation Plan to Improve ... · A Novel Model for Software Risk Mitigation Plan to Improve the Fault Tolerance Process ... 3 show@um.edu.my

VII. PERFORMANCE CALCULATION AND EFFECTIVENESS EVALUATION OF FTRM MODEL

Implementing the model in a real environment and gathering the real data has been the most common fault-

tolerance performance benchmark method [11]. To understand the performance of a model, using quantitative

formula with clarified interpretation is essential [12]. The performance formulae have been applied in the case

study and the results are shown in Table II. As is indicated in the table, there is a 28% improvement in the one

time performance of the model.

TABLE II. THE RESULTS OF PERFORMANCE CALCULATION OF CASE STUDY

Gross Performance

SV EFR EFA EFJ

86% 780 230 110 80 Wrong instructions

55% 1100 300 180 230 Aborting a Necessary Activity

22% 950 520 90 170 Halt the Run-Time Program

Total Performance = %28

EFI = 300

VIII. CONCLUSION

Mitigating the risks might increase the fault tolerance of a system; On the other hand, increasing the fault

tolerance might raise the risks occurrence. The proposed model in this research is based on identifying effective

factors in fault tolerance, the risks consequences, and presenting solutions to reduce the risks. Accordingly, the

conducted case study confirms that by identifying risks corresponding to the fault tolerance, a 20-80% increase in

fault tolerance can be achieved.

REFERENCES

[1] L. L. Pullum, “Software Fault Tolerance Techniques and Implementation”, Artech House Inc., 2001.

[2] S. Ghosh, et al. "Aspect-Oriented Approach To Early Design Modelling." IEE Proceedings -- Software 151.4 (2004): 173-185.

[3] Hameed, Kashif, Rob Williams, and Jim Smith. "Aspect Oriented Software Fault Tolerance." World Congress On Engineering 2009

(Volume 1) (2009): 110-117.

[4] Mohan, Neeraj, Parvinder S. Sandhu, and Hardeep Singh. "Impact Of Faults In Different Software Systems: A Survey." Proceedings

Of World Academy Of Science: Engineering & Technology 50.(2009): 430-433.

[5] Scandizzo, S. (2005). Risk Mapping and Key Risk Indicators in Operational Risk Management. Economic Notes, 34(2), 231-256.

doi:10.1111/j.0391-5026.2005.00150.x

[6] Yetman, L. (2006). Project Management: Careful Planning or Crystal Ball?.Journal of the Quality Assurance Institute, 20(3), 40-42.

[7] Prasad, R. (2007). Schedule and Cost Risk Evaluation. AACE International Transactions, 04.1-4.5.

[8] Wenliang, Du, and Aditya P. Mathur. "Testing For Software Vulnerability Using Environment Perturbation." Quality & Reliability Engineering International 18.3 (2002): 261-272.

[9] O'Connor, P. D. T. "Software Fault Tolerance: Achievement And Assessment Strategies (Book)." Quality & Reliability Engineering

International 8.5 (1992): 520.

[10] Ebnenasir, A., Sandeep K., and Anish A.. "Ftsyn: A Framework For Automatic Synthesis Of Fault-Tolerance." International Journal

On Software Tools For Technology Transfer 10.5 (2008): 455-471.

Page 6: A Novel Model for Software Risk Mitigation Plan to Improve ... · A Novel Model for Software Risk Mitigation Plan to Improve the Fault Tolerance Process ... 3 show@um.edu.my

[11] Subramaniyan, R, Grobelny, E, Studham, S, & George, A. 2008, 'Optimization of checkpointing-related I/O for high-performance

parallel and distributed computing', Journal Of Supercomputing, 46, 2, pp. 150-180.

[12] Millsap, C. "Thinking Clearly About Performance, Part 2." Communications Of The ACM 53.10 (2010): 39-45.