SlideShare una empresa de Scribd logo
1 de 16
Descargar para leer sin conexión
Survivability of Software
Projects in Gnome	

A Replication Study
Tom Mens, Mathieu Goeminne, Uzma Raja,Alexander Serebrenik
Software Engineering Lab
Dept. Information Systems, 	

Statistics & Management Science	

Dept. Math. & Computer Science
SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME	

Context
• Study of macro-level software evolution	

• study the evolution of large coherent collections or
distributions of software projects or packages	

• Examples: GNOME, Debian, CRAN, …	

• also known as software ecosystems
• Study social/community aspects of these ecosystems	

!
T. Mens, M. Goeminne. Analysing Ecosystems for Open Source Software Developer Communities. Chapter in
‘Software Ecosystems: Analyzing and Managing Business Networks in the Software Industry’, Slinger et al, 2013	

J.M. Gonzalez-Barahona et al. Macro-level software evolution: a case study of a large software compilation.
Empirical Software Engineering 14(3): 262-285 (2009)	

M. Lungu, M. Lanza. The Small Project Observatory:Visualizing software ecosystems. Sci. Comput. Program.
75(4): 264-275 (2010)
SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME	

Context
• Study of the GNOME ecosystem	

• Taking into account the social aspects of
software evolution	

!
M. Goeminne. Understanding the Evolution of Socio-technical Aspects in Open Source Ecosystems:
An Empirical Analysis of GNOME. PhD thesis, UMONS, July 2013.	

B.Vasilescu, A. Serebrenik, M. Goeminne,T. Mens. On the variation and specialisation of workload:
a case study of the GNOME ecosystem community. Emp. Softw. Eng. 19: 955-1008 (2014)
SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME	

Goal
• Conceptual replication study of 	

• U. Raja and M. J.Tretter, “Defining and evaluating a measure of open
source project survivability,” IEEE Trans. Softw. Eng., vol. 38, pp. 163–174,
Jan. 2012	

• Question : Can we provide a good model predicting project survivability?	

• Original paper: 136 SourceForge projects	

• Our paper: 183 GNOME projects 	

• Same research question, but using a different experimental procedure	

• Build a predictive model of project inactivity	

• Based on the official Git repositories and bug trackers
SATToSE 2014
• Vigor
• ‘the ability of a project to grow over a period of time’	

• # versions / # years	

• Resilience
• ‘the ability of a project to recover from internal and external perturbations’	

• Mean time to react to an issue report	

• Organisation
• ‘the amount of structure exhibited by the contributors’ interaction’	

• ‘complexity’ of the relations among contributors	

!
• Status
• Explicit on SF
Mathieu GoeminneSurvivability of Software Projects in GNOME	

Viability dimensions	

in the original study (v,r,o) ⟶ s
SATToSE 2014
• Vigor
!
!
• Resilience
!
!
• Organisation
!
!
• Status
Mathieu GoeminneSurvivability of Software Projects in GNOME	

Viability dimensions	

our operationalization (v,r,o) ⟶ s
Implicit: no activity during the last 360 days
SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME	

Project selection
Constraint # projects
Existing project 1,418
+ Existing bug tracker 197
+ Non empty data sets 187
+ Remove one-day projects 183
SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME	

Viability Index
VI(p) = α + β1 V(p) + β2 R(p) + β3 O(p)
SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME	

Viability
VI(p) = α + β1 V(p) + β2 R(p) + β3 O(p)
Descriptive stats after 	

log transformation
SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME	

Viability
VI(p) = α + β1 V(p) + β2 R(p) + β3 O(p)
Descriptive stats after 	

log transformation
Determined by Logistic Regression Analysis such that 	

VI(p) is high (close to 1) if p is an active project 	

VI(p) is low (close to 0) otherwise
SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME	

We checked that
• Our model is globally meaningful: at least one
of the predictor variables is meaningful.	

• Comparison between Full model (containing the predictors) and
Reduced model (containing α only)	

