Students will learn methods and techniques of software testing and reliability. They will be able:  to select the appropriate testing techniques for a specific purpose and evaluate the technique for false positive and negative output;  to select the most suitable technique to build testing suites;  to model and predict software reliability by mining big data; to make predictions by means of statistical models like stochastic processes or Markov Chains. Students will be able to discuss Software Reliability Growth models and measures of accuracy and prediction of the models according to a model classification (e.g., Musa-Okumoto). They will be able to interpret the reliability models, select the most appropriate for a given environment, interpret the reliability forecasts, and evaluate the stability of the prediction models