SlideShare a Scribd company logo
1 of 18
Download to read offline
Introduction
                            Data Mining
                      And the results are
A vision over the present and the future




             Mining Software Repositories
                            Improving software


                             Pere Urb´n Bayes
                                     o

                         Data Management Group
                    Dept. Arquitectura de Computadors
                    Universitat Polit`cnica de Catalunya
                                     e
                              purbon@ac.upc.edu

                                 July of 2009



                       Pere Urb´n Bayes
                               o            Mining Software Repositories
Introduction
                                      Data Mining
                                And the results are
          A vision over the present and the future


Index




        Introduction
        Data Mining
        The results
        The future




                                 Pere Urb´n Bayes
                                         o            Mining Software Repositories
Introduction
                                                   Motivations
                                   Data Mining
                                                   The Situation
                             And the results are
                                                   Objectives
       A vision over the present and the future


The problem



     Companies need to own highly available and reliable software.
     The software of low quality harms both, clients and producers.
     Unfortunately, avoiding defects is a difficult task to undertake.

     Project Leaders need to keep an eye inside to many projects.
     Software engineer tend not to document software in deep.
     The complexity of software projects is growing every day.




                              Pere Urb´n Bayes
                                      o            Mining Software Repositories
Introduction
                                                   Motivations
                                   Data Mining
                                                   The Situation
                             And the results are
                                                   Objectives
       A vision over the present and the future


The software development process




                              Pere Urb´n Bayes
                                      o            Mining Software Repositories
Introduction
                                                        Motivations
                                        Data Mining
                                                        The Situation
                                  And the results are
                                                        Objectives
            A vision over the present and the future


Support tools


  Tools used to support software development:
      Version Control server.
      Bug Tracker server.
      Project Management server.
      Life cycle management software.
      ...

   This set of tools store a huge amount of information during the
  process, Why not to use this information to improve our software?




                                   Pere Urb´n Bayes
                                           o            Mining Software Repositories
Introduction
                                                    Motivations
                                    Data Mining
                                                    The Situation
                              And the results are
                                                    Objectives
        A vision over the present and the future


Objective and Applications


  Objectives:
      Analyse the use of data mining technology, to data stored in
      support tools, with the aim to improve software quality.
      Develop an experimental prototype tool.
  Applications:
      Reduce the error rate.
      Provides a non-exploited source of documentation.
      Provide a new source of support tools for IDE’s.




                               Pere Urb´n Bayes
                                       o            Mining Software Repositories
Introduction
                                     Data Mining     Introduction
                               And the results are   The use of
         A vision over the present and the future


Data mining



  Type of database analysis that attempts to discover useful patterns
  or relationships in a group of data. The analysis uses advanced
  statistical methods, such as cluster analysis, and sometimes
  employs artificial intelligence or neural network techniques. A
  major goal of data mining is to discover previously unknown
  relationships among the data, especially when the data come from
  different databases.




                                Pere Urb´n Bayes
                                        o            Mining Software Repositories
Introduction
                                    Data Mining     Introduction
                              And the results are   The use of
        A vision over the present and the future


Methods


  Types of:
      Traditional Data Mining (K-Means, C4.5, Bayesian Networks).
      Relational Data Mining (ILP, Markov logic networks,
      Relational bayesian methods, Dependency Networks).
  Categories:
      Clusterers
      Classifiers
      Associative rules
      Network Models.



                               Pere Urb´n Bayes
                                       o            Mining Software Repositories
Introduction
                                     Data Mining     Introduction
                               And the results are   The use of
         A vision over the present and the future


Data mining



  Type of database analysis that attempts to discover useful patterns
  or relationships in a group of data. The analysis uses advanced
  statistical methods, such as cluster analysis, and sometimes
  employs artificial intelligence or neural network techniques. A
  major goal of data mining is to discover previously unknown
  relationships among the data, especially when the data come from
  different databases.




                                Pere Urb´n Bayes
                                        o            Mining Software Repositories
Introduction
                                    Data Mining     Introduction
                              And the results are   The use of
        A vision over the present and the future


Issue detection

   LOC                          DefectAppearence2Month                      RevisionsAuthor
   LineAddedIRLAdd              ReportedI2Month                             Revision2Month
   LineAddedIRLDel              Revision3Month                              Releases
   AlterType                    DefectAppearence3Month                      ReportedI1Month
   AgeMonths                    ReportedI3Month                             ReportedIssues
   RevisionAge                  Revision5Month                              ReportedI5Month
   DefectReleases               DefectAppearence5Month
   Revision1Month               DefectAppearance1Month

  Question: Has this file a non detected error. The exact number of
  errors can be predicted to.



                               Pere Urb´n Bayes
                                       o            Mining Software Repositories
Introduction
                                     Data Mining     Introduction
                               And the results are   The use of
         A vision over the present and the future


Another types of objectives

      Predict bugs related to a software developer.
      Prediction of bugs in software components.
  This techniques could be used in different topics:
      Software understanding.
      Software evolution.
      Software visualization.
      Change propagation.
      Impact analysis.
      Software complexity.
      Fault prediction.

                                Pere Urb´n Bayes
                                        o            Mining Software Repositories
Introduction
                                    Data Mining     Error prediction
                              And the results are   Software
        A vision over the present and the future


Error prediction

                                 Eclipse Project                  Firefox Project
   Correctly classified           94.65%                           94.822%
   Statistics Kappa              0.893                            0.8883
   Precision                     0.9465                           0.9482
   Recall                        0.945                            0.949
   AUC ROC                       0.9682                           0.9808
                                 Eclipse-Firefox                  Firefox-Eclipse
   Correctly classified           82.0065%                         87.975%
   Statistics Kappa              0.5976                           0.7595
   Precision                     0.818                            0.894
   Recall                        0.82                             0.88
   AUC ROC                       0.805                            0.83


                               Pere Urb´n Bayes
                                       o            Mining Software Repositories
Introduction
                                  Data Mining     Error prediction
                            And the results are   Software
      A vision over the present and the future


The end App




                             Pere Urb´n Bayes
                                     o            Mining Software Repositories
Introduction
                                    Data Mining     Software libraries
                              And the results are   An envision
        A vision over the present and the future


The Prototype


  Software being used:
      Programming: JAVA
      Database: MySQL and MonetDB.
      Data Mining: Weka 3.6 and Proximity 4.3
      XML: Apache Xerces 2.9.1
      SVN, CVS : svnkit 1.3.0, for CVS netbeans-cvs lib and a
      custom rcs file parser.
      Presentation: Prefuse Visualization Toolkit and Weka
      Drawing facilities.



                               Pere Urb´n Bayes
                                       o            Mining Software Repositories
Introduction
                                    Data Mining     Software libraries
                              And the results are   An envision
        A vision over the present and the future


Could python give use the same?
  Machine Learning:
      Orange: With 1.0 this lib has many interesting and useful
      methods, Classification, Regression and Clustering. The most
      similar to Weka.
      PyML: Only has classifier facilities.
      Shogun: Only for Support Vector Machines.
      RPy: An interface to R.
  Databases:
      The most important relational databases are available via
      DB-API.
            ZODB: Zope Object Database.
            Metakit: An embedded database with a not defined paradigm.
            Pygr: Python graph database framework for bioinformatics.

                               Pere Urb´n Bayes
                                       o            Mining Software Repositories
Introduction
                                    Data Mining     Software libraries
                              And the results are   An envision
        A vision over the present and the future


Could python give use the same?

  Presentation:
      Graph Drawing: NetworkX, with nice result. There are some
      other but they look incomplete.
      GUI: PyQT, wxWindows, pyGTK. It’s your taste XD!.
  SVN, CVS processing:
      SVN: pysvn - Python interface to Subversion.
      CVS: It seams nothing is available.
      GIT: PyGit - Pythonic git bindings targeted towards
      porcelains.
  XML Processing could be done using built-in support and with any
  SAX or DOM parser.

                               Pere Urb´n Bayes
                                       o            Mining Software Repositories
Introduction
                                    Data Mining     Software libraries
                              And the results are   An envision
        A vision over the present and the future


The future

  Known issues:
      Data preprocessing performance.
      Database performance, is the relational model valid?
      Dynamic procedure addition.
  The Todo List:
      Develop new procedures over different related topics, like
      software visualization, change support, etc.
      Develop a more mature software. Python could help in some
      parts. This software must be easily extensible.
      Improve the hole process performance.


                               Pere Urb´n Bayes
                                       o            Mining Software Repositories
Introduction
                                  Data Mining     Software libraries
                            And the results are   An envision
      A vision over the present and the future


The end



                                         Question?


                               Pere Urb´n Bayes
                                         o
                           Data Management Group
                      Dept. Arquitectura de Computadors
                      Universitat Polit`cnica de Catalunya
                                       e
                                 purbon@ac.upc.edu




                             Pere Urb´n Bayes
                                     o            Mining Software Repositories

