English
Related papers

Related papers: From One to Hundreds: Multi-Licensing in the JavaS…

200 papers

Software development is a complex process that includes many different tasks besides just writing code. One of the aspects of software engineering is selecting and managing licenses for the given project. In this paper, we present Sorrel -…

Software Engineering · Computer Science 2021-07-29 Dmitry Pogrebnoy , Ivan Kuznetsov , Yaroslav Golubev , Vladislav Tankov , Timofey Bryksin

In a wave of growth, open-source projects need to modernize and change how they deal with processes, methods, and communication with their contributors. We could observe that open-source projects are constantly evolving to improve their…

Software Engineering · Computer Science 2021-10-05 Joselito Júnior , Gláucya Boechat , Ivan Machado

Dependency cycles pose a significant challenge to software quality and maintainability. However, there is limited understanding of how practitioners resolve dependency cycles in real-world scenarios. This paper presents an empirical study…

Software Engineering · Computer Science 2023-12-19 Qiong Feng , Shuwen Liu , Huan Ji , Xiaotian Ma , Peng Liang

Improved test case prioritization means that software developers can detect and fix more software faults sooner than usual. But is there one "best" prioritization algorithm? Or do different kinds of projects deserve special kinds of…

Software Engineering · Computer Science 2021-02-23 Xiao Ling , Rishabh Agrawal , Tim Menzies

Refactoring is the de-facto practice to optimize software health. While several studies propose refactoring strategies to optimize software design through applying design patterns and removing design defects, little is known about how…

Software Engineering · Computer Science 2021-11-16 Eman Abdullah AlOmar , Tianjia Wang , Vaibhavi Raut , Mohamed Wiem Mkaouer , Christian Newman , Ali Ouni

The use of free and open source software (OSS) is gaining momentum due to the ever increasing availability and use of the Internet. Organizations are also now adopting open source software, despite some reservations, in particular regarding…

Software Engineering · Computer Science 2015-07-27 Faheem Ahmed , Piers Campbell , Ahmad Jaffar , Luiz Fernando Capretz

Third-party libraries (TPLs) are frequently reused in software to reduce development cost and the time to market. However, external library dependencies may introduce vulnerabilities into host applications. The issue of library dependency…

Software Engineering · Computer Science 2022-09-21 Wei Tang , Zhengzi Xu , Chengwei Liu , Jiahui Wu , Shouguo Yang , Yi Li , Ping Luo , Yang Liu

Open-source projects are essential to software development, but publicly disclosing vulnerabilities without fixes increases the risk of exploitation. The Open Source Security Foundation (OpenSSF) addresses this issue by promoting robust…

In the early 1980s, Open Source Software emerged as a revolutionary concept amidst the dominance of proprietary software. What began as a revolutionary idea has now become the cornerstone of computer science. Amidst OSS projects, AI is…

Software Engineering · Computer Science 2026-02-23 Matteo Esposito , Andrea Janes , Valentina Lenarduzzi , Davide Taibi

Following code style conventions in software projects is essential for maintaining overall code quality. Adhering to these conventions improves maintainability, understandability, and extensibility. Additionally, following best practices…

Software Engineering · Computer Science 2026-01-16 Alvari Kupari , Nasser Giacaman , Valerio Terragni

Open Source Software (OSS) history is traced to initial efforts in 1971 at Massachusetts Institute of Technology (MIT) Artificial Intelligence (AI) Lab, the initial goals of OSS around Free vs. Freedom, and its evolution and impact on…

Other Computer Science · Computer Science 2019-01-01 John Sherlock , Manoj Muniswamaiah , Lauren Clarke , Shawn Cicoria

The rise of machine learning (ML) and its integration into software systems has drastically changed development practices. While software engineering traditionally focused on manually created code artifacts with dedicated processes and…

Software Engineering · Computer Science 2025-02-25 Yorick Sens , Henriette Knopp , Sven Peldszus , Thorsten Berger

Recent advances in the area of legal information systems have led to a variety of applications that promise support in processing and accessing legal documents. Unfortunately, these applications have various limitations, e.g., regarding…

Digital Libraries · Computer Science 2020-05-28 Malte Ostendorff , Till Blume , Saskia Ostendorff

Refactoring is a common practice in software development, aimed at improving the internal code structure in order to make it easier to understand and modify. Consequently, it is often assumed that refactoring makes the code less prone to…

Software Engineering · Computer Science 2025-05-14 Isabella Ferreira , Lawrence Arkoh , Anderson Uchôa , Ana Carla Bibiano , Alessandro Garcia , Wesley K. G. Assunção

Software and systems traceability is widely accepted as an essential element for supporting many software development tasks. Today's version control systems provide inbuilt features that allow developers to tag each commit with one or more…

Software Engineering · Computer Science 2018-04-10 Michael Rath , Jacob Rendall , Jin L. C. Guo , Jane Cleland-Huang , Patrick Maeder

Modern software systems rely on dependency networks of reusable libraries, where breaking changes propagate and cause downstream consumers to fail. Despite growing research across ecosystems, no comprehensive synthesis exists. We conduct a…

Software Engineering · Computer Science 2026-05-26 Juntao Chen , Tingting Bi , Yanlin Wang , Patanamon Thongtanunam

Modern code review is a widely used technique employed in both industrial and open-source projects to improve software quality, share knowledge, and ensure adherence to coding standards and guidelines. During code review, developers may…

Software Engineering · Computer Science 2022-03-29 Eman Abdullah AlOmar , Moataz Chouchen , Mohamed Wiem Mkaouer , Ali Ouni

Developers gain productivity by reusing readily available Free and Open Source Software (FOSS) components. Such practices also bring some difficulties, such as managing licensing, components and related security. One approach to handle…

Software Engineering · Computer Science 2025-03-20 Luıs Soeiro , Thomas Robert , Stefano Zacchiroli

Rebuilding packages from open source is a common practice to improve the security of software supply chains, and is now done at an industrial scale. The basic principle is to acquire the source code used to build a package published in a…

Software Engineering · Computer Science 2026-02-24 Jens Dietrich , Behnaz Hassanshahi

Test case maintainability is an important concern, especially in open source and distributed development environments where projects typically have high contributor turnover with varying backgrounds and experience, and where code ownership…

Software Engineering · Computer Science 2019-10-01 Danielle Gonzalez , Joanna C. S. Santos , Andrew Popovich , Mehdi Mirakhorli , Mei Nagappan