SlideShare une entreprise Scribd logo
1  sur  20
Télécharger pour lire hors ligne
Women and Men – Different but Equal:
On the Impact of Identifier Style on
Source Code Reading
Zohreh Sharafi, Zéphyrin Soh,
Yann-Gaël Guéhéneuc, and Giuliano Antoniol
Ptidej Team and Soccer Lab,
École Polytechnique de Montréal, Montréal, Canada.

1
Introduction
Documentation

Program evolution is often
solely based on source code.

Comments

Not available
Outdated

Program comprehension
heavily depends on identifiers.
Not available
Not useful
2
Introduction
What is the impact of identifiers on program
comprehension?





Identifier Style (Sharif 20101, Binkley 20092)
 Camel

Case
 Underscore


Identifier quality (Lawrie 20073)
 Length
 Structure

3

1. D. Binkley, M. Davis, D. Lawrie, and C. Morrell, “To camelcase or under score,” ICPC, 2009
2. B. Sharif and J. Maletic, “An eye tracking study on camelcase and under score identifier styles, ICPC, 2010
3. D. Lawrie, C. Morrell, H. Feild, and D. Binkley, “Effective identifier names for comprehension and memory,” Innovations in Systems and Software
Engineering, 2007.
Identifier Style
Investigate the Impact of Identifier Style
“Camel Case vs. Underscore”
Time
Binkley, 20091

Time

Higher accuracy for
Camel Case

No difference

More time spent on
Camel Case

More time spent on
Camel Case

Not applicable

Accuracy

Sharif, 20102

Lower visual effort on
Underscore

Effort

4

1. D. Binkley, M. Davis, D. Lawrie, and C. Morrell, “To camelcase or under scoreI, CPC, 2009
2. B. Sharif and J. Maletic, “An eye tracking study on camelcase and under score identifier styles,” ICPC , 2010
Gender Preference


Does gender affects identifier style preference?
Camel Case?
Underscore?



Camel Case?
Underscore?

Does gender and identifier style affects program
understanding?
5
Related Work
Self-efficacy
(1994)1

Lower self-efficacy

Higher self-efficacy

Selectivity
Hypothesis
(2001)2

Use comprehensive way

Use simple heuristic

Software
Adaptation &
Use (2003)3

No experience
=
No self-confidence

Apply general knowledge
for specific tasks

Testing
Strategies
(2009)4

Use testing only for finding
bugs

6

1.
2.
3.
4.

Use testing for:
1. finding bugs
2. fixing bugs
3. evaluating their fix

G. Torkzadeh and X. Koufteros, “Factorial validity of a computer self-efficacy scale and the impact of computer training1994.
E. O’Donnell and E. Johnson, “The effects of auditor gender and task complexity on information processing efficiency,” 2001.
K. Hartzel, “How self-efficacy and gender issues affect software adoption and use,” Communications of the ACM, 2003.
V. Grigoreanu, J. Brundage, E. Bahna, M. Burnett, P. ElRif, and J. Snover, “Males and females script debugging strategies,” 2009.
Our Empirical Study
Goal: Design and perform an experiment to investigate the impact
of gender on identifier styles and identifier comprehension
strategies

Research question: Does the developers’ gender impact their

effort, their required time, and as well as their ability to recall
identifiers (accuracy) in source code reading?



Memorability impacts the comprehension of
identifiers1,2,3

7

Lacking memorability may impair:
Identifiers recall Code readability

Program comprehension

1. D. M. Jones, 2003, the New C Standard (Identifiers) An Economic and Cultural Commentary.
2. B. Sharif and J. Maletic, “An eye tracking study on camelcase and under score identifier styles, ICPC, 2010
3. D. Lawrie, C. Morrell, H. Feild, and D. Binkley, “Effective identifier names for comprehension and memory,” 2007
Experiment Design
Independent variables



1.
2.

Gender: male (M) or female (F)
Identifier style: Camel Case (CC) or Underscore (US)

Dependent variables