• Null hypothesis states that β1 = β2 = β3 = 0 is rejected	

• Each individual predictor variables is useful	

• Null hypotheses H0
0
, H0
v
, H0
r
, H0
o
state that α = 0, β1 = 0, β2 = 0, and
β3 = 0 are rejected	

• Our model fits the data well	

• Goodness of Fit test
SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME	

Validation
• The 3 dimensions ofViability are significant
to predict whether a project is active or
inactive in the Gnome ecosystem.	

• Good prediction for other projects?	

• Stratified random sampling approach 	

• 20% (7 inactive, 30 active) Gnome
projects used to create our model
SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME	

Validation 	

Confusion matrix
Predicted
as active
Predicted
as inactive
active 111 8
inactive 3 24
Values are well within statistically acceptable range
Accuracy: 92%	

Precision: 	

82%	

Recall: 	

 	

 93%
SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME	

Weaknesses
• SourceForge is not Gnome	

• active project? 	

• versions? 	

• are the different results due to the different projects? to the
operationalization?	

• Only a partial view of project’s history	

• official Git repositories and bug trackers	

• other data sources? (mailing lists, StackExchange?)	

• general principles (e.g., developer involvement) operationalized
with simple metrics using a single data source.
SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME	

Conclusion
• Efficient model for predicting the project activity, based
on metadata and contributors’ involvement	

• Different sets of projets ⟶ different operationalization	

• Work in progress	

• dimensions closer to the original ones (+ extended
model) to facilitate comparison	

• Predict the future?	

• Add other data sources (e.g., mailing lists)
SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME	

References
• U. Raja and M. J.Tretter,“Defining and evaluating a measure of open source project
survivability,” IEEE Trans. Softw. Eng. 38: 163–174 (2012)	

• M. Goeminne,“Understanding the Evolution of Socio-technical Aspects in Open Source
Ecosystems:An Empirical Analysis of GNOME”. PhD thesis, UMONS, July 2013.	

• B.Vasilescu et al, “On the variation and specialisation of workload — a case study
of the GNOME ecosystem community,” Emp. Softw. Eng. 19(4): 955-1008 (2014)	

• M. Goeminne et al, “A historical dataset for the gnome ecosystem,” in MSR (T. Zim-
mermann, M. D. Penta, and S. Kim, eds.), pp. 225–228, IEEE / ACM, 2013.	

• https://bitbucket.org/mgoeminne/gnome-survivability/downloads/

Más contenido relacionado

Similar a Survivability of software projects in Gnome: A replication study

MOD2014-Mens-Lecture1
MOD2014-Mens-Lecture1MOD2014-Mens-Lecture1
MOD2014-Mens-Lecture1Tom Mens
 
MOD2014-Mens-Lecture4
MOD2014-Mens-Lecture4MOD2014-Mens-Lecture4
MOD2014-Mens-Lecture4Tom Mens
 
Open Backscatter Toolchain (OpenBST) Project - A Community-vetted Workflow fo...
Open Backscatter Toolchain (OpenBST) Project - A Community-vetted Workflow fo...Open Backscatter Toolchain (OpenBST) Project - A Community-vetted Workflow fo...
Open Backscatter Toolchain (OpenBST) Project - A Community-vetted Workflow fo...Giuseppe Masetti
 
Git into the Flow, with the Ultimate Continuous Delivery Workflow on Heroku
Git into the Flow, with the Ultimate Continuous Delivery Workflow on HerokuGit into the Flow, with the Ultimate Continuous Delivery Workflow on Heroku
Git into the Flow, with the Ultimate Continuous Delivery Workflow on HerokuSalesforce Developers
 
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)Tom Mens
 
Is Go Better Than Python For Data Mining
Is Go Better Than Python For Data MiningIs Go Better Than Python For Data Mining
Is Go Better Than Python For Data MiningRepustate
 
Replication and Benchmarking in Software Analytics
Replication and Benchmarking in Software AnalyticsReplication and Benchmarking in Software Analytics
Replication and Benchmarking in Software AnalyticsUniversity of Zurich
 
