SlideShare a Scribd company logo
AN IDE-BASED CONTEXT-AWARE
META SEARCH ENGINE
Mohammad Masudur Rahman, Shamima Yeasmin, and
Chanchal K. Roy
Department of Computer Science
University of Saskatchewan
20th Working Conference on Reverse Engineering
(WCRE 2013), Koblenz, Germany
SOFTWARE MAINTENANCE, BUGS &
EXCEPTIONS
EXCEPTION HANDLING: IDE SUPPORT
1
2
EXCEPTION HANDLING: DEVELOPERS
(NOVICE & EXPERT)
EXCEPTION HANDLING: WEB SEARCH
IDE-BASED WEB SEARCH
 About 80% effort on Software Maintenance
 Bug fixation– error and exception handling
 Developers spend about 19% of time in web search
 Traditional web search
 Does not consider context of search (No ties between
IDE and web browser)
 Context-switching and distracting
 Time consuming
 Often not much productive
o IDE-Based context-aware search addresses
those issues.
EXISTING RELATED WORKS
 Cordeiro et al. (RSSE’ 2012)– Context-based
recommendation system
 Ponzanelli et al. (ICSE 2013)– Seahawk
 Poshyvanyk et al. (IWICSS 2007)– COTS (Google
Desktop) into Eclipse IDE
 Brandt et al. (SIGCHI 2010)– Integrating Google
web search into IDE
MOTIVATION EXPERIMENTS
Search
Query
Common
Results
Google Only Yahoo Only Bing
Only
Content Only 32 09 16 18
Content and
Context
47 09 11 10
 83 Exceptions
 Solutions found for at most 58 exceptions.
THE KEY IDEA !! META SEARCH ENGINE
PROPOSED IDE-BASED META SEARCH MODEL
PROPOSED IDE-BASED META SEARCH
MODEL
 Distinguished Features
 Meta search engine– captures data from multiple
search engines
 More precise context– both stack trace and associated
code as exception context
 Popularity and confidence of result links
 Complete web browsing experience within the IDE
PROPOSED METRICS & SCORES
 Title to title Matching Score (Stitle)– Cosine similarity
measurement
 Stack trace Matching Score (Sst)– SimHash based
similarity measurement
 Code context Matching Score (Scc)– SimHash
based similarity measurement
 StackOverflow Vote Score (Sso)– Summation of
differences between up and down votes for all
posts in the link
PROPOSED METRICS & SCORES
 Top Ten Score (Stt)– Position of result link in the top
10 of each provider.
 Page Rank Score (Spr)-- Relative popularity among
all links in the corpus using Page Rank algorithm.
 Site Traffic Rank Score (Sstr)-- Alexa and Compete
Rank of each link
 Search Engine weight (Ssew)---Relative reliability or
importance of each search engine. Experiments
with 75 programming queries against the search
engines.
METRICS NORMALIZATION
 Normalization applied to -- Sst , Scc , Sso , Stt , Spr
