SlideShare una empresa de Scribd logo
1 de 33
Analyzing the Eclipse API
Usage: Putting the Developer
in the Loop
John Businge, Alexander Serebrenik,
Mark van den Brand
Introduction
Software Engineering and Technology (SET) PAGE 19-6-2014
Software engineering researchers
obtaining convincing evidence
Introduction
Software Engineering and Technology (SET) PAGE 29-6-2014
Software engineering researchers
obtaining convincing evidence
Few examples of convincing
evidence
Introduction
Software Engineering and Technology (SET) PAGE 39-6-2014
Software engineering researchers
obtaining convincing evidence
Few examples of convincing
evidence
Researchers generate evidence
about A, C, D and E yet developers
care about B
Introduction
Software Engineering and Technology (SET) PAGE 49-6-2014
Software engineering researchers
obtaining convincing evidence
Few examples of convincing
evidence
Researchers generate evidence
about A, C, D and E yet developers
care about B
Include developer in the loop
Terms used
Software Engineering and Technology (SET) PAGE 59-6-2014
P1 P4P3P2
Eclipse
Framework
Eclipse Third-
party Plug-ins
(ETPs)
Terms used
Software Engineering and Technology (SET) PAGE 69-6-2014
P1 P4P3P2
Eclipse
Framework
Eclipse Third-
party Plug-ins
(ETPs)
Eclipse APIs(“good”)
• no “internal”
• stable,
• supported
Eclipse non-APIs (“bad”)
• “internal”
• unstable,
• discouraged,
• unsupported
 P3 – good ETPs
 P1, P2 and P4 – bad ETPs
Terms used
• Eclipse provisional API guidelines – document
provided by Eclipse describing the different interfaces
Software Engineering and Technology (SET) PAGE 79-6-2014
Embryonic interfaces
Terms used
• Eclipse provisional API guidelines – document
provided by Eclipse describing the different interfaces
Software Engineering and Technology (SET) PAGE 89-6-2014
Embryonic interfaces Battle-headed interfaces
Motivation of our study
• Our previous studies about Eclipse API
Usage were based on source code analysis.
• Our observations:
1. 44% of ETPs on SourceForge use bad interfaces.
2. bad ETPs are larger than good ETPs.
3. Good interfaces are indeed very stable in new
framework releases.
4. Bad interfaces are indeed unstable in new
framework releases.
Software Engineering and Technology (SET) PAGE 99-6-2014
Motivation of our study
• Omitting developer in the loop in previous
studies
• Why bad ETPs are larger than good
ETPs????
• Why developers use bad interfaces????
Software Engineering and Technology (SET) PAGE 109-6-2014
Include developer in the loop
Survey to include developer in loop
• Goal – obtain the state-of-practice Eclipse interface
usage
1. Reasons for use of bad interfaces
2. Difference in characteristics of bad ETPs and good
ETPs
• Research questions
RQ1: Can we observe some relationships in factors related
to Eclipse interface usage in the survey?
RQ2: What are the differences in characteristics between
bad and good ETPs?
RQ3: What are the differences in characteristics between
proprietary and open-source ETPs?
Software Engineering and Technology (SET) PAGE 119-6-2014
Survey to include developer in loop
• Goal – obtain the state-of-practice Eclipse interface
usage
1. Reasons for use of bad interfaces
2. Difference in characteristics of bad ETPs and good
ETPs
• Research questions
RQ1: Can we observe some relationships in factors related
to Eclipse interface usage in the survey?
RQ2: What are the differences in characteristics between
bad and good ETPs?
RQ3: What are the differences in characteristics between
proprietary and open-source ETPs?
Software Engineering and Technology (SET) PAGE 129-6-2014
Survey factors of investigation
Software Engineering and Technology (SET) PAGE 139-6-2014
No Factors
1 Years of Education
2 Experience as a software engineer
3 Experience as a Java developer
4 Experience as an ETP developer
5 ETP development team size
6 Importance of updating ETP with new Eclipse releases
7 Number of versions of the ETP
8 Number of files of the ETP
9 Awareness of Eclipse guidelines
10 Following Eclipse guidelines
Sample Questions in the survey
i. How many years of experience as an Eclipse
product/solution developer do you have?
ii. Are you aware of the “Eclipse Provisional API
Guidelines”?
iii. Do you use non-APIs?
iv. If answer was “NO” in (iii). Do you deliberately
avoid using Eclipse non-APIs?
• Survey Response
− 30 ETP developers fully answered the questionnaire.
Software Engineering and Technology (SET) PAGE 149-6-2014
RQ2 and RQ3 - groups
• RQ2 – Difference between good and bad ETPs
Software Engineering and Technology (SET) PAGE 159-6-2014
Use of bad interfaces
Group Respondents
Developers who use bad interfaces 21
Developers who do not use bad interfaces 9
Open-source vs proprietary ETPs
Group Respondents
Developers who develop open-source ETPs 16
Developers who develop proprietary ETPs 14
• RQ3 – Difference between proprietary and open-
source ETPs
RQ2 and RQ3 - groups
• The two groups of RQ2 and RQ3 can be compared using
the 10 identified factors.
Software Engineering and Technology (SET) PAGE 169-6-2014
Differences between bad and good ETPs –
RQ2
• Hypotheses:
• H0: Developers who use bad interfaces and
those who do not use bad interfaces have the
same average values on each of the identified
factors.
• Ha: There is a difference on the average values
of the identified factors between the developers
that use and do not use bad interfaces.
Software Engineering and Technology (SET) PAGE 179-6-2014
Differences between developers that use
and those that do not use bad interfaces
Factors Difference
Years of Education NO
Experience as a software engineer YES
Experience as a Java developer YES
Experience as an Eclipse plug-in developer YES
ETP development team size YES
Importance of updating the plug-in with Eclipse NO
Number of versions NO
Number of files YES
Awareness of Eclipse guidelines NO
Following Eclipse guidelines NO
Software Engineering and Technology (SET) PAGE 189-6-2014
Differences between developers that use
and those that do not use bad interfaces
Factors Difference
Years of Education NO
Experience as a software engineer YES
Experience as a Java developer YES
Experience as an Eclipse plug-in developer YES
ETP development team size YES
Importance of updating the plug-in with Eclipse NO
Number of versions NO
Number of files YES
Awareness of Eclipse guidelines NO
Following Eclipse guidelines NO
Software Engineering and Technology (SET) PAGE 199-6-2014
We reject H0 that Developers who use bad interfaces and
those who do not use bad interfaces have the same
average values on each of the identified factors
How different are the two groups of
developers?
• We discovered that developers that use bad interfaces
have higher values on these factors compared to those
that do not use bad interfaces
Software Engineering and Technology (SET) PAGE 209-6-2014
Factors
Experience as a software engineer
Experience as a Java developer
Experience as an Eclipse plug-in developer
ETP development team size
Number of files
How different are the two groups of
developers?
• We discovered that developers that use bad interfaces
have higher values on these factors compared to those
that do not use bad interfaces
Software Engineering and Technology (SET) PAGE 219-6-2014
Factors
Experience as a software engineer
Experience as a Java developer
Experience as an Eclipse plug-in developer
ETP development team size
Number of files
1. More experiences
developers
2. Larger ETP
development teams
Previously unanswered
question “Why bad ETPs are
larger than good ETPs?”
Human factors
Developers of bad ETPs
Differences between open-source and
proprietary ETPs
• Motivation:
• Previous studies we only considered open-source
software potentially putting generalizability to
proprietary software in jeopardy.
• Hypotheses:
• H0: Developers of open-source and proprietary ETPs
have the same average values on each of the identified
factors.
• Ha: There is a difference on the average values of the
identified factors between the developers of open-
source and proprietary ETPs.
Software Engineering and Technology (SET) PAGE 229-6-2014
How different are the two groups of open-
source and proprietary developers?
Software Engineering and Technology (SET) PAGE 239-6-2014
Factors Difference
Years of Education NO
Experience as a software engineer NO
Experience as a Java developer NO
Experience as an Eclipse plug-in developer NO
ETP development team size NO
Importance of updating the plug-in with Eclipse NO
Number of versions NO
Number of files NO
Awareness of Eclipse guidelines NO
Following Eclipse guidelines NO
How different are the two groups of open-
source and proprietary developers?
• We accept H0 that there is no difference between open-
source and proprietary ETPs in terms of the factors
investigated
Software Engineering and Technology (SET) PAGE 249-6-2014
Factors Difference
Years of Education NO
Experience as a software engineer NO
Experience as a Java developer NO
Experience as an Eclipse plug-in developer NO
ETP development team size NO
Importance of updating the plug-in with Eclipse NO
Number of versions NO
Number of files NO
Awareness of Eclipse guidelines NO
Following Eclipse guidelines NO
How different are the two groups of open-
source and proprietary developers?
• Current findings clear our doubts on generalizability of
our previous studies.
Software Engineering and Technology (SET) PAGE 259-6-2014
Use of bad interfaces
• Asked why developers deliberately avoid using bad
interfaces.
− Answerers were related to, knowing/assuming that the
bad interfaces are unstable.
• Asked why developers deliberately use bad interfaces
− No good interface with necessary functionality.
− Avoid reinventing the wheel.
− To expose these bad interfaces.
− Old bad interfaces are unlikely to disappear
Software Engineering and Technology (SET) PAGE 269-6-2014
Use of bad interfaces
• Asked why developers deliberately avoid using bad
interfaces.
− Answerers were related to, knowing/assuming that the
bad interfaces are unstable.
Less experienced developers
• Asked why developers deliberately use bad interfaces
− No good interface with necessary functionality.
− Avoid reinventing the wheel.
− To expose these bad interfaces.
− Old bad interfaces are unlikely to disappear
More experienced developers
Software Engineering and Technology (SET) PAGE 279-6-2014
Conclusion
Software Engineering and Technology (SET) PAGE 289-6-2014
Survey was conducted to understand why developers
use bad interfaces.
Conclusion
Software Engineering and Technology (SET) PAGE 299-6-2014
Less experienced developers
Survey was conducted to understand why developers
use bad interfaces.
Instability overshadows
benefits
Conclusion
Software Engineering and Technology (SET) PAGE 309-6-2014
Less experienced developers
More experienced developers
Survey was conducted to understand why developers
use bad interfaces.
Instability overshadows
benefits
Enjoy benefits despite the
instability
Conclusion
Software Engineering and Technology (SET) PAGE 319-6-2014
Less experienced developers
More experienced developers
Survey was conducted to understand why developers
use bad interfaces.
Instability overshadows
benefits
Enjoy benefits despite the
instability
Discovered that there is no difference between
proprietary and open-source ETPs based on the
factors we studied.
Thank you for listening
Software Engineering and Technology (SET) PAGE 329-6-2014
• http://www.win.tue.nl/~jbusinge/CSMR13/
Researchers should generate
evidence about topics developers
care about
Include developer in the loop
by

