SlideShare uma empresa Scribd logo
1 de 13
Baixar para ler offline
My  Flings  with  
Data  Analysis
Venkatesh-­‐Prasad	
  Ranganath	
  
Kansas	
  State	
  University	
  
!
Dagstuhl	
  Software	
  Development	
  Analytics	
  Seminar	
  
June	
  25,	
  2014
The	
  described	
  efforts	
  were	
  carried	
  out	
  at	
  Microsoft	
  Research	
  and	
  Microsoft.
Observations
1. Involve  the  users  early  
2. Don’t  fear  the  unconventional  
3. Embrace  dynamic  artifacts  
• Logs,  core  dumps,  usage  profiles,  etc.    
4. Have  a  feedback  loop  involving  the  users  
5. Domain  knowledge  is  a  power  pellet  
6. Questions  and  answers  first,  methods  later  
7. Relevant  features  and  simple  methods  work  really  well  
8. Quick  trumps  slow  and  utility  trumps  quick  
9. Automate  (whenever  possible)  
10.Presentation  matters  
11.Models  are  good,  simple  explanations  are  better  
Win8
USB	
  3.0	
  	
  
Driver	
  Stack
XHCI
Driver1
Win7
USB	
  2.0	
  	
  
Driver	
  Stack
	
  Driver1
EHCI OHCI UHCI
Driver2
USB	
  2.0	
  
device
USB	
  2.0	
  
device
Is  USB  3.0/Win8  ≈ USB  2.0/Win7?
Collaborators:	
  Randy	
  Aull,	
  Pankaj	
  Gupta,	
  Jane	
  Lawrence,	
  Pradip	
  Vallathol,	
  &	
  Eliyas	
  Yakub
When  a  USB  2.0  device  is  plugged  into  a  USB  3.0  port  on  Win8,  
the  USB  3.0  stack  in  Win8  should  behave  as  the  USB  2.0  stack  
in  Win7  (along  both  software  and  hardware  interfaces).
One  could  ….
USB2	
  
Log
Pattern	
  Miner
USB2	
  Patterns
USB3	
  
Log
Pattern	
  Miner
USB3	
  Patterns
Structural	
  and	
  Temporal	
  	
  
Pattern	
  Diffing
USB2	
  
Patterns
USB3	
  
Patterns
DispatchIrp	
  	
  forward	
  alternates	
  with	
  IrpCompletion	
  &&	
  PreIoCompleteRequest	
  	
  	
  
when	
  	
  
IOCTLType=IRP_MJ_PNP(0x1B),IRP_MN_START_DEVICE(0x00),	
  irpID=SAME,	
  and	
  
IrpSubmitDetails.irp.ioStackLocation.control=SAME
IOCTLType=URB_FUNCTION_BULK_OR_INTERRUPT_TRA
NSFER(0x09)	
  
&&	
  IoCallDriverReturn	
  &&	
  IoCallDriverReturn.irql=2	
  
&&	
  IoCallDriverReturn.status=0xC000000E
Patterns-­‐based  Compatibility  Testing
Results
Device Id Detected Reported False +ve Unique
1 9844 478 465 10
2 2545 15 11 2
3 743 4 1 1
4 1372 2 2 0
5 26118 55 55 0
6 26126 0 0 0
7 2320 0 0 0
8 27804 2 1 1
9 34985 115 98 4
10 51556 59 56 3
11 695 0 0 0
12 1372 0 0 0
13 3315 24 23 1
14 9299 3 0 2
Test  Suite  Reduction
Experience-­‐based  Selection
Collaborators:	
  Naren	
  Datha,	
  Robbie	
  Harris,	
  Aravind	
  Namasivayam,	
  &	
  Pradip	
  Vallathol
 Patterns-­‐based  Test  Suite  Reduction
Cluster-­‐n-­‐Select
• 50%  reduction  in  test  suite  size  
• 75-­‐80%  bugs  uncovered  (v/s  human-­‐based  baseline)  
• Fully  automated  (except  for  threshold  setting)  
• Flying  without  safety  net
Results
Structural  &  Temporal  Patterns  (w/  Data  flow)
h=fopen	
  ....	
  fclose(h)
(h!=0	
  &&	
  h=fopen)	
  ....	
  fclose(h)
21	
  =	
  fopen(“passwd.txt”,	
  “r”)	
  ....	
  fclose(21)
fopen	
  ....	
  fclose
21=fopen	
  ....	
  fclose(21)
