This book provides insights into contemporary issues and challenges in multi-criteria decision models. It is a useful guide for identifying, understanding and categorising multi-criteria decision models, and ultimately implementing the analysis for effective decision-making. The use of multi-criteria decision models in software reliability engineering is a relatively new field of study, and this book collects all the latest methodologies, tools and techniques in one single volume. It covers model selection, assessment, resource allocation, release management, up-grade planning, open-source systems, bug tracking system management and defect prediction. Multi-Criteria Decision Models in Software Reliability: Methods and Applications will cater to researchers, academicians, post-graduate students, software developers, software reliability engineers and IT managers. Cover Half Title Series Page Title Page Copyright Page Table of Contents Preface Editors Contributors Chapter 1 Enhancing Software Reliability by Evaluating Prediction Accuracy of CBF Algorithm Using Machine Learning 1.1 Introduction 1.2 Background Details & Related Work 1.2.1 Software Reliability 1.2.2 Criterion to Measure Performance of SGRM 1.3 Machine Learning: A Brief Overview 1.3.1 Supervised Learning 1.3.2 Unsupervised Learning 1.3.2.1 Categorisation of Unsupervised Machine Learning 1.3.3 Semi-Supervised Learning 1.3.4 Reinforcement Learning 1.3.4.1 Algorithms Used in Machine Learning 1.4 Related Work 1.5 Machine Learning Techniques & Methodology Used for Reliability Assessment 1.5.1 Data Set 1.5.2 Collaborative Filtering Technique 1.6 Experimental Set-up 1.6.1 Test Data Set – QUERY vs PROBE 1.7 Results Evaluation 1.7.1 Evaluate the Recommendation from Both Algorithms – RMSE and MAE 1.8 Conclusions References Chapter 2 Significance of Machine Learning and Deep Learning in Development of Artificial Intelligence 2.1 Introduction 2.2 Related Works 2.3 Proposed System 2.3.1 Image Pre-Processing 2.3.2 Feature Extraction 2.3.3 Classifications 2.3.3.1 Support Vector Machine 2.3.3.2 Convolutional Neural Network 2.3.3.3 DBN 2.3.3.4 Random Forest 2.3.4 Evaluation 2.4 Conclusions References Chapter 3 Implication of Soft Computing and Machine Learning Method for Software Quality, Defect and Model Prediction 3.1 Introduction: Overview of the Study 3.2 Background: Machine Learning for Developing Models 3.3 Related Study 3.4 Literature Review 3.5 Methodical Review: Software Defect Prediction Using Machine Learning 3.5.1 Approach of Software Defect Prediction 3.5.2 Defect Prediction by Soft Computing Method 3.5.3 Data Mining in Imperfection Expectation 3.6 Machine Learning Approach for Quality Assessment and Prediction in Large Software Organisations References 3.6.1 Assessing Software Quality Attributes 3.6.1.1 Software Quality 3.6.2 Quality Prediction Using Threshold Euclidean Distance Model 3.7 Model Selection Using Machine Learning 3.7.1 Choosing a SDLC Model 3.8 Results and Discussion 3.9 Conclusions References Chapter 4 Ambiguity Based on Working and Functionality in Deployed Software from Client Side in Prototype SDLC Model Scenario 4.1 Introduction 4.2 Background 4.2.1 Customer Relationship Management Software 4.2.1.1 Major Applications of CRM 4.2.2 Overview of SDLC and Prototype Model 4.2.2.1 Prototyping Approach 4.3 Related Study: Prototyping Model Based on Procedure Method 4.4 Literature Review 4.5 Methodical Review: Types of Requirement Ambiguities and Their Detection 4.5.1 Ambiguity in Requirements Engineering 4.5.2 Types of Ambiguity 4.5.3 Approach of Literature Segmentation for Resolution of Ambiguity Detection 4.6 Methodology 4.6.1 Data Collection and Survey 4.6.2 Proposed Model 4.6.2.1 Enhanced Prototype Model 4.6.2.2 DANS Software Development Method 4.6.2.3 Inception Stage 4.6.2.4 Definition Stage 4.6.2.5 Configuration Stage 4.6.2.6 Repetitive Stage 4.7 Results and Discussion 4.7.1 Tools for Detecting Ambiguity 4.7.1.1 DARA Architecture 4.7.1.2 The Ambiguity-Resolving Module 4.7.2 Risk Analysis Due to Ambiguity in Requirements 4.8 Conclusions References Chapter 5 Selection of Software Programmer Using Fuzzy MCDM Technique in Software Engineering Scenario 5.1 Introduction 5.2 Review of Ranking-Based Optimisation Techniques 5.3 Effort Multipliers as Criteria and Alternative in Software Engineering Scenario 5.4 Fuzzy MCDM 5.4.1 FAHP 5.4.2 Fuzzy Technique for Order Preference by Similarity to Ideal Solution (FTOPSIS) 5.4.3 Integrated FAHP and FTOPSIS Method 5.5 Evaluation of Programmers' Rank Using FAHP 5.6 Appraisal of Programmers' Rank Using Integrated FAHP and FTOPSIS 5.7 Comparative Analysis 5.8 Conclusions References Chapter 6 Implementing Multi-Criteria Decision-Making to Detect Potential Onset of Heart Disease 6.1 Introduction 6.2 Literature Review 6.3 Methodology 6.3.1 Multi-Criteria Decision-Making (MCDM) Algorithm 6.3.1.1 Categorisation of Features 6.3.1.2 Normalisation of Data 6.3.1.3 Vector Normalisation 6.3.1.4 Enhanced Accuracy Normalisation 6.3.1.5 Entropy Method to Assign Weightage 6.3.1.6 Getting the Final Score 6.3.2 Dataset 6.4 Results and Analysis 6.4.1 Applying Vector Normalisation 6.4.2 Applying Enhanced Accuracy Normalisation 6.5 Conclusion and Future Scope References Chapter 7 State-of-the-Art Literature Review on Classification of Software Reliability Models 7.1 Introduction 7.1.1 Basic Terminology 7.2 Software Reliability Models 7.2.1 Some More Applicable Software Reliability Models 7.2.1.1 Non-Homogeneous Poisson Process (NHPP) 7.2.1.2 S-Shaped Software Reliability Growth Model 7.2.1.3 Imperfect Debugging 7.2.1.4 Soft Computing 7.3 Classification of Software Reliability Models 7.3.1 Analytical Model 7.3.2 Dynamic or Probabilistic Model 7.3.2.1 Discrete Time Models 7.3.2.2 Continuous Time Models 7.3.3 Static or Deterministic Model 7.4 Procedures and Tools 7.5 Literature Review 7.6 Conclusions References Chapter 8 Survey on Software Reliability Modelling and Quality Improvement Techniques 8.1 Introduction 8.2 Reliability Curve 8.3 Review of Software Reliability Model 8.3.1 Model of J-M De-Eutrophication 8.3.2 Model of Enhanced NHPP 8.3.3 Model of Musa Execution Time 8.3.4 Model of Nelson 8.3.5 Model of Littlewood-Verrall Bayesian 8.3.6 Model of White Box Software Reliability 8.4 Metrics of Software Reliability 8.4.1 Product Metrics 8.4.2 Project Management Metrics 8.4.3 Process Metrics 8.4.4 Metrics of Fault and Failure 8.5 Improvement Techniques of Software Reliability 8.5.1 Software Testing 8.5.1.1 Principles of Software Testing 8.5.1.2 Reliability Testing Importance 8.5.2 Type of Reliability Testing 8.5.3 Verification and Validation of Software 8.5.3.1 Validation Testing 8.5.3.2 Criteria of Validation Testing 8.6 Conclusions References Chapter 9 Multi-Criteria Decision Making for Software Vulnerabilities Analysis 9.1 Introduction 9.2 Causes of Vulnerabilities 9.3 Vulnerability Detection Methods 9.3.1 List of Software Vulnerability Methods 9.3.2 Software Vulnerabilities Detection Tool 9.4 Multi-Criteria Decision-Making (MCDM) 9.4.1 List of MCDM Techniques 9.4.2 Notations Used in MCDM 9.4.3 Important Steps Used in MCDM Models to Obtain the Ranking of Alternatives 9.5 Analysis of Software Vulnerabilities Using MCDM 9.5.1 Solution Using Analytic Hierarchy Process (AHP) 9.5.2 Simple Additive Weighting Method 9.5.3 Weighted Product Model 9.6 Outcome from the Mathematical Model 9.7 Conclusions References Chapter 10 On a Safety Evaluation of Artificial Intelligence-Based Systems to Software Reliability 10.1 Introduction 10.2 What Is Artificial Intelligence? 10.3 Does Artificial Intelligent Require a SIL? 10.4 Looking Inside AI 10.5 Software Reliability 10.6 Software Reliability Discussion 10.7 Characteristics of AI Software 10.8 Software Safety 10.9 Challenges of the Research 10.10 Conclusions References Chapter 11 Study and Estimation of Existing Software Quality Models to Predict the Reliability of Component-Based Software 11.1 Introduction 11.2 Related Work 11.2.1 Preliminary Work 11.3 Component-Based Reliability Prediction 11.4 Reliability Modelling 11.4.1 Basic Concepts 11.4.2 Component Reliability Specifications 11.4.2.1 Components, Services and Service Implementations 11.4.2.2 Failure Models 11.4.2.3 Structures with Fault Tolerance References Chapter 12 Performance of Multi-Criteria Decision-Making Model in Software Engineering – A Survey 12.1 Introduction 12.2 Previous Work 12.2.1 Different Approaches of MCDM 12.2.1.1 Analytic Hierarchy Process 12.2.1.2 Fuzzy Analytic Hierarchy Process 12.2.1.3 TOPSIS 12.2.1.4 ELECTRE 12.2.1.5 Grey Theory 12.2.1.6 ANP 12.2.1.7 VIKOR 12.2.1.8 PROMETHEE 12.2.1.9 SMARTER 12.2.1.10 Wiegers 12.2.1.11 Previous Research Work 12.2.2 FMCDM Application 12.2.2.1 Fuzzy MCDM Applications 12.2.2.2 Fuzzy MCDM in Performance Evaluation 12.3 Survey Research Outputs 12.3.1 Comparison of AHP and Fuzzy AHP 12.3.1.1 Analytic Hierarchy 12.4 Research Directions in MCDM 12.5 Conclusions References Chapter 13 Optimization Software Development Plan 13.1 Introduction 13.2 Start with the Product Vision and How It Can Be Represented in a Roadmap 13.3 What Is Involved in Release Planning? 13.4 Enhance Collaboration and Coordination 13.4.1 Reduce Dev/Test Cycle Time 13.4.2 Monitor Quality of Release Pipelines 13.4.3 Ensure Accurate Test Coverage 13.4.4 Get Insights and Reporting 13.5 Application of Release Plan 13.6 Working Plan Releases More Effectively 13.6.1 Examine Your Current Release Management Procedure 13.6.2 Create a Corporate Release Plan 13.6.3 Define the Optimal Release Management Process 13.6.4 Put Money into the Appropriate Individuals 13.6.5 Make Use of the Appropriate Tools 13.6.6 Make the Most of the Testing Environment 13.6.7 Define Stages and Activities to Govern 13.6.8 Ensure Stakeholder Engagement Is Transparent 13.6.9 Make Ongoing Communication Possible 13.6.10 Keep an Eye on the Numbers 13.7 Conclusion References Chapter 14 A Time-Variant Software Stability Model for Error Detection 14.1 Introduction 14.1.1 Analysing Climate Data 14.1.2 Prediction of Long-Term Pier Scour 14.1.3 Prediction of Streamflow and Floods 14.1.4 Flood and Flood-Induced Scour Behaviour of Bridge Foundations 14.1.5 Effects of Long-Term Corrosion 14.1.6 Conclusions References Chapter 15 Software Vulnerability Analysis 15.1 Introduction 15.1.1 The Frame of Software Vulnerability Evaluation Based on Machine Learning Technique 15.2 Top 10 Most Common Software Vulnerabilities 15.2.1 Broken Access Control 15.2.2 Cryptographic Failures 15.2.3 Injection 15.2.4 Insecure Design 15.2.5 Security Misconfiguration 15.2.6 Vulnerable and Outdated Components 15.2.7 Identification and Authentication Failures 15.2.8 Software and Data Integrity Failures 15.2.9 Security Logging and Monitoring Failures 15.2.10 On the Server-Side Request/Response Forgery Attack 15.3 Steps to Prevent Software Vulnerabilities 15.3.1 Create Software Design Requirements 15.3.2 Use a Coding Standard 15.3.3 Test Your Software 15.3.4 Vulnerability Assessment Tools 15.4 Top 10 Vulnerability Evaluation Tools 15.5 Vulnerability Assessment and Penetration Testing 15.5.1 Scope 15.5.2 Black Box Testing 15.5.3 Grey Box Testing 15.5.4 White Box Testing 15.5.5 Information Gathering 15.5.6 Vulnerability Detection 15.5.7 Information Analysis and Planning 15.5.8 Penetration Testing 15.5.9 Privilege Escalation 15.6 Results Analysis 15.7 Reporting 15.7.1 Clean-Up Activity of Vulnerability 15.8 Conclusions References Index "This book provides insights into contemporary issues and challenges in Multi-Criteria decision Models. It is a useful guide for identifying, understanding and categorizing Multi-Criteria Decision Models, and ultimately implementing the analysis for effective decision-making. The use of Multi-Criteria Decision Models in software reliability engineering is a relatively new field of study, and this book collects all the latest methodologies, tools, and techniques in one single volume. It covers model selection, assessment, resource allocation, release management, up-grade planning, open-source systems, bug tracking system management, and defect prediction"-- Provided by publisher This book provides insights into contemporary issues and challenges in Multi-Criteria decision Models. It is a useful guide for identifying, understanding and categorizing Multi-Criteria Decision Models, and ultimately implementing the analysis for effective decision-making. MCDM;,Multi-Criteria,Decision,Models;,COTS;,Commercial,off-the-shelf;,Bug,Preiction;,Fuzzy,Sets MCDM,Multi-Criteria Decision Models,COTS,Commercial off-the-shelf,Bug Preiction,Fuzzy Sets