Más contenido relacionado

La actualidad más candente

Professional Software Development, Practices and Ethics
Professional Software Development, Practices and EthicsProfessional Software Development, Practices and Ethics
Professional Software Development, Practices and EthicsLemi Orhan Ergin
 
How to Embed Codeless Test Automation Into DevOps
How to Embed Codeless Test Automation Into DevOpsHow to Embed Codeless Test Automation Into DevOps
How to Embed Codeless Test Automation Into DevOpsPerfecto by Perforce
 
Software testing training in Chandigarh
Software testing training in ChandigarhSoftware testing training in Chandigarh
Software testing training in ChandigarhWebliquidinfotech
 
Solving the 3 Biggest Questions in Continuous Testing
Solving the 3 Biggest Questions in Continuous TestingSolving the 3 Biggest Questions in Continuous Testing
Solving the 3 Biggest Questions in Continuous TestingPerfecto by Perforce
 
Maturing your path toward DevOps with Continuous Testing
Maturing your path toward DevOps with Continuous TestingMaturing your path toward DevOps with Continuous Testing
Maturing your path toward DevOps with Continuous TestingPerfecto Mobile
 
Pull requests and testers can be friends
Pull requests and testers can be friendsPull requests and testers can be friends
Pull requests and testers can be friendsAlan Parkinson
 
A Preliminary Field Study of Game Programming on Mobile Devices
A Preliminary Field Study of Game Programming on Mobile DevicesA Preliminary Field Study of Game Programming on Mobile Devices
A Preliminary Field Study of Game Programming on Mobile DevicesTao Xie
 
IDENTIFICATION OF PROMOTED ECLIPSE UNSTABLE INTERFACES USING CLONE DETECTION ...
IDENTIFICATION OF PROMOTED ECLIPSE UNSTABLE INTERFACES USING CLONE DETECTION ...IDENTIFICATION OF PROMOTED ECLIPSE UNSTABLE INTERFACES USING CLONE DETECTION ...
IDENTIFICATION OF PROMOTED ECLIPSE UNSTABLE INTERFACES USING CLONE DETECTION ...ijseajournal
 
IDENTIFICATION OF PROMOTED ECLIPSE UNSTABLE INTERFACES USING CLONE DETECTION ...
IDENTIFICATION OF PROMOTED ECLIPSE UNSTABLE INTERFACES USING CLONE DETECTION ...IDENTIFICATION OF PROMOTED ECLIPSE UNSTABLE INTERFACES USING CLONE DETECTION ...
IDENTIFICATION OF PROMOTED ECLIPSE UNSTABLE INTERFACES USING CLONE DETECTION ...ijseajournal
 
Opinion Mining for Software Engineering
Opinion Mining for Software EngineeringOpinion Mining for Software Engineering
Opinion Mining for Software EngineeringAlexander Serebrenik
 
Continuous integration for se group meeting
Continuous integration for se group meetingContinuous integration for se group meeting
Continuous integration for se group meetingSergii Shmarkatiuk
 
Best Practices for Shifting Left Performance and Accessibility Testing
Best Practices for Shifting Left Performance and Accessibility TestingBest Practices for Shifting Left Performance and Accessibility Testing
Best Practices for Shifting Left Performance and Accessibility TestingPerfecto by Perforce
 
Rodin.Nick.Resume
Rodin.Nick.ResumeRodin.Nick.Resume
Rodin.Nick.ResumeNick Rodin
 
Measure DevOps for Objective Continuous Improvement Practices
Measure DevOps for Objective Continuous Improvement PracticesMeasure DevOps for Objective Continuous Improvement Practices
Measure DevOps for Objective Continuous Improvement PracticesTechWell
 