1.
2.
3.

Accuracy
Required time (Speed)
Visual effort

Mitigating variables



1.
2.

8

Study level
Style preference of subjects
Experiment Design
Subjects’ Demography
(24 Subjects)
Academic background

Gender

Ph.D.

M.Sc.

B.Sc.

Male

Female

11

10

3

15

9

Source code stimulus

9

Question stimulus
Experiment Design
Eye-tracking system


FaceLAB1:






Video-based
Two cameras
An infrared sensor

Non-intrusive




No goggles,
No wires
No sensing device

10

1. http://www.seeingmachines.com/
Results and Analyses:
Accuracy and Time
Accuracy

Time (min)

Accuracy

Men

Women

Time

Men

Women

Camel Case

83%

80%

Camel Case

5.25

6.6

Underscore

68%

85%

Underscore

6.7

7.8

Table 1 - Accuracy

Table 2 - Time
Accuracy

Time (min)

Men

74%

5.94

Women

82%

7.18

Table 3 - Overall Time and Accuracy
Accuracy

No significant differences
No significant differences

Time
11
Results and Analyses:
Visual Effort


Visual effort:



Calculated from eye-tracking data
Calculated based on the amount of visual attention:


Less attention

Less effort



Visual attention can trigger the mental processes



Two types of eye gaze data:





Fixation
Saccade

We use fixation to calculate effort as previous works
12
Results and Analyses:

Visual Effort Metric - Source code Stimulus


Convex hull: the smallest convex sets of fixations that

contains all of a subject’s fixations1



Source Code Stimulus

Smaller convex hull
Close fixations
Less effort

13

1.

J. H. Goldberg and X. P. Kotval, “Computer interface evaluation using eye movements: methods and constructs,”, 1999.
Results and Analyses:

Visual Effort Metrics - Question Stimulus

Metrics to measure visual effort
(Sharif 20101)

Question Stimulus

1. B. Sharif and J. Maletic, “An eye tracking study on camelcase and under score identifier styles,” IEEE 18th International Conference on Program
Comprehension , 2010
Result and Analysis:
Visual Effort

FC(Q)

No significant differences

FR(Correct) No significant differences
Effort

• Female

FR(distracter) Female subjects spends more visual
effort

subjects put more visual effort on distracters
• Female subjects analyze all distracters before making decision

15
Results and Analyses:
Visual Effort

16

Heatmap
Conclusion
Investigate the Impact of Identifier Style
“Camel Case vs. Underscore”
Binkley, 20091

Time

Our Experiment

(135 subjects)

Accuracy

Sharif, 20102
(15 subjects)

(24 subjects)

Higher
accuracy for
Camel Case
More time
spent on
Camel Case
Not
applicable

No difference

No difference

More time spent
on
Camel Case
Lower visual effort
on Underscore

No difference

No difference

Effort
17

1. D. Binkley, M. Davis, D. Lawrie, and C. Morrell, “To camelcase or under score,” ICPC, 2009
2. B. Sharif and J. Maletic, “An eye tracking study on camelcase and under score identifier styles,” ICPC, 2010
Conclusion


Gender does NOT impact:
Accuracy
• Spend

Time

more effort on alternative answers
• Seem to:
• Carefully weight all options
• Rule out wrong answers
• Statistically strong interaction between accuracy and
effort on distracters
Effort

18

Seem to quickly go for one choice
• No correlation between effort and accuracy
Threats to Validity


Internal validity:





Random ordering of source code
Comfortable environment

External validity (generalization of the results):


Students as subjects




19

Students are the next generation of software professionals1

24 subjects
 9 female subjects  Not large enough to be generalized
 A call for further studies
1. B. A. Kitchenham, S. L. Pfleeger, L. M. Pickard, P. W. Jones, D. C. Hoaglin, K. E. Emam, and J. Rosenberg, “Preliminary guidelines for
empirical research in software engineering,” IEEE Trans. Softw. Eng., 2002
Last but not Least
Gender does NOT impact:



