Back to Search
Start Over
Revealing the Social Aspects of Design Decay
- Source :
- SBES
- Publication Year :
- 2020
- Publisher :
- ACM, 2020.
-
Abstract
- The pull-based development model is widely used in source-code environments like GitHub. In this model, developers actively communicate and share their knowledge or opinions through the exchange of comments. Their goal is to improve the change under development, including its positive impact on design structure. In this context, two central social aspects may contribute to combating or adversely amplifying design decay. First, design decay may be avoided, reduced or accelerated depending whether the communication dynamics among developers - who play specific roles - is fluent and consistent along a change. Second, the discussion content itself may be decisive to either improve or deteriorate the structural design of a system. Unfortunately, there is no study on the the role that key social aspects play on avoiding or amplifying design decay. Previous work either investigates technical aspects of design decay or confirms the high frequency of design discussions in pull-based software development. This paper reports a retrospective study aimed at understanding the role of communication dynamics and discussion content on design decay. We focused our analysis on 11 social metrics related to these two aspects as well as 4 control technical metrics typically used as indicators of design decay. We analyzed more than 11k pull request discussions mined from five large open-source software systems. Our findings reveal that many social metrics can be used to discriminate between design impactful and unimpactful pull requests. Second, various factors of communication dynamics are related to design decay. However, temporal factors of communication dynamics outperformed the participant roles' factors as indicators of design decay. Finally, we noticed certain social metrics tend to be indicators of design decay when analyzing both aspects together.
- Subjects :
- Structure (mathematical logic)
Process management
business.industry
Computer science
Control (management)
Social metrics
0211 other engineering and technologies
Software development
020207 software engineering
Context (language use)
02 engineering and technology
Work (electrical)
0202 electrical engineering, electronic engineering, information engineering
Key (cryptography)
Software system
business
021106 design practice & management
Subjects
Details
- Database :
- OpenAIRE
- Journal :
- Proceedings of the XXXIV Brazilian Symposium on Software Engineering
- Accession number :
- edsair.doi...........b03adacd3916130b1e1a90bf83da8183
- Full Text :
- https://doi.org/10.1145/3422392.3422443