Defect Prediction: Using Machine Learning: Kirti Hegde, Consultant Trupti Songadwala, Senior Consultant Deloitte

You might also like

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 13

DEFECT PREDICTION :

USING MACHINE LEARNING

Kirti Hegde, Consultant


Trupti Songadwala, Senior Consultant

Deloitte

Copyright © 2017 Deloitte Development Copyright


LLC. All rights©reserved.
2017 Deloitte Development LLC. All rights reserved. 1
Abstract
Defect prediction is the smart way of automating the process of
software testing using machine learning technology.

Machine learning formulates predictive defect classification


models from different code attributes using computer algorithms.

Defect Prediction can overshadow the traditional approach of


software testing to enhance efficiency and cost effectiveness.

This defect profiling will ensure a early and more systematic fix
as compared to the traditional method of defect detection.

Integrating machine learning along with defect prediction is


bound to have a potential impact in industrial practice.

Copyright
Copyright © 2017 Deloitte Development LLC. © 2017 Deloitte Development LLC. All rights reserved.
All rights reserved. 2
How does this work?

Amalgamation of data science with the


latest technology in the smartest way
can help in Defect Prediction, which
will enhance testing cost-effectiveness.

All the data can be used to Defect


Software Machine
identify the components of the Prediction
Testing Learning
application which are most likely Models
to be defect prone.

Defect prediction is developing a


predictive pattern for defects found in
software using statistical metrics and
vectors.

Copyright
Copyright © 2017 Deloitte Development LLC. © 2017 Deloitte Development LLC. All rights reserved.
All rights reserved.
3
Challenges in the Traditional Method

 With growing software systems the


Automation Limited complexity of the applications
to Test Execution grows.

 As a part of regression, testing


Time and Resource same piece of code repeatedly may
Constraint sometimes decrease the accuracy
of the error detection.

Testing is one of  With increasing complexity, the


the critical phase time, expense and resources
needed to test the architecture also
increases gradually.

Copyright © 2017 Deloitte Development LLC. All rights reserved.


Copyright © 2017 Deloitte Development LLC. All rights reserved. 4
Development of Defect Prediction Model
Parameters from software development life cycle like the cohesion
between the modules, complexity ration, and severity of the previous
defects is used for developing metrics.

Training data/ Machine Identifying the


data from Learning put modules most
previous and to use with prone to defects
data from virtue of Data based on the
releases Science data analysis
Copyright © 2017 Deloitte Development LLC. Copyright
All rights reserved. 5
   
© 2017 Deloitte Development LLC. All rights reserved.
Evaluation of Defect Prediction Model
Inputs
Data

Model# 1 Model# 2 Model# 3


Bugs found: 4 Bugs found: 9 Bugs found: 1

Models can be classified based on different evaluation factors:


Number of Each model will differ from each other based on the
Bugs technique used. Selection of a model depends on
uncovered the efficiency of the model.

Performance of the model can be evaluated based


Performance of
on the number of actual defects against the number
the Model
of predicted defects for each of the module.
Copyright © 2017 Deloitte Development LLC. All rights reserved.
Copyright © 2017 Deloitte Development LLC. All rights reserved. 6
Key Points of Data Prediction Models
The basic science behind machine
learning techniques is the analysis of
large amount of data.

Data
Data
Metrics helps in leveraging the
quality of software and the practices Performance
used in software testing.

Different models can give insights to Metrics

Modelling
Modelling
some hidden aspects of the different
systems.

The statistics used in deriving


model, helps in evaluating precision
and performance of the models.

Copyright © 2017 Deloitte Development LLC. All rights reserved.


Copyright © 2017 Deloitte Development LLC. All rights reserved. 7
Strategic Planning based on the Model
Based on the
Cost detailed study and
Prediction analysis of the
Software
for Defect Prediction
Classification
Testing model, we can
Database draft the graph for
Selection the expense/ cost
Analysis
of the testing
of the required for the
Collection
result business at each
of Similar
Datasets level of complexity
of the system.
Effective This method is
Test Effective highly effective in
Planning Test the strategic Test
Copyright © 2017 Deloitte Development LLC. All rights reserved.
Planning
Copyright © 2017 Deloitte Development LLC. All rights reserved. Planning. 8
Author’s Point of View
 Defect prediction using machine learning s where digital technology
embraces and imitates human comprehension to create value.
Future Trends Market Value Customizing Tools

The market for Over the next 5 The market is


predictive analysis years, more than predicted to grow
using machine half of the software 2.5X faster than the
learning is growing industry will traditional tools for
rapidly to enable incorporate software testing
new potentials. predictive analysis. using machine
learning

Copyright © 2017 Deloitte Development LLC. All rights reserved.


Copyright © 2017 Deloitte Development LLC. All rights reserved. 9
Conclusion
 Defect prediction model will help the identification of
risk areas of software systems at an earlier stage in
the software development life cycle.

 Defect prediction using machine learning is an


People
emerging technology to leverage human experience
and automate manual efforts to categorize the
different types of defects in a software system.

 The prediction models can be developed in separate Process`


and flexible packages, so that a single model with
customizations can be used across different software
systems with maximum benefits and minimum cost
and efforts. Technology

Copyright © 2017 Deloitte Development LLC. All rights reserved.


Copyright © 2017 Deloitte Development LLC. All rights reserved. 10
References
 
& Appendix
https://en.wikipedia.org/wiki/Machine_learning
https://en.wikipedia.org/wiki/Software_defect_indicator
https://www.scientific.net/AMM.687-691.2182
https://www.weforum.org/agenda/2017/01/lifelong-machine-learning/
https://www2.dmst.aueb.gr/dds/pubs/conf/2010-DepCoS-RELCOMEX-
ckjm-defects/html/JS10.html
http://www.softwaretestingclass.com/software-estimation-techniques/
https://www.techemergence.com/valuing-the-artificial-intelligence-mark
et-graphs-and-predictions/
http://
www.marketsandmarkets.com/Market-Reports/cognitive-computing-m
arket-136144837.html
 
Copyright © 2017 Deloitte Development LLC. All rights reserved.
Copyright © 2017 Deloitte Development LLC. All rights reserved. 11
Author Biography
Kirti Hegde is a consultant with 6 years of Software Testing
experience with specialization in functional and mobile testing for Web,
Salesforce and Mobile Applications. She is an ISTQB Certified Software
Testing Professional with expertise in Microsoft and HP Testing Tools.
She is currently on an assignment with a public sector client and is
responsible for the functional and automation testing activities for the
solution.
Trupti Songadwala is a dynamic professional with around 9 years of
experience on Business Intelligence and Data Warehousing in specific
and Management of team. Technical Forte in Teradata - Experienced in
ETL Development with domain experience on Retail, Banking and Public
sector. She is currently working in development and enhancement
through learning the Work fusion RPA (Robotic Process Automation).\
Copyright
All rights© 2017 Deloitte Development LLC. All rights reserved.
Copyright © 2017 Deloitte Development LLC. reserved. 12
Thank You!!!

Copyright © 2017 Deloitte Development LLC. All rights reserved.


Copyright © 2017 Deloitte Development LLC. All rights reserved. 13

You might also like