Muutke küpsiste eelistusi

Artificial Neural Network Applications for Software Reliability Prediction [Kõva köide]

  • Formaat: Hardback, 313 pages, kõrgus x laius x paksus: 229x152x19 mm, kaal: 590 g
  • Sari: Performability Engineering Series
  • Ilmumisaeg: 01-Sep-2017
  • Kirjastus: Wiley-Scrivener
  • ISBN-10: 1119223547
  • ISBN-13: 9781119223542
  • Formaat: Hardback, 313 pages, kõrgus x laius x paksus: 229x152x19 mm, kaal: 590 g
  • Sari: Performability Engineering Series
  • Ilmumisaeg: 01-Sep-2017
  • Kirjastus: Wiley-Scrivener
  • ISBN-10: 1119223547
  • ISBN-13: 9781119223542
This book provides a starting point for software professionals to apply artificial neural networks for software reliability prediction without having analyst capability and expertise in various ANN architectures and their optimization.

Artificial neural network (ANN) has proven to be a universal approximator for any non-linear continuous function with arbitrary accuracy. This book presents how to apply ANN to measure various software reliability indicators: number of failures in a given time, time between successive failures, fault-prone modules and development efforts. The application of machine learning algorithm i.e. artificial neural networks application in software reliability prediction during testing phase as well as early phases of software development process are presented. Applications of artificial neural network for the above purposes are discussed with experimental results in this book so that practitioners can easily use ANN models for predicting software reliability indicators.
Preface xi
Acknowledgement xv
Abbreviations xvii
1 Introduction
1(18)
1.1 Overview of Software Reliability Prediction and Its Limitation
6(2)
1.2 Overview of the Book
8(9)
1.2.1 Predicting Cumulative Number of Software Failures in a Given Time
9(2)
1.2.2 Predicting Time Between Successive Software Failures
11(2)
1.2.3 Predicting Software Fault-Prone Modules
13(2)
1.2.4 Predicting Software Development Efforts
15(2)
1.3 Organization of the Book
17(2)
2 Software Reliability Modelling
19(54)
2.1 Introduction
19(1)
2.2 Software Reliability Models
20(11)
2.2.1 Classification of Existing Models
21(4)
2.2.2 Software Reliability Growth Models
25(2)
2.2.3 Early Software Reliability Prediction Models
27(2)
2.2.4 Architecture based Software Reliability Prediction Models
29(2)
2.2.5 Bayesian Models
31(1)
2.3 Techniques used for Software Reliability Modelling
31(23)
2.3.1 Statistical Modelling Techniques
31(4)
2.3.2 Regression Analysis
35(2)
2.3.3 Fuzzy Logic
37(1)
2.3.3.1 Fuzzy Logic Model for Early Fault Prediction
38(1)
2.3.3.2 Prediction and Ranking of Fault-prone Software Modules using Fuzzy Logic
39(1)
2.3.4 Support Vector Machine
40(1)
2.3.4.1 SVM for Cumulative Number of Failures Prediction
41(4)
2.3.5 Genetic Programming
45(4)
2.3.6 Particle Swarm Optimization
49(1)
2.3.7 Time Series Approach
50(1)
2.3.8 Naive Bayes
51(1)
2.3.9 Artificial Neural Network
52(2)
2.4 Importance of Artificial Neural Network in Software Reliability Modelling
54(13)
2.4.1 Cumulative Number of Software Failures Prediction
55(3)
2.4.2 Time Between Successive Software Failures Prediction
58(2)
2.4.3 Software Fault-Prone Module Prediction
60(4)
2.4.4 Software Development Efforts Prediction
64(3)
2.5 Observations
67(3)
2.6 Objectives of the Book
70(3)
3 Prediction of Cumulative Number of Software Failures
73(30)
3.1 Introduction
73(3)
3.2 ANN Model
76(5)
3.2.1 Artificial Neural Network Model with Exponential Encoding
77(1)
3.2.2 Artificial Neural Network Model with Logarithmic Encoding
77(1)
3.2.3 System Architecture
78(2)
3.2.4 Performance Measures
80(1)
3.3 Experiments
81(7)
3.3.1 Effect of Different Encoding Parameter
82(1)
3.3.2 Effect of Different Encoding Function
83(3)
3.3.3 Effect of Number of Hidden Neurons
86(2)
3.4 ANN-PSO Model
88(5)
3.4.1 ANN Architecture
89(2)
3.4.2 Weight and Bias Estimation Through PSO
91(2)
3.5 Experimental Results
93(1)
3.6 Performance Comparison
94(9)
4 Prediction of Time Between Successive Software Failures
103(28)
4.1 Time Series Approach in ANN
105(1)
4.2 ANN Model
106(7)
4.3 ANN-PSO Model
113(3)
4.4 Results and Discussion
116(15)
4.4.1 Results of ANN Model
116(5)
4.4.2 Results of ANN-PSO Model
121(4)
4.4.3 Comparison
125(6)
5 Identification of Software Fault-Prone Modules
131(44)
5.1 Research Background
133(4)
5.1.1 Software Quality Metrics Affecting Fault-Proneness
134(1)
5.1.2 Dimension Reduction Techniques
135(2)
5.2 ANN Model
137(8)
5.2.1 SA-ANN Approach
139(1)
5.2.1.1 Logarithmic Scaling Function
139(1)
5.2.1.2 Sensitivity Analysis on Trained ANN
140(2)
5.2.2 PCA-ANN Approach
142(3)
5.3 ANN-PSO Model
145(3)
5.4 Discussion of Results
148(27)
5.4.1 Results of ANN Model
149(1)
5.4.1.1 SA-ANN Approach Results
149(3)
5.4.1.2 PCA-ANN Approach Results
152(3)
5.4.1.3 Comparison Results of ANN Model
155(7)
5.4.2 Results of ANN-PSO Model
162(1)
5.4.2.1 Reduced Data Set
162(1)
5.4.2.2 Comparison Results of ANN-PSO Model
163(12)
6 Prediction of Software Development Efforts
175(40)
6.1 Need for Development Efforts Prediction
178(1)
6.2 Efforts Multipliers Affecting Development Efforts
178(1)
6.3 Artificial Neural Network Application for Development Efforts Prediction
179(13)
6.3.1 Additional Input Scaling Layer ANN Architecture
181(2)
6.3.2 ANN-PSO Model
183(3)
6.3.3 ANN-PSO-PCA Model
186(2)
6.3.4 ANN-PSO-PCA-GA Model
188(1)
6.3.4.1 Chromosome Design and Fitness Function
189(1)
6.3.4.2 System Architecture of ANN-PSO-PCA-GA Model
190(2)
6.4 Performance Analysis on Data Sets
192(23)
6.4.1 COCOMO Data Set
194(8)
6.4.2 NASA Data Set
202(4)
6.4.3 Desharnais Data Set
206(3)
6.4.4 Albrecht Data Set
209(6)
7 Recent Trends in Software Reliability
215(4)
References 219(12)
Appendix Failure Count Data Set 231(4)
Appendix Time Between Failure Data Set 235(6)
Appendix CM1 Data Set 241(42)
Appendix Cocomo 63 Data Set 283(6)
Index 289
Manjubala Bisi is currently an Assistant Professor in the Computer Science and Engineering Department, Kakatiya Institute of Technology and Science, Warangal, Telengana, India. She received her PhD from the Indian Institute of Technology Kharagpur in Reliability Engineering in 2015. Her research interests include software reliability modelling, artificial neural networks and soft computing techniques.

Neeraj Kumar Goyal is currently an Associate Professor in Subir Chowdhury School of Quality and Reliability, Indian Institute of Technology Kharagpur, India. He received his PhD from IIT Kharagpur in Reliability Engineering in 2006. His major areas of research are network /system reliability and software reliability. He has completed various research and consultancy projects for various organizations, e.g. DRDO, NPCIL, Vodafone, ECIL etc. He has contributed research papers to refereed international journals and conference proceedings.