SlideShare una empresa de Scribd logo
1 de 27
Descargar para leer sin conexión
On the Analysis of Non-Coding
Roles in Open Source Development
Javier L. Cánovas Izquierdo, Jordi Cabot
Paper accepted at
EMPIRICAL SOFTWARE ENGINEERING 27, 18 (2022)
Published: November 2nd, 2021
An Empirical Study of NPM Package projects
OSS Sustainability
Open Source projects suffer from grave
sustainability issues as many people use the
software but very few contribute to it
How can we optimize the collaboration?
How can we improve the onboarding process?
Can we “capture” new contributors?
OSS is not only code…
…it’s community
How to enforce development process?
How to sustain the community?
…
unsplash/bekir-donmez
Role characterization in GitHub
DEVELOPER
REVIEWER
MERGER
REPORTER
COMMENTER
REACTOR
Role characterization in GitHub
DEVELOPER
REVIEWER
MERGER
REPORTER
COMMENTER
REACTOR
NON-CODING
CODING
Methodology
RESEARCH QUESTIONS
What is the role-based activity distribution in OSS?
RQ1
How specialized is the community around each role?
RQ2
unsplash/rawpixel
Methodology
RESEARCH QUESTIONS
What is the role-based activity distribution in OSS?
RQ1
How specialized is the community around each role?
RQ2
unsplash/rawpixel
APPROACH
Full set of projects
General Groups of projects
Specific
Project Type Community Size
vs.
Methodology
RESEARCH QUESTIONS
What is the role-based activity distribution in OSS?
RQ1
How specialized is the community around each role?
RQ2
unsplash/rawpixel
DATASET CONSTRUCTION
RETRIEVAL
& CLONING
REPOSITORY
ANALYSIS
GRAPH
GENERATION
NPM ecosystem
Top 100 repos
SourceCred
Analysis tool
Collaboration
Graphs
28,468 users / 38,502 commits / 13,941 issues / 12,312 pull requests / 89,484 comments
APPROACH
Full set of projects
General Groups of projects
Specific
Project Type Community Size
vs.
Methodology
RESEARCH QUESTIONS
What is the role-based activity distribution in OSS?
RQ1
How specialized is the community around each role?
RQ2
unsplash/rawpixel
DATASET CONSTRUCTION
RETRIEVAL
& CLONING
REPOSITORY
ANALYSIS
GRAPH
GENERATION
NPM ecosystem
Top 100 repos
SourceCred
Analysis tool
Collaboration
Graphs
28,468 users / 38,502 commits / 13,941 issues / 12,312 pull requests / 89,484 comments
APPROACH
Full set of projects
General Groups of projects
Specific
Project Type Community Size
vs.
unsplash-SvenMieke
Results
RQ1. Role-based Activity Distribution
Activity Distribution Analysis Prototypical Contributor Profile
RQ1. Role-based Activity Distribution
Activity Distribution Analysis Prototypical Contributor Profile
RQ1. Role-based Activity Distribution
Activity Distribution Analysis Prototypical Contributor Profile
RQ1. Role-based Activity Distribution
Activity Distribution Analysis Prototypical Contributor Profile
RQ1. Role-based Activity Distribution
Activity Distribution Analysis Prototypical Contributor Profile
Results Summary
What is the role-based activity distribution in OSS?
RQ1
High presence of commenters’ actions (higher than developers’)
Reviewers’ and reactors’ actions grow as the community does
All roles have their importance highlighting the complexity of OSS
High collaboration rate
Increasing structure on the development side
Broader participation of non-coding contributors
RQ2. Role Diversity
Role Distribution Most Common Configuration Role Migration Paths
RQ2. Role Diversity
Role Distribution Most Common Configuration Role Migration Paths
RQ2. Role Diversity
Role Distribution Most Common Configuration Role Migration Paths
RQ2. Role Diversity
POS
ORGANIZATION INDIVIDUAL
SIZE GROUP SIZE GROUP
1 8,408 CHEERLEADER 3,351 CHEERLEADER
2 2,497 REPORTER 2,491 REPORTER
3 2,148 COMMENTER 1,417 COMMENTER
4 1,259 COMMENTER + CHEERLEADER 641 COMMENTER + CHEERLEADER
5 507 REPORTER + CHEERLEADER 522 REPORTER + CHEERLEADER
6 366 DEVELOPER 434 DEVELOPER
7 328 REPORTER + COMMENTER + CHEERLEADER 252 DEVELOPER + MERGER
…
Role Distribution Most Common Configuration Role Migration Paths
RQ2. Role Diversity
POS SIZE GROUP
1 11,759 REACTOR
2 4,988 REPORTER
3 3,565 COMMENTER
4 1,900 COMMENTER + REACTOR
5 1,093 REPORTER + REACTOR
6 800 DEVELOPER
7 519 REPORTER + COMMENTER + REACTOR
…
POS
ORGANIZATION INDIVIDUAL
SIZE GROUP SIZE GROUP
1 8,408 CHEERLEADER 3,351 CHEERLEADER
2 2,497 REPORTER 2,491 REPORTER
3 2,148 COMMENTER 1,417 COMMENTER
4 1,259 COMMENTER + CHEERLEADER 641 COMMENTER + CHEERLEADER
5 507 REPORTER + CHEERLEADER 522 REPORTER + CHEERLEADER
6 366 DEVELOPER 434 DEVELOPER
7 328 REPORTER + COMMENTER + CHEERLEADER 252 DEVELOPER + MERGER
…
POS
TIER 1 TIER 2 TIER 3
SIZE GROUP SIZE GROUP SIZE GROUP
1 163 REPORTER 1,049 REPORTER 10,914 CHEERLEADER
2 73 DEVELOPER 783 CHEERLEADER 3,776 REPORTER
3 67 COMMENTER 631 COMMENTER 2,867 COMMENTER
4 62 CHEERLEADER 276 DEVELOPER 1,658 COMMENTER + CHEERLEADER
5 51 DEVELOPER + MERGER 221 COMMENTER + CHEERLEADER 871 REPORTER + CHEERLEADER
6 39
REPORTER + CHEERLEADER 183 REPORTER + CHEERLEADER 460 REPORTER + COMMENTER +
CHEERLEADER
7 21 COMMENTER + CHEERLEADER 123 DEVELOPER + MERGER 451 DEVELOPER
… … …
Role Distribution Most Common Configuration Role Migration Paths
RQ2. Role Diversity
POS SIZE GROUP
1 11,759 REACTOR
2 4,988 REPORTER
3 3,565 COMMENTER
4 1,900 COMMENTER + REACTOR
5 1,093 REPORTER + REACTOR
6 800 DEVELOPER
7 519 REPORTER + COMMENTER + REACTOR
…
POS
ORGANIZATION INDIVIDUAL
SIZE GROUP SIZE GROUP
1 8,408 REACTOR 3,351 REACTOR
2 2,497 REPORTER 2,491 REPORTER
3 2,148 COMMENTER 1,417 COMMENTER
4 1,259 COMMENTER + REACTOR 641 COMMENTER + REACTOR
5 507 REPORTER + REACTOR 522 REPORTER + REACTOR
6 366 DEVELOPER 434 DEVELOPER
7 328 REPORTER + COMMENTER + REACTOR 252 DEVELOPER + MERGER
…
POS
TIER 1 TIER 2 TIER 3
SIZE GROUP SIZE GROUP SIZE GROUP
1 163 REPORTER 1,049 REPORTER 10,914 REACTOR
2 73 DEVELOPER 783 REACTOR 3,776 REPORTER
3 67 COMMENTER 631 COMMENTER 2,867 COMMENTER
4 62 REACTOR 276 DEVELOPER 1,658 COMMENTER + REACTOR
5 51 DEVELOPER + MERGER 221 COMMENTER + REACTOR 871 REPORTER + REACTOR
6 39 REPORTER + REACTOR 183 REPORTER + REACTOR 460 REPORTER + COMMENTER + REACTOR
7 21 COMMENTER + REACTOR 123 DEVELOPER + MERGER 451 DEVELOPER
… … …
Role Distribution Most Common Configuration Role Migration Paths
RQ2. Role Diversity
Role Distribution Most Common Configuration Role Migration Paths
RQ2. Role Diversity
Role Distribution Most Common Configuration Role Migration Paths
Results Summary
What is the role-based activity distribution in OSS?
RQ1
How specialized is the community around each role?
RQ2
High presence of commenters’ actions (higher than developers’)
Reviewers’ and reactors’ actions grow as the community does
All roles have their importance highlighting the complexity of OSS
High collaboration rate
Increasing structure on the development side
Broader participation of non-coding contributors
Projects are diverse, with high presence of reactors, commenters and reporters Presence of non-coding roles
Reactors, commenters and reporters often appear in a one-role configuration Entry point for people joining the project
One-role configuration still persists or move to other non-coding roles Potential low onboarding rate
Lack of cross-role configurations combining coding and non-coding roles Specialization
unsplash-kelly-sikkema
Discussion
Discussion
Photos from Unsplash by Jamie Street, Alvaro Reves, Iyan Kurnia, Chuttersnap, M.B.M. (top to bottom)
IMPROVE
ONBOARDING
GOVERNANCE OF
NON-CODING
CONTRIBUTORS
PROMOTION OF
MIGRATION PATHS
METHODS TO VISUALIZE
CONTRIBUTIONS
TEMPORAL
ANALYSIS
Situation: Efforts to attract and onboard new contributors are clearly targeting developers
Why not focusing on non-coding contributors and maybe then incentivize them to participate in coding tasks?
Situation: Governance rules (e.g., contributing.md) focus mainly on coding contributors
How to make non-coding contributions more visible in code hosting platforms?
Situation: Lack of information about the roles of the project and how (and where) they are welcome
Would it be possible to identify “careers” within the project?
Situation: It is hard to know the roles played by contributors in OSS projects
Could graphical representations (e.g., our radar graphs), help on profiling contributors (beyond coding tasks)?
Situation: Most empirical analysis focus on a project snapshot
How could we leverage on the temporal dimension of OSS project activities?
Thanks!
IMPROVE
ONBOARDING
GOVERNANCE OF
NON-CODING
CONTRIBUTORS
PROMOTION OF
MIGRATION PATHS
METHODS TO
VISUALIZE
CONTRIBUTIONS
TEMPORAL
ANALYSIS
Javier L. Cánovas Izquierdo
jcanovasi@uoc.edu
@jlcanovas
Jordi Cabot
jordi.cabot@icrea.cat
@jordiCabot
Except where otherwise noted, content on this presentation is licensed under a Creative Commons Attribution 4.0 International license.