21=fopen(,	
  “r”)	
  ....	
  fclose(21)
Observations
1. Involve  the  users  early  
2. Don’t  fear  the  unconventional  
3. Embrace  dynamic  artifacts  
• Logs,  core  dumps,  usage  profiles,  etc.    
4. Have  a  feedback  loop  involving  the  users  
5. Domain  knowledge  is  a  power  pellet  
6. Questions  and  answers  first,  methods  later  
7. Relevant  features  and  simple  methods  work  really  well  
8. Quick  trumps  slow  and  utility  trumps  quick  
9. Automate  (whenever  possible)  
10.Presentation  matters  
11.Models  are  good,  simple  explanations  are  better  
Opportunities
• Combining  of  dynamic  and  static  artifacts/techniques  
• Time  to  move  beyond  repositories  
• Using  data  analysis  to  improve  techniques  
• Exploring/designing  language  for  
• Query  
• Visualization  
• Scaling  
• Distributed  Computing  
• GPUs
Questions

Mais conteúdo relacionado

Semelhante a My flings with data analysis

Protecting the Protector, Hardening Machine Learning Defenses Against Adversa...
Protecting the Protector, Hardening Machine Learning Defenses Against Adversa...Protecting the Protector, Hardening Machine Learning Defenses Against Adversa...
Protecting the Protector, Hardening Machine Learning Defenses Against Adversa...
Priyanka Aash
 
A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
Kevin Moran
 
Making Runtime Data Useful for Incident Diagnosis: An Experience Report
Making Runtime Data Useful for Incident Diagnosis: An Experience ReportMaking Runtime Data Useful for Incident Diagnosis: An Experience Report
Making Runtime Data Useful for Incident Diagnosis: An Experience Report
QAware GmbH
 
Effective Fault-Localization Techniques for Concurrent Software
Effective Fault-Localization Techniques for Concurrent SoftwareEffective Fault-Localization Techniques for Concurrent Software
Effective Fault-Localization Techniques for Concurrent Software
Sangmin Park
 
Building Your Application Security Data Hub - OWASP AppSecUSA
Building Your Application Security Data Hub - OWASP AppSecUSABuilding Your Application Security Data Hub - OWASP AppSecUSA
Building Your Application Security Data Hub - OWASP AppSecUSA
Denim Group
 
An Agile Approach to Machine Learning
An Agile Approach to Machine LearningAn Agile Approach to Machine Learning
An Agile Approach to Machine Learning
Randy Shoup
 

Semelhante a My flings with data analysis (20)

H2O World - Benchmarking Open Source ML Platforms - Szilard Pafka
H2O World - Benchmarking Open Source ML Platforms - Szilard PafkaH2O World - Benchmarking Open Source ML Platforms - Szilard Pafka
H2O World - Benchmarking Open Source ML Platforms - Szilard Pafka
 
Compatibility Testing using Patterns-based Trace Comparison
Compatibility Testing using Patterns-based Trace ComparisonCompatibility Testing using Patterns-based Trace Comparison
Compatibility Testing using Patterns-based Trace Comparison
 
Synergy of Human and Artificial Intelligence in Software Engineering
Synergy of Human and Artificial Intelligence in Software EngineeringSynergy of Human and Artificial Intelligence in Software Engineering
Synergy of Human and Artificial Intelligence in Software Engineering
 
It Does What You Say, Not What You Mean: Lessons From A Decade of Program Repair
It Does What You Say, Not What You Mean: Lessons From A Decade of Program RepairIt Does What You Say, Not What You Mean: Lessons From A Decade of Program Repair
It Does What You Say, Not What You Mean: Lessons From A Decade of Program Repair
 
Protecting the Protector, Hardening Machine Learning Defenses Against Adversa...
Protecting the Protector, Hardening Machine Learning Defenses Against Adversa...Protecting the Protector, Hardening Machine Learning Defenses Against Adversa...
Protecting the Protector, Hardening Machine Learning Defenses Against Adversa...
 
A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
 
Monitor your CentOS stack with Prometheus
Monitor your CentOS stack with PrometheusMonitor your CentOS stack with Prometheus
Monitor your CentOS stack with Prometheus
 
A Connectionist Approach to Dynamic Resource Management for Virtualised Netwo...
A Connectionist Approach to Dynamic Resource Management for Virtualised Netwo...A Connectionist Approach to Dynamic Resource Management for Virtualised Netwo...
A Connectionist Approach to Dynamic Resource Management for Virtualised Netwo...
 