OpenRepGrid – An Open Source Software for the Analysis of Repertory Grids
OpenRepGrid – An Open Source Software for the Analysis of Repertory GridsOpenRepGrid – An Open Source Software for the Analysis of Repertory Grids
OpenRepGrid – An Open Source Software for the Analysis of Repertory GridsMark Heckmann
 
Social and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software EcosystemSocial and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software EcosystemTom Mens
 
What java developers (don’t) know about api compatibility
What java developers (don’t) know about api compatibilityWhat java developers (don’t) know about api compatibility
What java developers (don’t) know about api compatibilityJens Dietrich
 
Software Analytics - Achievements and Challenges
Software Analytics - Achievements and ChallengesSoftware Analytics - Achievements and Challenges
Software Analytics - Achievements and ChallengesTao Xie
 
Social and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software EcosystemSocial and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software Ecosystemeconst
 
Groovy 1 7 Update, past, present, future - S2G Forum 2010
Groovy 1 7 Update, past, present, future - S2G Forum 2010Groovy 1 7 Update, past, present, future - S2G Forum 2010
Groovy 1 7 Update, past, present, future - S2G Forum 2010Guillaume Laforge
 
Six Easy Pieces of Quantitatively Analyzing Open Source
Six Easy Pieces of Quantitatively Analyzing Open SourceSix Easy Pieces of Quantitatively Analyzing Open Source
Six Easy Pieces of Quantitatively Analyzing Open SourceDirk Riehle
 
Improving the accuracy and reliability of data analysis code
Improving the accuracy and reliability of data analysis codeImproving the accuracy and reliability of data analysis code
Improving the accuracy and reliability of data analysis codeJohan Carlin
 
Software system design sample
Software system design sampleSoftware system design sample
Software system design sampleNorman K Ma
 

Similar a Survivability of software projects in Gnome: A replication study (20)

MOD2014-Mens-Lecture1
MOD2014-Mens-Lecture1MOD2014-Mens-Lecture1
MOD2014-Mens-Lecture1
 
Final Algos
Final AlgosFinal Algos
Final Algos
 
MOD2014-Mens-Lecture4
MOD2014-Mens-Lecture4MOD2014-Mens-Lecture4
MOD2014-Mens-Lecture4
 
Open Backscatter Toolchain (OpenBST) Project - A Community-vetted Workflow fo...
Open Backscatter Toolchain (OpenBST) Project - A Community-vetted Workflow fo...Open Backscatter Toolchain (OpenBST) Project - A Community-vetted Workflow fo...
Open Backscatter Toolchain (OpenBST) Project - A Community-vetted Workflow fo...
 
Git into the Flow, with the Ultimate Continuous Delivery Workflow on Heroku
Git into the Flow, with the Ultimate Continuous Delivery Workflow on HerokuGit into the Flow, with the Ultimate Continuous Delivery Workflow on Heroku
Git into the Flow, with the Ultimate Continuous Delivery Workflow on Heroku
 
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
 
Is Go Better Than Python For Data Mining
Is Go Better Than Python For Data MiningIs Go Better Than Python For Data Mining
Is Go Better Than Python For Data Mining
 
Msr2021 tutorial-di penta
Msr2021 tutorial-di pentaMsr2021 tutorial-di penta
Msr2021 tutorial-di penta
 
Replication and Benchmarking in Software Analytics
Replication and Benchmarking in Software AnalyticsReplication and Benchmarking in Software Analytics
Replication and Benchmarking in Software Analytics
 
OpenRepGrid – An Open Source Software for the Analysis of Repertory Grids
OpenRepGrid – An Open Source Software for the Analysis of Repertory GridsOpenRepGrid – An Open Source Software for the Analysis of Repertory Grids
OpenRepGrid – An Open Source Software for the Analysis of Repertory Grids
 
Social and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software EcosystemSocial and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software Ecosystem
 