Más contenido relacionado

Similar a Analysis of Roles in Open Source Projects

DevOps Torino Meetup - DevOps Engineer, a role that does not exist but is muc...
DevOps Torino Meetup - DevOps Engineer, a role that does not exist but is muc...DevOps Torino Meetup - DevOps Engineer, a role that does not exist but is muc...
DevOps Torino Meetup - DevOps Engineer, a role that does not exist but is muc...Rauno De Pasquale
 
How do Centralized and Distributed Version Control Systems Impact Software Ch...
How do Centralized and Distributed Version Control Systems Impact Software Ch...How do Centralized and Distributed Version Control Systems Impact Software Ch...
How do Centralized and Distributed Version Control Systems Impact Software Ch...Caius Brindescu
 
Emergent Architecture - March 2011
Emergent Architecture - March 2011Emergent Architecture - March 2011
Emergent Architecture - March 2011atlantascrum
 
Is Lean UX Agile’s Brain? How Lean UX Fixes Common Agile Challenges
Is Lean UX Agile’s Brain? How Lean UX Fixes Common Agile ChallengesIs Lean UX Agile’s Brain? How Lean UX Fixes Common Agile Challenges
Is Lean UX Agile’s Brain? How Lean UX Fixes Common Agile ChallengesFITC
 
