3. EVERY SOFTWARE NEEDS TO BE CUSTOMIZED
▸ Customization of a software system varies with user
requirements or target platform
3
4. EVERY SOFTWARE NEEDS TO BE CUSTOMIZED
▸ Customization of a software system varies with user
requirements or target platform
▸ Programmers employ preprocessor directives, command-
line arguments, setup files, configuration files to customize
a software system.
4
5. EVERY SOFTWARE NEEDS TO BE CUSTOMIZED
▸ Customization of a software system varies with user
requirements or target platform
▸ Programmers employ preprocessor directives, command-
line arguments, setup files, configuration files to customize
a software system.
▸ Any customizable option that can be selected during the
compile or load time is called a feature of a program.
5
11. CONFIGURATION CLASSIFICATION
▸ Configurations that perform important, common or default
operations are called critical configurations. During the
execution of software system many non-critical
configurations interact with critical configurations. Critical
configurations are specialized versions of non-critical
configurations
11
12. CONFIGURATION CLASSIFICATION
▸ Configurations that perform important, common or default
operations are called critical configurations. During the
execution of software system many non-critical
configurations interact with critical configurations. Critical
configurations are specialized versions of non-critical
configurations
12
13. CONFIGURATION CLASSIFICATION
▸ Configurations that perform important, common or default
operations are called critical configurations. During the
execution of software system many non-critical
configurations interact with critical configurations. Critical
configurations are specialized versions of non-critical
configurations
13
14. CONFIGURATION CLASSIFICATION
▸ Configurations that perform important, common or default
operations are called critical configurations. During the
execution of software system many non-critical
configurations interact with critical configurations. Critical
configurations are specialized versions of non-critical
configurations
14
15. CONFIGURATION CLASSIFICATION
▸ Configurations that perform important, common or default
operations are called critical configurations. During the
execution of software system many non-critical
configurations interact with critical configurations. Critical
configurations are specialized versions of non-critical
configurations
15
Frequently used or Critical configurations
16. CONFIGURATION CLASSIFICATION
▸ Configurations that perform important, common or default
operations are called critical configurations. During the
execution of software system many non-critical
configurations interact with critical configurations. Critical
configurations are specialized versions of non-critical
configurations
16
Frequently used or Critical configurations
vs
17. CONFIGURATION CLASSIFICATION
▸ Configurations that perform important, common or default
operations are called critical configurations. During the
execution of software system many non-critical
configurations interact with critical configurations. Critical
configurations are specialized versions of non-critical
configurations
17
Frequently used or Critical configurations
vs
Less frequently used or non-critical configurations
18. A CONFIGURATION IS SAID TO
BE FAILED CONFIGURATION IF
IT EITHER PRODUCE ERRORS
DURING ITS EXECUTION OR
FAIL TO SUCCESSFULLY
COMPLETE ITS TASK.
18
19. A CONFIGURATION IS SAID TO
BE FAILED CONFIGURATION IF
IT EITHER PRODUCE ERRORS
DURING ITS EXECUTION OR
FAIL TO SUCCESSFULLY
COMPLETE ITS TASK.
19
28. CLASSIFICATION OF CONFIGURATIONS
28
Where Fjk represent the number of times
configuration Cj invoked Ck and N is the number
of configurations present in a software system.
29. CLASSIFICATION OF CONFIGURATIONS
29
Where Fjk represent the number of times
configuration Cj invoked Ck and N is the number
of configurations present in a software system.
1) Frequency of interactions between configurations(IFrFT)
2) Characteristics such as structure (critical or non-critical) and frequency of interactions (ChIFrFT )
31. FREQUENCY OF INTERACTIONS BETWEEN CONFIGURATIONS
31
In this approach all configurations are treated
as equal by setting their individual interaction
value to zero at the beginning of execution of
a software system.
32. FREQUENCY OF INTERACTIONS BETWEEN CONFIGURATIONS
32
Configurations that are involved in most
of the interactions during execution of
software system are considered as critical
configurations.
In this approach all configurations are treated
as equal by setting their individual interaction
value to zero at the beginning of execution of
a software system.
33. FREQUENCY OF INTERACTIONS BETWEEN CONFIGURATIONS
33
Configurations that are involved in most
of the interactions during execution of
software system are considered as critical
configurations.
In this approach all configurations are treated
as equal by setting their individual interaction
value to zero at the beginning of execution of
a software system.
We propose a mathematical model to find
frequently used configurations of a software
system based on frequency of interactions.
34. FREQUENCY OF INTERACTIONS BETWEEN CONFIGURATIONS
34
Configurations that are involved in most
of the interactions during execution of
software system are considered as critical
configurations.
In this approach all configurations are treated
as equal by setting their individual interaction
value to zero at the beginning of execution of
a software system.
We propose a mathematical model to find
frequently used configurations of a software
system based on frequency of interactions.
35. CHIFRFT: FAULT TOLERANCE BASED ON CHARACTERISTICS AND INTERACTION FREQUENCIES OF CONFIGURATIONS
35
36. CHIFRFT: FAULT TOLERANCE BASED ON CHARACTERISTICS AND INTERACTION FREQUENCIES OF CONFIGURATIONS
36
In this approach software configurations are categorized into two sets
1) configurations which perform critical tasks (checking for uniqueness, size of index table, search
operation)
2) 2) of configurations which perform non-critical tasks (the padding of special symbol in fixed-length
records).
37. CHIFRFT: FAULT TOLERANCE BASED ON CHARACTERISTICS AND INTERACTION FREQUENCIES OF CONFIGURATIONS
37
In this approach software configurations are categorized into two sets
1) configurations which perform critical tasks (checking for uniqueness, size of index table, search
operation)
2) 2) of configurations which perform non-critical tasks (the padding of special symbol in fixed-length
records).
Initial interaction values of configurations that belong to the set critical configurations are assigned to
higher values compare to non-critical configurations.
38. CHIFRFT: FAULT TOLERANCE BASED ON CHARACTERISTICS AND INTERACTION FREQUENCIES OF CONFIGURATIONS
38
In this approach software configurations are categorized into two sets
1) configurations which perform critical tasks (checking for uniqueness, size of index table, search
operation)
2) 2) of configurations which perform non-critical tasks (the padding of special symbol in fixed-length
records).
Initial interaction values of configurations that belong to the set critical configurations are assigned to
higher values compare to non-critical configurations.
39. CHIFRFT: FAULT TOLERANCE BASED ON CHARACTERISTICS AND INTERACTION FREQUENCIES OF CONFIGURATIONS
39
In this approach software configurations are categorized into two sets
1) configurations which perform critical tasks (checking for uniqueness, size of index table, search
operation)
2) 2) of configurations which perform non-critical tasks (the padding of special symbol in fixed-length
records).
Initial interaction values of configurations that belong to the set critical configurations are assigned to
higher values compare to non-critical configurations.
47. PROACTIVE SCHEME
47
Proactive schemes are costlier as they need lots of resources to support simultaneous execution of
primary job and its replicas
1- Preemptive migration
2- N-Version Programming
3- N-Copy Programming
4- Byzantine Fault Tolerance
48. PROACTIVE SCHEME
48
Proactive schemes are costlier as they need lots of resources to support simultaneous execution of
primary job and its replicas
1- Preemptive migration
2- N-Version Programming
3- N-Copy Programming
4- Byzantine Fault Tolerance
51. REACTIVE SCHEME
51
1- Recovery Block Programming
2- Process Checkpointing
3- Process Migration
Reactive fault tolerance schemes act on the recovery process after the occurrence of failure.
52. PERFORMANCE EVALUATION
52
Using C++ language we have developed a software system for file structure techniques proposed by
Michael J. Folk in [54].
65. RECAP
65
In this research article we have proposed fault tolerant techniques based on frequency of
interactions, characteristics of configurations. IFrFT technique based on frequency of interactions
makes use of interaction values of configurations to measure the reliability and performance of a
software system. ChIFrFT technique is based on frequency of interactions and characteristics
(critical operations such as payment transactions and control systems) makes use of structural
information of configurations. Performance of NoFT, AllFT, IFrFT and ChIFrFT techniques compared
for various percentages of critical con- figurations, number of interaction requests. While AllFT
technique perform better than all the other techniques ChIFrFT approach has consistent
performance compare to IFrFT and NoFT. Performance of IFrFT and ChIFrFT techniques, in terms of
the number of successful interactions, has increased by 25 and 40% respectively compare to NoFT.
66. RECAP
66
In this research article we have proposed fault tolerant techniques based on frequency of
interactions, characteristics of configurations. IFrFT technique based on frequency of interactions
makes use of interaction values of configurations to measure the reliability and performance of a
software system. ChIFrFT technique is based on frequency of interactions and characteristics
(critical operations such as payment transactions and control systems) makes use of structural
information of configurations. Performance of NoFT, AllFT, IFrFT and ChIFrFT techniques compared
for various percentages of critical con- figurations, number of interaction requests. While AllFT
technique perform better than all the other techniques ChIFrFT approach has consistent
performance compare to IFrFT and NoFT. Performance of IFrFT and ChIFrFT techniques, in terms of
the number of successful interactions, has increased by 25 and 40% respectively compare to NoFT.
67. RECAP
67
In this research article we have proposed fault tolerant techniques based on frequency of
interactions, characteristics of configurations. IFrFT technique based on frequency of interactions
makes use of interaction values of configurations to measure the reliability and performance of a
software system. ChIFrFT technique is based on frequency of interactions and characteristics
(critical operations such as payment transactions and control systems) makes use of structural
information of configurations. Performance of NoFT, AllFT, IFrFT and ChIFrFT techniques compared
for various percentages of critical con- figurations, number of interaction requests. While AllFT
technique perform better than all the other techniques ChIFrFT approach has consistent
performance compare to IFrFT and NoFT. Performance of IFrFT and ChIFrFT techniques, in terms of
the number of successful interactions, has increased by 25 and 40% respectively compare to NoFT.
68. RECAP
68
In this research article we have proposed fault tolerant techniques based on frequency of
interactions, characteristics of configurations. IFrFT technique based on frequency of interactions
makes use of interaction values of configurations to measure the reliability and performance of a
software system. ChIFrFT technique is based on frequency of interactions and characteristics
(critical operations such as payment transactions and control systems) makes use of structural
information of configurations. Performance of NoFT, AllFT, IFrFT and ChIFrFT techniques compared
for various percentages of critical con- figurations, number of interaction requests. While AllFT
technique perform better than all the other techniques ChIFrFT approach has consistent
performance compare to IFrFT and NoFT. Performance of IFrFT and ChIFrFT techniques, in terms of
the number of successful interactions, has increased by 25 and 40% respectively compare to NoFT.
69. RECAP
69
In this research article we have proposed fault tolerant techniques based on frequency of
interactions, characteristics of configurations. IFrFT technique based on frequency of interactions
makes use of interaction values of configurations to measure the reliability and performance of a
software system. ChIFrFT technique is based on frequency of interactions and characteristics
(critical operations such as payment transactions and control systems) makes use of structural
information of configurations. Performance of NoFT, AllFT, IFrFT and ChIFrFT techniques compared
for various percentages of critical con- figurations, number of interaction requests. While AllFT
technique perform better than all the other techniques ChIFrFT approach has consistent
performance compare to IFrFT and NoFT. Performance of IFrFT and ChIFrFT techniques, in terms of
the number of successful interactions, has increased by 25 and 40% respectively compare to NoFT.
70. RECAP
70
In this research article we have proposed fault tolerant techniques based on frequency of
interactions, characteristics of configurations. IFrFT technique based on frequency of interactions
makes use of interaction values of configurations to measure the reliability and performance of a
software system. ChIFrFT technique is based on frequency of interactions and characteristics
(critical operations such as payment transactions and control systems) makes use of structural
information of configurations. Performance of NoFT, AllFT, IFrFT and ChIFrFT techniques compared
for various percentages of critical con- figurations, number of interaction requests. While AllFT
technique perform better than all the other techniques ChIFrFT approach has consistent
performance compare to IFrFT and NoFT. Performance of IFrFT and ChIFrFT techniques, in terms of
the number of successful interactions, has increased by 25 and 40% respectively compare to NoFT.
71. RECAP
71
In this research article we have proposed fault tolerant techniques based on frequency of
interactions, characteristics of configurations. IFrFT technique based on frequency of interactions
makes use of interaction values of configurations to measure the reliability and performance of a
software system. ChIFrFT technique is based on frequency of interactions and characteristics
(critical operations such as payment transactions and control systems) makes use of structural
information of configurations. Performance of NoFT, AllFT, IFrFT and ChIFrFT techniques compared
for various percentages of critical con- figurations, number of interaction requests. While AllFT
technique perform better than all the other techniques ChIFrFT approach has consistent
performance compare to IFrFT and NoFT. Performance of IFrFT and ChIFrFT techniques, in terms of
the number of successful interactions, has increased by 25 and 40% respectively compare to NoFT.
72. RECAP
72
In this research article we have proposed fault tolerant techniques based on frequency of
interactions, characteristics of configurations. IFrFT technique based on frequency of interactions
makes use of interaction values of configurations to measure the reliability and performance of a
software system. ChIFrFT technique is based on frequency of interactions and characteristics
(critical operations such as payment transactions and control systems) makes use of structural
information of configurations. Performance of NoFT, AllFT, IFrFT and ChIFrFT techniques compared
for various percentages of critical con- figurations, number of interaction requests. While AllFT
technique perform better than all the other techniques ChIFrFT approach has consistent
performance compare to IFrFT and NoFT. Performance of IFrFT and ChIFrFT techniques, in terms of
the number of successful interactions, has increased by 25 and 40% respectively compare to NoFT.