Human Aspects of So0ware Engineering books, SocialCom, - - PowerPoint PPT Presentation

human aspects of so0ware engineering
SMART_READER_LITE
LIVE PREVIEW

Human Aspects of So0ware Engineering books, SocialCom, - - PowerPoint PPT Presentation

Alexander Serebrenik Eindhoven University of Technology, NL Human Aspects of So0ware Engineering books, SocialCom, conferences SocInfo, SBP, CHASE MSR


slide-1
SLIDE 1

Human ¡Aspects ¡of ¡So0ware ¡ Engineering ¡

Alexander ¡Serebrenik ¡

Eindhoven ¡University ¡of ¡ Technology, ¡NL ¡

slide-2
SLIDE 2
slide-3
SLIDE 3

1970s ¡ … ¡ 1998 ¡ 2008 ¡ 2014 ¡

SocialCom, ¡ SocInfo, ¡SBP, ¡ CHASE ¡ MSR ¡ books, ¡ conferences ¡

slide-4
SLIDE 4

MS ¡Windows ¡ post-­‑release ¡ fault ¡predic5on ¡ Precision ¡ predicted ¡& ¡ correct ¡/ ¡predicted ¡ Recall ¡ predicted ¡& ¡correct ¡/ ¡ correct ¡ ¡ Code ¡churn ¡ 78.6% ¡ 79.9% ¡ Code ¡ complexity ¡ 79.3% ¡ 66.0% ¡ Code ¡coverage ¡ 83.8% ¡ 54.5% ¡ Code ¡ dependencies ¡ 74.4% ¡ 69.9% ¡ Organiza5onal ¡ structure ¡ 86.2% ¡ 84.0% ¡ Socio-­‑technical ¡ network ¡ 76.9% ¡ 70.5% ¡

slide-5
SLIDE 5
slide-6
SLIDE 6
slide-7
SLIDE 7
slide-8
SLIDE 8

> ¡90% ¡in ¡WordPress ¡& ¡Drupal ¡ > ¡95% ¡in ¡FLOSS ¡surveys ¡ > ¡87% ¡in ¡GNOME ¡ > ¡70% ¡in ¡soBware-­‑related ¡jobs ¡(NSF) ¡

MEN ¡

slide-9
SLIDE 9

FLOSS ¡ 2013 ¡

YOUNG(?) ¡

median ¡

Is ¡Programming ¡Knowledge ¡Related ¡to ¡Age? ¡An ¡Explora8on ¡of ¡Stack ¡Overflow. ¡Morrison, ¡P., ¡Murphy-­‑Hill, ¡E. ¡ MSR ¡2013. ¡FLOSS ¡2013: ¡A ¡survey ¡dataset ¡about ¡free ¡soPware ¡contributors: ¡challenges ¡for ¡cura8ng, ¡sharing ¡ and ¡combining. ¡ ¡Robles, ¡G., ¡Arjona-­‑Reina, ¡L., ¡Vasilescu, ¡B., ¡Serebrenik, ¡A., ¡Gonzalez-­‑Barahona, ¡J.M. ¡MSR ¡2014 ¡

slide-10
SLIDE 10

FLOSS ¡ 2013 ¡

slide-11
SLIDE 11

FLOSS ¡ 2013 ¡

slide-12
SLIDE 12

FLOSS ¡ 2013 ¡

Europe,US,CA,AU Brazil/Argen5na ¡

slide-13
SLIDE 13
slide-14
SLIDE 14
slide-15
SLIDE 15 PAGE 15 08/07/14

.cpp .po .jpg /test/ /library/ .doc makefile .sql .conf

slide-16
SLIDE 16

Occasional contributors Frequent contributors

On the variation and specialization of workload---A case study of the Gnome ecosystem community Vasilescu, B., Serebrenik, A., Goeminne, M., Mens, T. Empirical Sw Engg

slide-17
SLIDE 17