DevOps Torino Meetup Group Kickoff Meeting - Why a meetup group on DevOps, wh...
DevOps Torino Meetup Group Kickoff Meeting - Why a meetup group on DevOps, wh...DevOps Torino Meetup Group Kickoff Meeting - Why a meetup group on DevOps, wh...
DevOps Torino Meetup Group Kickoff Meeting - Why a meetup group on DevOps, wh...Rauno De Pasquale
 
DevOpsDays Houston 2019 -Kevin Crawley - Practical Guide to Not Building Anot...
DevOpsDays Houston 2019 -Kevin Crawley - Practical Guide to Not Building Anot...DevOpsDays Houston 2019 -Kevin Crawley - Practical Guide to Not Building Anot...
DevOpsDays Houston 2019 -Kevin Crawley - Practical Guide to Not Building Anot...DevOpsDays Houston
 
The Evolution of DevOps-Trends & Future.pdf
The Evolution of DevOps-Trends & Future.pdfThe Evolution of DevOps-Trends & Future.pdf
The Evolution of DevOps-Trends & Future.pdfpriyankas3ri
 
UX101: Strategy, Structure, & Experience
UX101: Strategy, Structure, & Experience UX101: Strategy, Structure, & Experience
UX101: Strategy, Structure, & Experience Jessica DuVerneay
 
Not Actually a DevOps Talk, or, Beyond “Survival is Not Mandatory”
Not Actually a DevOps Talk, or, Beyond “Survival is Not Mandatory”Not Actually a DevOps Talk, or, Beyond “Survival is Not Mandatory”
Not Actually a DevOps Talk, or, Beyond “Survival is Not Mandatory”VMware Tanzu
 
Markings of a Healthy OSS Project
Markings of a Healthy OSS ProjectMarkings of a Healthy OSS Project
Markings of a Healthy OSS ProjectClement Ho
 
Novel_Value_Stream_Analysis_for_SAFe_-_ver_8.pdf
Novel_Value_Stream_Analysis_for_SAFe_-_ver_8.pdfNovel_Value_Stream_Analysis_for_SAFe_-_ver_8.pdf
Novel_Value_Stream_Analysis_for_SAFe_-_ver_8.pdfMaarit Laanti
 
Delivery of Things World USA 2016 - Post Event Report
Delivery of Things World USA 2016 - Post Event ReportDelivery of Things World USA 2016 - Post Event Report
Delivery of Things World USA 2016 - Post Event ReportRamona Kohrs
 
DevOps for the Discouraged
DevOps for the Discouraged DevOps for the Discouraged
DevOps for the Discouraged James Wickett
 
Socio-technical evolution and migration in the Ruby ecosystem
Socio-technical evolution and migration in the Ruby ecosystemSocio-technical evolution and migration in the Ruby ecosystem
Socio-technical evolution and migration in the Ruby ecosystemTom Mens
 
Dr. Shingo and the Actor Atlas
Dr. Shingo and the Actor AtlasDr. Shingo and the Actor Atlas
Dr. Shingo and the Actor AtlasJan Goossenaerts
 
State of microservices 2020 by tsh
State of microservices 2020 by tshState of microservices 2020 by tsh
State of microservices 2020 by tshmustafa sarac
 
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...ESEM 2014
 

Similar a Analysis of Roles in Open Source Projects (20)

DevOps Torino Meetup - DevOps Engineer, a role that does not exist but is muc...
DevOps Torino Meetup - DevOps Engineer, a role that does not exist but is muc...DevOps Torino Meetup - DevOps Engineer, a role that does not exist but is muc...
DevOps Torino Meetup - DevOps Engineer, a role that does not exist but is muc...
 