What java developers (don’t) know about api compatibility
What java developers (don’t) know about api compatibilityWhat java developers (don’t) know about api compatibility
What java developers (don’t) know about api compatibility
 
Software Analytics - Achievements and Challenges
Software Analytics - Achievements and ChallengesSoftware Analytics - Achievements and Challenges
Software Analytics - Achievements and Challenges
 
Icpc16.ppt
Icpc16.pptIcpc16.ppt
Icpc16.ppt
 
Icpc16.ppt
Icpc16.pptIcpc16.ppt
Icpc16.ppt
 
Social and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software EcosystemSocial and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software Ecosystem
 
Groovy 1 7 Update, past, present, future - S2G Forum 2010
Groovy 1 7 Update, past, present, future - S2G Forum 2010Groovy 1 7 Update, past, present, future - S2G Forum 2010
Groovy 1 7 Update, past, present, future - S2G Forum 2010
 
Six Easy Pieces of Quantitatively Analyzing Open Source
Six Easy Pieces of Quantitatively Analyzing Open SourceSix Easy Pieces of Quantitatively Analyzing Open Source
Six Easy Pieces of Quantitatively Analyzing Open Source
 
Improving the accuracy and reliability of data analysis code
Improving the accuracy and reliability of data analysis codeImproving the accuracy and reliability of data analysis code
Improving the accuracy and reliability of data analysis code
 
Software system design sample
Software system design sampleSoftware system design sample
Software system design sample
 

Más de Tom Mens

How to be(come) a successful PhD student
How to be(come) a successful PhD studentHow to be(come) a successful PhD student
How to be(come) a successful PhD studentTom Mens
 
Recognising bot activity in collaborative software development
Recognising bot activity in collaborative software developmentRecognising bot activity in collaborative software development
Recognising bot activity in collaborative software developmentTom Mens
 
A Dataset of Bot and Human Activities in GitHub
A Dataset of Bot and Human Activities in GitHubA Dataset of Bot and Human Activities in GitHub
A Dataset of Bot and Human Activities in GitHubTom Mens
 
The (r)evolution of CI/CD on GitHub
 The (r)evolution of CI/CD on GitHub The (r)evolution of CI/CD on GitHub
The (r)evolution of CI/CD on GitHubTom Mens
 
Nurturing the Software Ecosystems of the Future
Nurturing the Software Ecosystems of the FutureNurturing the Software Ecosystems of the Future
Nurturing the Software Ecosystems of the FutureTom Mens
 
Comment programmer un robot en 30 minutes?
Comment programmer un robot en 30 minutes?Comment programmer un robot en 30 minutes?
Comment programmer un robot en 30 minutes?Tom Mens
 
On the rise and fall of CI services in GitHub
On the rise and fall of CI services in GitHubOn the rise and fall of CI services in GitHub
On the rise and fall of CI services in GitHubTom Mens
 
On backporting practices in package dependency networks
On backporting practices in package dependency networksOn backporting practices in package dependency networks
On backporting practices in package dependency networksTom Mens
 
Comparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Comparing semantic versioning practices in Cargo, npm, Packagist and RubygemsComparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Comparing semantic versioning practices in Cargo, npm, Packagist and RubygemsTom Mens
 
Lost in Zero Space
Lost in Zero SpaceLost in Zero Space
Lost in Zero SpaceTom Mens
 
Evaluating a bot detection model on git commit messages
Evaluating a bot detection model on git commit messagesEvaluating a bot detection model on git commit messages
Evaluating a bot detection model on git commit messagesTom Mens
 
Is my software ecosystem healthy? It depends!
Is my software ecosystem healthy? It depends!Is my software ecosystem healthy? It depends!
Is my software ecosystem healthy? It depends!Tom Mens
 
Bot or not? Detecting bots in GitHub pull request activity based on comment s...
Bot or not? Detecting bots in GitHub pull request activity based on comment s...Bot or not? Detecting bots in GitHub pull request activity based on comment s...
Bot or not? Detecting bots in GitHub pull request activity based on comment s...Tom Mens
 