Accuracy

Male and female subjects use different strategiess to
select the correct answer





Time

Understanding systematic biases between men and women:



20

Design tools and methods better adapted to different developers
Support different program understanding strategies

Contenu connexe

En vedette

Uzdevumi grāmatā Succeed: How We Can Reach Our Goals apskats
Uzdevumi grāmatā Succeed: How We Can Reach Our Goals apskatsUzdevumi grāmatā Succeed: How We Can Reach Our Goals apskats
Uzdevumi grāmatā Succeed: How We Can Reach Our Goals apskatsFranklinCovey Latvia
 
Affordable care act and community health centeres
Affordable care act and community health centeresAffordable care act and community health centeres
Affordable care act and community health centeresfjlanasa
 
AsianPLoP'14: How and Why Design Patterns Impact Quality and Future Challenges
AsianPLoP'14: How and Why Design Patterns Impact Quality and Future ChallengesAsianPLoP'14: How and Why Design Patterns Impact Quality and Future Challenges
AsianPLoP'14: How and Why Design Patterns Impact Quality and Future ChallengesPtidej Team
 
Design Patterns & JDK Examples
Design Patterns & JDK ExamplesDesign Patterns & JDK Examples
Design Patterns & JDK ExamplesEnder Aydin Orak
 
PPT on BASIC CONCEPTION ON HUMPHERY AUTOMATED PERIMETRY
PPT on BASIC CONCEPTION ON HUMPHERY AUTOMATED PERIMETRY PPT on BASIC CONCEPTION ON HUMPHERY AUTOMATED PERIMETRY
PPT on BASIC CONCEPTION ON HUMPHERY AUTOMATED PERIMETRY Nalin Nayan
 
Visual Field Examination
Visual Field ExaminationVisual Field Examination
Visual Field ExaminationPaavan Kalra
 

En vedette (7)

Uzdevumi grāmatā Succeed: How We Can Reach Our Goals apskats
Uzdevumi grāmatā Succeed: How We Can Reach Our Goals apskatsUzdevumi grāmatā Succeed: How We Can Reach Our Goals apskats
Uzdevumi grāmatā Succeed: How We Can Reach Our Goals apskats
 
Affordable care act and community health centeres
Affordable care act and community health centeresAffordable care act and community health centeres
Affordable care act and community health centeres
 
AsianPLoP'14: How and Why Design Patterns Impact Quality and Future Challenges
AsianPLoP'14: How and Why Design Patterns Impact Quality and Future ChallengesAsianPLoP'14: How and Why Design Patterns Impact Quality and Future Challenges
AsianPLoP'14: How and Why Design Patterns Impact Quality and Future Challenges
 
Design Patterns & JDK Examples
Design Patterns & JDK ExamplesDesign Patterns & JDK Examples
Design Patterns & JDK Examples
 
PPT on BASIC CONCEPTION ON HUMPHERY AUTOMATED PERIMETRY
PPT on BASIC CONCEPTION ON HUMPHERY AUTOMATED PERIMETRY PPT on BASIC CONCEPTION ON HUMPHERY AUTOMATED PERIMETRY
PPT on BASIC CONCEPTION ON HUMPHERY AUTOMATED PERIMETRY
 
Design patterns
Design patternsDesign patterns
Design patterns
 
Visual Field Examination
Visual Field ExaminationVisual Field Examination
Visual Field Examination
 

Similaire à Icpc12b.ppt

Thesis+of+zohreh+sharafi.ppt
Thesis+of+zohreh+sharafi.pptThesis+of+zohreh+sharafi.ppt
Thesis+of+zohreh+sharafi.pptPtidej Team
 
Mukha ng research methodology
Mukha ng research methodologyMukha ng research methodology
Mukha ng research methodologyGAMALI Roper
 
Nikolaou HR Pro Recruitment Conference 2019
Nikolaou HR Pro Recruitment Conference 2019Nikolaou HR Pro Recruitment Conference 2019
Nikolaou HR Pro Recruitment Conference 2019Ioannis Nikolaou
 