How do Centralized and Distributed Version Control Systems Impact Software Ch...
How do Centralized and Distributed Version Control Systems Impact Software Ch...How do Centralized and Distributed Version Control Systems Impact Software Ch...
How do Centralized and Distributed Version Control Systems Impact Software Ch...
 
Emergent Architecture - March 2011
Emergent Architecture - March 2011Emergent Architecture - March 2011
Emergent Architecture - March 2011
 
Is Lean UX Agile’s Brain? How Lean UX Fixes Common Agile Challenges
Is Lean UX Agile’s Brain? How Lean UX Fixes Common Agile ChallengesIs Lean UX Agile’s Brain? How Lean UX Fixes Common Agile Challenges
Is Lean UX Agile’s Brain? How Lean UX Fixes Common Agile Challenges
 
DevOps Torino Meetup Group Kickoff Meeting - Why a meetup group on DevOps, wh...
DevOps Torino Meetup Group Kickoff Meeting - Why a meetup group on DevOps, wh...DevOps Torino Meetup Group Kickoff Meeting - Why a meetup group on DevOps, wh...
DevOps Torino Meetup Group Kickoff Meeting - Why a meetup group on DevOps, wh...
 
DevOpsDays Houston 2019 -Kevin Crawley - Practical Guide to Not Building Anot...
DevOpsDays Houston 2019 -Kevin Crawley - Practical Guide to Not Building Anot...DevOpsDays Houston 2019 -Kevin Crawley - Practical Guide to Not Building Anot...
DevOpsDays Houston 2019 -Kevin Crawley - Practical Guide to Not Building Anot...
 
The Evolution of DevOps-Trends & Future.pdf
The Evolution of DevOps-Trends & Future.pdfThe Evolution of DevOps-Trends & Future.pdf
The Evolution of DevOps-Trends & Future.pdf
 
Devops.pptx
Devops.pptxDevops.pptx
Devops.pptx
 
UX101: Strategy, Structure, & Experience
UX101: Strategy, Structure, & Experience UX101: Strategy, Structure, & Experience
UX101: Strategy, Structure, & Experience
 
Not Actually a DevOps Talk, or, Beyond “Survival is Not Mandatory”
Not Actually a DevOps Talk, or, Beyond “Survival is Not Mandatory”Not Actually a DevOps Talk, or, Beyond “Survival is Not Mandatory”
Not Actually a DevOps Talk, or, Beyond “Survival is Not Mandatory”
 
Markings of a Healthy OSS Project
Markings of a Healthy OSS ProjectMarkings of a Healthy OSS Project
Markings of a Healthy OSS Project
 
Novel_Value_Stream_Analysis_for_SAFe_-_ver_8.pdf
Novel_Value_Stream_Analysis_for_SAFe_-_ver_8.pdfNovel_Value_Stream_Analysis_for_SAFe_-_ver_8.pdf
Novel_Value_Stream_Analysis_for_SAFe_-_ver_8.pdf
 
Delivery of Things World USA 2016 - Post Event Report
Delivery of Things World USA 2016 - Post Event ReportDelivery of Things World USA 2016 - Post Event Report
Delivery of Things World USA 2016 - Post Event Report
 
DevOps for the Discouraged
DevOps for the Discouraged DevOps for the Discouraged
DevOps for the Discouraged
 
Socio-technical evolution and migration in the Ruby ecosystem
Socio-technical evolution and migration in the Ruby ecosystemSocio-technical evolution and migration in the Ruby ecosystem
Socio-technical evolution and migration in the Ruby ecosystem
 
Dr. Shingo and the Actor Atlas
Dr. Shingo and the Actor AtlasDr. Shingo and the Actor Atlas
Dr. Shingo and the Actor Atlas
 
Final presentation1
Final presentation1Final presentation1
Final presentation1
 
Sunny Agrawal
Sunny AgrawalSunny Agrawal
Sunny Agrawal
 
State of microservices 2020 by tsh
State of microservices 2020 by tshState of microservices 2020 by tsh
State of microservices 2020 by tsh
 
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...
 

Más de Javier Canovas

Open Source Software Governance Guide: Developing a Matrix of Leading Questio...
Open Source Software Governance Guide: Developing a Matrix of Leading Questio...Open Source Software Governance Guide: Developing a Matrix of Leading Questio...
Open Source Software Governance Guide: Developing a Matrix of Leading Questio...Javier Canovas
 
A Model-based Chatbot Generation Approach to Converse with Open Data Sources
A Model-based Chatbot Generation Approach to Converse with Open Data SourcesA Model-based Chatbot Generation Approach to Converse with Open Data Sources
A Model-based Chatbot Generation Approach to Converse with Open Data SourcesJavier Canovas
 
Chatbots to Democratize the Access to Information and Internet Services
Chatbots to Democratize the Access to Information and Internet ServicesChatbots to Democratize the Access to Information and Internet Services
Chatbots to Democratize the Access to Information and Internet ServicesJavier Canovas
 
Analysis and Modeling of the Governance in General Programming Languages
Analysis and Modeling of the Governance in General Programming LanguagesAnalysis and Modeling of the Governance in General Programming Languages
Analysis and Modeling of the Governance in General Programming LanguagesJavier Canovas
 