On the fragility of open source software packaging ecosystems
On the fragility of open source software packaging ecosystemsOn the fragility of open source software packaging ecosystems
On the fragility of open source software packaging ecosystemsTom Mens
 
How magic is zero? An Empirical Analysis of Initial Development Releases in S...
How magic is zero? An Empirical Analysis of Initial Development Releases in S...How magic is zero? An Empirical Analysis of Initial Development Releases in S...
How magic is zero? An Empirical Analysis of Initial Development Releases in S...Tom Mens
 
Comparing dependency issues across software package distributions (FOSDEM 2020)
Comparing dependency issues across software package distributions (FOSDEM 2020)Comparing dependency issues across software package distributions (FOSDEM 2020)
Comparing dependency issues across software package distributions (FOSDEM 2020)Tom Mens
 
SecoHealth 2019 Research Achievements
SecoHealth 2019 Research AchievementsSecoHealth 2019 Research Achievements
SecoHealth 2019 Research AchievementsTom Mens
 
SECO-Assist 2019 research seminar
SECO-Assist 2019 research seminarSECO-Assist 2019 research seminar
SECO-Assist 2019 research seminarTom Mens
 
Empirically Analysing the Socio-Technical Health of Software Package Managers
Empirically Analysing the Socio-Technical Health of Software Package ManagersEmpirically Analysing the Socio-Technical Health of Software Package Managers
Empirically Analysing the Socio-Technical Health of Software Package ManagersTom Mens
 
ConPan: Analysing Packages Installed in Docker Containers
ConPan: Analysing Packages Installed in Docker ContainersConPan: Analysing Packages Installed in Docker Containers
ConPan: Analysing Packages Installed in Docker ContainersTom Mens
 

Más de Tom Mens (20)

How to be(come) a successful PhD student
How to be(come) a successful PhD studentHow to be(come) a successful PhD student
How to be(come) a successful PhD student
 
Recognising bot activity in collaborative software development
Recognising bot activity in collaborative software developmentRecognising bot activity in collaborative software development
Recognising bot activity in collaborative software development
 
A Dataset of Bot and Human Activities in GitHub
A Dataset of Bot and Human Activities in GitHubA Dataset of Bot and Human Activities in GitHub
A Dataset of Bot and Human Activities in GitHub
 
The (r)evolution of CI/CD on GitHub
 The (r)evolution of CI/CD on GitHub The (r)evolution of CI/CD on GitHub
The (r)evolution of CI/CD on GitHub
 
Nurturing the Software Ecosystems of the Future
Nurturing the Software Ecosystems of the FutureNurturing the Software Ecosystems of the Future
Nurturing the Software Ecosystems of the Future
 
Comment programmer un robot en 30 minutes?
Comment programmer un robot en 30 minutes?Comment programmer un robot en 30 minutes?
Comment programmer un robot en 30 minutes?
 
On the rise and fall of CI services in GitHub
On the rise and fall of CI services in GitHubOn the rise and fall of CI services in GitHub
On the rise and fall of CI services in GitHub
 
On backporting practices in package dependency networks
On backporting practices in package dependency networksOn backporting practices in package dependency networks
On backporting practices in package dependency networks
 
Comparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Comparing semantic versioning practices in Cargo, npm, Packagist and RubygemsComparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Comparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
 
Lost in Zero Space
Lost in Zero SpaceLost in Zero Space
Lost in Zero Space
 
Evaluating a bot detection model on git commit messages
Evaluating a bot detection model on git commit messagesEvaluating a bot detection model on git commit messages
Evaluating a bot detection model on git commit messages
 
Is my software ecosystem healthy? It depends!
Is my software ecosystem healthy? It depends!Is my software ecosystem healthy? It depends!
Is my software ecosystem healthy? It depends!
 