Beyond DevOps: Finding Value through Requirements
Beyond DevOps: Finding Value through RequirementsBeyond DevOps: Finding Value through Requirements
Beyond DevOps: Finding Value through RequirementsGail Murphy
 

La actualidad más candente (20)

Professional Software Development, Practices and Ethics
Professional Software Development, Practices and EthicsProfessional Software Development, Practices and Ethics
Professional Software Development, Practices and Ethics
 
How to Embed Codeless Test Automation Into DevOps
How to Embed Codeless Test Automation Into DevOpsHow to Embed Codeless Test Automation Into DevOps
How to Embed Codeless Test Automation Into DevOps
 
expBSIT (1) (1)
expBSIT (1) (1)expBSIT (1) (1)
expBSIT (1) (1)
 
Software testing training in Chandigarh
Software testing training in ChandigarhSoftware testing training in Chandigarh
Software testing training in Chandigarh
 
Solving the 3 Biggest Questions in Continuous Testing
Solving the 3 Biggest Questions in Continuous TestingSolving the 3 Biggest Questions in Continuous Testing
Solving the 3 Biggest Questions in Continuous Testing
 
Maturing your path toward DevOps with Continuous Testing
Maturing your path toward DevOps with Continuous TestingMaturing your path toward DevOps with Continuous Testing
Maturing your path toward DevOps with Continuous Testing
 
Pull requests and testers can be friends
Pull requests and testers can be friendsPull requests and testers can be friends
Pull requests and testers can be friends
 
Resume
ResumeResume
Resume
 
A Preliminary Field Study of Game Programming on Mobile Devices
A Preliminary Field Study of Game Programming on Mobile DevicesA Preliminary Field Study of Game Programming on Mobile Devices
A Preliminary Field Study of Game Programming on Mobile Devices
 
IDENTIFICATION OF PROMOTED ECLIPSE UNSTABLE INTERFACES USING CLONE DETECTION ...
IDENTIFICATION OF PROMOTED ECLIPSE UNSTABLE INTERFACES USING CLONE DETECTION ...IDENTIFICATION OF PROMOTED ECLIPSE UNSTABLE INTERFACES USING CLONE DETECTION ...
IDENTIFICATION OF PROMOTED ECLIPSE UNSTABLE INTERFACES USING CLONE DETECTION ...
 
IDENTIFICATION OF PROMOTED ECLIPSE UNSTABLE INTERFACES USING CLONE DETECTION ...
IDENTIFICATION OF PROMOTED ECLIPSE UNSTABLE INTERFACES USING CLONE DETECTION ...IDENTIFICATION OF PROMOTED ECLIPSE UNSTABLE INTERFACES USING CLONE DETECTION ...
IDENTIFICATION OF PROMOTED ECLIPSE UNSTABLE INTERFACES USING CLONE DETECTION ...
 
Opinion Mining for Software Engineering
Opinion Mining for Software EngineeringOpinion Mining for Software Engineering
Opinion Mining for Software Engineering
 
Continuous integration for se group meeting
Continuous integration for se group meetingContinuous integration for se group meeting
Continuous integration for se group meeting
 
Best Practices for Shifting Left Performance and Accessibility Testing
Best Practices for Shifting Left Performance and Accessibility TestingBest Practices for Shifting Left Performance and Accessibility Testing
Best Practices for Shifting Left Performance and Accessibility Testing
 
Infrastructure
InfrastructureInfrastructure
Infrastructure
 
Predictive Analytics using R
Predictive Analytics using RPredictive Analytics using R
Predictive Analytics using R
 
Rodin.Nick.Resume
Rodin.Nick.ResumeRodin.Nick.Resume
Rodin.Nick.Resume
 
Unit1
Unit1Unit1
Unit1
 
Measure DevOps for Objective Continuous Improvement Practices
Measure DevOps for Objective Continuous Improvement PracticesMeasure DevOps for Objective Continuous Improvement Practices
Measure DevOps for Objective Continuous Improvement Practices
 
Beyond DevOps: Finding Value through Requirements
Beyond DevOps: Finding Value through RequirementsBeyond DevOps: Finding Value through Requirements
Beyond DevOps: Finding Value through Requirements
 

Destacado

ดวงจันทร์ Ppt
ดวงจันทร์ Pptดวงจันทร์ Ppt
ดวงจันทร์ Pptpuniga
 
865 social capital
865 social capital865 social capital
865 social capitalIan Pollock
 
PresentacióN Pcpi M
PresentacióN Pcpi MPresentacióN Pcpi M
PresentacióN Pcpi Mguestae4440
 
Challenges in Software Ecosystems Research
Challenges in Software Ecosystems ResearchChallenges in Software Ecosystems Research
Challenges in Software Ecosystems ResearchAlexander Serebrenik
 
Invited Talk MESOCA 2014: Evolving software systems: emerging trends and chal...
Invited Talk MESOCA 2014: Evolving software systems: emerging trends and chal...Invited Talk MESOCA 2014: Evolving software systems: emerging trends and chal...
Invited Talk MESOCA 2014: Evolving software systems: emerging trends and chal...Alexander Serebrenik
 
Power Point
Power PointPower Point
Power PointArnauGil
 
Global Entrepreneurship Final Oral Presentation for "Les macarons de Pauline"
Global Entrepreneurship Final Oral Presentation for "Les macarons de Pauline"Global Entrepreneurship Final Oral Presentation for "Les macarons de Pauline"
Global Entrepreneurship Final Oral Presentation for "Les macarons de Pauline"paulinehalazoune
 
Compatibility Prediction of Eclipse Third-Party Plug-ins in New Eclipse Releases
Compatibility Prediction of Eclipse Third-Party Plug-ins in New Eclipse ReleasesCompatibility Prediction of Eclipse Third-Party Plug-ins in New Eclipse Releases
Compatibility Prediction of Eclipse Third-Party Plug-ins in New Eclipse ReleasesAlexander Serebrenik
 
Sneak peak at door prizes and silent auction items for Grand Opening reception!
Sneak peak at door prizes and silent auction items for Grand Opening reception!Sneak peak at door prizes and silent auction items for Grand Opening reception!
Sneak peak at door prizes and silent auction items for Grand Opening reception!Colt
 
Security and Emotion: Sentiment Analysis of Security Discussions on GitHub
Security and Emotion: Sentiment Analysis of Security Discussions on GitHubSecurity and Emotion: Sentiment Analysis of Security Discussions on GitHub
Security and Emotion: Sentiment Analysis of Security Discussions on GitHubAlexander Serebrenik
 
Reunió famílies setembre p3 2012 2013
Reunió famílies setembre p3 2012 2013Reunió famílies setembre p3 2012 2013
Reunió famílies setembre p3 2012 2013edumallol
 
Riverbend Market Cooperative
Riverbend Market CooperativeRiverbend Market Cooperative
Riverbend Market CooperativeColt
 
Reunió pares p3 juny curs 12 13
Reunió pares p3 juny  curs 12 13Reunió pares p3 juny  curs 12 13
Reunió pares p3 juny curs 12 13edumallol
 
ไตร่ตรองงานวิจัยของฉัน
ไตร่ตรองงานวิจัยของฉันไตร่ตรองงานวิจัยของฉัน
ไตร่ตรองงานวิจัยของฉันSchool in Phatthalung
 