Automatic Generation of Test Cases for REST APIs: a Specification-Based Approach
Automatic Generation of Test Cases for REST APIs: a Specification-Based ApproachAutomatic Generation of Test Cases for REST APIs: a Specification-Based Approach
Automatic Generation of Test Cases for REST APIs: a Specification-Based ApproachJavier Canovas
 
A UML Profile for Privacy Enforcement
A UML Profile for Privacy EnforcementA UML Profile for Privacy Enforcement
A UML Profile for Privacy EnforcementJavier Canovas
 
The Role of Foundations in Open Source Projects
The Role of Foundations in Open Source ProjectsThe Role of Foundations in Open Source Projects
The Role of Foundations in Open Source ProjectsJavier Canovas
 
An Empirical Study on the Maturity of the Eclipse Modeling Ecosystem
An Empirical Study on the Maturity of the Eclipse Modeling EcosystemAn Empirical Study on the Maturity of the Eclipse Modeling Ecosystem
An Empirical Study on the Maturity of the Eclipse Modeling EcosystemJavier Canovas
 
Example-driven Web API Specification Discovery
Example-driven Web API Specification DiscoveryExample-driven Web API Specification Discovery
Example-driven Web API Specification DiscoveryJavier Canovas
 
Software Modernization Revisited: Challenges and Prospects
Software Modernization Revisited:Challenges and ProspectsSoftware Modernization Revisited:Challenges and Prospects
Software Modernization Revisited: Challenges and ProspectsJavier Canovas
 
Findings from GitHub. Methods, Datasets and Limitations
Findings from GitHub. Methods, Datasets and LimitationsFindings from GitHub. Methods, Datasets and Limitations
Findings from GitHub. Methods, Datasets and LimitationsJavier Canovas
 
Enabling the Definition and Enforcement of Governance Rules in Open Source Sy...
Enabling the Definition and Enforcement of Governance Rules in Open Source Sy...Enabling the Definition and Enforcement of Governance Rules in Open Source Sy...
Enabling the Definition and Enforcement of Governance Rules in Open Source Sy...Javier Canovas
 
Exploring the Use of Labels to Categorize Issues in Open-Source Software Pro...
Exploring the Use of Labels to Categorize Issues in Open-Source Software Pro...Exploring the Use of Labels to Categorize Issues in Open-Source Software Pro...
Exploring the Use of Labels to Categorize Issues in Open-Source Software Pro...Javier Canovas
 
Composing JSON-based Web APIs
Composing JSON-based Web APIsComposing JSON-based Web APIs
Composing JSON-based Web APIsJavier Canovas
 
Retos Actuales en el Desarrollo de Lenguajes Específicos del Dominio
Retos Actuales en el Desarrollo de Lenguajes Específicos del DominioRetos Actuales en el Desarrollo de Lenguajes Específicos del Dominio
Retos Actuales en el Desarrollo de Lenguajes Específicos del DominioJavier Canovas
 
Discovering Implicit Schemas in JSON Data
Discovering Implicit Schemas in JSON DataDiscovering Implicit Schemas in JSON Data
Discovering Implicit Schemas in JSON DataJavier Canovas
 
Enabling the Collaborative Definition of DSMLs
Enabling the Collaborative Definition of DSMLsEnabling the Collaborative Definition of DSMLs
Enabling the Collaborative Definition of DSMLsJavier Canovas
 
Domain-Specific Languages
Domain-Specific LanguagesDomain-Specific Languages
Domain-Specific LanguagesJavier Canovas
 
Modernization in Eclipse
Modernization in EclipseModernization in Eclipse
Modernization in EclipseJavier Canovas
 
Software Modernization
Software ModernizationSoftware Modernization
Software ModernizationJavier Canovas
 

Más de Javier Canovas (20)

Open Source Software Governance Guide: Developing a Matrix of Leading Questio...
Open Source Software Governance Guide: Developing a Matrix of Leading Questio...Open Source Software Governance Guide: Developing a Matrix of Leading Questio...
Open Source Software Governance Guide: Developing a Matrix of Leading Questio...
 
A Model-based Chatbot Generation Approach to Converse with Open Data Sources
A Model-based Chatbot Generation Approach to Converse with Open Data SourcesA Model-based Chatbot Generation Approach to Converse with Open Data Sources
A Model-based Chatbot Generation Approach to Converse with Open Data Sources
 
Chatbots to Democratize the Access to Information and Internet Services
Chatbots to Democratize the Access to Information and Internet ServicesChatbots to Democratize the Access to Information and Internet Services
Chatbots to Democratize the Access to Information and Internet Services
 
Analysis and Modeling of the Governance in General Programming Languages
Analysis and Modeling of the Governance in General Programming LanguagesAnalysis and Modeling of the Governance in General Programming Languages
Analysis and Modeling of the Governance in General Programming Languages
 
Automatic Generation of Test Cases for REST APIs: a Specification-Based Approach
Automatic Generation of Test Cases for REST APIs: a Specification-Based ApproachAutomatic Generation of Test Cases for REST APIs: a Specification-Based Approach
Automatic Generation of Test Cases for REST APIs: a Specification-Based Approach
 
A UML Profile for Privacy Enforcement
A UML Profile for Privacy EnforcementA UML Profile for Privacy Enforcement
A UML Profile for Privacy Enforcement
 