Provenance for Data Munging Environments
Provenance for Data Munging EnvironmentsProvenance for Data Munging Environments
Provenance for Data Munging Environments
 
SBQS 2013 Keynote: Cooperative Testing and Analysis
SBQS 2013 Keynote: Cooperative Testing and AnalysisSBQS 2013 Keynote: Cooperative Testing and Analysis
SBQS 2013 Keynote: Cooperative Testing and Analysis
 
Offensive (Web, etc) Testing Framework: My gift for the community - BerlinSid...
Offensive (Web, etc) Testing Framework: My gift for the community - BerlinSid...Offensive (Web, etc) Testing Framework: My gift for the community - BerlinSid...
Offensive (Web, etc) Testing Framework: My gift for the community - BerlinSid...
 
Machine Learning Crash Course by Sebastian Raschka
Machine Learning Crash Course by Sebastian RaschkaMachine Learning Crash Course by Sebastian Raschka
Machine Learning Crash Course by Sebastian Raschka
 
Prometheus for the traditional datacenter
Prometheus for the traditional datacenterPrometheus for the traditional datacenter
Prometheus for the traditional datacenter
 
Software Analytics: Towards Software Mining that Matters (2014)
Software Analytics:Towards Software Mining that Matters (2014)Software Analytics:Towards Software Mining that Matters (2014)
Software Analytics: Towards Software Mining that Matters (2014)
 
Making Runtime Data Useful for Incident Diagnosis: An Experience Report
Making Runtime Data Useful for Incident Diagnosis: An Experience ReportMaking Runtime Data Useful for Incident Diagnosis: An Experience Report
Making Runtime Data Useful for Incident Diagnosis: An Experience Report
 
"Data Provenance: Principles and Why it matters for BioMedical Applications"
"Data Provenance: Principles and Why it matters for BioMedical Applications""Data Provenance: Principles and Why it matters for BioMedical Applications"
"Data Provenance: Principles and Why it matters for BioMedical Applications"
 
WTF is Penetration Testing v.2
WTF is Penetration Testing v.2WTF is Penetration Testing v.2
WTF is Penetration Testing v.2
 
Effective Fault-Localization Techniques for Concurrent Software
Effective Fault-Localization Techniques for Concurrent SoftwareEffective Fault-Localization Techniques for Concurrent Software
Effective Fault-Localization Techniques for Concurrent Software
 
Building Your Application Security Data Hub - OWASP AppSecUSA
Building Your Application Security Data Hub - OWASP AppSecUSABuilding Your Application Security Data Hub - OWASP AppSecUSA
Building Your Application Security Data Hub - OWASP AppSecUSA
 
An Agile Approach to Machine Learning
An Agile Approach to Machine LearningAn Agile Approach to Machine Learning
An Agile Approach to Machine Learning
 

Mais de Venkatesh Prasad Ranganath

Mais de Venkatesh Prasad Ranganath (14)

SeMA: A Design Methodology for Building Secure Android Apps
SeMA: A Design Methodology for Building Secure Android AppsSeMA: A Design Methodology for Building Secure Android Apps
SeMA: A Design Methodology for Building Secure Android Apps
 
Are free Android app security analysis tools effective in detecting known vul...
Are free Android app security analysis tools effective in detecting known vul...Are free Android app security analysis tools effective in detecting known vul...
Are free Android app security analysis tools effective in detecting known vul...
 
Benchpress: Analyzing Android App Vulnerability Benchmark Suites
Benchpress:  Analyzing Android App Vulnerability Benchmark SuitesBenchpress:  Analyzing Android App Vulnerability Benchmark Suites
Benchpress: Analyzing Android App Vulnerability Benchmark Suites
 
Why do Users kill HPC Jobs?
Why do Users kill HPC Jobs?Why do Users kill HPC Jobs?
Why do Users kill HPC Jobs?
 
Behavior Driven Development [10] - Software Testing Techniques (CIS640)
Behavior Driven Development [10] - Software Testing Techniques (CIS640)Behavior Driven Development [10] - Software Testing Techniques (CIS640)
Behavior Driven Development [10] - Software Testing Techniques (CIS640)
 
Code Coverage [9] - Software Testing Techniques (CIS640)
Code Coverage [9] - Software Testing Techniques (CIS640)Code Coverage [9] - Software Testing Techniques (CIS640)
Code Coverage [9] - Software Testing Techniques (CIS640)
 