More Related Content

Similar to Python Meetup Talk 21072009

Information Needs for Software Development Analytics
Information Needs for Software Development AnalyticsInformation Needs for Software Development Analytics
Information Needs for Software Development AnalyticsRay Buse
 
Today's BI and Data Mining ecosystem
Today's BI and Data Mining ecosystemToday's BI and Data Mining ecosystem
Today's BI and Data Mining ecosystemJosep Arroyo
 
Neil Mason presents on Data Mining and Predictive Analytics at Emetrics San F...
Neil Mason presents on Data Mining and Predictive Analytics at Emetrics San F...Neil Mason presents on Data Mining and Predictive Analytics at Emetrics San F...
Neil Mason presents on Data Mining and Predictive Analytics at Emetrics San F...Foviance
 
Past, Present, and Future of Analyzing Software Data
Past, Present, and Future of Analyzing Software DataPast, Present, and Future of Analyzing Software Data
Past, Present, and Future of Analyzing Software DataJeongwhan Choi
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD Editor
 
Where does it go from here? The role of software in digital repositories
Where does it go from here? The role of software in digital repositoriesWhere does it go from here? The role of software in digital repositories
Where does it go from here? The role of software in digital repositoriesNeil Chue Hong
 
Analytics for software development
Analytics for software developmentAnalytics for software development
Analytics for software developmentThomas Zimmermann
 