Bot or not? Detecting bots in GitHub pull request activity based on comment s...
Bot or not? Detecting bots in GitHub pull request activity based on comment s...Bot or not? Detecting bots in GitHub pull request activity based on comment s...
Bot or not? Detecting bots in GitHub pull request activity based on comment s...
 
On the fragility of open source software packaging ecosystems
On the fragility of open source software packaging ecosystemsOn the fragility of open source software packaging ecosystems
On the fragility of open source software packaging ecosystems
 
How magic is zero? An Empirical Analysis of Initial Development Releases in S...
How magic is zero? An Empirical Analysis of Initial Development Releases in S...How magic is zero? An Empirical Analysis of Initial Development Releases in S...
How magic is zero? An Empirical Analysis of Initial Development Releases in S...
 
Comparing dependency issues across software package distributions (FOSDEM 2020)
Comparing dependency issues across software package distributions (FOSDEM 2020)Comparing dependency issues across software package distributions (FOSDEM 2020)
Comparing dependency issues across software package distributions (FOSDEM 2020)
 
SecoHealth 2019 Research Achievements
SecoHealth 2019 Research AchievementsSecoHealth 2019 Research Achievements
SecoHealth 2019 Research Achievements
 
SECO-Assist 2019 research seminar
SECO-Assist 2019 research seminarSECO-Assist 2019 research seminar
SECO-Assist 2019 research seminar
 
Empirically Analysing the Socio-Technical Health of Software Package Managers
Empirically Analysing the Socio-Technical Health of Software Package ManagersEmpirically Analysing the Socio-Technical Health of Software Package Managers
Empirically Analysing the Socio-Technical Health of Software Package Managers
 
ConPan: Analysing Packages Installed in Docker Containers
ConPan: Analysing Packages Installed in Docker ContainersConPan: Analysing Packages Installed in Docker Containers
ConPan: Analysing Packages Installed in Docker Containers
 

Último

How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 

Último (20)

How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 