Interactive Recommender Systems
Interactive Recommender SystemsInteractive Recommender Systems
Interactive Recommender SystemsKatrien Verbert
 
Editing Digital Imagery in Research: Exploring the Fidelity-to-Artificiality...
Editing Digital Imagery in Research:  Exploring the Fidelity-to-Artificiality...Editing Digital Imagery in Research:  Exploring the Fidelity-to-Artificiality...
Editing Digital Imagery in Research: Exploring the Fidelity-to-Artificiality...Shalin Hai-Jew
 
Gobert, Dede, Martin, Rose "Panel: Learning Analytics and Learning Sciences"
Gobert, Dede, Martin, Rose "Panel: Learning Analytics and Learning Sciences"Gobert, Dede, Martin, Rose "Panel: Learning Analytics and Learning Sciences"
Gobert, Dede, Martin, Rose "Panel: Learning Analytics and Learning Sciences"CITE
 
The Influence of Participant Personality in Usability Tests
The Influence of Participant Personality in Usability TestsThe Influence of Participant Personality in Usability Tests
The Influence of Participant Personality in Usability TestsCSCJournals
 
IUE14 Presentation - Studies UX Pros should know
IUE14 Presentation - Studies UX Pros should know IUE14 Presentation - Studies UX Pros should know
IUE14 Presentation - Studies UX Pros should know Kath Straub
 
Trichotomous Goal Theory- do Achievement Goals Influence Cognitive Task Perfo...
Trichotomous Goal Theory- do Achievement Goals Influence Cognitive Task Perfo...Trichotomous Goal Theory- do Achievement Goals Influence Cognitive Task Perfo...
Trichotomous Goal Theory- do Achievement Goals Influence Cognitive Task Perfo...Joe Humphreys
 
Week 11Collection of Data – questionnaire and Instruments & .docx
Week 11Collection of Data – questionnaire and Instruments & .docxWeek 11Collection of Data – questionnaire and Instruments & .docx
Week 11Collection of Data – questionnaire and Instruments & .docxmelbruce90096
 
Effect of Multitasking on GPA - Research Paper
Effect of Multitasking on GPA - Research PaperEffect of Multitasking on GPA - Research Paper
Effect of Multitasking on GPA - Research PaperDivya Kothari
 
Advanced Methods for User Evaluation in Enterprise AR
Advanced Methods for User Evaluation in Enterprise ARAdvanced Methods for User Evaluation in Enterprise AR
Advanced Methods for User Evaluation in Enterprise ARMark Billinghurst
 
IGNIS 2018 Webinar To Lock or Not to Lock: Using Respondus for.Secure Assessm...
IGNIS 2018 Webinar To Lock or Not to Lock: Using Respondus for.Secure Assessm...IGNIS 2018 Webinar To Lock or Not to Lock: Using Respondus for.Secure Assessm...
IGNIS 2018 Webinar To Lock or Not to Lock: Using Respondus for.Secure Assessm...SBCTCProfessionalLearning
 
Individual Differences, User Perceptions and Eye Gaze in Biomedical Search In...
Individual Differences, User Perceptions and Eye Gaze in Biomedical Search In...Individual Differences, User Perceptions and Eye Gaze in Biomedical Search In...
Individual Differences, User Perceptions and Eye Gaze in Biomedical Search In...Ying-Hsang Liu
 
Influence of electronic word of mouth on Consumers Purchase Intention
Influence of electronic word of mouth on Consumers Purchase IntentionInfluence of electronic word of mouth on Consumers Purchase Intention
Influence of electronic word of mouth on Consumers Purchase IntentionNasif Chowdhury
 

Similaire à Icpc12b.ppt (20)

Icpc12b.ppt
Icpc12b.pptIcpc12b.ppt
Icpc12b.ppt
 
Thesis+of+zohreh+sharafi.ppt
Thesis+of+zohreh+sharafi.pptThesis+of+zohreh+sharafi.ppt
Thesis+of+zohreh+sharafi.ppt
 