Process Project Mgt Seminar 8 Apr 2009(2)
Process Project Mgt Seminar 8 Apr 2009(2)Process Project Mgt Seminar 8 Apr 2009(2)
Process Project Mgt Seminar 8 Apr 2009(2)avitale1998
 
Exploring Data Visualization
Exploring Data VisualizationExploring Data Visualization
Exploring Data VisualizationJim Jenkins
 
Hihn.jarius
Hihn.jariusHihn.jarius
Hihn.jariusNASAPMC
 
The Impact of SOA on Traditional Middleware Technologies
The Impact of SOA on Traditional Middleware TechnologiesThe Impact of SOA on Traditional Middleware Technologies
The Impact of SOA on Traditional Middleware Technologiesdigitallibrary
 
EPA 2013 Air Sensors Meeting Big Data Talk
EPA 2013 Air Sensors Meeting Big Data TalkEPA 2013 Air Sensors Meeting Big Data Talk
EPA 2013 Air Sensors Meeting Big Data TalkAdina Chuang Howe
 
Se lect12 btech
Se lect12 btechSe lect12 btech
Se lect12 btechIIITA
 
Se lect13 btech
Se lect13 btechSe lect13 btech
Se lect13 btechIIITA
 
Pain points for preservation services / workflows in repositories
Pain points for preservation services /  workflows in repositories Pain points for preservation services /  workflows in repositories
Pain points for preservation services / workflows in repositories prwheatley
 
20111104 s4 overview
20111104 s4 overview20111104 s4 overview
20111104 s4 overviewLeo Neumeyer
 
rorosyd - Test Driven Search Development
rorosyd - Test Driven Search Developmentrorosyd - Test Driven Search Development
rorosyd - Test Driven Search DevelopmentAndrew Harvey
 
Today's bi and data mining ecosystem v2
Today's bi and data mining ecosystem v2Today's bi and data mining ecosystem v2
Today's bi and data mining ecosystem v2Josep Arroyo
 
Data Mining
Data MiningData Mining
Data Miningswami920
 

Similar to Python Meetup Talk 21072009 (20)

Information Needs for Software Development Analytics
Information Needs for Software Development AnalyticsInformation Needs for Software Development Analytics
Information Needs for Software Development Analytics
 
Integration
IntegrationIntegration
Integration
 
Today's BI and Data Mining ecosystem
Today's BI and Data Mining ecosystemToday's BI and Data Mining ecosystem
Today's BI and Data Mining ecosystem
 
Neil Mason presents on Data Mining and Predictive Analytics at Emetrics San F...
Neil Mason presents on Data Mining and Predictive Analytics at Emetrics San F...Neil Mason presents on Data Mining and Predictive Analytics at Emetrics San F...
Neil Mason presents on Data Mining and Predictive Analytics at Emetrics San F...
 
Past, Present, and Future of Analyzing Software Data
Past, Present, and Future of Analyzing Software DataPast, Present, and Future of Analyzing Software Data
Past, Present, and Future of Analyzing Software Data
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
 
Where does it go from here? The role of software in digital repositories
Where does it go from here? The role of software in digital repositoriesWhere does it go from here? The role of software in digital repositories
Where does it go from here? The role of software in digital repositories
 
Analytics for software development
Analytics for software developmentAnalytics for software development
Analytics for software development
 