Survivability of software projects in Gnome: A replication study

  • 1. Survivability of Software Projects in Gnome A Replication Study Tom Mens, Mathieu Goeminne, Uzma Raja,Alexander Serebrenik Software Engineering Lab Dept. Information Systems, Statistics & Management Science Dept. Math. & Computer Science
  • 2. SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME Context • Study of macro-level software evolution • study the evolution of large coherent collections or distributions of software projects or packages • Examples: GNOME, Debian, CRAN, … • also known as software ecosystems • Study social/community aspects of these ecosystems ! T. Mens, M. Goeminne. Analysing Ecosystems for Open Source Software Developer Communities. Chapter in ‘Software Ecosystems: Analyzing and Managing Business Networks in the Software Industry’, Slinger et al, 2013 J.M. Gonzalez-Barahona et al. Macro-level software evolution: a case study of a large software compilation. Empirical Software Engineering 14(3): 262-285 (2009) M. Lungu, M. Lanza. The Small Project Observatory:Visualizing software ecosystems. Sci. Comput. Program. 75(4): 264-275 (2010)
  • 3. SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME Context • Study of the GNOME ecosystem • Taking into account the social aspects of software evolution ! M. Goeminne. Understanding the Evolution of Socio-technical Aspects in Open Source Ecosystems: An Empirical Analysis of GNOME. PhD thesis, UMONS, July 2013. B.Vasilescu, A. Serebrenik, M. Goeminne,T. Mens. On the variation and specialisation of workload: a case study of the GNOME ecosystem community. Emp. Softw. Eng. 19: 955-1008 (2014)
  • 4. SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME Goal • Conceptual replication study of • U. Raja and M. J.Tretter, “Defining and evaluating a measure of open source project survivability,” IEEE Trans. Softw. Eng., vol. 38, pp. 163–174, Jan. 2012 • Question : Can we provide a good model predicting project survivability? • Original paper: 136 SourceForge projects • Our paper: 183 GNOME projects • Same research question, but using a different experimental procedure • Build a predictive model of project inactivity • Based on the official Git repositories and bug trackers
  • 5. SATToSE 2014 • Vigor • ‘the ability of a project to grow over a period of time’ • # versions / # years • Resilience • ‘the ability of a project to recover from internal and external perturbations’ • Mean time to react to an issue report • Organisation • ‘the amount of structure exhibited by the contributors’ interaction’ • ‘complexity’ of the relations among contributors ! • Status • Explicit on SF Mathieu GoeminneSurvivability of Software Projects in GNOME Viability dimensions in the original study (v,r,o) ⟶ s
  • 6. SATToSE 2014 • Vigor ! ! • Resilience ! ! • Organisation ! ! • Status Mathieu GoeminneSurvivability of Software Projects in GNOME Viability dimensions our operationalization (v,r,o) ⟶ s Implicit: no activity during the last 360 days
  • 7. SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME Project selection Constraint # projects Existing project 1,418 + Existing bug tracker 197 + Non empty data sets 187 + Remove one-day projects 183
  • 8. SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME Viability Index VI(p) = α + β1 V(p) + β2 R(p) + β3 O(p)
  • 9. SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME Viability VI(p) = α + β1 V(p) + β2 R(p) + β3 O(p) Descriptive stats after log transformation
  • 10. SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME Viability VI(p) = α + β1 V(p) + β2 R(p) + β3 O(p) Descriptive stats after log transformation Determined by Logistic Regression Analysis such that VI(p) is high (close to 1) if p is an active project VI(p) is low (close to 0) otherwise
  • 11. SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME We checked that • Our model is globally meaningful: at least one of the predictor variables is meaningful. • Comparison between Full model (containing the predictors) and Reduced model (containing α only) • Null hypothesis states that β1 = β2 = β3 = 0 is rejected • Each individual predictor variables is useful • Null hypotheses H0 0 , H0 v , H0 r , H0 o state that α = 0, β1 = 0, β2 = 0, and β3 = 0 are rejected • Our model fits the data well • Goodness of Fit test
  • 12. SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME Validation • The 3 dimensions ofViability are significant to predict whether a project is active or inactive in the Gnome ecosystem. • Good prediction for other projects? • Stratified random sampling approach • 20% (7 inactive, 30 active) Gnome projects used to create our model
  • 13. SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME Validation Confusion matrix Predicted as active Predicted as inactive active 111 8 inactive 3 24 Values are well within statistically acceptable range Accuracy: 92% Precision: 82% Recall: 93%
  • 14. SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME Weaknesses • SourceForge is not Gnome • active project? • versions? • are the different results due to the different projects? to the operationalization? • Only a partial view of project’s history • official Git repositories and bug trackers • other data sources? (mailing lists, StackExchange?) • general principles (e.g., developer involvement) operationalized with simple metrics using a single data source.
  • 15. SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME Conclusion • Efficient model for predicting the project activity, based on metadata and contributors’ involvement • Different sets of projets ⟶ different operationalization • Work in progress • dimensions closer to the original ones (+ extended model) to facilitate comparison • Predict the future? • Add other data sources (e.g., mailing lists)
  • 16. SATToSE 2014 Mathieu GoeminneSurvivability of Software Projects in GNOME References • U. Raja and M. J.Tretter,“Defining and evaluating a measure of open source project survivability,” IEEE Trans. Softw. Eng. 38: 163–174 (2012) • M. Goeminne,“Understanding the Evolution of Socio-technical Aspects in Open Source Ecosystems:An Empirical Analysis of GNOME”. PhD thesis, UMONS, July 2013. • B.Vasilescu et al, “On the variation and specialisation of workload — a case study of the GNOME ecosystem community,” Emp. Softw. Eng. 19(4): 955-1008 (2014) • M. Goeminne et al, “A historical dataset for the gnome ecosystem,” in MSR (T. Zim- mermann, M. D. Penta, and S. Kim, eds.), pp. 225–228, IEEE / ACM, 2013. • https://bitbucket.org/mgoeminne/gnome-survivability/downloads/