Gender in on-line communities: StackOverflow, WordPress, Drupal
Gender in on-line communities: StackOverflow, WordPress, DrupalGender in on-line communities: StackOverflow, WordPress, Drupal
Gender in on-line communities: StackOverflow, WordPress, DrupalAlexander Serebrenik
 

Destacado (20)

ดวงจันทร์ Ppt
ดวงจันทร์ Pptดวงจันทร์ Ppt
ดวงจันทร์ Ppt
 
865 social capital
865 social capital865 social capital
865 social capital
 
Regreso A Clase
Regreso A ClaseRegreso A Clase
Regreso A Clase
 
PresentacióN Pcpi M
PresentacióN Pcpi MPresentacióN Pcpi M
PresentacióN Pcpi M
 
Challenges in Software Ecosystems Research
Challenges in Software Ecosystems ResearchChallenges in Software Ecosystems Research
Challenges in Software Ecosystems Research
 
Spain
SpainSpain
Spain
 
Invited Talk MESOCA 2014: Evolving software systems: emerging trends and chal...
Invited Talk MESOCA 2014: Evolving software systems: emerging trends and chal...Invited Talk MESOCA 2014: Evolving software systems: emerging trends and chal...
Invited Talk MESOCA 2014: Evolving software systems: emerging trends and chal...
 
Power Point
Power PointPower Point
Power Point
 
Global Entrepreneurship Final Oral Presentation for "Les macarons de Pauline"
Global Entrepreneurship Final Oral Presentation for "Les macarons de Pauline"Global Entrepreneurship Final Oral Presentation for "Les macarons de Pauline"
Global Entrepreneurship Final Oral Presentation for "Les macarons de Pauline"
 
Compatibility Prediction of Eclipse Third-Party Plug-ins in New Eclipse Releases
Compatibility Prediction of Eclipse Third-Party Plug-ins in New Eclipse ReleasesCompatibility Prediction of Eclipse Third-Party Plug-ins in New Eclipse Releases
Compatibility Prediction of Eclipse Third-Party Plug-ins in New Eclipse Releases
 
Sneak peak at door prizes and silent auction items for Grand Opening reception!
Sneak peak at door prizes and silent auction items for Grand Opening reception!Sneak peak at door prizes and silent auction items for Grand Opening reception!
Sneak peak at door prizes and silent auction items for Grand Opening reception!
 
Security and Emotion: Sentiment Analysis of Security Discussions on GitHub
Security and Emotion: Sentiment Analysis of Security Discussions on GitHubSecurity and Emotion: Sentiment Analysis of Security Discussions on GitHub
Security and Emotion: Sentiment Analysis of Security Discussions on GitHub
 
Reunió famílies setembre p3 2012 2013
Reunió famílies setembre p3 2012 2013Reunió famílies setembre p3 2012 2013
Reunió famílies setembre p3 2012 2013
 
Saxony Germany
Saxony GermanySaxony Germany
Saxony Germany
 
TTT
TTTTTT
TTT
 
Insulin
InsulinInsulin
Insulin
 
Riverbend Market Cooperative
Riverbend Market CooperativeRiverbend Market Cooperative
Riverbend Market Cooperative
 
Reunió pares p3 juny curs 12 13
Reunió pares p3 juny  curs 12 13Reunió pares p3 juny  curs 12 13
Reunió pares p3 juny curs 12 13
 
ไตร่ตรองงานวิจัยของฉัน
ไตร่ตรองงานวิจัยของฉันไตร่ตรองงานวิจัยของฉัน
ไตร่ตรองงานวิจัยของฉัน
 
Gender in on-line communities: StackOverflow, WordPress, Drupal
Gender in on-line communities: StackOverflow, WordPress, DrupalGender in on-line communities: StackOverflow, WordPress, Drupal
Gender in on-line communities: StackOverflow, WordPress, Drupal
 

Similar a Analyzing the Eclipse API Usage: Putting the Developer in the Loop

CommonJS via PINF JavaScript Loader - Introduction
CommonJS via PINF JavaScript Loader - IntroductionCommonJS via PINF JavaScript Loader - Introduction
CommonJS via PINF JavaScript Loader - Introductioncadorn
 
Lean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partnerLean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partnerBill Scott
 
第1回バイオインフォマティクスデータ可視化セミナー@Riken
第1回バイオインフォマティクスデータ可視化セミナー@Riken第1回バイオインフォマティクスデータ可視化セミナー@Riken
第1回バイオインフォマティクスデータ可視化セミナー@RikenKeiichiro Ono
 
What java developers (don’t) know about api compatibility
What java developers (don’t) know about api compatibilityWhat java developers (don’t) know about api compatibility
What java developers (don’t) know about api compatibilityJens Dietrich
 
Developers are People Too! Building a DX-Based API Strategy Ronnie Mitra, Pri...
Developers are People Too! Building a DX-Based API Strategy Ronnie Mitra, Pri...Developers are People Too! Building a DX-Based API Strategy Ronnie Mitra, Pri...
Developers are People Too! Building a DX-Based API Strategy Ronnie Mitra, Pri...CA API Management
 
Building a design system with (p)react
Building a design system with (p)reactBuilding a design system with (p)react
Building a design system with (p)reactBart Waardenburg
 
Wind river webinar deck v1 as of april 23 2014 dw2
Wind river webinar deck v1 as of april 23 2014 dw2Wind river webinar deck v1 as of april 23 2014 dw2
Wind river webinar deck v1 as of april 23 2014 dw2Intel IoT
 
AppSphere 15 - How AppDynamics is Shaking up the Synthetic Monitoring Product...
AppSphere 15 - How AppDynamics is Shaking up the Synthetic Monitoring Product...AppSphere 15 - How AppDynamics is Shaking up the Synthetic Monitoring Product...
AppSphere 15 - How AppDynamics is Shaking up the Synthetic Monitoring Product...AppDynamics
 
Scientific Software: Sustainability, Skills & Sociology
Scientific Software: Sustainability, Skills & SociologyScientific Software: Sustainability, Skills & Sociology
Scientific Software: Sustainability, Skills & SociologyNeil Chue Hong
 
Advantages and Disadvantages of a Monolithic Repository
Advantages and Disadvantages of a Monolithic RepositoryAdvantages and Disadvantages of a Monolithic Repository
Advantages and Disadvantages of a Monolithic Repositorymustafa sarac
 
Why Do We Break APIs? First Answers from Developers
Why Do We Break APIs? First Answers from DevelopersWhy Do We Break APIs? First Answers from Developers
Why Do We Break APIs? First Answers from DevelopersLaerte Xavier
 
Automated Reporting of GUI Design Violations for Mobile Apps
Automated Reporting of GUI Design Violations for Mobile AppsAutomated Reporting of GUI Design Violations for Mobile Apps
Automated Reporting of GUI Design Violations for Mobile AppsKevin Moran
 
MVSWETA_RESUME_2016
MVSWETA_RESUME_2016MVSWETA_RESUME_2016
MVSWETA_RESUME_2016Sweta Mv
 
An empirical study of the evolution of Eclipse third-party plug-ins
An empirical study of the evolution of Eclipse third-party plug-insAn empirical study of the evolution of Eclipse third-party plug-ins
An empirical study of the evolution of Eclipse third-party plug-insAlexander Serebrenik
 
