Software development and software engineering are now more than ever a community effort because their success often depends on people and their socio-technical characteristics. Therefore, it becomes fundamental balancing delicate forces, such as global distance or organisational barriers, with ad-hoc global software engineering practices. In this complex community scenario, it is likely that the arise of unforeseen socio-technical circumstances requires extra attention from community leaders in order to reduce any additional socio-technical cost, known as Social Debt. To offer support in these situations and study the causality around Social Debt within Open Source projects, we conducted an empirical research in order to define, operationalise and evaluate a Socio-technical Quality Framework for software development communities. Community Smells are synonyms of negative organisational and social patterns that represent a potential risk related to the presence of Social Debt. The proposed framework provides the identification and quantification of Community Smells and it is also constituted by a set of fundamental factors capable of tracking and quantifying organisational and socio-technical key qualities, constituting a tool that can be used for continuous Social Debt management and improvement, much like code analysis and verification are used to improve software products. We evaluated our framework on 60 Open Source development communities and made several key findings concerning organisational and socio-technical quality factors correlated to the occurrence of Community Smells, thus capable of influencing the wellbeing of software projects. Moreover, we determined several socio-technical quality thresholds and identified some developer perceptions capable of acting as qualitative indicators of the presence of Community Smells.

L’ingegneria e lo sviluppo del software sono ora più che mai uno sforzo comunitario, dal momento che il loro successo dipende dalle persone e dalle loro caratteristiche socio-tecniche. E’ dunque diventato fondamentale equilibrare forze delicate, come la distanza globale e le barriere organizzative, con pratiche ad-hoc di ingegneria del software. In questo complesso scenario è possibile che l’insorgere di circostanze socio-tecniche impreviste richieda una maggiore attenzione da parte dei leader di una comunità al fine di ridurre ogni costo socio-tecnico aggiuntivo, noto come Social Debt. Per offrire un supporto in queste situazioni e studiare le caratteristiche del Social Debt in progetti Open Source, è stata condotta una ricerca empirica al fine di definire, operazionalizzare e valutare un Socio-technical Quality Framework per comunità di sviluppo software. I Community Smells sono modelli sociali e organizzativi negativi che rappresentano un potenziale rischio relativo alla presenza di Social Debt. Il framework proposto fornisce l’identificazione e la quantificazione di Community Smells ed è inoltre costituito da un insieme di fattori capaci di tracciare e quantificare importanti qualità socio-tecniche e organizzative, costituendo uno strumento che può essere utilizzato per migliorare e gestire in modo continuo il Social Debt, così come l’analisi e la verifica del codice sono usate per migliorare i prodotti software. Il framework è stato valutato in 60 comunità di sviluppo Open Source e sono stati individuati molti fattori socio-tecnici ed organizzativi correlati alla presenza di Community Smells, quindi in grado di influenzare il benessere dei progetti software. Inoltre, sono state determinate diverse soglie di qualità ed identificate alcune percezioni degli sviluppatori in grado di fungere da indicatori qualitativi della presenza di Community Smells.

An approach to measure community smells in software development communities

MAGNONI, SIMONE
2015/2016

Abstract

Software development and software engineering are now more than ever a community effort because their success often depends on people and their socio-technical characteristics. Therefore, it becomes fundamental balancing delicate forces, such as global distance or organisational barriers, with ad-hoc global software engineering practices. In this complex community scenario, it is likely that the arise of unforeseen socio-technical circumstances requires extra attention from community leaders in order to reduce any additional socio-technical cost, known as Social Debt. To offer support in these situations and study the causality around Social Debt within Open Source projects, we conducted an empirical research in order to define, operationalise and evaluate a Socio-technical Quality Framework for software development communities. Community Smells are synonyms of negative organisational and social patterns that represent a potential risk related to the presence of Social Debt. The proposed framework provides the identification and quantification of Community Smells and it is also constituted by a set of fundamental factors capable of tracking and quantifying organisational and socio-technical key qualities, constituting a tool that can be used for continuous Social Debt management and improvement, much like code analysis and verification are used to improve software products. We evaluated our framework on 60 Open Source development communities and made several key findings concerning organisational and socio-technical quality factors correlated to the occurrence of Community Smells, thus capable of influencing the wellbeing of software projects. Moreover, we determined several socio-technical quality thresholds and identified some developer perceptions capable of acting as qualitative indicators of the presence of Community Smells.
TAMBURRI, DAMIAN ANDREW
ING - Scuola di Ingegneria Industriale e dell'Informazione
28-lug-2016
2015/2016
L’ingegneria e lo sviluppo del software sono ora più che mai uno sforzo comunitario, dal momento che il loro successo dipende dalle persone e dalle loro caratteristiche socio-tecniche. E’ dunque diventato fondamentale equilibrare forze delicate, come la distanza globale e le barriere organizzative, con pratiche ad-hoc di ingegneria del software. In questo complesso scenario è possibile che l’insorgere di circostanze socio-tecniche impreviste richieda una maggiore attenzione da parte dei leader di una comunità al fine di ridurre ogni costo socio-tecnico aggiuntivo, noto come Social Debt. Per offrire un supporto in queste situazioni e studiare le caratteristiche del Social Debt in progetti Open Source, è stata condotta una ricerca empirica al fine di definire, operazionalizzare e valutare un Socio-technical Quality Framework per comunità di sviluppo software. I Community Smells sono modelli sociali e organizzativi negativi che rappresentano un potenziale rischio relativo alla presenza di Social Debt. Il framework proposto fornisce l’identificazione e la quantificazione di Community Smells ed è inoltre costituito da un insieme di fattori capaci di tracciare e quantificare importanti qualità socio-tecniche e organizzative, costituendo uno strumento che può essere utilizzato per migliorare e gestire in modo continuo il Social Debt, così come l’analisi e la verifica del codice sono usate per migliorare i prodotti software. Il framework è stato valutato in 60 comunità di sviluppo Open Source e sono stati individuati molti fattori socio-tecnici ed organizzativi correlati alla presenza di Community Smells, quindi in grado di influenzare il benessere dei progetti software. Inoltre, sono state determinate diverse soglie di qualità ed identificate alcune percezioni degli sviluppatori in grado di fungere da indicatori qualitativi della presenza di Community Smells.
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
2016_07_Magnoni.pdf

accessibile in internet per tutti

Descrizione: Thesis text
Dimensione 6.6 MB
Formato Adobe PDF
6.6 MB Adobe PDF Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/123826