The Role of Foundations in Open Source Projects
The Role of Foundations in Open Source ProjectsThe Role of Foundations in Open Source Projects
The Role of Foundations in Open Source Projects
 
An Empirical Study on the Maturity of the Eclipse Modeling Ecosystem
An Empirical Study on the Maturity of the Eclipse Modeling EcosystemAn Empirical Study on the Maturity of the Eclipse Modeling Ecosystem
An Empirical Study on the Maturity of the Eclipse Modeling Ecosystem
 
Example-driven Web API Specification Discovery
Example-driven Web API Specification DiscoveryExample-driven Web API Specification Discovery
Example-driven Web API Specification Discovery
 
Software Modernization Revisited: Challenges and Prospects
Software Modernization Revisited:Challenges and ProspectsSoftware Modernization Revisited:Challenges and Prospects
Software Modernization Revisited: Challenges and Prospects
 
Findings from GitHub. Methods, Datasets and Limitations
Findings from GitHub. Methods, Datasets and LimitationsFindings from GitHub. Methods, Datasets and Limitations
Findings from GitHub. Methods, Datasets and Limitations
 
Enabling the Definition and Enforcement of Governance Rules in Open Source Sy...
Enabling the Definition and Enforcement of Governance Rules in Open Source Sy...Enabling the Definition and Enforcement of Governance Rules in Open Source Sy...
Enabling the Definition and Enforcement of Governance Rules in Open Source Sy...
 
Exploring the Use of Labels to Categorize Issues in Open-Source Software Pro...
Exploring the Use of Labels to Categorize Issues in Open-Source Software Pro...Exploring the Use of Labels to Categorize Issues in Open-Source Software Pro...
Exploring the Use of Labels to Categorize Issues in Open-Source Software Pro...
 
Composing JSON-based Web APIs
Composing JSON-based Web APIsComposing JSON-based Web APIs
Composing JSON-based Web APIs
 
Retos Actuales en el Desarrollo de Lenguajes Específicos del Dominio
Retos Actuales en el Desarrollo de Lenguajes Específicos del DominioRetos Actuales en el Desarrollo de Lenguajes Específicos del Dominio
Retos Actuales en el Desarrollo de Lenguajes Específicos del Dominio
 
Discovering Implicit Schemas in JSON Data
Discovering Implicit Schemas in JSON DataDiscovering Implicit Schemas in JSON Data
Discovering Implicit Schemas in JSON Data
 
Enabling the Collaborative Definition of DSMLs
Enabling the Collaborative Definition of DSMLsEnabling the Collaborative Definition of DSMLs
Enabling the Collaborative Definition of DSMLs
 
Domain-Specific Languages
Domain-Specific LanguagesDomain-Specific Languages
Domain-Specific Languages
 
Modernization in Eclipse
Modernization in EclipseModernization in Eclipse
Modernization in Eclipse
 
Software Modernization
Software ModernizationSoftware Modernization
Software Modernization
 

Último

Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4JOYLYNSAMANIEGO
 
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxQ4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxlancelewisportillo
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operationalssuser3e220a
 
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptxDIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptxMichelleTuguinay1
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptxmary850239
 
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDecoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDhatriParmar
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSMae Pangan
 
Mental Health Awareness - a toolkit for supporting young minds
Mental Health Awareness - a toolkit for supporting young mindsMental Health Awareness - a toolkit for supporting young minds
Mental Health Awareness - a toolkit for supporting young mindsPooky Knightsmith
 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Seán Kennedy
 
Mythology Quiz-4th April 2024, Quiz Club NITW
Mythology Quiz-4th April 2024, Quiz Club NITWMythology Quiz-4th April 2024, Quiz Club NITW
Mythology Quiz-4th April 2024, Quiz Club NITWQuiz Club NITW
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Projectjordimapav
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management systemChristalin Nelson
 
Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1GloryAnnCastre1
 
Narcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfNarcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfPrerana Jadhav
 
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxMan or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxDhatriParmar
 
Measures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataMeasures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataBabyAnnMotar
 

Último (20)

Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4
 
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxQ4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operational
 
Faculty Profile prashantha K EEE dept Sri Sairam college of Engineering
Faculty Profile prashantha K EEE dept Sri Sairam college of EngineeringFaculty Profile prashantha K EEE dept Sri Sairam college of Engineering
Faculty Profile prashantha K EEE dept Sri Sairam college of Engineering
 
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptxDIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx
 
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDecoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHS
 
Mental Health Awareness - a toolkit for supporting young minds
Mental Health Awareness - a toolkit for supporting young mindsMental Health Awareness - a toolkit for supporting young minds
Mental Health Awareness - a toolkit for supporting young minds
 
Paradigm shift in nursing research by RS MEHTA
Paradigm shift in nursing research by RS MEHTAParadigm shift in nursing research by RS MEHTA
Paradigm shift in nursing research by RS MEHTA
 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...
 
Mythology Quiz-4th April 2024, Quiz Club NITW
Mythology Quiz-4th April 2024, Quiz Club NITWMythology Quiz-4th April 2024, Quiz Club NITW
Mythology Quiz-4th April 2024, Quiz Club NITW
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptxINCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Project
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management system
 
Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1
 
Narcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfNarcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdf
 
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxMan or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
 