131016 wcre-matching
131016   wcre-matching131016   wcre-matching
131016 wcre-matchingZephyrin Soh
 

Similar a Analyzing the Eclipse API Usage: Putting the Developer in the Loop (20)

Wcre13b.ppt
Wcre13b.pptWcre13b.ppt
Wcre13b.ppt
 
CommonJS via PINF JavaScript Loader - Introduction
CommonJS via PINF JavaScript Loader - IntroductionCommonJS via PINF JavaScript Loader - Introduction
CommonJS via PINF JavaScript Loader - Introduction
 
Lean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partnerLean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partner
 
第1回バイオインフォマティクスデータ可視化セミナー@Riken
第1回バイオインフォマティクスデータ可視化セミナー@Riken第1回バイオインフォマティクスデータ可視化セミナー@Riken
第1回バイオインフォマティクスデータ可視化セミナー@Riken
 
spurthy_resume
spurthy_resumespurthy_resume
spurthy_resume
 
Design Scientifically (How to test a user story)
Design Scientifically (How to test a user story)Design Scientifically (How to test a user story)
Design Scientifically (How to test a user story)
 
What java developers (don’t) know about api compatibility
What java developers (don’t) know about api compatibilityWhat java developers (don’t) know about api compatibility
What java developers (don’t) know about api compatibility
 
Developers are People Too! Building a DX-Based API Strategy Ronnie Mitra, Pri...
Developers are People Too! Building a DX-Based API Strategy Ronnie Mitra, Pri...Developers are People Too! Building a DX-Based API Strategy Ronnie Mitra, Pri...
Developers are People Too! Building a DX-Based API Strategy Ronnie Mitra, Pri...
 
Building a design system with (p)react
Building a design system with (p)reactBuilding a design system with (p)react
Building a design system with (p)react
 
Wind river webinar deck v1 as of april 23 2014 dw2
Wind river webinar deck v1 as of april 23 2014 dw2Wind river webinar deck v1 as of april 23 2014 dw2
Wind river webinar deck v1 as of april 23 2014 dw2
 
AppSphere 15 - How AppDynamics is Shaking up the Synthetic Monitoring Product...
AppSphere 15 - How AppDynamics is Shaking up the Synthetic Monitoring Product...AppSphere 15 - How AppDynamics is Shaking up the Synthetic Monitoring Product...
AppSphere 15 - How AppDynamics is Shaking up the Synthetic Monitoring Product...
 
Scientific Software: Sustainability, Skills & Sociology
Scientific Software: Sustainability, Skills & SociologyScientific Software: Sustainability, Skills & Sociology
Scientific Software: Sustainability, Skills & Sociology
 
Advantages and Disadvantages of a Monolithic Repository
Advantages and Disadvantages of a Monolithic RepositoryAdvantages and Disadvantages of a Monolithic Repository
Advantages and Disadvantages of a Monolithic Repository
 
Why Do We Break APIs? First Answers from Developers
Why Do We Break APIs? First Answers from DevelopersWhy Do We Break APIs? First Answers from Developers
Why Do We Break APIs? First Answers from Developers
 
Automated Reporting of GUI Design Violations for Mobile Apps
Automated Reporting of GUI Design Violations for Mobile AppsAutomated Reporting of GUI Design Violations for Mobile Apps
Automated Reporting of GUI Design Violations for Mobile Apps
 
Muzammil exp testing
Muzammil exp testingMuzammil exp testing
Muzammil exp testing
 
MVSWETA_RESUME_2016
MVSWETA_RESUME_2016MVSWETA_RESUME_2016
MVSWETA_RESUME_2016
 
An empirical study of the evolution of Eclipse third-party plug-ins
An empirical study of the evolution of Eclipse third-party plug-insAn empirical study of the evolution of Eclipse third-party plug-ins
An empirical study of the evolution of Eclipse third-party plug-ins
 
131016 wcre-matching
131016   wcre-matching131016   wcre-matching
131016 wcre-matching
 
Wcre13b.ppt
Wcre13b.pptWcre13b.ppt
Wcre13b.ppt
 

Más de Alexander Serebrenik

Software development is a human activity: understanding software requires und...
Software development is a human activity: understanding software requires und...Software development is a human activity: understanding software requires und...
Software development is a human activity: understanding software requires und...Alexander Serebrenik
 
Towards Continuous Performance Assessment of Java Applications With PerfBot
Towards Continuous Performance Assessment of Java Applications With PerfBotTowards Continuous Performance Assessment of Java Applications With PerfBot
Towards Continuous Performance Assessment of Java Applications With PerfBotAlexander Serebrenik
 
“STILL AROUND”: Experiences and Survival Strategies of Veteran Women Software...
“STILL AROUND”: Experiences and Survival Strategies of Veteran Women Software...“STILL AROUND”: Experiences and Survival Strategies of Veteran Women Software...
“STILL AROUND”: Experiences and Survival Strategies of Veteran Women Software...Alexander Serebrenik
 
A Qualitative Study of Developers’ Discussions of Their Problems and Joys Dur...
A Qualitative Study of Developers’ Discussions of Their Problems and Joys Dur...A Qualitative Study of Developers’ Discussions of Their Problems and Joys Dur...
A Qualitative Study of Developers’ Discussions of Their Problems and Joys Dur...Alexander Serebrenik
 
Emotion Analysis in Software Ecosystems
Emotion Analysis in Software EcosystemsEmotion Analysis in Software Ecosystems
Emotion Analysis in Software EcosystemsAlexander Serebrenik
 
Investigating the Resolution of Vulnerable Dependencies with Dependabot Secur...
Investigating the Resolution of Vulnerable Dependencies with Dependabot Secur...Investigating the Resolution of Vulnerable Dependencies with Dependabot Secur...
Investigating the Resolution of Vulnerable Dependencies with Dependabot Secur...Alexander Serebrenik
 
Gender and Age in Software Engineering
Gender and Age in Software EngineeringGender and Age in Software Engineering
Gender and Age in Software EngineeringAlexander Serebrenik
 
Diversity and inclusion in a CS classroom
Diversity and inclusion in a CS classroomDiversity and inclusion in a CS classroom
Diversity and inclusion in a CS classroomAlexander Serebrenik
 
An Empirical Assessment on Merging and Repositioning of Static Analysis Alarms
An Empirical Assessment on Merging and Repositioning of Static Analysis AlarmsAn Empirical Assessment on Merging and Repositioning of Static Analysis Alarms
An Empirical Assessment on Merging and Repositioning of Static Analysis AlarmsAlexander Serebrenik
 
Classification and Ranking of Delta Static Analysis Alarms
Classification and Ranking of Delta Static Analysis AlarmsClassification and Ranking of Delta Static Analysis Alarms
Classification and Ranking of Delta Static Analysis AlarmsAlexander Serebrenik
 
What Is an AI Engineer? An Empirical Analysis of Job Ads in The Netherlands
What Is an AI Engineer? An Empirical Analysis of Job Ads in The NetherlandsWhat Is an AI Engineer? An Empirical Analysis of Job Ads in The Netherlands
What Is an AI Engineer? An Empirical Analysis of Job Ads in The NetherlandsAlexander Serebrenik
 
From team organisation to software quality
From team organisation to software qualityFrom team organisation to software quality
From team organisation to software qualityAlexander Serebrenik
 