Mukha ng research methodology
Mukha ng research methodologyMukha ng research methodology
Mukha ng research methodology
 
Nikolaou HR Pro Recruitment Conference 2019
Nikolaou HR Pro Recruitment Conference 2019Nikolaou HR Pro Recruitment Conference 2019
Nikolaou HR Pro Recruitment Conference 2019
 
Interactive Recommender Systems
Interactive Recommender SystemsInteractive Recommender Systems
Interactive Recommender Systems
 
Posting Our Hearts Out
Posting Our Hearts OutPosting Our Hearts Out
Posting Our Hearts Out
 
Editing Digital Imagery in Research: Exploring the Fidelity-to-Artificiality...
Editing Digital Imagery in Research:  Exploring the Fidelity-to-Artificiality...Editing Digital Imagery in Research:  Exploring the Fidelity-to-Artificiality...
Editing Digital Imagery in Research: Exploring the Fidelity-to-Artificiality...
 
Gobert, Dede, Martin, Rose "Panel: Learning Analytics and Learning Sciences"
Gobert, Dede, Martin, Rose "Panel: Learning Analytics and Learning Sciences"Gobert, Dede, Martin, Rose "Panel: Learning Analytics and Learning Sciences"
Gobert, Dede, Martin, Rose "Panel: Learning Analytics and Learning Sciences"
 
The Influence of Participant Personality in Usability Tests
The Influence of Participant Personality in Usability TestsThe Influence of Participant Personality in Usability Tests
The Influence of Participant Personality in Usability Tests
 
IUE14 Presentation - Studies UX Pros should know
IUE14 Presentation - Studies UX Pros should know IUE14 Presentation - Studies UX Pros should know
IUE14 Presentation - Studies UX Pros should know
 
Trichotomous Goal Theory- do Achievement Goals Influence Cognitive Task Perfo...
Trichotomous Goal Theory- do Achievement Goals Influence Cognitive Task Perfo...Trichotomous Goal Theory- do Achievement Goals Influence Cognitive Task Perfo...
Trichotomous Goal Theory- do Achievement Goals Influence Cognitive Task Perfo...
 
Scil poster 2017
Scil poster 2017Scil poster 2017
Scil poster 2017
 
Week 11Collection of Data – questionnaire and Instruments & .docx
Week 11Collection of Data – questionnaire and Instruments & .docxWeek 11Collection of Data – questionnaire and Instruments & .docx
Week 11Collection of Data – questionnaire and Instruments & .docx
 
Icpc13.ppt
Icpc13.pptIcpc13.ppt
Icpc13.ppt
 
SCiL Poster
SCiL PosterSCiL Poster
SCiL Poster
 
Effect of Multitasking on GPA - Research Paper
Effect of Multitasking on GPA - Research PaperEffect of Multitasking on GPA - Research Paper
Effect of Multitasking on GPA - Research Paper
 
Advanced Methods for User Evaluation in Enterprise AR
Advanced Methods for User Evaluation in Enterprise ARAdvanced Methods for User Evaluation in Enterprise AR
Advanced Methods for User Evaluation in Enterprise AR
 
IGNIS 2018 Webinar To Lock or Not to Lock: Using Respondus for.Secure Assessm...
IGNIS 2018 Webinar To Lock or Not to Lock: Using Respondus for.Secure Assessm...IGNIS 2018 Webinar To Lock or Not to Lock: Using Respondus for.Secure Assessm...
IGNIS 2018 Webinar To Lock or Not to Lock: Using Respondus for.Secure Assessm...
 
Individual Differences, User Perceptions and Eye Gaze in Biomedical Search In...
Individual Differences, User Perceptions and Eye Gaze in Biomedical Search In...Individual Differences, User Perceptions and Eye Gaze in Biomedical Search In...
Individual Differences, User Perceptions and Eye Gaze in Biomedical Search In...
 
