Can instability variations warn developers when open-source projects boost?

被引:1
作者
Capilla, Rafael [1 ]
Salamanca, Victor [1 ]
Valdezate, Alejandro [2 ]
Robles, Gregorio [1 ]
机构
[1] Univ Rey Juan Carlos, Madrid, Spain
[2] Int Univ La Rioja, Logrono, Spain
关键词
Instability; Open source software; Evolution; Software architecture; Cathedral; Bazaar; SOFTWARE EVOLUTION; STABILITY; APACHE; GITHUB; SIZE;
D O I
10.1007/s10664-024-10482-4
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Although architecture instability has been studied and measured using a variety of metrics, a deeper analysis of which project parts are less stable and how such instability varies over time is still needed. While having more information on architecture instability is, in general, useful for any software development project, it is especially important in Open Source Software (OSS) projects where the supervision of the development process is more difficult to achieve. In particular, we are interested when OSS projects grow from a small controlled environment (i.e., the cathedral phase) to a community-driven project (i.e., the bazaar phase). In such a transition, the project often explodes in terms of software size and number of contributing developers. Hence, the complexity of the newly added features, and the frequency of the commits and files modified may cause significant variations of the instability of the structure of the classes and packages. Consequently, in this article we analyze the instability in OSS projects, especially during that sensitive phase where they become community-driven. Our results show that instability metrics can be easily obtained in such type of transitions. We also observed from our case studies that instability metrics can help finding out the balance between adding new functionality and performing refactoring. As a conclusions we state that instability metrics offer relevant information in the transition phase from the cathedral to the bazaar.
引用
收藏
页数:39
相关论文
共 79 条
[1]  
Alenezi M, 2015, P INT C ENG MIS 2015
[2]   An empirical study of System Design Instability metric and design evolution in an agile software process [J].
Alshayeb, M ;
Li, W .
JOURNAL OF SYSTEMS AND SOFTWARE, 2005, 74 (03) :269-274
[3]   Towards measuring object-oriented class stability [J].
Alshayeb, M. ;
Naji, M. ;
Elish, M. O. ;
Al-Ghamdi, J. .
IET SOFTWARE, 2011, 5 (04) :415-424
[4]   A Comparative Study of Code Query Technologies [J].
Alves, Tiago L. ;
Hage, Jurriaan ;
Rademaker, Peter .
11TH IEEE INTERNATIONAL WORKING CONFERENCE ON SOURCE CODE ANALYSIS AND MANIPULATION (SCAM 2011), 2011, :145-154
[5]   The Effect of GoF Design Patterns on Stability: A Case Study [J].
Ampatzoglou, Apostolos ;
Chatzigeorgiou, Alexander ;
Charalampidou, Sofia ;
Avgeriou, Paris .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2015, 41 (08) :781-802
[6]  
[Anonymous], 1995, The mythical man-month: essays on software engineering
[7]  
Arvanitou E-M, 2017, P 21 INT C EV ASS SO
[8]  
Arvanitou EM, 2015, INT SYMP EMP SOFTWAR, P192, DOI 10.1109/ESEM.2015.7321204
[9]  
Aversano L, 2018, PROCEEDINGS OF THE 51ST ANNUAL HAWAII INTERNATIONAL CONFERENCE ON SYSTEM SCIENCES (HICSS), P5645
[10]   Package-Level stability evaluation of object-oriented systems [J].
Baig, Jawad Javed Akbar ;
Mahmood, Sajjad ;
Alshayeb, Mohammad ;
Niazi, Mahmood .
INFORMATION AND SOFTWARE TECHNOLOGY, 2019, 116