Women in Dutch Computer Science: Best Practices for Recruitment, Onboarding a...
Women in Dutch Computer Science: Best Practices for Recruitment, Onboarding a...Women in Dutch Computer Science: Best Practices for Recruitment, Onboarding a...
Women in Dutch Computer Science: Best Practices for Recruitment, Onboarding a...Alexander Serebrenik
 
My research story (presentation at ICSE 2021 New Faculty Symposium)
My research story (presentation at ICSE 2021 New Faculty Symposium)My research story (presentation at ICSE 2021 New Faculty Symposium)
My research story (presentation at ICSE 2021 New Faculty Symposium)Alexander Serebrenik
 
Removing Self Admitted Technical Debt
Removing Self Admitted Technical DebtRemoving Self Admitted Technical Debt
Removing Self Admitted Technical DebtAlexander Serebrenik
 
Gender Diversity and Inclusion and Software Engineering
Gender Diversity and Inclusion and Software EngineeringGender Diversity and Inclusion and Software Engineering
Gender Diversity and Inclusion and Software EngineeringAlexander Serebrenik
 
Identifying Developers’ Gender: State of the Art
Identifying Developers’ Gender: State of the ArtIdentifying Developers’ Gender: State of the Art
Identifying Developers’ Gender: State of the ArtAlexander Serebrenik
 

Más de Alexander Serebrenik (20)

Software development is a human activity: understanding software requires und...
Software development is a human activity: understanding software requires und...Software development is a human activity: understanding software requires und...
Software development is a human activity: understanding software requires und...
 
Towards Continuous Performance Assessment of Java Applications With PerfBot
Towards Continuous Performance Assessment of Java Applications With PerfBotTowards Continuous Performance Assessment of Java Applications With PerfBot
Towards Continuous Performance Assessment of Java Applications With PerfBot
 
“STILL AROUND”: Experiences and Survival Strategies of Veteran Women Software...
“STILL AROUND”: Experiences and Survival Strategies of Veteran Women Software...“STILL AROUND”: Experiences and Survival Strategies of Veteran Women Software...
“STILL AROUND”: Experiences and Survival Strategies of Veteran Women Software...
 
A Qualitative Study of Developers’ Discussions of Their Problems and Joys Dur...
A Qualitative Study of Developers’ Discussions of Their Problems and Joys Dur...A Qualitative Study of Developers’ Discussions of Their Problems and Joys Dur...
A Qualitative Study of Developers’ Discussions of Their Problems and Joys Dur...
 
Emotion Analysis in Software Ecosystems
Emotion Analysis in Software EcosystemsEmotion Analysis in Software Ecosystems
Emotion Analysis in Software Ecosystems
 
Investigating the Resolution of Vulnerable Dependencies with Dependabot Secur...
Investigating the Resolution of Vulnerable Dependencies with Dependabot Secur...Investigating the Resolution of Vulnerable Dependencies with Dependabot Secur...
Investigating the Resolution of Vulnerable Dependencies with Dependabot Secur...
 
Gender and Age in Software Engineering
Gender and Age in Software EngineeringGender and Age in Software Engineering
Gender and Age in Software Engineering
 
Alexander - intro
Alexander - introAlexander - intro
Alexander - intro
 
Diversity and inclusion in a CS classroom
Diversity and inclusion in a CS classroomDiversity and inclusion in a CS classroom
Diversity and inclusion in a CS classroom
 
An Empirical Assessment on Merging and Repositioning of Static Analysis Alarms
An Empirical Assessment on Merging and Repositioning of Static Analysis AlarmsAn Empirical Assessment on Merging and Repositioning of Static Analysis Alarms
An Empirical Assessment on Merging and Repositioning of Static Analysis Alarms
 
Classification and Ranking of Delta Static Analysis Alarms
Classification and Ranking of Delta Static Analysis AlarmsClassification and Ranking of Delta Static Analysis Alarms
Classification and Ranking of Delta Static Analysis Alarms
 
What Is an AI Engineer? An Empirical Analysis of Job Ads in The Netherlands
What Is an AI Engineer? An Empirical Analysis of Job Ads in The NetherlandsWhat Is an AI Engineer? An Empirical Analysis of Job Ads in The Netherlands
What Is an AI Engineer? An Empirical Analysis of Job Ads in The Netherlands
 
Gender and Community Smells
Gender and Community SmellsGender and Community Smells
Gender and Community Smells
 
Bias in MSR Research
Bias in MSR ResearchBias in MSR Research
Bias in MSR Research
 
From team organisation to software quality
From team organisation to software qualityFrom team organisation to software quality
From team organisation to software quality
 
Women in Dutch Computer Science: Best Practices for Recruitment, Onboarding a...
Women in Dutch Computer Science: Best Practices for Recruitment, Onboarding a...Women in Dutch Computer Science: Best Practices for Recruitment, Onboarding a...
Women in Dutch Computer Science: Best Practices for Recruitment, Onboarding a...
 
My research story (presentation at ICSE 2021 New Faculty Symposium)
My research story (presentation at ICSE 2021 New Faculty Symposium)My research story (presentation at ICSE 2021 New Faculty Symposium)
My research story (presentation at ICSE 2021 New Faculty Symposium)
 
Removing Self Admitted Technical Debt
Removing Self Admitted Technical DebtRemoving Self Admitted Technical Debt
Removing Self Admitted Technical Debt
 
Gender Diversity and Inclusion and Software Engineering
Gender Diversity and Inclusion and Software EngineeringGender Diversity and Inclusion and Software Engineering
Gender Diversity and Inclusion and Software Engineering
 
Identifying Developers’ Gender: State of the Art
Identifying Developers’ Gender: State of the ArtIdentifying Developers’ Gender: State of the Art
Identifying Developers’ Gender: State of the Art
 

Último

Animal Communication- Auditory and Visual.pptx
Animal Communication- Auditory and Visual.pptxAnimal Communication- Auditory and Visual.pptx
Animal Communication- Auditory and Visual.pptxUmerFayaz5
 
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsHubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsSérgio Sacani
 
Spermiogenesis or Spermateleosis or metamorphosis of spermatid
Spermiogenesis or Spermateleosis or metamorphosis of spermatidSpermiogenesis or Spermateleosis or metamorphosis of spermatid
Spermiogenesis or Spermateleosis or metamorphosis of spermatidSarthak Sekhar Mondal
 
Chemistry 4th semester series (krishna).pdf
Chemistry 4th semester series (krishna).pdfChemistry 4th semester series (krishna).pdf
Chemistry 4th semester series (krishna).pdfSumit Kumar yadav
 
Chromatin Structure | EUCHROMATIN | HETEROCHROMATIN
Chromatin Structure | EUCHROMATIN | HETEROCHROMATINChromatin Structure | EUCHROMATIN | HETEROCHROMATIN
Chromatin Structure | EUCHROMATIN | HETEROCHROMATINsankalpkumarsahoo174
 
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdfPests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdfPirithiRaju
 
Botany 4th semester file By Sumit Kumar yadav.pdf
Botany 4th semester file By Sumit Kumar yadav.pdfBotany 4th semester file By Sumit Kumar yadav.pdf
Botany 4th semester file By Sumit Kumar yadav.pdfSumit Kumar yadav
 
Pests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdfPests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdfPirithiRaju
 
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRStunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRDelhi Call girls
 
GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)Areesha Ahmad
 
GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)Areesha Ahmad
 
Biopesticide (2).pptx .This slides helps to know the different types of biop...
Biopesticide (2).pptx  .This slides helps to know the different types of biop...Biopesticide (2).pptx  .This slides helps to know the different types of biop...
Biopesticide (2).pptx .This slides helps to know the different types of biop...RohitNehra6
 
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...anilsa9823
 
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Sérgio Sacani
 
Botany 4th semester series (krishna).pdf
Botany 4th semester series (krishna).pdfBotany 4th semester series (krishna).pdf
Botany 4th semester series (krishna).pdfSumit Kumar yadav
 
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bAsymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bSérgio Sacani
 
Recombinant DNA technology (Immunological screening)
Recombinant DNA technology (Immunological screening)Recombinant DNA technology (Immunological screening)
Recombinant DNA technology (Immunological screening)PraveenaKalaiselvan1
 
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 60009654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000Sapana Sha
 
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptxUnlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptxanandsmhk
 
DIFFERENCE IN BACK CROSS AND TEST CROSS
DIFFERENCE IN  BACK CROSS AND TEST CROSSDIFFERENCE IN  BACK CROSS AND TEST CROSS
DIFFERENCE IN BACK CROSS AND TEST CROSSLeenakshiTyagi
 

Último (20)

Animal Communication- Auditory and Visual.pptx
Animal Communication- Auditory and Visual.pptxAnimal Communication- Auditory and Visual.pptx
Animal Communication- Auditory and Visual.pptx
 
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsHubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
 
Spermiogenesis or Spermateleosis or metamorphosis of spermatid
Spermiogenesis or Spermateleosis or metamorphosis of spermatidSpermiogenesis or Spermateleosis or metamorphosis of spermatid
Spermiogenesis or Spermateleosis or metamorphosis of spermatid
 
Chemistry 4th semester series (krishna).pdf
Chemistry 4th semester series (krishna).pdfChemistry 4th semester series (krishna).pdf
Chemistry 4th semester series (krishna).pdf
 
Chromatin Structure | EUCHROMATIN | HETEROCHROMATIN
Chromatin Structure | EUCHROMATIN | HETEROCHROMATINChromatin Structure | EUCHROMATIN | HETEROCHROMATIN
Chromatin Structure | EUCHROMATIN | HETEROCHROMATIN
 
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdfPests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
 
Botany 4th semester file By Sumit Kumar yadav.pdf
Botany 4th semester file By Sumit Kumar yadav.pdfBotany 4th semester file By Sumit Kumar yadav.pdf
Botany 4th semester file By Sumit Kumar yadav.pdf
 
Pests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdfPests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdf
 
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRStunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
 
GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)
 
GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)
 
Biopesticide (2).pptx .This slides helps to know the different types of biop...
Biopesticide (2).pptx  .This slides helps to know the different types of biop...Biopesticide (2).pptx  .This slides helps to know the different types of biop...
Biopesticide (2).pptx .This slides helps to know the different types of biop...
 
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...
 
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
 
Botany 4th semester series (krishna).pdf
Botany 4th semester series (krishna).pdfBotany 4th semester series (krishna).pdf
Botany 4th semester series (krishna).pdf
 
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bAsymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
 
Recombinant DNA technology (Immunological screening)
Recombinant DNA technology (Immunological screening)Recombinant DNA technology (Immunological screening)
Recombinant DNA technology (Immunological screening)
 
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 60009654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
 
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptxUnlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptx
 
DIFFERENCE IN BACK CROSS AND TEST CROSS
DIFFERENCE IN  BACK CROSS AND TEST CROSSDIFFERENCE IN  BACK CROSS AND TEST CROSS
DIFFERENCE IN BACK CROSS AND TEST CROSS
 