Influence of electronic word of mouth on Consumers Purchase Intention
Influence of electronic word of mouth on Consumers Purchase IntentionInfluence of electronic word of mouth on Consumers Purchase Intention
Influence of electronic word of mouth on Consumers Purchase Intention
 

Plus de Ptidej Team

From IoT to Software Miniaturisation
From IoT to Software MiniaturisationFrom IoT to Software Miniaturisation
From IoT to Software MiniaturisationPtidej Team
 
Presentation by Lionel Briand
Presentation by Lionel BriandPresentation by Lionel Briand
Presentation by Lionel BriandPtidej Team
 
Manel Abdellatif
Manel AbdellatifManel Abdellatif
Manel AbdellatifPtidej Team
 
Azadeh Kermansaravi
Azadeh KermansaraviAzadeh Kermansaravi
Azadeh KermansaraviPtidej Team
 
CSED - Manel Grichi
CSED - Manel GrichiCSED - Manel Grichi
CSED - Manel GrichiPtidej Team
 
Cristiano Politowski
Cristiano PolitowskiCristiano Politowski
Cristiano PolitowskiPtidej Team
 
Will io t trigger the next software crisis
Will io t trigger the next software crisisWill io t trigger the next software crisis
Will io t trigger the next software crisisPtidej Team
 
Thesis+of+laleh+eshkevari.ppt
Thesis+of+laleh+eshkevari.pptThesis+of+laleh+eshkevari.ppt
Thesis+of+laleh+eshkevari.pptPtidej Team
 
Thesis+of+nesrine+abdelkafi.ppt
Thesis+of+nesrine+abdelkafi.pptThesis+of+nesrine+abdelkafi.ppt
Thesis+of+nesrine+abdelkafi.pptPtidej Team
 

Plus de Ptidej Team (20)

From IoT to Software Miniaturisation
From IoT to Software MiniaturisationFrom IoT to Software Miniaturisation
From IoT to Software Miniaturisation
 
Presentation
PresentationPresentation
Presentation
 
Presentation
PresentationPresentation
Presentation
 
Presentation
PresentationPresentation
Presentation
 
Presentation by Lionel Briand
Presentation by Lionel BriandPresentation by Lionel Briand
Presentation by Lionel Briand
 
Manel Abdellatif
Manel AbdellatifManel Abdellatif
Manel Abdellatif
 
Azadeh Kermansaravi
Azadeh KermansaraviAzadeh Kermansaravi
Azadeh Kermansaravi
 
Mouna Abidi
Mouna AbidiMouna Abidi
Mouna Abidi
 
CSED - Manel Grichi
CSED - Manel GrichiCSED - Manel Grichi
CSED - Manel Grichi
 
Cristiano Politowski
Cristiano PolitowskiCristiano Politowski
Cristiano Politowski
 
Will io t trigger the next software crisis
Will io t trigger the next software crisisWill io t trigger the next software crisis
Will io t trigger the next software crisis
 
MIPA
MIPAMIPA
MIPA
 
Thesis+of+laleh+eshkevari.ppt
Thesis+of+laleh+eshkevari.pptThesis+of+laleh+eshkevari.ppt
Thesis+of+laleh+eshkevari.ppt
 
Thesis+of+nesrine+abdelkafi.ppt
Thesis+of+nesrine+abdelkafi.pptThesis+of+nesrine+abdelkafi.ppt
Thesis+of+nesrine+abdelkafi.ppt
 
Medicine15.ppt
Medicine15.pptMedicine15.ppt
Medicine15.ppt
 
Qrs17b.ppt
Qrs17b.pptQrs17b.ppt
Qrs17b.ppt
 
Icpc11c.ppt
Icpc11c.pptIcpc11c.ppt
Icpc11c.ppt
 
Icsme16.ppt
Icsme16.pptIcsme16.ppt
Icsme16.ppt
 
Msr17a.ppt
Msr17a.pptMsr17a.ppt
Msr17a.ppt
 
