1 / 13

A Framework for Quantitative Software Testing

A framework for quantitative software testing that uses recorded data for automatic knowledge discovery, helping to identify correctness, completeness, security, and quality of developed software.

serranod
Download Presentation

A Framework for Quantitative Software Testing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Framework for Quantitative Software Testing Vasile Rus and Sajjan Shiva Department of Computer Science The University of Memphis

  2. Outline The Main Idea Framework for Quantitative Software Testing Systems Testing Expert System (STES): Knowledge Repository (1) Information Extraction (2)

  3. Main Idea Use recorded data for automatic knowledge discovery Expert = Experience + Training/Intelligence Expert System = Recorded Data + Machine Intelligence STES = Systems Testing Expert Systems

  4. Challenges with Data Various formats used for storing information Structured input (tuples) needed for automated knowledge discovery

  5. Structured Data (DB) Semi-structured Documents Free-text (Free-structure) TABLES

  6. Architecture DATABASE Source Code XML- Documents Text Documents Software Testing is used to help identify correctness, complete- ness, security, and quality of developed software. <NAME> If() { //comments } else { //comments } <NAME> <COMPONENT> <COMPONENT> <DESCRIPTION> <DESCRIPTION> Testing includes executing a program to find errors. INFORMATION EXTRACTION REPORTS SUMMARIES N-Tuples Machine Learning (Naïve Bayes, Decision Trees) NEW KNOWLEDGE Architecture of Information Processing Framework for Systems Testing

  7. Applications Finding Duplicate/similar Bugs Cluster Defects into equivalence classes Modeling and Predicting Modules with Defects

  8. Duplicate Bugs (DUPS) Identification Before entering a bug report the tester must check whether the bug has already been reported Very time consuming

  9. Deep Information Retrieval Use the bug description field to help finding duplicate bugs Deep Natural Language Processing (NLP) techniques Use the bug description field to cluster bugs Deep NLP and clustering techniques Same release Same project, across releases Entire organization, across projects Very helpful to find equivalence classes of problems in software products

  10. Quick Analysis Less than 50% of reported bugs are duplicate bugs (according to Mozilla.org) A tool based on deep NLP could reduce the time spent on reporting/filing a new bug to at least half Basic Science Insights on bug typology Industry Benefits Great productivity gains

  11. Further Plans Modeling and Predicting modules with defects

  12. Framework for Quantitative Software Testing Advantages: Objective (as opposed to someone’s opinion/memory) Scalable Disadvantage Recording your daily operations comes with an overhead It does pay off! Alternative Strategy: mission driven

  13. Thank You

More Related