Measures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataMeasures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped data
 

Analysis of Roles in Open Source Projects

  • 1. On the Analysis of Non-Coding Roles in Open Source Development Javier L. Cánovas Izquierdo, Jordi Cabot Paper accepted at EMPIRICAL SOFTWARE ENGINEERING 27, 18 (2022) Published: November 2nd, 2021 An Empirical Study of NPM Package projects
  • 2. OSS Sustainability Open Source projects suffer from grave sustainability issues as many people use the software but very few contribute to it How can we optimize the collaboration? How can we improve the onboarding process? Can we “capture” new contributors? OSS is not only code… …it’s community How to enforce development process? How to sustain the community? … unsplash/bekir-donmez
  • 3. Role characterization in GitHub DEVELOPER REVIEWER MERGER REPORTER COMMENTER REACTOR
  • 4. Role characterization in GitHub DEVELOPER REVIEWER MERGER REPORTER COMMENTER REACTOR NON-CODING CODING
  • 5. Methodology RESEARCH QUESTIONS What is the role-based activity distribution in OSS? RQ1 How specialized is the community around each role? RQ2 unsplash/rawpixel
  • 6. Methodology RESEARCH QUESTIONS What is the role-based activity distribution in OSS? RQ1 How specialized is the community around each role? RQ2 unsplash/rawpixel APPROACH Full set of projects General Groups of projects Specific Project Type Community Size vs.
  • 7. Methodology RESEARCH QUESTIONS What is the role-based activity distribution in OSS? RQ1 How specialized is the community around each role? RQ2 unsplash/rawpixel DATASET CONSTRUCTION RETRIEVAL & CLONING REPOSITORY ANALYSIS GRAPH GENERATION NPM ecosystem Top 100 repos SourceCred Analysis tool Collaboration Graphs 28,468 users / 38,502 commits / 13,941 issues / 12,312 pull requests / 89,484 comments APPROACH Full set of projects General Groups of projects Specific Project Type Community Size vs.
  • 8. Methodology RESEARCH QUESTIONS What is the role-based activity distribution in OSS? RQ1 How specialized is the community around each role? RQ2 unsplash/rawpixel DATASET CONSTRUCTION RETRIEVAL & CLONING REPOSITORY ANALYSIS GRAPH GENERATION NPM ecosystem Top 100 repos SourceCred Analysis tool Collaboration Graphs 28,468 users / 38,502 commits / 13,941 issues / 12,312 pull requests / 89,484 comments APPROACH Full set of projects General Groups of projects Specific Project Type Community Size vs.
  • 10. RQ1. Role-based Activity Distribution Activity Distribution Analysis Prototypical Contributor Profile
  • 11. RQ1. Role-based Activity Distribution Activity Distribution Analysis Prototypical Contributor Profile
  • 12. RQ1. Role-based Activity Distribution Activity Distribution Analysis Prototypical Contributor Profile
  • 13. RQ1. Role-based Activity Distribution Activity Distribution Analysis Prototypical Contributor Profile
  • 14. RQ1. Role-based Activity Distribution Activity Distribution Analysis Prototypical Contributor Profile
  • 15. Results Summary What is the role-based activity distribution in OSS? RQ1 High presence of commenters’ actions (higher than developers’) Reviewers’ and reactors’ actions grow as the community does All roles have their importance highlighting the complexity of OSS High collaboration rate Increasing structure on the development side Broader participation of non-coding contributors
  • 16. RQ2. Role Diversity Role Distribution Most Common Configuration Role Migration Paths
  • 17. RQ2. Role Diversity Role Distribution Most Common Configuration Role Migration Paths
  • 18. RQ2. Role Diversity Role Distribution Most Common Configuration Role Migration Paths
  • 19. RQ2. Role Diversity POS ORGANIZATION INDIVIDUAL SIZE GROUP SIZE GROUP 1 8,408 CHEERLEADER 3,351 CHEERLEADER 2 2,497 REPORTER 2,491 REPORTER 3 2,148 COMMENTER 1,417 COMMENTER 4 1,259 COMMENTER + CHEERLEADER 641 COMMENTER + CHEERLEADER 5 507 REPORTER + CHEERLEADER 522 REPORTER + CHEERLEADER 6 366 DEVELOPER 434 DEVELOPER 7 328 REPORTER + COMMENTER + CHEERLEADER 252 DEVELOPER + MERGER … Role Distribution Most Common Configuration Role Migration Paths
  • 20. RQ2. Role Diversity POS SIZE GROUP 1 11,759 REACTOR 2 4,988 REPORTER 3 3,565 COMMENTER 4 1,900 COMMENTER + REACTOR 5 1,093 REPORTER + REACTOR 6 800 DEVELOPER 7 519 REPORTER + COMMENTER + REACTOR … POS ORGANIZATION INDIVIDUAL SIZE GROUP SIZE GROUP 1 8,408 CHEERLEADER 3,351 CHEERLEADER 2 2,497 REPORTER 2,491 REPORTER 3 2,148 COMMENTER 1,417 COMMENTER 4 1,259 COMMENTER + CHEERLEADER 641 COMMENTER + CHEERLEADER 5 507 REPORTER + CHEERLEADER 522 REPORTER + CHEERLEADER 6 366 DEVELOPER 434 DEVELOPER 7 328 REPORTER + COMMENTER + CHEERLEADER 252 DEVELOPER + MERGER … POS TIER 1 TIER 2 TIER 3 SIZE GROUP SIZE GROUP SIZE GROUP 1 163 REPORTER 1,049 REPORTER 10,914 CHEERLEADER 2 73 DEVELOPER 783 CHEERLEADER 3,776 REPORTER 3 67 COMMENTER 631 COMMENTER 2,867 COMMENTER 4 62 CHEERLEADER 276 DEVELOPER 1,658 COMMENTER + CHEERLEADER 5 51 DEVELOPER + MERGER 221 COMMENTER + CHEERLEADER 871 REPORTER + CHEERLEADER 6 39 REPORTER + CHEERLEADER 183 REPORTER + CHEERLEADER 460 REPORTER + COMMENTER + CHEERLEADER 7 21 COMMENTER + CHEERLEADER 123 DEVELOPER + MERGER 451 DEVELOPER … … … Role Distribution Most Common Configuration Role Migration Paths
  • 21. RQ2. Role Diversity POS SIZE GROUP 1 11,759 REACTOR 2 4,988 REPORTER 3 3,565 COMMENTER 4 1,900 COMMENTER + REACTOR 5 1,093 REPORTER + REACTOR 6 800 DEVELOPER 7 519 REPORTER + COMMENTER + REACTOR … POS ORGANIZATION INDIVIDUAL SIZE GROUP SIZE GROUP 1 8,408 REACTOR 3,351 REACTOR 2 2,497 REPORTER 2,491 REPORTER 3 2,148 COMMENTER 1,417 COMMENTER 4 1,259 COMMENTER + REACTOR 641 COMMENTER + REACTOR 5 507 REPORTER + REACTOR 522 REPORTER + REACTOR 6 366 DEVELOPER 434 DEVELOPER 7 328 REPORTER + COMMENTER + REACTOR 252 DEVELOPER + MERGER … POS TIER 1 TIER 2 TIER 3 SIZE GROUP SIZE GROUP SIZE GROUP 1 163 REPORTER 1,049 REPORTER 10,914 REACTOR 2 73 DEVELOPER 783 REACTOR 3,776 REPORTER 3 67 COMMENTER 631 COMMENTER 2,867 COMMENTER 4 62 REACTOR 276 DEVELOPER 1,658 COMMENTER + REACTOR 5 51 DEVELOPER + MERGER 221 COMMENTER + REACTOR 871 REPORTER + REACTOR 6 39 REPORTER + REACTOR 183 REPORTER + REACTOR 460 REPORTER + COMMENTER + REACTOR 7 21 COMMENTER + REACTOR 123 DEVELOPER + MERGER 451 DEVELOPER … … … Role Distribution Most Common Configuration Role Migration Paths
  • 22. RQ2. Role Diversity Role Distribution Most Common Configuration Role Migration Paths
  • 23. RQ2. Role Diversity Role Distribution Most Common Configuration Role Migration Paths
  • 24. Results Summary What is the role-based activity distribution in OSS? RQ1 How specialized is the community around each role? RQ2 High presence of commenters’ actions (higher than developers’) Reviewers’ and reactors’ actions grow as the community does All roles have their importance highlighting the complexity of OSS High collaboration rate Increasing structure on the development side Broader participation of non-coding contributors Projects are diverse, with high presence of reactors, commenters and reporters Presence of non-coding roles Reactors, commenters and reporters often appear in a one-role configuration Entry point for people joining the project One-role configuration still persists or move to other non-coding roles Potential low onboarding rate Lack of cross-role configurations combining coding and non-coding roles Specialization
  • 26. Discussion Photos from Unsplash by Jamie Street, Alvaro Reves, Iyan Kurnia, Chuttersnap, M.B.M. (top to bottom) IMPROVE ONBOARDING GOVERNANCE OF NON-CODING CONTRIBUTORS PROMOTION OF MIGRATION PATHS METHODS TO VISUALIZE CONTRIBUTIONS TEMPORAL ANALYSIS Situation: Efforts to attract and onboard new contributors are clearly targeting developers Why not focusing on non-coding contributors and maybe then incentivize them to participate in coding tasks? Situation: Governance rules (e.g., contributing.md) focus mainly on coding contributors How to make non-coding contributions more visible in code hosting platforms? Situation: Lack of information about the roles of the project and how (and where) they are welcome Would it be possible to identify “careers” within the project? Situation: It is hard to know the roles played by contributors in OSS projects Could graphical representations (e.g., our radar graphs), help on profiling contributors (beyond coding tasks)? Situation: Most empirical analysis focus on a project snapshot How could we leverage on the temporal dimension of OSS project activities?
  • 27. Thanks! IMPROVE ONBOARDING GOVERNANCE OF NON-CODING CONTRIBUTORS PROMOTION OF MIGRATION PATHS METHODS TO VISUALIZE CONTRIBUTIONS TEMPORAL ANALYSIS Javier L. Cánovas Izquierdo jcanovasi@uoc.edu @jlcanovas Jordi Cabot jordi.cabot@icrea.cat @jordiCabot Except where otherwise noted, content on this presentation is licensed under a Creative Commons Attribution 4.0 International license.