Icsoc15.ppt
Icsoc15.pptIcsoc15.ppt
Icsoc15.ppt
 

Dernier

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 

Dernier (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 

Icpc12b.ppt

  • 1. Women and Men – Different but Equal: On the Impact of Identifier Style on Source Code Reading Zohreh Sharafi, Zéphyrin Soh, Yann-Gaël Guéhéneuc, and Giuliano Antoniol Ptidej Team and Soccer Lab, École Polytechnique de Montréal, Montréal, Canada. 1
  • 2. Introduction Documentation Program evolution is often solely based on source code. Comments Not available Outdated Program comprehension heavily depends on identifiers. Not available Not useful 2
  • 3. Introduction What is the impact of identifiers on program comprehension?   Identifier Style (Sharif 20101, Binkley 20092)  Camel Case  Underscore  Identifier quality (Lawrie 20073)  Length  Structure 3 1. D. Binkley, M. Davis, D. Lawrie, and C. Morrell, “To camelcase or under score,” ICPC, 2009 2. B. Sharif and J. Maletic, “An eye tracking study on camelcase and under score identifier styles, ICPC, 2010 3. D. Lawrie, C. Morrell, H. Feild, and D. Binkley, “Effective identifier names for comprehension and memory,” Innovations in Systems and Software Engineering, 2007.
  • 4. Identifier Style Investigate the Impact of Identifier Style “Camel Case vs. Underscore” Time Binkley, 20091 Time Higher accuracy for Camel Case No difference More time spent on Camel Case More time spent on Camel Case Not applicable Accuracy Sharif, 20102 Lower visual effort on Underscore Effort 4 1. D. Binkley, M. Davis, D. Lawrie, and C. Morrell, “To camelcase or under scoreI, CPC, 2009 2. B. Sharif and J. Maletic, “An eye tracking study on camelcase and under score identifier styles,” ICPC , 2010
  • 5. Gender Preference  Does gender affects identifier style preference? Camel Case? Underscore?  Camel Case? Underscore? Does gender and identifier style affects program understanding? 5
  • 6. Related Work Self-efficacy (1994)1 Lower self-efficacy Higher self-efficacy Selectivity Hypothesis (2001)2 Use comprehensive way Use simple heuristic Software Adaptation & Use (2003)3 No experience = No self-confidence Apply general knowledge for specific tasks Testing Strategies (2009)4 Use testing only for finding bugs 6 1. 2. 3. 4. Use testing for: 1. finding bugs 2. fixing bugs 3. evaluating their fix G. Torkzadeh and X. Koufteros, “Factorial validity of a computer self-efficacy scale and the impact of computer training1994. E. O’Donnell and E. Johnson, “The effects of auditor gender and task complexity on information processing efficiency,” 2001. K. Hartzel, “How self-efficacy and gender issues affect software adoption and use,” Communications of the ACM, 2003. V. Grigoreanu, J. Brundage, E. Bahna, M. Burnett, P. ElRif, and J. Snover, “Males and females script debugging strategies,” 2009.
  • 7. Our Empirical Study Goal: Design and perform an experiment to investigate the impact of gender on identifier styles and identifier comprehension strategies Research question: Does the developers’ gender impact their effort, their required time, and as well as their ability to recall identifiers (accuracy) in source code reading?  Memorability impacts the comprehension of identifiers1,2,3  7 Lacking memorability may impair: Identifiers recall Code readability Program comprehension 1. D. M. Jones, 2003, the New C Standard (Identifiers) An Economic and Cultural Commentary. 2. B. Sharif and J. Maletic, “An eye tracking study on camelcase and under score identifier styles, ICPC, 2010 3. D. Lawrie, C. Morrell, H. Feild, and D. Binkley, “Effective identifier names for comprehension and memory,” 2007
  • 8. Experiment Design Independent variables  1. 2. Gender: male (M) or female (F) Identifier style: Camel Case (CC) or Underscore (US) Dependent variables  1. 2. 3. Accuracy Required time (Speed) Visual effort Mitigating variables  1. 2. 8 Study level Style preference of subjects
  • 9. Experiment Design Subjects’ Demography (24 Subjects) Academic background Gender Ph.D. M.Sc. B.Sc. Male Female 11 10 3 15 9 Source code stimulus 9 Question stimulus
  • 10. Experiment Design Eye-tracking system  FaceLAB1:     Video-based Two cameras An infrared sensor Non-intrusive    No goggles, No wires No sensing device 10 1. http://www.seeingmachines.com/
  • 11. Results and Analyses: Accuracy and Time Accuracy Time (min) Accuracy Men Women Time Men Women Camel Case 83% 80% Camel Case 5.25 6.6 Underscore 68% 85% Underscore 6.7 7.8 Table 1 - Accuracy Table 2 - Time Accuracy Time (min) Men 74% 5.94 Women 82% 7.18 Table 3 - Overall Time and Accuracy Accuracy No significant differences No significant differences Time 11
  • 12. Results and Analyses: Visual Effort  Visual effort:   Calculated from eye-tracking data Calculated based on the amount of visual attention:  Less attention Less effort  Visual attention can trigger the mental processes  Two types of eye gaze data:    Fixation Saccade We use fixation to calculate effort as previous works 12
  • 13. Results and Analyses: Visual Effort Metric - Source code Stimulus  Convex hull: the smallest convex sets of fixations that contains all of a subject’s fixations1  Source Code Stimulus Smaller convex hull Close fixations Less effort 13 1. J. H. Goldberg and X. P. Kotval, “Computer interface evaluation using eye movements: methods and constructs,”, 1999.
  • 14. Results and Analyses: Visual Effort Metrics - Question Stimulus Metrics to measure visual effort (Sharif 20101) Question Stimulus 1. B. Sharif and J. Maletic, “An eye tracking study on camelcase and under score identifier styles,” IEEE 18th International Conference on Program Comprehension , 2010
  • 15. Result and Analysis: Visual Effort FC(Q) No significant differences FR(Correct) No significant differences Effort • Female FR(distracter) Female subjects spends more visual effort subjects put more visual effort on distracters • Female subjects analyze all distracters before making decision 15
  • 16. Results and Analyses: Visual Effort 16 Heatmap
  • 17. Conclusion Investigate the Impact of Identifier Style “Camel Case vs. Underscore” Binkley, 20091 Time Our Experiment (135 subjects) Accuracy Sharif, 20102 (15 subjects) (24 subjects) Higher accuracy for Camel Case More time spent on Camel Case Not applicable No difference No difference More time spent on Camel Case Lower visual effort on Underscore No difference No difference Effort 17 1. D. Binkley, M. Davis, D. Lawrie, and C. Morrell, “To camelcase or under score,” ICPC, 2009 2. B. Sharif and J. Maletic, “An eye tracking study on camelcase and under score identifier styles,” ICPC, 2010
  • 18. Conclusion  Gender does NOT impact: Accuracy • Spend Time more effort on alternative answers • Seem to: • Carefully weight all options • Rule out wrong answers • Statistically strong interaction between accuracy and effort on distracters Effort 18 Seem to quickly go for one choice • No correlation between effort and accuracy
  • 19. Threats to Validity  Internal validity:    Random ordering of source code Comfortable environment External validity (generalization of the results):  Students as subjects   19 Students are the next generation of software professionals1 24 subjects  9 female subjects  Not large enough to be generalized  A call for further studies 1. B. A. Kitchenham, S. L. Pfleeger, L. M. Pickard, P. W. Jones, D. C. Hoaglin, K. E. Emam, and J. Rosenberg, “Preliminary guidelines for empirical research in software engineering,” IEEE Trans. Softw. Eng., 2002
  • 20. Last but not Least Gender does NOT impact:  Accuracy Male and female subjects use different strategiess to select the correct answer   Time Understanding systematic biases between men and women:   20 Design tools and methods better adapted to different developers Support different program understanding strategies