An Analysis of Library Rollbacks: A Case Study of Java']Java Libraries

被引:1
|
作者
Suwa, Hirohiko [1 ]
Ihara, Akinori [1 ]
Kula, Raula Gaikovina [1 ]
Fujibayashi, Daiki [1 ]
Matsumoto, Kenichi [1 ]
机构
[1] Nara Inst Sci & Technol, Grad Sch Informat Sci, Nara, Japan
关键词
rollback; migration; !text type='Java']Java[!/text] libraries; SOFTWARE; MODELS;
D O I
10.1109/APSECW.2017.25
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
To take full advantage of third-party library functionality, developers of a software are encouraged to constantly migrate their library dependencies. When developers migrate a library, a library rollback may occur during a migration. The library rollback is a process of restoring the software to the previously defined library state, typically to recover because a library that could not integrate with that software based on any reasons. To ensure a quick successful migration of a new library or version, developers should avoid the time and resource costs of such rollbacks. In this paper, we investigate factors leading to a rollback during library migration. We propose an empirical method to detect rollbacks and apply it to 9,357 projects from GitHub that have been adopted by around 50 Maven libraries. The results indicate that dependencies with shorter release cycles are more likely to have a rollback. Furthermore, a project that responds more quickly to a newer library is more likely to have a rollback. We recommend that developers consider project version type, latency time and the release cycle of a library during library migration.
引用
收藏
页码:63 / 70
页数:8
相关论文
共 50 条
  • [1] A study of library migrations in Java']Java
    Teyton, Cedric
    Falleri, Jean-Remy
    Palyart, Marc
    Blanc, Xavier
    [J]. JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 2014, 26 (11) : 1030 - 1052
  • [2] Tail - A Java']Java technical analysis library
    Santos, Marcio V.
    Takinami, Alexandre
    Goldman, Alfredo
    Fernandes, Cecilia
    [J]. CSE 2008:11TH IEEE INTERNATIONAL CONFERENCE ON COMPUTATIONAL SCIENCE AND ENGINEERING, PROCEEDINGS, 2008, : 463 - 470
  • [3] Are Third-Party Libraries Secure? A Software Library Checker for Java']Java
    Viertel, Fabien Patrick
    Kortum, Fabian
    Wagner, Leif
    Schneider, Kurt
    [J]. RISKS AND SECURITY OF INTERNET AND SYSTEMS, 2019, 11391 : 18 - 34
  • [4] robustDEA : A Java']Java library for robust efficiency analysis
    Labijak-Kowalska, Anna
    Kadzinski, Milosz
    [J]. SOFTWAREX, 2024, 26
  • [5] Detecting Vulnerable Java']Java Classes Based on the Analysis of Java']Java Library Call Graph
    Park, Hyosung
    Park, Chulwoo
    Yoo, SangBong
    Kim, Kichang
    [J]. IEEE 2018 INTERNATIONAL CONGRESS ON CYBERMATICS / 2018 IEEE CONFERENCES ON INTERNET OF THINGS, GREEN COMPUTING AND COMMUNICATIONS, CYBER, PHYSICAL AND SOCIAL COMPUTING, SMART DATA, BLOCKCHAIN, COMPUTER AND INFORMATION TECHNOLOGY, 2018, : 1872 - 1879
  • [6] Performance analysis of Java']Java group toolkits: A case study
    Baldoni, R
    Cimmino, S
    Marchetti, C
    Termini, A
    [J]. SCIENTIFIC ENGINEERING FOR DISTRIBUTED JAVA APPLICATIONS, 2002, 2604 : 49 - 60
  • [7] An OpenMP Library for Java']Java
    Cook, Robert P.
    [J]. 2013 PROCEEDINGS OF IEEE SOUTHEASTCON, 2013,
  • [8] Java']Java access to numerical libraries
    Casanova, H
    Dongarra, J
    Doolin, DM
    [J]. CONCURRENCY-PRACTICE AND EXPERIENCE, 1997, 9 (11): : 1279 - 1291
  • [9] Automatic Upgrade of Java']Java Libraries
    Tronicek, Zdenek
    [J]. ERCIM NEWS, 2012, (88): : 31 - 31
  • [10] Developing numerical libraries in Java']Java
    Boisvert, RF
    Dongarra, JJ
    Pozo, R
    Remington, KA
    Stewart, GW
    [J]. CONCURRENCY-PRACTICE AND EXPERIENCE, 1998, 10 (11-13): : 1117 - 1129