Analyzing the Eclipse API Usage: Putting the Developer in the Loop

  • 1. Analyzing the Eclipse API Usage: Putting the Developer in the Loop John Businge, Alexander Serebrenik, Mark van den Brand
  • 2. Introduction Software Engineering and Technology (SET) PAGE 19-6-2014 Software engineering researchers obtaining convincing evidence
  • 3. Introduction Software Engineering and Technology (SET) PAGE 29-6-2014 Software engineering researchers obtaining convincing evidence Few examples of convincing evidence
  • 4. Introduction Software Engineering and Technology (SET) PAGE 39-6-2014 Software engineering researchers obtaining convincing evidence Few examples of convincing evidence Researchers generate evidence about A, C, D and E yet developers care about B
  • 5. Introduction Software Engineering and Technology (SET) PAGE 49-6-2014 Software engineering researchers obtaining convincing evidence Few examples of convincing evidence Researchers generate evidence about A, C, D and E yet developers care about B Include developer in the loop
  • 6. Terms used Software Engineering and Technology (SET) PAGE 59-6-2014 P1 P4P3P2 Eclipse Framework Eclipse Third- party Plug-ins (ETPs)
  • 7. Terms used Software Engineering and Technology (SET) PAGE 69-6-2014 P1 P4P3P2 Eclipse Framework Eclipse Third- party Plug-ins (ETPs) Eclipse APIs(“good”) • no “internal” • stable, • supported Eclipse non-APIs (“bad”) • “internal” • unstable, • discouraged, • unsupported  P3 – good ETPs  P1, P2 and P4 – bad ETPs
  • 8. Terms used • Eclipse provisional API guidelines – document provided by Eclipse describing the different interfaces Software Engineering and Technology (SET) PAGE 79-6-2014 Embryonic interfaces
  • 9. Terms used • Eclipse provisional API guidelines – document provided by Eclipse describing the different interfaces Software Engineering and Technology (SET) PAGE 89-6-2014 Embryonic interfaces Battle-headed interfaces
  • 10. Motivation of our study • Our previous studies about Eclipse API Usage were based on source code analysis. • Our observations: 1. 44% of ETPs on SourceForge use bad interfaces. 2. bad ETPs are larger than good ETPs. 3. Good interfaces are indeed very stable in new framework releases. 4. Bad interfaces are indeed unstable in new framework releases. Software Engineering and Technology (SET) PAGE 99-6-2014
  • 11. Motivation of our study • Omitting developer in the loop in previous studies • Why bad ETPs are larger than good ETPs???? • Why developers use bad interfaces???? Software Engineering and Technology (SET) PAGE 109-6-2014 Include developer in the loop
  • 12. Survey to include developer in loop • Goal – obtain the state-of-practice Eclipse interface usage 1. Reasons for use of bad interfaces 2. Difference in characteristics of bad ETPs and good ETPs • Research questions RQ1: Can we observe some relationships in factors related to Eclipse interface usage in the survey? RQ2: What are the differences in characteristics between bad and good ETPs? RQ3: What are the differences in characteristics between proprietary and open-source ETPs? Software Engineering and Technology (SET) PAGE 119-6-2014
  • 13. Survey to include developer in loop • Goal – obtain the state-of-practice Eclipse interface usage 1. Reasons for use of bad interfaces 2. Difference in characteristics of bad ETPs and good ETPs • Research questions RQ1: Can we observe some relationships in factors related to Eclipse interface usage in the survey? RQ2: What are the differences in characteristics between bad and good ETPs? RQ3: What are the differences in characteristics between proprietary and open-source ETPs? Software Engineering and Technology (SET) PAGE 129-6-2014
  • 14. Survey factors of investigation Software Engineering and Technology (SET) PAGE 139-6-2014 No Factors 1 Years of Education 2 Experience as a software engineer 3 Experience as a Java developer 4 Experience as an ETP developer 5 ETP development team size 6 Importance of updating ETP with new Eclipse releases 7 Number of versions of the ETP 8 Number of files of the ETP 9 Awareness of Eclipse guidelines 10 Following Eclipse guidelines
  • 15. Sample Questions in the survey i. How many years of experience as an Eclipse product/solution developer do you have? ii. Are you aware of the “Eclipse Provisional API Guidelines”? iii. Do you use non-APIs? iv. If answer was “NO” in (iii). Do you deliberately avoid using Eclipse non-APIs? • Survey Response − 30 ETP developers fully answered the questionnaire. Software Engineering and Technology (SET) PAGE 149-6-2014
  • 16. RQ2 and RQ3 - groups • RQ2 – Difference between good and bad ETPs Software Engineering and Technology (SET) PAGE 159-6-2014 Use of bad interfaces Group Respondents Developers who use bad interfaces 21 Developers who do not use bad interfaces 9 Open-source vs proprietary ETPs Group Respondents Developers who develop open-source ETPs 16 Developers who develop proprietary ETPs 14 • RQ3 – Difference between proprietary and open- source ETPs
  • 17. RQ2 and RQ3 - groups • The two groups of RQ2 and RQ3 can be compared using the 10 identified factors. Software Engineering and Technology (SET) PAGE 169-6-2014
  • 18. Differences between bad and good ETPs – RQ2 • Hypotheses: • H0: Developers who use bad interfaces and those who do not use bad interfaces have the same average values on each of the identified factors. • Ha: There is a difference on the average values of the identified factors between the developers that use and do not use bad interfaces. Software Engineering and Technology (SET) PAGE 179-6-2014
  • 19. Differences between developers that use and those that do not use bad interfaces Factors Difference Years of Education NO Experience as a software engineer YES Experience as a Java developer YES Experience as an Eclipse plug-in developer YES ETP development team size YES Importance of updating the plug-in with Eclipse NO Number of versions NO Number of files YES Awareness of Eclipse guidelines NO Following Eclipse guidelines NO Software Engineering and Technology (SET) PAGE 189-6-2014
  • 20. Differences between developers that use and those that do not use bad interfaces Factors Difference Years of Education NO Experience as a software engineer YES Experience as a Java developer YES Experience as an Eclipse plug-in developer YES ETP development team size YES Importance of updating the plug-in with Eclipse NO Number of versions NO Number of files YES Awareness of Eclipse guidelines NO Following Eclipse guidelines NO Software Engineering and Technology (SET) PAGE 199-6-2014 We reject H0 that Developers who use bad interfaces and those who do not use bad interfaces have the same average values on each of the identified factors
  • 21. How different are the two groups of developers? • We discovered that developers that use bad interfaces have higher values on these factors compared to those that do not use bad interfaces Software Engineering and Technology (SET) PAGE 209-6-2014 Factors Experience as a software engineer Experience as a Java developer Experience as an Eclipse plug-in developer ETP development team size Number of files
  • 22. How different are the two groups of developers? • We discovered that developers that use bad interfaces have higher values on these factors compared to those that do not use bad interfaces Software Engineering and Technology (SET) PAGE 219-6-2014 Factors Experience as a software engineer Experience as a Java developer Experience as an Eclipse plug-in developer ETP development team size Number of files 1. More experiences developers 2. Larger ETP development teams Previously unanswered question “Why bad ETPs are larger than good ETPs?” Human factors Developers of bad ETPs
  • 23. Differences between open-source and proprietary ETPs • Motivation: • Previous studies we only considered open-source software potentially putting generalizability to proprietary software in jeopardy. • Hypotheses: • H0: Developers of open-source and proprietary ETPs have the same average values on each of the identified factors. • Ha: There is a difference on the average values of the identified factors between the developers of open- source and proprietary ETPs. Software Engineering and Technology (SET) PAGE 229-6-2014
  • 24. How different are the two groups of open- source and proprietary developers? Software Engineering and Technology (SET) PAGE 239-6-2014 Factors Difference Years of Education NO Experience as a software engineer NO Experience as a Java developer NO Experience as an Eclipse plug-in developer NO ETP development team size NO Importance of updating the plug-in with Eclipse NO Number of versions NO Number of files NO Awareness of Eclipse guidelines NO Following Eclipse guidelines NO
  • 25. How different are the two groups of open- source and proprietary developers? • We accept H0 that there is no difference between open- source and proprietary ETPs in terms of the factors investigated Software Engineering and Technology (SET) PAGE 249-6-2014 Factors Difference Years of Education NO Experience as a software engineer NO Experience as a Java developer NO Experience as an Eclipse plug-in developer NO ETP development team size NO Importance of updating the plug-in with Eclipse NO Number of versions NO Number of files NO Awareness of Eclipse guidelines NO Following Eclipse guidelines NO
  • 26. How different are the two groups of open- source and proprietary developers? • Current findings clear our doubts on generalizability of our previous studies. Software Engineering and Technology (SET) PAGE 259-6-2014
  • 27. Use of bad interfaces • Asked why developers deliberately avoid using bad interfaces. − Answerers were related to, knowing/assuming that the bad interfaces are unstable. • Asked why developers deliberately use bad interfaces − No good interface with necessary functionality. − Avoid reinventing the wheel. − To expose these bad interfaces. − Old bad interfaces are unlikely to disappear Software Engineering and Technology (SET) PAGE 269-6-2014
  • 28. Use of bad interfaces • Asked why developers deliberately avoid using bad interfaces. − Answerers were related to, knowing/assuming that the bad interfaces are unstable. Less experienced developers • Asked why developers deliberately use bad interfaces − No good interface with necessary functionality. − Avoid reinventing the wheel. − To expose these bad interfaces. − Old bad interfaces are unlikely to disappear More experienced developers Software Engineering and Technology (SET) PAGE 279-6-2014
  • 29. Conclusion Software Engineering and Technology (SET) PAGE 289-6-2014 Survey was conducted to understand why developers use bad interfaces.
  • 30. Conclusion Software Engineering and Technology (SET) PAGE 299-6-2014 Less experienced developers Survey was conducted to understand why developers use bad interfaces. Instability overshadows benefits
  • 31. Conclusion Software Engineering and Technology (SET) PAGE 309-6-2014 Less experienced developers More experienced developers Survey was conducted to understand why developers use bad interfaces. Instability overshadows benefits Enjoy benefits despite the instability
  • 32. Conclusion Software Engineering and Technology (SET) PAGE 319-6-2014 Less experienced developers More experienced developers Survey was conducted to understand why developers use bad interfaces. Instability overshadows benefits Enjoy benefits despite the instability Discovered that there is no difference between proprietary and open-source ETPs based on the factors we studied.
  • 33. Thank you for listening Software Engineering and Technology (SET) PAGE 329-6-2014 • http://www.win.tue.nl/~jbusinge/CSMR13/ Researchers should generate evidence about topics developers care about Include developer in the loop by

Notas del editor

  1. Technical support from framework developers, ease of maintenance, and