and Sstr
 Avoiding bias to any particular aspect
)min()max(
)min(
,
ii
ii
normalizedi
SS
SS
S



FINAL SCORE COMPONENTS
 Content Relevance
Scnt=Stitle
 Context Relevance
Scxt=(Sst + Scc)/2
 Link Popularity
Spop=(Sso +Spr + Sstr)/3
 Search Engine Confidence
Sser=(Ssew x Stt)
EXPERIMENT OVERVIEW
 25 Exceptions collected from Eclipse IDE
workspaces.
 Related to Eclipse plug-in framework and Java
Application Development
 Solutions chosen from exhaustive web search with
cross validations by peers
 Recommended results manually validated.
EXPERIMENTAL RESULTS
Score Top 10 Rank10 Top 20 Rank20
Scnt 10 3.60 16 8.63
Scnt, Scxt 11 3.00 16 7.43
Scnt, Spop 13 4.69 18 8.11
Scnt, Sser 23 4.39 23 4.39
Scnt, Scxt, Spop 13 4.07 18 7.61
Scnt, Scxt, Sser 24 4.45 24 4.45
Scnt, Scxt, Sser, Spop 23 4.26 24 4.54
Top10: No. of test cases solved when the top 10 results
considered
Rank10: Average rank of solutions when the top 10 results considered
USER STUDY
 Five interesting exception test cases.
 Five CS graduates research students as
participants.
 Top 10 results from SurfClipse randomly presented
to the participants.
 To avoid the bias of choosing top rated solutions.
 64.28% agreement found.
USER STUDY RESULTS
Question ID ANSR ANSM Agreement
Q1 2.8 2.0 71.43%
Q2 4.6 2.8 60.87%
Q3 4.6 2.4 52.17%
Q4 4.2 3.0 71.43%
Q5 5.8 3.8 65.52%
Overall 4.4 2.8 64.28%
ANSR: Avg. no. of solutions recommended by the participants.
ANSM: Avg. no. of solution matched with that by our approach.
Agreement: % of agreement between solutions.
THREATS TO VALIDITY
 Search is not real time yet.
 Different aspects need different weights.
LATEST UPDATES
 A Distributed model for IDE-Based web search–
client-server architecture, remotely hosted web
service
 Parallel processing in computation
 Two modes of operations– proactive and interactive
 Granular refinement of metrics and assigning
relative weights (i.e., importance)
 Complete IDE-based web search solution.
CONCLUSION & FUTURE WORKS
 A novel IDE-Based search with meta search
capabilities
 Exploits existing search service providers
 Considers content, context, popularity and
search engine confidence of a result.
 Recommends correct solution for 24(96%) out of 25
test cases.
 64.28% agreement in user study.
 Needs more extended experiments and user study.
 Metrics need to be fine-tuned and more granulated.
THANK YOU !!!

More Related Content

Viewers also liked

Matematika itu mudah dan menyenangkan
Matematika itu mudah dan menyenangkanMatematika itu mudah dan menyenangkan
Matematika itu mudah dan menyenangkan
Mela Azizah
 
Monitoreo sistemático de opinión pública - Total país
Monitoreo sistemático de opinión pública - Total país Monitoreo sistemático de opinión pública - Total país
Monitoreo sistemático de opinión pública - Total país
Eduardo Nelson German
 
Feliz Ano Novo
Feliz Ano NovoFeliz Ano Novo
Feliz Ano Novo
Thayse Guimarães
 
14. Salmo 14 Sión cambia tu corazón
14.  Salmo 14 Sión cambia tu corazón14.  Salmo 14 Sión cambia tu corazón
14. Salmo 14 Sión cambia tu corazón
Comparte la Biblia
 
MOUNTAIN HORSE TABLA MEDIDAS BOTAS 2017
MOUNTAIN HORSE TABLA MEDIDAS BOTAS 2017MOUNTAIN HORSE TABLA MEDIDAS BOTAS 2017
MOUNTAIN HORSE TABLA MEDIDAS BOTAS 2017
RIDER COLLECTION
 
La devaluación pegó fuerte en el consumo, pero podría ser peor
La devaluación pegó fuerte en el consumo, pero podría ser peorLa devaluación pegó fuerte en el consumo, pero podría ser peor
La devaluación pegó fuerte en el consumo, pero podría ser peor
Eduardo Nelson German
 
LeMIeux
LeMIeuxLeMIeux
Examen informática
Examen informáticaExamen informática
Examen informática
Niieves_07
 
Ejercicio exel
Ejercicio exel Ejercicio exel
Ejercicio exel
Niieves_07
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
yahooou
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
yahooou
 
J'son & Partners Clouds Definitions
J'son & Partners Clouds DefinitionsJ'son & Partners Clouds Definitions
J'son & Partners Clouds Definitions
Сергей Золкин
 
15. Salmo 15 Requisitos para ser elegido (Serie 2015)
15.  Salmo 15 Requisitos para ser elegido (Serie 2015)15.  Salmo 15 Requisitos para ser elegido (Serie 2015)
15. Salmo 15 Requisitos para ser elegido (Serie 2015)
Comparte la Biblia
 
Encuesta. Defina con una palabra a Cristina Kirchner
Encuesta. Defina con una palabra a Cristina KirchnerEncuesta. Defina con una palabra a Cristina Kirchner
Encuesta. Defina con una palabra a Cristina Kirchner
Eduardo Nelson German
 
18. salmo 18 la convicción de salvación
18.  salmo 18 la convicción de salvación18.  salmo 18 la convicción de salvación
18. salmo 18 la convicción de salvación
Comparte la Biblia
 
Module 1 introduction and objectives presentation
Module 1 introduction and objectives presentationModule 1 introduction and objectives presentation
Module 1 introduction and objectives presentation
IRC
 
Bringing New Experience with Openstack and Fuel (Ihor Dvoretskyi, Oleksandr M...
Bringing New Experience with Openstack and Fuel (Ihor Dvoretskyi, Oleksandr M...Bringing New Experience with Openstack and Fuel (Ihor Dvoretskyi, Oleksandr M...
Bringing New Experience with Openstack and Fuel (Ihor Dvoretskyi, Oleksandr M...
IT Arena
 
ManpraX Hiring principles
ManpraX Hiring principlesManpraX Hiring principles
ManpraX Hiring principles
Prateek Bhargava
 
Project Management !!!
Project Management !!! Project Management !!!
Project Management !!!
Prateek Bhargava
 
Customer Relationship Management !!! CRM
Customer Relationship Management !!! CRMCustomer Relationship Management !!! CRM
Customer Relationship Management !!! CRM
Prateek Bhargava
 

Viewers also liked (20)

Matematika itu mudah dan menyenangkan
Matematika itu mudah dan menyenangkanMatematika itu mudah dan menyenangkan
Matematika itu mudah dan menyenangkan
 
Monitoreo sistemático de opinión pública - Total país
Monitoreo sistemático de opinión pública - Total país Monitoreo sistemático de opinión pública - Total país
Monitoreo sistemático de opinión pública - Total país
 
Feliz Ano Novo
Feliz Ano NovoFeliz Ano Novo
Feliz Ano Novo
 
14. Salmo 14 Sión cambia tu corazón
14.  Salmo 14 Sión cambia tu corazón14.  Salmo 14 Sión cambia tu corazón
14. Salmo 14 Sión cambia tu corazón
 
MOUNTAIN HORSE TABLA MEDIDAS BOTAS 2017
MOUNTAIN HORSE TABLA MEDIDAS BOTAS 2017MOUNTAIN HORSE TABLA MEDIDAS BOTAS 2017
MOUNTAIN HORSE TABLA MEDIDAS BOTAS 2017
 
La devaluación pegó fuerte en el consumo, pero podría ser peor
La devaluación pegó fuerte en el consumo, pero podría ser peorLa devaluación pegó fuerte en el consumo, pero podría ser peor
La devaluación pegó fuerte en el consumo, pero podría ser peor
 
LeMIeux
LeMIeuxLeMIeux
LeMIeux
 
Examen informática
Examen informáticaExamen informática
Examen informática
 
Ejercicio exel
Ejercicio exel Ejercicio exel
Ejercicio exel
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
 
J'son & Partners Clouds Definitions
J'son & Partners Clouds DefinitionsJ'son & Partners Clouds Definitions
J'son & Partners Clouds Definitions
 
15. Salmo 15 Requisitos para ser elegido (Serie 2015)
15.  Salmo 15 Requisitos para ser elegido (Serie 2015)15.  Salmo 15 Requisitos para ser elegido (Serie 2015)
15. Salmo 15 Requisitos para ser elegido (Serie 2015)
 
Encuesta. Defina con una palabra a Cristina Kirchner
Encuesta. Defina con una palabra a Cristina KirchnerEncuesta. Defina con una palabra a Cristina Kirchner
Encuesta. Defina con una palabra a Cristina Kirchner
 
18. salmo 18 la convicción de salvación
18.  salmo 18 la convicción de salvación18.  salmo 18 la convicción de salvación
18. salmo 18 la convicción de salvación
 
Module 1 introduction and objectives presentation
Module 1 introduction and objectives presentationModule 1 introduction and objectives presentation
Module 1 introduction and objectives presentation
 
Bringing New Experience with Openstack and Fuel (Ihor Dvoretskyi, Oleksandr M...
Bringing New Experience with Openstack and Fuel (Ihor Dvoretskyi, Oleksandr M...Bringing New Experience with Openstack and Fuel (Ihor Dvoretskyi, Oleksandr M...
Bringing New Experience with Openstack and Fuel (Ihor Dvoretskyi, Oleksandr M...
 
ManpraX Hiring principles
ManpraX Hiring principlesManpraX Hiring principles
ManpraX Hiring principles
 
Project Management !!!
Project Management !!! Project Management !!!
Project Management !!!
 
Customer Relationship Management !!! CRM
Customer Relationship Management !!! CRMCustomer Relationship Management !!! CRM
Customer Relationship Management !!! CRM
 

Similar to SurfClipse-- An IDE based context-aware Meta Search Engine (ERA Track)

SurfClipse-- An IDE based context-aware Meta Search Engine
SurfClipse-- An IDE based context-aware Meta Search EngineSurfClipse-- An IDE based context-aware Meta Search Engine
SurfClipse-- An IDE based context-aware Meta Search Engine
Masud Rahman
 
R Tool for Visual Studio และการทำงานร่วมกันเป็นทีม โดย เฉลิมวงศ์ วิจิตรปิยะกุ...
R Tool for Visual Studio และการทำงานร่วมกันเป็นทีม โดย เฉลิมวงศ์ วิจิตรปิยะกุ...R Tool for Visual Studio และการทำงานร่วมกันเป็นทีม โดย เฉลิมวงศ์ วิจิตรปิยะกุ...
R Tool for Visual Studio และการทำงานร่วมกันเป็นทีม โดย เฉลิมวงศ์ วิจิตรปิยะกุ...
BAINIDA
 
Overview of OSLC - INCOSE IW 2018 MBSE Workshop
Overview of OSLC - INCOSE IW 2018 MBSE Workshop Overview of OSLC - INCOSE IW 2018 MBSE Workshop
Overview of OSLC - INCOSE IW 2018 MBSE Workshop
Axel Reichwein
 
AI in SE: A 25-year Journey
AI in SE: A 25-year JourneyAI in SE: A 25-year Journey
AI in SE: A 25-year Journey
Lionel Briand
 
CORRECT-ToolDemo-ASE2016
CORRECT-ToolDemo-ASE2016CORRECT-ToolDemo-ASE2016
CORRECT-ToolDemo-ASE2016
Masud Rahman
 
Clipper: A Low-Latency Online Prediction Serving System: Spark Summit East ta...
Clipper: A Low-Latency Online Prediction Serving System: Spark Summit East ta...Clipper: A Low-Latency Online Prediction Serving System: Spark Summit East ta...
Clipper: A Low-Latency Online Prediction Serving System: Spark Summit East ta...
Spark Summit
 
From Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems ArchitecturesFrom Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems Architectures
Obeo
 
B2 2006 sizing_benchmarking
B2 2006 sizing_benchmarkingB2 2006 sizing_benchmarking
B2 2006 sizing_benchmarking
Steve Feldman
 
B2 2006 sizing_benchmarking (1)
B2 2006 sizing_benchmarking (1)B2 2006 sizing_benchmarking (1)
B2 2006 sizing_benchmarking (1)
Steve Feldman
 
Question Answering System using machine learning approach
Question Answering System using machine learning approachQuestion Answering System using machine learning approach
Question Answering System using machine learning approach
Garima Nanda
 
Web-Based System for Software Requirements Quality Analysis Using Case-Based ...
Web-Based System for Software Requirements Quality Analysis Using Case-Based ...Web-Based System for Software Requirements Quality Analysis Using Case-Based ...
Web-Based System for Software Requirements Quality Analysis Using Case-Based ...
IOSR Journals
 
Prov4J: A Semantic Web Framework for Generic Provenance Management
Prov4J: A Semantic Web Framework for Generic Provenance Management Prov4J: A Semantic Web Framework for Generic Provenance Management
Prov4J: A Semantic Web Framework for Generic Provenance Management
Andre Freitas
 
Final Presentation V3
Final Presentation V3Final Presentation V3
Final Presentation V3
weichen
 
When Recommenders Met Big Data: an Architectural Proposal and Evaluation [CER...
When Recommenders Met Big Data: an Architectural Proposal and Evaluation [CER...When Recommenders Met Big Data: an Architectural Proposal and Evaluation [CER...
When Recommenders Met Big Data: an Architectural Proposal and Evaluation [CER...
Daniel Valcarce
 
Process Aspects and Social Dynamics of Contemporary Code Review: Insights fro...
Process Aspects and Social Dynamics of Contemporary Code Review: Insights fro...Process Aspects and Social Dynamics of Contemporary Code Review: Insights fro...
Process Aspects and Social Dynamics of Contemporary Code Review: Insights fro...
JeffCarver32
 
Intelligent Software Engineering: Synergy between AI and Software Engineering...
Intelligent Software Engineering: Synergy between AI and Software Engineering...Intelligent Software Engineering: Synergy between AI and Software Engineering...
Intelligent Software Engineering: Synergy between AI and Software Engineering...
Tao Xie
 
towards a model-based framework for development of engineering1 (1)
towards a model-based framework for development of engineering1 (1)towards a model-based framework for development of engineering1 (1)
towards a model-based framework for development of engineering1 (1)
Jinzhi Lu
 
50120130406017
5012013040601750120130406017
50120130406017
IAEME Publication
 
Saving resources with simulation webinar 092011
Saving resources with simulation webinar 092011Saving resources with simulation webinar 092011
Saving resources with simulation webinar 092011
Scott Althouse
 
Exploiting Context in Dealing with Programming Errors and Exceptions
Exploiting Context in Dealing with Programming Errors and ExceptionsExploiting Context in Dealing with Programming Errors and Exceptions
Exploiting Context in Dealing with Programming Errors and Exceptions
Masud Rahman
 

Similar to SurfClipse-- An IDE based context-aware Meta Search Engine (ERA Track) (20)

SurfClipse-- An IDE based context-aware Meta Search Engine
SurfClipse-- An IDE based context-aware Meta Search EngineSurfClipse-- An IDE based context-aware Meta Search Engine
SurfClipse-- An IDE based context-aware Meta Search Engine
 
R Tool for Visual Studio และการทำงานร่วมกันเป็นทีม โดย เฉลิมวงศ์ วิจิตรปิยะกุ...
R Tool for Visual Studio และการทำงานร่วมกันเป็นทีม โดย เฉลิมวงศ์ วิจิตรปิยะกุ...R Tool for Visual Studio และการทำงานร่วมกันเป็นทีม โดย เฉลิมวงศ์ วิจิตรปิยะกุ...
R Tool for Visual Studio และการทำงานร่วมกันเป็นทีม โดย เฉลิมวงศ์ วิจิตรปิยะกุ...
 
Overview of OSLC - INCOSE IW 2018 MBSE Workshop
Overview of OSLC - INCOSE IW 2018 MBSE Workshop Overview of OSLC - INCOSE IW 2018 MBSE Workshop
Overview of OSLC - INCOSE IW 2018 MBSE Workshop
 
AI in SE: A 25-year Journey
AI in SE: A 25-year JourneyAI in SE: A 25-year Journey
AI in SE: A 25-year Journey
 
CORRECT-ToolDemo-ASE2016
CORRECT-ToolDemo-ASE2016CORRECT-ToolDemo-ASE2016
CORRECT-ToolDemo-ASE2016
 
Clipper: A Low-Latency Online Prediction Serving System: Spark Summit East ta...
Clipper: A Low-Latency Online Prediction Serving System: Spark Summit East ta...Clipper: A Low-Latency Online Prediction Serving System: Spark Summit East ta...
Clipper: A Low-Latency Online Prediction Serving System: Spark Summit East ta...
 
From Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems ArchitecturesFrom Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems Architectures
 
B2 2006 sizing_benchmarking
B2 2006 sizing_benchmarkingB2 2006 sizing_benchmarking
B2 2006 sizing_benchmarking
 
B2 2006 sizing_benchmarking (1)
B2 2006 sizing_benchmarking (1)B2 2006 sizing_benchmarking (1)
B2 2006 sizing_benchmarking (1)
 
Question Answering System using machine learning approach
Question Answering System using machine learning approachQuestion Answering System using machine learning approach
Question Answering System using machine learning approach
 
Web-Based System for Software Requirements Quality Analysis Using Case-Based ...
Web-Based System for Software Requirements Quality Analysis Using Case-Based ...Web-Based System for Software Requirements Quality Analysis Using Case-Based ...
Web-Based System for Software Requirements Quality Analysis Using Case-Based ...
 
Prov4J: A Semantic Web Framework for Generic Provenance Management
Prov4J: A Semantic Web Framework for Generic Provenance Management Prov4J: A Semantic Web Framework for Generic Provenance Management
Prov4J: A Semantic Web Framework for Generic Provenance Management
 
Final Presentation V3
Final Presentation V3Final Presentation V3
Final Presentation V3
 
When Recommenders Met Big Data: an Architectural Proposal and Evaluation [CER...
When Recommenders Met Big Data: an Architectural Proposal and Evaluation [CER...When Recommenders Met Big Data: an Architectural Proposal and Evaluation [CER...
When Recommenders Met Big Data: an Architectural Proposal and Evaluation [CER...
 
Process Aspects and Social Dynamics of Contemporary Code Review: Insights fro...
Process Aspects and Social Dynamics of Contemporary Code Review: Insights fro...Process Aspects and Social Dynamics of Contemporary Code Review: Insights fro...
Process Aspects and Social Dynamics of Contemporary Code Review: Insights fro...
 
Intelligent Software Engineering: Synergy between AI and Software Engineering...
Intelligent Software Engineering: Synergy between AI and Software Engineering...Intelligent Software Engineering: Synergy between AI and Software Engineering...
Intelligent Software Engineering: Synergy between AI and Software Engineering...
 
towards a model-based framework for development of engineering1 (1)
towards a model-based framework for development of engineering1 (1)towards a model-based framework for development of engineering1 (1)
towards a model-based framework for development of engineering1 (1)
 
50120130406017
5012013040601750120130406017
50120130406017
 
Saving resources with simulation webinar 092011
Saving resources with simulation webinar 092011Saving resources with simulation webinar 092011
Saving resources with simulation webinar 092011
 
Exploiting Context in Dealing with Programming Errors and Exceptions
Exploiting Context in Dealing with Programming Errors and ExceptionsExploiting Context in Dealing with Programming Errors and Exceptions
Exploiting Context in Dealing with Programming Errors and Exceptions
 

More from Masud Rahman

HereWeCode 2022: Dalhousie University
HereWeCode 2022: Dalhousie UniversityHereWeCode 2022: Dalhousie University
HereWeCode 2022: Dalhousie University
Masud Rahman
 
The Forgotten Role of Search Queries in IR-based Bug Localization: An Empiric...
The Forgotten Role of Search Queries in IR-based Bug Localization: An Empiric...The Forgotten Role of Search Queries in IR-based Bug Localization: An Empiric...
The Forgotten Role of Search Queries in IR-based Bug Localization: An Empiric...
Masud Rahman
 
PhD Seminar - Masud Rahman, University of Saskatchewan
PhD Seminar - Masud Rahman, University of SaskatchewanPhD Seminar - Masud Rahman, University of Saskatchewan
PhD Seminar - Masud Rahman, University of Saskatchewan
Masud Rahman
 
PhD proposal of Masud Rahman
PhD proposal of Masud RahmanPhD proposal of Masud Rahman
PhD proposal of Masud Rahman
Masud Rahman
 
PhD Comprehensive exam of Masud Rahman
PhD Comprehensive exam of Masud RahmanPhD Comprehensive exam of Masud Rahman
PhD Comprehensive exam of Masud Rahman
Masud Rahman
 
Doctoral Symposium of Masud Rahman
Doctoral Symposium of Masud RahmanDoctoral Symposium of Masud Rahman
Doctoral Symposium of Masud Rahman
Masud Rahman
 
Supporting Source Code Search with Context-Aware and Semantics-Driven Code Se...
Supporting Source Code Search with Context-Aware and Semantics-Driven Code Se...Supporting Source Code Search with Context-Aware and Semantics-Driven Code Se...
Supporting Source Code Search with Context-Aware and Semantics-Driven Code Se...
Masud Rahman
 
ICSE2018-Poster-Bug-Localization
ICSE2018-Poster-Bug-LocalizationICSE2018-Poster-Bug-Localization
ICSE2018-Poster-Bug-Localization
Masud Rahman
 
MSR2017-Challenge
MSR2017-ChallengeMSR2017-Challenge
MSR2017-Challenge
Masud Rahman
 
MSR2017-RevHelper
MSR2017-RevHelperMSR2017-RevHelper
MSR2017-RevHelper
Masud Rahman
 
STRICT-SANER2017
STRICT-SANER2017STRICT-SANER2017
STRICT-SANER2017
Masud Rahman
 
MSR2015-Challenge
MSR2015-ChallengeMSR2015-Challenge
MSR2015-Challenge
Masud Rahman
 
MSR2014-Challenge
MSR2014-ChallengeMSR2014-Challenge
MSR2014-Challenge
Masud Rahman
 
CodeInsight-SCAM2015
CodeInsight-SCAM2015CodeInsight-SCAM2015
CodeInsight-SCAM2015
Masud Rahman
 
STRICT-SANER2015
STRICT-SANER2015STRICT-SANER2015
STRICT-SANER2015
Masud Rahman
 
CMPT-842-BRACK
CMPT-842-BRACKCMPT-842-BRACK
CMPT-842-BRACK
Masud Rahman
 
RACK-Tool-ICSE2017
RACK-Tool-ICSE2017RACK-Tool-ICSE2017
RACK-Tool-ICSE2017
Masud Rahman
 
RACK-SANER2016
RACK-SANER2016RACK-SANER2016
RACK-SANER2016
Masud Rahman
 
QUICKAR-ASE2016-Singapore
QUICKAR-ASE2016-SingaporeQUICKAR-ASE2016-Singapore
QUICKAR-ASE2016-Singapore
Masud Rahman
 
CORRECT-ICSE2016
CORRECT-ICSE2016CORRECT-ICSE2016
CORRECT-ICSE2016
Masud Rahman
 

More from Masud Rahman (20)

HereWeCode 2022: Dalhousie University
HereWeCode 2022: Dalhousie UniversityHereWeCode 2022: Dalhousie University
HereWeCode 2022: Dalhousie University
 
The Forgotten Role of Search Queries in IR-based Bug Localization: An Empiric...
The Forgotten Role of Search Queries in IR-based Bug Localization: An Empiric...The Forgotten Role of Search Queries in IR-based Bug Localization: An Empiric...
The Forgotten Role of Search Queries in IR-based Bug Localization: An Empiric...
 
PhD Seminar - Masud Rahman, University of Saskatchewan
PhD Seminar - Masud Rahman, University of SaskatchewanPhD Seminar - Masud Rahman, University of Saskatchewan
PhD Seminar - Masud Rahman, University of Saskatchewan
 
PhD proposal of Masud Rahman
PhD proposal of Masud RahmanPhD proposal of Masud Rahman
PhD proposal of Masud Rahman
 
PhD Comprehensive exam of Masud Rahman
PhD Comprehensive exam of Masud RahmanPhD Comprehensive exam of Masud Rahman
PhD Comprehensive exam of Masud Rahman
 
Doctoral Symposium of Masud Rahman
Doctoral Symposium of Masud RahmanDoctoral Symposium of Masud Rahman
Doctoral Symposium of Masud Rahman
 
Supporting Source Code Search with Context-Aware and Semantics-Driven Code Se...
Supporting Source Code Search with Context-Aware and Semantics-Driven Code Se...Supporting Source Code Search with Context-Aware and Semantics-Driven Code Se...
Supporting Source Code Search with Context-Aware and Semantics-Driven Code Se...
 
ICSE2018-Poster-Bug-Localization
ICSE2018-Poster-Bug-LocalizationICSE2018-Poster-Bug-Localization
ICSE2018-Poster-Bug-Localization
 
MSR2017-Challenge
MSR2017-ChallengeMSR2017-Challenge
MSR2017-Challenge
 
MSR2017-RevHelper
MSR2017-RevHelperMSR2017-RevHelper
MSR2017-RevHelper
 
STRICT-SANER2017
STRICT-SANER2017STRICT-SANER2017
STRICT-SANER2017
 
MSR2015-Challenge
MSR2015-ChallengeMSR2015-Challenge
MSR2015-Challenge
 
MSR2014-Challenge
MSR2014-ChallengeMSR2014-Challenge
MSR2014-Challenge
 
CodeInsight-SCAM2015
CodeInsight-SCAM2015CodeInsight-SCAM2015
CodeInsight-SCAM2015
 
STRICT-SANER2015
STRICT-SANER2015STRICT-SANER2015
STRICT-SANER2015
 
CMPT-842-BRACK
CMPT-842-BRACKCMPT-842-BRACK
CMPT-842-BRACK
 
RACK-Tool-ICSE2017
RACK-Tool-ICSE2017RACK-Tool-ICSE2017
RACK-Tool-ICSE2017
 
RACK-SANER2016
RACK-SANER2016RACK-SANER2016
RACK-SANER2016
 
QUICKAR-ASE2016-Singapore
QUICKAR-ASE2016-SingaporeQUICKAR-ASE2016-Singapore
QUICKAR-ASE2016-Singapore
 
CORRECT-ICSE2016
CORRECT-ICSE2016CORRECT-ICSE2016
CORRECT-ICSE2016
 

Recently uploaded

Standardized tool for Intelligence test.
Standardized tool for Intelligence test.Standardized tool for Intelligence test.
Standardized tool for Intelligence test.
deepaannamalai16
 
Bossa N’ Roll Records by Ismael Vazquez.
Bossa N’ Roll Records by Ismael Vazquez.Bossa N’ Roll Records by Ismael Vazquez.
Bossa N’ Roll Records by Ismael Vazquez.
IsmaelVazquez38
 
How to Download & Install Module From the Odoo App Store in Odoo 17
How to Download & Install Module From the Odoo App Store in Odoo 17How to Download & Install Module From the Odoo App Store in Odoo 17
How to Download & Install Module From the Odoo App Store in Odoo 17
Celine George
 
Contiguity Of Various Message Forms - Rupam Chandra.pptx
Contiguity Of Various Message Forms - Rupam Chandra.pptxContiguity Of Various Message Forms - Rupam Chandra.pptx
Contiguity Of Various Message Forms - Rupam Chandra.pptx
Kalna College
 
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
EduSkills OECD
 
مصحف القراءات العشر أعد أحرف الخلاف سمير بسيوني.pdf
مصحف القراءات العشر   أعد أحرف الخلاف سمير بسيوني.pdfمصحف القراءات العشر   أعد أحرف الخلاف سمير بسيوني.pdf
مصحف القراءات العشر أعد أحرف الخلاف سمير بسيوني.pdf
سمير بسيوني
 
Observational Learning
Observational Learning Observational Learning
Observational Learning
sanamushtaq922
 
BIOLOGY NATIONAL EXAMINATION COUNCIL (NECO) 2024 PRACTICAL MANUAL.pptx
BIOLOGY NATIONAL EXAMINATION COUNCIL (NECO) 2024 PRACTICAL MANUAL.pptxBIOLOGY NATIONAL EXAMINATION COUNCIL (NECO) 2024 PRACTICAL MANUAL.pptx
BIOLOGY NATIONAL EXAMINATION COUNCIL (NECO) 2024 PRACTICAL MANUAL.pptx
RidwanHassanYusuf
 
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) CurriculumPhilippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
MJDuyan
 
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
Nguyen Thanh Tu Collection
 
How to Manage Reception Report in Odoo 17
How to Manage Reception Report in Odoo 17How to Manage Reception Report in Odoo 17
How to Manage Reception Report in Odoo 17
Celine George
 
Accounting for Restricted Grants When and How To Record Properly
Accounting for Restricted Grants  When and How To Record ProperlyAccounting for Restricted Grants  When and How To Record Properly
Accounting for Restricted Grants When and How To Record Properly
TechSoup
 
BPSC-105 important questions for june term end exam
BPSC-105 important questions for june term end examBPSC-105 important questions for june term end exam
BPSC-105 important questions for june term end exam
sonukumargpnirsadhan
 
Data Structure using C by Dr. K Adisesha .ppsx
Data Structure using C by Dr. K Adisesha .ppsxData Structure using C by Dr. K Adisesha .ppsx
Data Structure using C by Dr. K Adisesha .ppsx
Prof. Dr. K. Adisesha
 
CIS 4200-02 Group 1 Final Project Report (1).pdf
CIS 4200-02 Group 1 Final Project Report (1).pdfCIS 4200-02 Group 1 Final Project Report (1).pdf
CIS 4200-02 Group 1 Final Project Report (1).pdf
blueshagoo1
 
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skillsspot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
haiqairshad
 
skeleton System.pdf (skeleton system wow)
skeleton System.pdf (skeleton system wow)skeleton System.pdf (skeleton system wow)
skeleton System.pdf (skeleton system wow)
Mohammad Al-Dhahabi
 
How to Fix [Errno 98] address already in use
How to Fix [Errno 98] address already in useHow to Fix [Errno 98] address already in use
How to Fix [Errno 98] address already in use
Celine George
 
How to Setup Default Value for a Field in Odoo 17
How to Setup Default Value for a Field in Odoo 17How to Setup Default Value for a Field in Odoo 17
How to Setup Default Value for a Field in Odoo 17
Celine George
 
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdfREASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
giancarloi8888
 

Recently uploaded (20)

Standardized tool for Intelligence test.
Standardized tool for Intelligence test.Standardized tool for Intelligence test.
Standardized tool for Intelligence test.
 
Bossa N’ Roll Records by Ismael Vazquez.
Bossa N’ Roll Records by Ismael Vazquez.Bossa N’ Roll Records by Ismael Vazquez.
Bossa N’ Roll Records by Ismael Vazquez.
 
How to Download & Install Module From the Odoo App Store in Odoo 17
How to Download & Install Module From the Odoo App Store in Odoo 17How to Download & Install Module From the Odoo App Store in Odoo 17
How to Download & Install Module From the Odoo App Store in Odoo 17
 
Contiguity Of Various Message Forms - Rupam Chandra.pptx
Contiguity Of Various Message Forms - Rupam Chandra.pptxContiguity Of Various Message Forms - Rupam Chandra.pptx
Contiguity Of Various Message Forms - Rupam Chandra.pptx
 
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
 
مصحف القراءات العشر أعد أحرف الخلاف سمير بسيوني.pdf
مصحف القراءات العشر   أعد أحرف الخلاف سمير بسيوني.pdfمصحف القراءات العشر   أعد أحرف الخلاف سمير بسيوني.pdf
مصحف القراءات العشر أعد أحرف الخلاف سمير بسيوني.pdf
 
Observational Learning
Observational Learning Observational Learning
Observational Learning
 
BIOLOGY NATIONAL EXAMINATION COUNCIL (NECO) 2024 PRACTICAL MANUAL.pptx
BIOLOGY NATIONAL EXAMINATION COUNCIL (NECO) 2024 PRACTICAL MANUAL.pptxBIOLOGY NATIONAL EXAMINATION COUNCIL (NECO) 2024 PRACTICAL MANUAL.pptx
BIOLOGY NATIONAL EXAMINATION COUNCIL (NECO) 2024 PRACTICAL MANUAL.pptx
 
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) CurriculumPhilippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
 
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
 
How to Manage Reception Report in Odoo 17
How to Manage Reception Report in Odoo 17How to Manage Reception Report in Odoo 17
How to Manage Reception Report in Odoo 17
 
Accounting for Restricted Grants When and How To Record Properly
Accounting for Restricted Grants  When and How To Record ProperlyAccounting for Restricted Grants  When and How To Record Properly
Accounting for Restricted Grants When and How To Record Properly
 
BPSC-105 important questions for june term end exam
BPSC-105 important questions for june term end examBPSC-105 important questions for june term end exam
BPSC-105 important questions for june term end exam
 
Data Structure using C by Dr. K Adisesha .ppsx
Data Structure using C by Dr. K Adisesha .ppsxData Structure using C by Dr. K Adisesha .ppsx
Data Structure using C by Dr. K Adisesha .ppsx
 
CIS 4200-02 Group 1 Final Project Report (1).pdf
CIS 4200-02 Group 1 Final Project Report (1).pdfCIS 4200-02 Group 1 Final Project Report (1).pdf
CIS 4200-02 Group 1 Final Project Report (1).pdf
 
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skillsspot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
 
skeleton System.pdf (skeleton system wow)
skeleton System.pdf (skeleton system wow)skeleton System.pdf (skeleton system wow)
skeleton System.pdf (skeleton system wow)
 
How to Fix [Errno 98] address already in use
How to Fix [Errno 98] address already in useHow to Fix [Errno 98] address already in use
How to Fix [Errno 98] address already in use
 
How to Setup Default Value for a Field in Odoo 17
How to Setup Default Value for a Field in Odoo 17How to Setup Default Value for a Field in Odoo 17
How to Setup Default Value for a Field in Odoo 17
 
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdfREASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
 

SurfClipse-- An IDE based context-aware Meta Search Engine (ERA Track)

  • 1. AN IDE-BASED CONTEXT-AWARE META SEARCH ENGINE Mohammad Masudur Rahman, Shamima Yeasmin, and Chanchal K. Roy Department of Computer Science University of Saskatchewan 20th Working Conference on Reverse Engineering (WCRE 2013), Koblenz, Germany
  • 6. IDE-BASED WEB SEARCH  About 80% effort on Software Maintenance  Bug fixation– error and exception handling  Developers spend about 19% of time in web search  Traditional web search  Does not consider context of search (No ties between IDE and web browser)  Context-switching and distracting  Time consuming  Often not much productive o IDE-Based context-aware search addresses those issues.
  • 7. EXISTING RELATED WORKS  Cordeiro et al. (RSSE’ 2012)– Context-based recommendation system  Ponzanelli et al. (ICSE 2013)– Seahawk  Poshyvanyk et al. (IWICSS 2007)– COTS (Google Desktop) into Eclipse IDE  Brandt et al. (SIGCHI 2010)– Integrating Google web search into IDE
  • 8. MOTIVATION EXPERIMENTS Search Query Common Results Google Only Yahoo Only Bing Only Content Only 32 09 16 18 Content and Context 47 09 11 10  83 Exceptions  Solutions found for at most 58 exceptions.
  • 9. THE KEY IDEA !! META SEARCH ENGINE
  • 10. PROPOSED IDE-BASED META SEARCH MODEL
  • 11. PROPOSED IDE-BASED META SEARCH MODEL  Distinguished Features  Meta search engine– captures data from multiple search engines  More precise context– both stack trace and associated code as exception context  Popularity and confidence of result links  Complete web browsing experience within the IDE
  • 12. PROPOSED METRICS & SCORES  Title to title Matching Score (Stitle)– Cosine similarity measurement  Stack trace Matching Score (Sst)– SimHash based similarity measurement  Code context Matching Score (Scc)– SimHash based similarity measurement  StackOverflow Vote Score (Sso)– Summation of differences between up and down votes for all posts in the link
  • 13. PROPOSED METRICS & SCORES  Top Ten Score (Stt)– Position of result link in the top 10 of each provider.  Page Rank Score (Spr)-- Relative popularity among all links in the corpus using Page Rank algorithm.  Site Traffic Rank Score (Sstr)-- Alexa and Compete Rank of each link  Search Engine weight (Ssew)---Relative reliability or importance of each search engine. Experiments with 75 programming queries against the search engines.
  • 14. METRICS NORMALIZATION  Normalization applied to -- Sst , Scc , Sso , Stt , Spr and Sstr  Avoiding bias to any particular aspect )min()max( )min( , ii ii normalizedi SS SS S   
  • 15. FINAL SCORE COMPONENTS  Content Relevance Scnt=Stitle  Context Relevance Scxt=(Sst + Scc)/2  Link Popularity Spop=(Sso +Spr + Sstr)/3  Search Engine Confidence Sser=(Ssew x Stt)
  • 16. EXPERIMENT OVERVIEW  25 Exceptions collected from Eclipse IDE workspaces.  Related to Eclipse plug-in framework and Java Application Development  Solutions chosen from exhaustive web search with cross validations by peers  Recommended results manually validated.
  • 17. EXPERIMENTAL RESULTS Score Top 10 Rank10 Top 20 Rank20 Scnt 10 3.60 16 8.63 Scnt, Scxt 11 3.00 16 7.43 Scnt, Spop 13 4.69 18 8.11 Scnt, Sser 23 4.39 23 4.39 Scnt, Scxt, Spop 13 4.07 18 7.61 Scnt, Scxt, Sser 24 4.45 24 4.45 Scnt, Scxt, Sser, Spop 23 4.26 24 4.54 Top10: No. of test cases solved when the top 10 results considered Rank10: Average rank of solutions when the top 10 results considered
  • 18. USER STUDY  Five interesting exception test cases.  Five CS graduates research students as participants.  Top 10 results from SurfClipse randomly presented to the participants.  To avoid the bias of choosing top rated solutions.  64.28% agreement found.
  • 19. USER STUDY RESULTS Question ID ANSR ANSM Agreement Q1 2.8 2.0 71.43% Q2 4.6 2.8 60.87% Q3 4.6 2.4 52.17% Q4 4.2 3.0 71.43% Q5 5.8 3.8 65.52% Overall 4.4 2.8 64.28% ANSR: Avg. no. of solutions recommended by the participants. ANSM: Avg. no. of solution matched with that by our approach. Agreement: % of agreement between solutions.
  • 20. THREATS TO VALIDITY  Search is not real time yet.  Different aspects need different weights.
  • 21. LATEST UPDATES  A Distributed model for IDE-Based web search– client-server architecture, remotely hosted web service  Parallel processing in computation  Two modes of operations– proactive and interactive  Granular refinement of metrics and assigning relative weights (i.e., importance)  Complete IDE-based web search solution.
  • 22. CONCLUSION & FUTURE WORKS  A novel IDE-Based search with meta search capabilities  Exploits existing search service providers  Considers content, context, popularity and search engine confidence of a result.  Recommends correct solution for 24(96%) out of 25 test cases.  64.28% agreement in user study.  Needs more extended experiments and user study.  Metrics need to be fine-tuned and more granulated.

Editor's Notes

  1. Good Morning everyone  I am Masudur Rahman from University of Saskatchewan. Welcome to my presentation. Here, I am going to present our paper titled as “An IDE-Based Context-Aware Meta Search Engine” Basically, here, we proposed an IDE-Based recommendation system that works like a meta search engine, that means, it captures results from multiple search engines against a selected exception, and then analyze them to produce a better and context-relevant result set.
  2. Study shows that about 50%-80% effort is spent on software maintenance, And one of major concern during maintenance is bug fixation. Software bugs are generally associated with runtime different errors and exceptions. To deal with that errors and exceptions, developers spend a lot of time, its about 19% of their programming time. Why? Its because of the traditional web search which has no ties with the IDE. It does not consider the context of the problem developer is facing and developer has to include the context information into the search query, which is challenging, because which term is more important than others is not clear; so, basically, this is a trial and error approach for the developer which is time-consuming. Besides, the switching between IDE and the web browser is often not very interesting if you are trying to concentrate on a problem in the IDE. So, what is the solution??? IDE-based search engine, and it has to consider the problem context of course.
  3. There are some existing studies that try to address the issues of traditional web search. However, they are basically based on StackOverflow, for example the first two works. StackOverflow is a big source of information and recently it has 1.9 million users with 12 million posts; However, we cannot ignore the whole web for information, and that is why our approach comes into play. The rest two works basically tries to integrate Google desktop search and Google web search in the IDE; However, we are interested to exploit multiple search engines to get more confident set of results for the developer. The baseline idea is to leverage the existing resources for solving technical challenges in a smart way.
  4. This is our proposed meta search model for IDE-based recommendation. It has tow modules: Client module Computation module. Once the developer selects an exception from Error log or console view, the client module captures the error message, stack trace and the context code likely responsible for exception and sends to the computation module. Upon getting the search request, the computation module sends the error message to multiple search engines. We use Google, Bing, Yahoo and the StackOverflow API to collect results and use them to develop the corpus. Once the corpus is developed, we apply our proposed metrics and algorithms to produce a result set that is relevant to the encountered exception. Now lets assume, what the traditional search engines do? Do they consider context? No. It’s the developer who has to represent the context besides the error message in the search query.
  5. So, basically, we are providing four interesting and essential things in this model. It exploits the idea of meta search. Why meta search? Lets discuss in the Q/A session. We are considering more precise context: both stack trace and context code. We are also considering popularity and confidence of a result link. And the developer can readily browse the web link recommended with in IDE.
  6. These are metrics we consider to determine the relevance of a result page against the query exception. Please note that we collected the exception message and exception context in the form of stack trace and context code during search request. So, title to tile matching basically tries to determine the content similarity between exception message and the result page title. We use cosine similarity measurement for that. Then comes the context information. We did HTML scraping and extract the content from different tags like pre, code, blockquote as they are likely to contain the context information about the discussed problems in the page. Once extracted, we use SimHash based similarity to determine the relevance of the discussed problem with the query exception. SimHash basically produces a Hash value for a block of content, and if the hash value of two blocks are closer, they are considered similar. We use this metric for both stack trace and context code matching.
  7. We also consider other metrics like Top ten score – it marks if a result is found within the top 10 results of any search engine. Page Rank score – we develop a artificial network among the result links in the corpus to determine their relative importance using PageRank algorithm. Site Traffic Rank score – we collect Alexa rank for each result link. Search engine weight– we calculate the support for each result from the search engines.
  8. For most of the metrics We use this formula to perform the normalization if it is not already normalized.
  9. So, we have got different perspectives of each result link And now, we use those perspectives to determine different types of scores. We get: Content-relevance Context-relevance Popularity and Search engine confidence for each result. Then, we give all of them equal share in the final score, and now we are working on their relative weights.
  10. We design a limited experiment with 25 exceptions related to Eclipse plug-in framework And we got interesting results.
  11. Here, we decompose different component scores and show how much effective they are in recommendation. We collect the top 10 and top 20 results and found that our algorithm can recommend up to 24 exceptions. More interestingly, solutions are found within the top 5 positions mostly.
  12. We also try to test the recommendations through a user study, because, the approach is all about the users benefit. So, we collect the top 10 recommended results for five exceptions and present the results to the participants in a randomized order. The idea is to check how developers apply their sense of relevance.
  13. Here, we got 64.28% agreement between our results and their confirmation. Basically, what we did is– we tried to map their selection to the top 5 results of each exception and found that agreement. We also noticed that the result which they mark as relevant are found mostly in the top 5 results of our recommendation. So, it shows that the tool is working quite accurately in relevance computation as an initial attempt. However, it requires more extended experiment and extended user study to claim something solid.
  14. Here are some latest updates about what we did by this time: We applied parallel processing in the computation model to make it work faster. Present version is quite slower and not like real time. We implemented a client-server architecture for this search so that it can be platform-independent and any IDE can leverage the search as a web service We implemented two modes of operation– proactive and interactive, where the proactive version automatically triggers upon an exception. We did more analysis with the metrics and scores.
  15. To summarize, We proposed a novel IDE-based search approach that exploits problem context and collects results from a meta search engine. Our preliminary experiments show some interesting results. However, of course the idea needs to be further experimented and tested to discover its potential which is our future work And we are working on that.
  16. So, that’s all about my talk. Thanks to all for your time. Questions ??