Equivalence Class Testing [8] - Software Testing Techniques (CIS640)
Equivalence Class Testing [8] - Software Testing Techniques (CIS640)Equivalence Class Testing [8] - Software Testing Techniques (CIS640)
Equivalence Class Testing [8] - Software Testing Techniques (CIS640)
 
Boundary Value Testing [7] - Software Testing Techniques (CIS640)
Boundary Value Testing [7] - Software Testing Techniques (CIS640)Boundary Value Testing [7] - Software Testing Techniques (CIS640)
Boundary Value Testing [7] - Software Testing Techniques (CIS640)
 
Property Based Testing [5] - Software Testing Techniques (CIS640)
Property Based Testing [5] - Software Testing Techniques (CIS640)Property Based Testing [5] - Software Testing Techniques (CIS640)
Property Based Testing [5] - Software Testing Techniques (CIS640)
 
Intro to Python3 [2] - Software Testing Techniques (CIS640)
Intro to Python3 [2] - Software Testing Techniques (CIS640)Intro to Python3 [2] - Software Testing Techniques (CIS640)
Intro to Python3 [2] - Software Testing Techniques (CIS640)
 
Unit testing [4] - Software Testing Techniques (CIS640)
Unit testing [4] - Software Testing Techniques (CIS640)Unit testing [4] - Software Testing Techniques (CIS640)
Unit testing [4] - Software Testing Techniques (CIS640)
 
Testing concepts [3] - Software Testing Techniques (CIS640)
Testing concepts [3] - Software Testing Techniques (CIS640)Testing concepts [3] - Software Testing Techniques (CIS640)
Testing concepts [3] - Software Testing Techniques (CIS640)
 
Introduction [1] - Software Testing Techniques (CIS640)
Introduction [1] - Software Testing Techniques (CIS640)Introduction [1] - Software Testing Techniques (CIS640)
Introduction [1] - Software Testing Techniques (CIS640)
 
Pattern-based Features
Pattern-based FeaturesPattern-based Features
Pattern-based Features
 

Último

Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
amitlee9823
 
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
amitlee9823
 
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
amitlee9823
 
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
amitlee9823
 
Mg Road Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Banga...
Mg Road Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Banga...Mg Road Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Banga...
Mg Road Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Banga...
amitlee9823
 
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts ServiceCall Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Último (20)

Call Girls in Sarai Kale Khan Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escorts S...
Call Girls in Sarai Kale Khan Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escorts S...Call Girls in Sarai Kale Khan Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escorts S...
Call Girls in Sarai Kale Khan Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escorts S...
 
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
 
Accredited-Transport-Cooperatives-Jan-2021-Web.pdf
Accredited-Transport-Cooperatives-Jan-2021-Web.pdfAccredited-Transport-Cooperatives-Jan-2021-Web.pdf
Accredited-Transport-Cooperatives-Jan-2021-Web.pdf
 
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
 
Generative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and MilvusGenerative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and Milvus
 
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
 
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 nightCheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
 
Discover Why Less is More in B2B Research
Discover Why Less is More in B2B ResearchDiscover Why Less is More in B2B Research
Discover Why Less is More in B2B Research
 
Week-01-2.ppt BBB human Computer interaction
Week-01-2.ppt BBB human Computer interactionWeek-01-2.ppt BBB human Computer interaction
Week-01-2.ppt BBB human Computer interaction
 
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Ravak dropshipping via API with DroFx.pptx
Ravak dropshipping via API with DroFx.pptxRavak dropshipping via API with DroFx.pptx
Ravak dropshipping via API with DroFx.pptx
 
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
 
Invezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signalsInvezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signals
 
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
 
CebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptxCebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptx
 
VidaXL dropshipping via API with DroFx.pptx
VidaXL dropshipping via API with DroFx.pptxVidaXL dropshipping via API with DroFx.pptx
VidaXL dropshipping via API with DroFx.pptx
 
Mg Road Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Banga...
Mg Road Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Banga...Mg Road Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Banga...
Mg Road Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Banga...
 
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts ServiceCall Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
 
Capstone Project on IBM Data Analytics Program
Capstone Project on IBM Data Analytics ProgramCapstone Project on IBM Data Analytics Program
Capstone Project on IBM Data Analytics Program
 