For ¡which ¡of ¡those ¡ac[vi[es ¡would ¡ ¡ Joe ¡Average ¡ ¡be ¡more ¡ac[ve ¡than ¡ ¡ Jane ¡Average? ¡ ¡ For ¡which ¡ac[vi[es ¡no ¡differences ¡would ¡ be ¡observed? ¡ ¡

slide-18
SLIDE 18 PAGE 18 08/07/14

.cpp .po .jpg /test/ /library/ .doc makefile .sql .conf

slide-19
SLIDE 19 PAGE 19 08/07/14

.cpp .po .jpg /test/ /library/ .doc makefile .sql .conf

slide-20
SLIDE 20 PAGE 20 08/07/14

.cpp .po .jpg /test/ /library/ .doc makefile .sql .conf No differences in preferences for activities, differences in the amount of commits

slide-21
SLIDE 21

sample

Engage for longer Ask more questions No diff in #answers

Women can contribute to SO but choose not to!

Gender, representation and online participation: A quantitative study, Vasilescu, B., Capiluppi, A., and Serebrenik, A., Interacting with Computers

slide-22
SLIDE 22

sample

No significant differences in #questions, #answers, length of engagement

Disengagement of women is activity/ platform specific!

slide-23
SLIDE 23
slide-24
SLIDE 24
  • More ¡ac[ve ¡commi_ers ¡ask ¡more ¡on ¡SO ¡
  • More ¡ac[ve ¡askers ¡commit ¡more ¡on ¡GitHub ¡

StackOverflow ¡and ¡GitHub: ¡Associa8ons ¡between ¡soPware ¡development ¡and ¡crowdsourced ¡knowledge, ¡ Vasilescu, ¡B., ¡Filkov, ¡V. ¡and ¡Serebrenik, ¡A., ¡In ¡Social ¡Compu8ng, ¡2013, ¡IEEE. ¡ ¡

slide-25
SLIDE 25

StackOverflow ¡and ¡GitHub: ¡Associa8ons ¡between ¡soPware ¡development ¡and ¡crowdsourced ¡knowledge, ¡ Vasilescu, ¡B., ¡Filkov, ¡V. ¡and ¡Serebrenik, ¡A., ¡In ¡Social ¡Compu8ng, ¡2013, ¡IEEE. ¡ ¡

slide-26
SLIDE 26
  • Contributors ¡to ¡both ¡communi[es ¡(more ¡likely ¡

developers ¡than ¡non-­‑developers) ¡are ¡more ¡ac[ve ¡ than ¡those ¡who ¡focus ¡on ¡just ¡one. ¡

How ¡Social ¡Q&A ¡sites ¡are ¡changing ¡knowledge ¡sharing ¡in ¡open ¡source ¡soPware ¡communi8es, ¡ ¡ Vasilescu, ¡B., ¡Serebrenik, ¡A., ¡Devanbu, ¡P.T. ¡and ¡Filkov, ¡V., ¡In ¡CSCW ¡2014, ¡ACM. ¡ ¡

help ¡

slide-27
SLIDE 27

How ¡Social ¡Q&A ¡sites ¡are ¡changing ¡knowledge ¡sharing ¡in ¡open ¡source ¡soPware ¡communi8es, ¡ ¡ Vasilescu, ¡B., ¡Serebrenik, ¡A., ¡Devanbu, ¡P.T. ¡and ¡Filkov, ¡V., ¡In ¡CSCW ¡2014, ¡ACM. ¡ ¡

help ¡

slide-28
SLIDE 28
slide-29
SLIDE 29

Tools ¡and ¡ Techniques ¡

slide-30
SLIDE 30 PAGE 30 08/07/14

Euphegenia Doubtfire, euphegenia@hotmail.com Robin Williams, robinw@gmail.com

slide-31
SLIDE 31 PAGE 31 08/07/14

Ordering Rajesh Sola Sola Rajesh Spelling: misspelling, diacritics, punctuation Rene Engelhard Fene Engelhard Démurget Demurget

  • J. A. M. Carneiro

J A M Carneiro Middle initials, patronyms, nicknames, additional surnames, incomplete names Daniel M. Mueth Daniel Mueth Alexander Alexandrov Shopov Alexander Shopov Carlos Garnacho Parro Carlos Garnacho Jacob “Ulysses” Berkman Jacob Berkman A S Alam Amanpreet Singh Alam Name variants: transliteration, diminutives Γιωργοσ Georgios Mike Gratton Michael Gratton Software-specific: usernames, projects, tooling artefacts mrhappypants Aaron Brown Arturo Tena/libole2 Arturo Tena (16:06) Alex Roberts Alex Roberts Mix Any combination of those

slide-32
SLIDE 32

Jane ¡Smith ¡

Jane ¡Alice ¡ Smith, ¡ jsmith@... ¡

  • J. ¡Smith, ¡

jane.smith@... ¡ Jane ¡ Smith, ¡ jane@... ¡

iden[ty ¡merging/ iden[ty ¡reconcilia[on/ ¡ developer ¡matching ¡

slide-33
SLIDE 33

<Jane, ¡jsmith@gmail.com> ¡ ¡ <Jane ¡Smith, ¡jsmith@gmail.com> ¡ ¡

Ø iden[cal ¡mail ¡addresses ¡è ¡the ¡same ¡person ¡ Ø also ¡useful ¡for ¡MD5 ¡hashes ¡in ¡Stack ¡Overflow ¡ ¡

<Jane ¡Smith, ¡jsmith@gmail.com> ¡ <Jane ¡Smith, ¡jsmith@yahoo.com> ¡

Ø likely ¡to ¡be ¡the ¡same ¡person ¡but ¡might ¡give ¡false ¡ posi[ves ¡if ¡these ¡are ¡different ¡Janes… ¡

slide-34
SLIDE 34

Latent ¡Seman[c ¡Analysis ¡

1 ¡ .. ¡ .. ¡ .. ¡ 1 ¡ .. ¡ .. ¡ .. ¡ 1 ¡ .. ¡ .. ¡ .. ¡ ? ¡ .. ¡ .. ¡ .. ¡ 1 ¡ .. ¡ .. ¡ .. ¡ john ¡ johnd ¡ joseph ¡ jdoe ¡ doe ¡ johnd@domainA: ¡ ¡ ¡{john, ¡johnd, ¡ ¡ ¡joseph, ¡doe} ¡ <John ¡Doe, ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡johnd@domainA> ¡ <John ¡Joseph ¡Doe, ¡johnd@domainA> ¡

Document-­‑term ¡matrix ¡

slide-35
SLIDE 35

Latent ¡Seman[c ¡Analysis ¡

1 ¡ .. ¡ .. ¡ .. ¡ 1 ¡ .. ¡ .. ¡ .. ¡ 1 ¡ .. ¡ .. ¡ .. ¡ 3/4 ¡ .. ¡ .. ¡ .. ¡ 1 ¡ .. ¡ .. ¡ .. ¡ john ¡ johnd ¡ joseph ¡ jdoe ¡ doe ¡ johnd@domainA: ¡ ¡ ¡{john, ¡johnd, ¡ ¡ ¡joseph, ¡doe} ¡ <John ¡Doe, ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡johnd@domainA> ¡ <John ¡Joseph ¡Doe, ¡johnd@domainA> ¡

Document-­‑term ¡matrix ¡

max ¡similarity(jdoe, ¡ ¡ ¡{john, ¡johnd, ¡joseph, ¡doe}) ¡ ¡ = ¡similarity(jdoe, ¡doe) ¡ ¡ = ¡1 ¡– ¡Levenshtein(jdoe, ¡doe) ¡/ ¡ ¡ ¡max( ¡length(jdoe), ¡length(doe)) ¡ = ¡1 ¡– ¡1/4 ¡= ¡3/4 ¡

slide-36
SLIDE 36

Latent ¡Seman[c ¡Analysis ¡

1 ¡ .. ¡ .. ¡ .. ¡ 1 ¡ .. ¡ .. ¡ .. ¡ 1 ¡ .. ¡ .. ¡ .. ¡ 3/4 ¡ .. ¡ .. ¡ .. ¡ 1 ¡ .. ¡ .. ¡ .. ¡ john ¡ johnd ¡ joseph ¡ jdoe ¡ doe ¡

Inverse ¡document ¡frequency ¡

¡

(Singular ¡value ¡decomposi[on) ¡

¡

Rank ¡(noise) ¡reduc[on ¡

¡

Cosine ¡between ¡documents ¡

¡

Merge ¡similar ¡documents ¡

slide-37
SLIDE 37

h_p://uberpython.wordpress.com/2012/01/01/precision-­‑recall-­‑sensi[vity-­‑and-­‑specificity/ ¡

Which ¡technique ¡is ¡be_er? ¡

slide-38
SLIDE 38

h_p://uberpython.wordpress.com/2012/01/01/precision-­‑recall-­‑sensi[vity-­‑and-­‑specificity/ ¡

slide-39
SLIDE 39

Most ¡contributors ¡have ¡only ¡one ¡“iden[ty”: ¡all ¡techniques ¡ are ¡good ¡enough ¡for ¡the ¡average ¡case. ¡ Advanced ¡techniques ¡are ¡be_er ¡in ¡presence ¡of ¡noise. ¡ Choose ¡your ¡weapons ¡wisely! ¡

slide-40
SLIDE 40

/ ¡SET ¡/ ¡W&I ¡ PAGE ¡40 ¡ 08/07/14 ¡

What ¡is ¡ your ¡ gender? ¡

slide-41
SLIDE 41
slide-42
SLIDE 42
slide-43
SLIDE 43
slide-44
SLIDE 44

Name ¡+ ¡ Loca[on ¡= ¡ Gender ¡

slide-45
SLIDE 45

Lonzo ¡⇒ ¡Alonzo ¡ ¡ w35l3y ¡⇒ ¡wesley ¡ ¡

Name ¡+ ¡ Loca[on ¡= ¡ Gender ¡

slide-46
SLIDE 46

<[tle>Ben ¡Kamens</[tle> ¡ … ¡ <h1>We&#8217;re ¡willing ¡to ¡ be ¡embarrassed ¡about ¡what ¡ we ¡<em>haven&#8217;t</ em> ¡done&#8230;</h1> ¡ Heuris8cs: ¡ ¡ [tle ¡+ ¡first ¡h1 ¡ Ben ¡Kamens ¡We’re ¡willing ¡to ¡be ¡ embarrassed ¡about ¡what ¡we ¡ haven’t ¡done… ¡ <PERSON>Ben ¡Kamens</PERSON> ¡ We’re ¡willing ¡to ¡be ¡embarrassed ¡ about ¡what ¡we ¡haven’t ¡done… ¡ Stanford ¡Named ¡ En8ty ¡Tagger ¡

slide-47
SLIDE 47

Quality ¡of ¡gender ¡resolu[on: ¡Survey ¡

Self-­‑ iden[fica[on ¡ As ¡inferred ¡ ¡ Total ¡ M ¡ F ¡ ? ¡ M ¡ 60 ¡ 3 ¡ 43 ¡ 106 ¡ F ¡ 2 ¡ 5 ¡ 4 ¡ 11 ¡ Self-­‑ iden[fica[on ¡ As ¡inferred ¡ ¡ Total ¡ M ¡ F ¡ ? ¡ M ¡ 90 ¡ 3 ¡ 13 ¡ 106 ¡ F ¡ 2 ¡ 9 ¡ 0 ¡ 11 ¡

+ ¡avatars, ¡other ¡ social ¡media ¡ sites ¡(manually) ¡ ¡

slide-48
SLIDE 48
slide-49
SLIDE 49
slide-50
SLIDE 50

SANER ¡2015 ¡ 22nd ¡Interna[onal ¡Conference ¡

  • n ¡So0ware ¡Analysis, ¡Evolu[on ¡

and ¡Reengineering ¡ ¡

  • Abstracts: ¡November ¡7, ¡2015 ¡
  • Papers: ¡November ¡14, ¡2015 ¡