Chapter 14 The impact of mediator and observer design patterns on software reliability: an empirical evaluation
-
Muhammad Ehsan Rana
Abstract
A good software product must achieve specific defined quality attributes to meet the needs and expectations of users. Various studies substantiate the use of design patterns to create better quality software. Reliability is defined as the extent to which a program can be expected to perform its intended function with the required precision. Reliability measures the probability that a system will not fail and instead perform its intended functions for a specified time interval. This chapter has focused on the importance of reliability to a software system and how design patterns can be applied to achieve higher reliability. This research aims to identify suitable design patterns that help improve the reliability of a software system and finally evaluates the effects of applying these design patterns. For this research, mediator and observer design patterns are implemented using Java programming language to solve a common problem scenario for comparative analysis. An empirical measuring technique is used to evaluate the impact of suggested design patterns on reliability.
Abstract
A good software product must achieve specific defined quality attributes to meet the needs and expectations of users. Various studies substantiate the use of design patterns to create better quality software. Reliability is defined as the extent to which a program can be expected to perform its intended function with the required precision. Reliability measures the probability that a system will not fail and instead perform its intended functions for a specified time interval. This chapter has focused on the importance of reliability to a software system and how design patterns can be applied to achieve higher reliability. This research aims to identify suitable design patterns that help improve the reliability of a software system and finally evaluates the effects of applying these design patterns. For this research, mediator and observer design patterns are implemented using Java programming language to solve a common problem scenario for comparative analysis. An empirical measuring technique is used to evaluate the impact of suggested design patterns on reliability.
Chapters in this book
- Frontmatter I
- Preface VII
- Acknowledgments IX
- Contents XI
- Editors’ biography XV
- List of contributing authors XVII
- Chapter 1 Cloud-enabled HAP for next-generation reliable networks: a dependability analysis 1
- Chapter 2 Opportunity-based age replacement models in discrete time and their application 25
- Chapter 3 An efficient GA-PSO algorithm for addressing multi-objective reliability optimization problems 47
- Chapter 4 Mathematical data models for forecasting computational resources in cloud computing 65
- Chapter 5 Mathematical modeling and reliability analysis of pulsed GTAW process in mechanical property for weld joints 87
- Chapter 6 Analyzing enablers influencing reliability and adoption of conversational bots: an interpretive structural modeling technique 101
- Chapter 7 Modeling of series parallel system by two types of repairs for reliability perspective 129
- Chapter 8 Analyzing unmanned aerial vehicle threats and risks using STRIDE and DREAD 143
- Chapter 9 Reliability analysis of a two out of four stochastic model with rework strategy 183
- Chapter 10 A fast algorithm to find the maximum reliability route in stochastic networks 209
- Chapter 11 Discovery and fixation process for software vulnerabilities: modeling and analysis incorporating learning functions 221
- Chapter 12 Reliability assessment method based on cyclic noisy fault big data and AI for OSS 237
- Chapter 13 MEREC-CoCoSo-based systematic approach to analyze and evaluate critical testing coverage measures for software development process 257
- Chapter 14 The impact of mediator and observer design patterns on software reliability: an empirical evaluation 277
- Chapter 15 Identifying the most efficient vulnerability detection methods: a multi-criteria decisionmaking approach 295
- Chapter 16 Methodology of developing mathematical models with fuzzy logic elements for quality indices control 307
- Chapter 17 Review of multi-release software reliability growth modeling framework 339
- Index 353
Chapters in this book
- Frontmatter I
- Preface VII
- Acknowledgments IX
- Contents XI
- Editors’ biography XV
- List of contributing authors XVII
- Chapter 1 Cloud-enabled HAP for next-generation reliable networks: a dependability analysis 1
- Chapter 2 Opportunity-based age replacement models in discrete time and their application 25
- Chapter 3 An efficient GA-PSO algorithm for addressing multi-objective reliability optimization problems 47
- Chapter 4 Mathematical data models for forecasting computational resources in cloud computing 65
- Chapter 5 Mathematical modeling and reliability analysis of pulsed GTAW process in mechanical property for weld joints 87
- Chapter 6 Analyzing enablers influencing reliability and adoption of conversational bots: an interpretive structural modeling technique 101
- Chapter 7 Modeling of series parallel system by two types of repairs for reliability perspective 129
- Chapter 8 Analyzing unmanned aerial vehicle threats and risks using STRIDE and DREAD 143
- Chapter 9 Reliability analysis of a two out of four stochastic model with rework strategy 183
- Chapter 10 A fast algorithm to find the maximum reliability route in stochastic networks 209
- Chapter 11 Discovery and fixation process for software vulnerabilities: modeling and analysis incorporating learning functions 221
- Chapter 12 Reliability assessment method based on cyclic noisy fault big data and AI for OSS 237
- Chapter 13 MEREC-CoCoSo-based systematic approach to analyze and evaluate critical testing coverage measures for software development process 257
- Chapter 14 The impact of mediator and observer design patterns on software reliability: an empirical evaluation 277
- Chapter 15 Identifying the most efficient vulnerability detection methods: a multi-criteria decisionmaking approach 295
- Chapter 16 Methodology of developing mathematical models with fuzzy logic elements for quality indices control 307
- Chapter 17 Review of multi-release software reliability growth modeling framework 339
- Index 353