My flings with data analysis

  • 1. My  Flings  with   Data  Analysis Venkatesh-­‐Prasad  Ranganath   Kansas  State  University   ! Dagstuhl  Software  Development  Analytics  Seminar   June  25,  2014 The  described  efforts  were  carried  out  at  Microsoft  Research  and  Microsoft.
  • 2. Observations 1. Involve  the  users  early   2. Don’t  fear  the  unconventional   3. Embrace  dynamic  artifacts   • Logs,  core  dumps,  usage  profiles,  etc.     4. Have  a  feedback  loop  involving  the  users   5. Domain  knowledge  is  a  power  pellet   6. Questions  and  answers  first,  methods  later   7. Relevant  features  and  simple  methods  work  really  well   8. Quick  trumps  slow  and  utility  trumps  quick   9. Automate  (whenever  possible)   10.Presentation  matters   11.Models  are  good,  simple  explanations  are  better  
  • 3. Win8 USB  3.0     Driver  Stack XHCI Driver1 Win7 USB  2.0     Driver  Stack  Driver1 EHCI OHCI UHCI Driver2 USB  2.0   device USB  2.0   device Is  USB  3.0/Win8  ≈ USB  2.0/Win7? Collaborators:  Randy  Aull,  Pankaj  Gupta,  Jane  Lawrence,  Pradip  Vallathol,  &  Eliyas  Yakub When  a  USB  2.0  device  is  plugged  into  a  USB  3.0  port  on  Win8,   the  USB  3.0  stack  in  Win8  should  behave  as  the  USB  2.0  stack   in  Win7  (along  both  software  and  hardware  interfaces).
  • 5. USB2   Log Pattern  Miner USB2  Patterns USB3   Log Pattern  Miner USB3  Patterns Structural  and  Temporal     Pattern  Diffing USB2   Patterns USB3   Patterns DispatchIrp    forward  alternates  with  IrpCompletion  &&  PreIoCompleteRequest       when     IOCTLType=IRP_MJ_PNP(0x1B),IRP_MN_START_DEVICE(0x00),  irpID=SAME,  and   IrpSubmitDetails.irp.ioStackLocation.control=SAME IOCTLType=URB_FUNCTION_BULK_OR_INTERRUPT_TRA NSFER(0x09)   &&  IoCallDriverReturn  &&  IoCallDriverReturn.irql=2   &&  IoCallDriverReturn.status=0xC000000E Patterns-­‐based  Compatibility  Testing
  • 6. Results Device Id Detected Reported False +ve Unique 1 9844 478 465 10 2 2545 15 11 2 3 743 4 1 1 4 1372 2 2 0 5 26118 55 55 0 6 26126 0 0 0 7 2320 0 0 0 8 27804 2 1 1 9 34985 115 98 4 10 51556 59 56 3 11 695 0 0 0 12 1372 0 0 0 13 3315 24 23 1 14 9299 3 0 2
  • 7. Test  Suite  Reduction Experience-­‐based  Selection Collaborators:  Naren  Datha,  Robbie  Harris,  Aravind  Namasivayam,  &  Pradip  Vallathol
  • 8.  Patterns-­‐based  Test  Suite  Reduction Cluster-­‐n-­‐Select
  • 9. • 50%  reduction  in  test  suite  size   • 75-­‐80%  bugs  uncovered  (v/s  human-­‐based  baseline)   • Fully  automated  (except  for  threshold  setting)   • Flying  without  safety  net Results
  • 10. Structural  &  Temporal  Patterns  (w/  Data  flow) h=fopen  ....  fclose(h) (h!=0  &&  h=fopen)  ....  fclose(h) 21  =  fopen(“passwd.txt”,  “r”)  ....  fclose(21) fopen  ....  fclose 21=fopen  ....  fclose(21) 21=fopen(,  “r”)  ....  fclose(21)
  • 11. Observations 1. Involve  the  users  early   2. Don’t  fear  the  unconventional   3. Embrace  dynamic  artifacts   • Logs,  core  dumps,  usage  profiles,  etc.     4. Have  a  feedback  loop  involving  the  users   5. Domain  knowledge  is  a  power  pellet   6. Questions  and  answers  first,  methods  later   7. Relevant  features  and  simple  methods  work  really  well   8. Quick  trumps  slow  and  utility  trumps  quick   9. Automate  (whenever  possible)   10.Presentation  matters   11.Models  are  good,  simple  explanations  are  better  
  • 12. Opportunities • Combining  of  dynamic  and  static  artifacts/techniques   • Time  to  move  beyond  repositories   • Using  data  analysis  to  improve  techniques   • Exploring/designing  language  for   • Query   • Visualization   • Scaling   • Distributed  Computing   • GPUs