Process Project Mgt Seminar 8 Apr 2009(2)
Process Project Mgt Seminar 8 Apr 2009(2)Process Project Mgt Seminar 8 Apr 2009(2)
Process Project Mgt Seminar 8 Apr 2009(2)
 
Exploring Data Visualization
Exploring Data VisualizationExploring Data Visualization
Exploring Data Visualization
 
Hihn.jarius
Hihn.jariusHihn.jarius
Hihn.jarius
 
The Impact of SOA on Traditional Middleware Technologies
The Impact of SOA on Traditional Middleware TechnologiesThe Impact of SOA on Traditional Middleware Technologies
The Impact of SOA on Traditional Middleware Technologies
 
EPA 2013 Air Sensors Meeting Big Data Talk
EPA 2013 Air Sensors Meeting Big Data TalkEPA 2013 Air Sensors Meeting Big Data Talk
EPA 2013 Air Sensors Meeting Big Data Talk
 
Se lect12 btech
Se lect12 btechSe lect12 btech
Se lect12 btech
 
Se lect13 btech
Se lect13 btechSe lect13 btech
Se lect13 btech
 
Pain points for preservation services / workflows in repositories
Pain points for preservation services /  workflows in repositories Pain points for preservation services /  workflows in repositories
Pain points for preservation services / workflows in repositories
 
20111104 s4 overview
20111104 s4 overview20111104 s4 overview
20111104 s4 overview
 
rorosyd - Test Driven Search Development
rorosyd - Test Driven Search Developmentrorosyd - Test Driven Search Development
rorosyd - Test Driven Search Development
 
Today's bi and data mining ecosystem v2
Today's bi and data mining ecosystem v2Today's bi and data mining ecosystem v2
Today's bi and data mining ecosystem v2
 
Data Mining
Data MiningData Mining
Data Mining
 

Recently uploaded

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 

Recently uploaded (20)

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 

