Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conduct a study to evaluate the resilience of a key research software package within an academic discipline or field by calculating its ‘bus factor’ #29

Open
dr-eric-jensen opened this issue Aug 24, 2023 · 0 comments
Labels
Activity: Research This is a research-type activity Activity This is a policy activity Effort: Small Less than 1 person-year estimated to deliver this. Topic: Impact This topic encompasses software's academic impact, value and importance

Comments

@dr-eric-jensen
Copy link
Collaborator

dr-eric-jensen commented Aug 24, 2023

image

Potential Activity Scope
Conducting a study to evaluate the resilience of a key research software package within an academic discipline or field by calculating its 'bus factor' (link) would involve a series of methodical steps.

  • Selection of Software Package: The process would begin by identifying the specific research software package to be evaluated. This would require understanding its importance and role within the academic discipline or field, and why assessing its resilience is critical.
  • Defining the Scope: The scope of the study would need to be clearly defined, including the time frame for contributions to be considered, the types of contributions (e.g., code commits, documentation), and the sources of data (e.g., version control systems, issue trackers).
  • Data Collection: The next step would involve collecting detailed data on the contributions made to the software package. This would include identifying all contributors and quantifying their individual contributions. The data would need to be accurate, comprehensive, and aligned with the defined scope.
  • Calculating the Bus Factor: Using the collected data, the bus factor would be calculated as per the given formula. This involves sorting the contributors' contributions in decreasing order and adding them up until reaching the 50% threshold. The smallest number of people that make up this 50% would represent the bus factor.
  • Identifying Key Contributors: Alongside calculating the bus factor, the study would also identify the key people in the project who are doing the majority of the work. This would provide insights into the distribution of work and potential vulnerabilities.
  • Analysis and Interpretation: The calculated bus factor and identified key contributors would be analyzed and interpreted within the context of the academic discipline or field. This would involve assessing the implications of the bus factor, understanding the risks, and evaluating the overall resilience of the software package.
  • Recommendations and Actions: Based on the findings, the study could provide recommendations and potential actions to enhance the resilience of the software package. This could include strategies for diversifying contributions, mentorship programs, succession planning, and other measures to reduce dependency on a small number of contributors.

Potential Objectives

  • To identify the specific research software package within an academic discipline or field that requires evaluation for resilience.
  • To define the scope of the study, including the time frame, types of contributions, and data sources to ensure alignment with the research objectives.
  • To collect comprehensive and accurate data on contributions made to the software package, identifying all contributors and quantifying their individual contributions.
  • To calculate the bus factor for the selected software package using the given formula, identifying the smallest number of people that make up 50% of contributions.
  • To identify the key contributors within the project, providing insights into the distribution of work and potential vulnerabilities.
  • To analyze and interpret the calculated bus factor and identified key contributors within the context of the academic discipline or field, assessing implications and risks.
  • To provide actionable recommendations and strategies to enhance the resilience of the software package, including diversification of contributions, mentorship, and succession planning.

Targeted Impacts

  • To increase awareness and understanding of the resilience of key research software packages within the academic community, highlighting potential risks and vulnerabilities.
  • To foster a culture of shared responsibility and collaboration among contributors, reducing dependency on a small number of individuals.
  • To enhance the overall resilience of the selected research software package, ensuring its sustainability and continued relevance within the academic discipline or field.
  • To provide valuable insights and guidance to project leaders, academic institutions, funding bodies, and other stakeholders, informing decisions and policies related to research software development and maintenance.
  • To contribute to the broader discourse on diversity, inclusion, and resilience within the research software community, setting a precedent for future studies and initiatives.
  • To create a replicable model for evaluating the resilience of other research software packages, promoting a standardized approach to assessing the bus factor across various disciplines and fields.
  • To inspire proactive measures and investments in mentorship, training, and community engagement, nurturing the next generation of contributors and leaders within the research software ecosystem.

This potential activity was curated as part of "Charting the Course: Policy and Planning for Sustainable Research Software," a Sloan Foundation-funded project within URSSI dedicated to supporting the future of research software through evidence-informed policy work (Project contacts are: @danielskatz and @dr-eric-jensen). If you are interested in working on this, please add a comment.

@dr-eric-jensen dr-eric-jensen added Effort: Small Less than 1 person-year estimated to deliver this. Activity: Research This is a research-type activity labels Aug 24, 2023
@danielskatz danielskatz added the Activity This is a policy activity label Aug 30, 2023
@dr-eric-jensen dr-eric-jensen added the Topic: Impact This topic encompasses software's academic impact, value and importance label Aug 31, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Activity: Research This is a research-type activity Activity This is a policy activity Effort: Small Less than 1 person-year estimated to deliver this. Topic: Impact This topic encompasses software's academic impact, value and importance
Projects
None yet
Development

No branches or pull requests

2 participants