Python Meetup Talk 21072009

  • 1. Introduction Data Mining And the results are A vision over the present and the future Mining Software Repositories Improving software Pere Urb´n Bayes o Data Management Group Dept. Arquitectura de Computadors Universitat Polit`cnica de Catalunya e purbon@ac.upc.edu July of 2009 Pere Urb´n Bayes o Mining Software Repositories
  • 2. Introduction Data Mining And the results are A vision over the present and the future Index Introduction Data Mining The results The future Pere Urb´n Bayes o Mining Software Repositories
  • 3. Introduction Motivations Data Mining The Situation And the results are Objectives A vision over the present and the future The problem Companies need to own highly available and reliable software. The software of low quality harms both, clients and producers. Unfortunately, avoiding defects is a difficult task to undertake. Project Leaders need to keep an eye inside to many projects. Software engineer tend not to document software in deep. The complexity of software projects is growing every day. Pere Urb´n Bayes o Mining Software Repositories
  • 4. Introduction Motivations Data Mining The Situation And the results are Objectives A vision over the present and the future The software development process Pere Urb´n Bayes o Mining Software Repositories
  • 5. Introduction Motivations Data Mining The Situation And the results are Objectives A vision over the present and the future Support tools Tools used to support software development: Version Control server. Bug Tracker server. Project Management server. Life cycle management software. ... This set of tools store a huge amount of information during the process, Why not to use this information to improve our software? Pere Urb´n Bayes o Mining Software Repositories
  • 6. Introduction Motivations Data Mining The Situation And the results are Objectives A vision over the present and the future Objective and Applications Objectives: Analyse the use of data mining technology, to data stored in support tools, with the aim to improve software quality. Develop an experimental prototype tool. Applications: Reduce the error rate. Provides a non-exploited source of documentation. Provide a new source of support tools for IDE’s. Pere Urb´n Bayes o Mining Software Repositories
  • 7. Introduction Data Mining Introduction And the results are The use of A vision over the present and the future Data mining Type of database analysis that attempts to discover useful patterns or relationships in a group of data. The analysis uses advanced statistical methods, such as cluster analysis, and sometimes employs artificial intelligence or neural network techniques. A major goal of data mining is to discover previously unknown relationships among the data, especially when the data come from different databases. Pere Urb´n Bayes o Mining Software Repositories
  • 8. Introduction Data Mining Introduction And the results are The use of A vision over the present and the future Methods Types of: Traditional Data Mining (K-Means, C4.5, Bayesian Networks). Relational Data Mining (ILP, Markov logic networks, Relational bayesian methods, Dependency Networks). Categories: Clusterers Classifiers Associative rules Network Models. Pere Urb´n Bayes o Mining Software Repositories
  • 9. Introduction Data Mining Introduction And the results are The use of A vision over the present and the future Data mining Type of database analysis that attempts to discover useful patterns or relationships in a group of data. The analysis uses advanced statistical methods, such as cluster analysis, and sometimes employs artificial intelligence or neural network techniques. A major goal of data mining is to discover previously unknown relationships among the data, especially when the data come from different databases. Pere Urb´n Bayes o Mining Software Repositories
  • 10. Introduction Data Mining Introduction And the results are The use of A vision over the present and the future Issue detection LOC DefectAppearence2Month RevisionsAuthor LineAddedIRLAdd ReportedI2Month Revision2Month LineAddedIRLDel Revision3Month Releases AlterType DefectAppearence3Month ReportedI1Month AgeMonths ReportedI3Month ReportedIssues RevisionAge Revision5Month ReportedI5Month DefectReleases DefectAppearence5Month Revision1Month DefectAppearance1Month Question: Has this file a non detected error. The exact number of errors can be predicted to. Pere Urb´n Bayes o Mining Software Repositories
  • 11. Introduction Data Mining Introduction And the results are The use of A vision over the present and the future Another types of objectives Predict bugs related to a software developer. Prediction of bugs in software components. This techniques could be used in different topics: Software understanding. Software evolution. Software visualization. Change propagation. Impact analysis. Software complexity. Fault prediction. Pere Urb´n Bayes o Mining Software Repositories
  • 12. Introduction Data Mining Error prediction And the results are Software A vision over the present and the future Error prediction Eclipse Project Firefox Project Correctly classified 94.65% 94.822% Statistics Kappa 0.893 0.8883 Precision 0.9465 0.9482 Recall 0.945 0.949 AUC ROC 0.9682 0.9808 Eclipse-Firefox Firefox-Eclipse Correctly classified 82.0065% 87.975% Statistics Kappa 0.5976 0.7595 Precision 0.818 0.894 Recall 0.82 0.88 AUC ROC 0.805 0.83 Pere Urb´n Bayes o Mining Software Repositories
  • 13. Introduction Data Mining Error prediction And the results are Software A vision over the present and the future The end App Pere Urb´n Bayes o Mining Software Repositories
  • 14. Introduction Data Mining Software libraries And the results are An envision A vision over the present and the future The Prototype Software being used: Programming: JAVA Database: MySQL and MonetDB. Data Mining: Weka 3.6 and Proximity 4.3 XML: Apache Xerces 2.9.1 SVN, CVS : svnkit 1.3.0, for CVS netbeans-cvs lib and a custom rcs file parser. Presentation: Prefuse Visualization Toolkit and Weka Drawing facilities. Pere Urb´n Bayes o Mining Software Repositories
  • 15. Introduction Data Mining Software libraries And the results are An envision A vision over the present and the future Could python give use the same? Machine Learning: Orange: With 1.0 this lib has many interesting and useful methods, Classification, Regression and Clustering. The most similar to Weka. PyML: Only has classifier facilities. Shogun: Only for Support Vector Machines. RPy: An interface to R. Databases: The most important relational databases are available via DB-API. ZODB: Zope Object Database. Metakit: An embedded database with a not defined paradigm. Pygr: Python graph database framework for bioinformatics. Pere Urb´n Bayes o Mining Software Repositories
  • 16. Introduction Data Mining Software libraries And the results are An envision A vision over the present and the future Could python give use the same? Presentation: Graph Drawing: NetworkX, with nice result. There are some other but they look incomplete. GUI: PyQT, wxWindows, pyGTK. It’s your taste XD!. SVN, CVS processing: SVN: pysvn - Python interface to Subversion. CVS: It seams nothing is available. GIT: PyGit - Pythonic git bindings targeted towards porcelains. XML Processing could be done using built-in support and with any SAX or DOM parser. Pere Urb´n Bayes o Mining Software Repositories
  • 17. Introduction Data Mining Software libraries And the results are An envision A vision over the present and the future The future Known issues: Data preprocessing performance. Database performance, is the relational model valid? Dynamic procedure addition. The Todo List: Develop new procedures over different related topics, like software visualization, change support, etc. Develop a more mature software. Python could help in some parts. This software must be easily extensible. Improve the hole process performance. Pere Urb´n Bayes o Mining Software Repositories
  • 18. Introduction Data Mining Software libraries And the results are An envision A vision over the present and the future The end Question? Pere Urb´n Bayes o Data Management Group Dept. Arquitectura de Computadors Universitat Polit`cnica de Catalunya e purbon@ac.upc.edu Pere Urb´n Bayes o Mining Software Repositories