Skip to main content

Showing 1–35 of 35 results for author: Ouni, A

Searching in archive cs. Search in all archives.
.
  1. arXiv:2407.04263  [pdf, other

    cs.SE

    Drop it All or Pick it Up? How Developers Responded to the Log4JShell Vulnerability

    Authors: Vittunyuta Maeprasart, Ali Ouni, Raula Gaikovina Kula

    Abstract: Although using third-party libraries has become prevalent in contemporary software development, developers often struggle to update their dependencies. Prior works acknowledge that due to the migration effort, priority and other issues cause lags in the migration process. The common assumption is that developers should drop all other activities and prioritize fixing the vulnerability. Our objectiv… ▽ More

    Submitted 5 July, 2024; originally announced July 2024.

    Comments: Accepted to SERA24. arXiv admin note: text overlap with arXiv:2406.11362

  2. arXiv:2406.11362  [pdf, other

    cs.SE

    Characterising Contributions that Coincide with Vulnerability Mitigation in NPM Libraries

    Authors: Ruksit Rojpaisarnkit, Hathaichanok Damrongsiri, Christoph Treude, Ali Ouni, Raula Gaikovina Kula

    Abstract: With the urgent need to secure supply chains among Open Source libraries, attention has focused on mitigating vulnerabilities detected in these libraries. Although awareness has improved recently, most studies still report delays in the mitigation process. This suggests that developers still have to deal with other contributions that occur during the period of fixing vulnerabilities, such as coinc… ▽ More

    Submitted 17 June, 2024; originally announced June 2024.

    Comments: 6 pages, 3 figures, 3 tables, 22nd IEEE/ACIS International Conference on Software Engineering, Management and Applications (SERA 2024)

    ACM Class: D.2.7; D.2.9

  3. arXiv:2402.06035  [pdf, other

    cs.SE

    AntiCopyPaster 2.0: Whitebox just-in-time code duplicates extraction

    Authors: Eman Abdullah AlOmar, Benjamin Knobloch, Thomas Kain, Christopher Kalish, Mohamed Wiem Mkaouer, Ali Ouni

    Abstract: AntiCopyPaster is an IntelliJ IDEA plugin, implemented to detect and refactor duplicate code interactively as soon as a duplicate is introduced. The plugin only recommends the extraction of a duplicate when it is worth it. In contrast to current Extract Method refactoring approaches, our tool seamlessly integrates with the developer's workflow and actively provides recommendations for refactorings… ▽ More

    Submitted 8 February, 2024; originally announced February 2024.

  4. arXiv:2402.06013  [pdf, other

    cs.SE

    How to Refactor this Code? An Exploratory Study on Developer-ChatGPT Refactoring Conversations

    Authors: Eman Abdullah AlOmar, Anushkrishna Venkatakrishnan, Mohamed Wiem Mkaouer, Christian D. Newman, Ali Ouni

    Abstract: Large Language Models (LLMs), like ChatGPT, have gained widespread popularity and usage in various software engineering tasks, including refactoring, testing, code review, and program comprehension. Despite recent studies delving into refactoring documentation in commit messages, issues, and code review, little is known about how developers articulate their refactoring needs when interacting with… ▽ More

    Submitted 8 February, 2024; originally announced February 2024.

  5. arXiv:2312.12600  [pdf, other

    cs.SE

    Behind the Intent of Extract Method Refactoring: A Systematic Literature Review

    Authors: Eman Abdullah AlOmar, Mohamed Wiem Mkaouer, Ali Ouni

    Abstract: Code refactoring is widely recognized as an essential software engineering practice to improve the understandability and maintainability of the source code. The Extract Method refactoring is considered as "Swiss army knife" of refactorings, as developers often apply it to improve their code quality. In recent years, several studies attempted to recommend Extract Method refactorings allowing the co… ▽ More

    Submitted 19 December, 2023; originally announced December 2023.

  6. arXiv:2311.10753  [pdf, other

    cs.CY cs.SE

    Automating Source Code Refactoring in the Classroom

    Authors: Eman Abdullah AlOmar, Mohamed Wiem Mkaouer, Ali Ouni

    Abstract: Refactoring is the practice of improving software quality without altering its external behavior. Developers intuitively refactor their code for multiple purposes, such as improving program comprehension, reducing code complexity, dealing with technical debt, and removing code smells. However, no prior studies have exposed the students to an experience of the process of antipatterns detection and… ▽ More

    Submitted 5 November, 2023; originally announced November 2023.

  7. arXiv:2311.00256  [pdf

    cs.SE

    How is Software Reuse Discussed in Stack Overflow?

    Authors: Eman Abdullah AlOmara, Anthony Peruma, Mohamed Wiem Mkaouer, Christian Newman, Ali Ouni

    Abstract: Software reuse is a crucial external quality attribute targeted by open-source and commercial projects. Despite that software reuse has experienced an increased adoption throughout the years, little is known about what aspects of code reuse developers discuss. In this paper, we present an empirical study of 1,409 posts to better understand the challenges developers face when reusing code. Our find… ▽ More

    Submitted 31 October, 2023; originally announced November 2023.

    Comments: 2023 Conference on Systems Engineering Research

  8. arXiv:2302.03416  [pdf, other

    cs.SE

    Just-in-Time Code Duplicates Extraction

    Authors: Eman Abdullah AlOmar, Anton Ivanov, Zarina Kurbatova, Yaroslav Golubev, Mohamed Wiem Mkaouer, Ali Ouni, Timofey Bryksin, Le Nguyen, Amit Kini, Aditya Thakur

    Abstract: Refactoring is a critical task in software maintenance, and is usually performed to enforce better design and coding practices, while co** with design defects. The Extract Method refactoring is widely used for merging duplicate code fragments into a single new method. Several studies attempted to recommend Extract Method refactoring opportunities using different techniques, including program sli… ▽ More

    Submitted 7 February, 2023; originally announced February 2023.

    Comments: 32 pages, 9 figures

  9. arXiv:2206.07010  [pdf, other

    cs.SE

    A Hierarchical-DBSCAN Method for Extracting Microservices from Monolithic Applications

    Authors: Khaled Sellami, Mohamed Aymen Saied, Ali Ouni

    Abstract: The microservices architectural style offers many advantages such as scalability, reusability and ease of maintainability. As such microservices has become a common architectural choice when develo** new applications. Hence, to benefit from these advantages, monolithic applications need to be redesigned in order to migrate to a microservice based architecture. Due to the inherent complexity and… ▽ More

    Submitted 14 June, 2022; originally announced June 2022.

  10. arXiv:2205.08116  [pdf, other

    cs.SE

    On the Use of Refactoring in Security Vulnerability Fixes: An Exploratory Study on Maven Libraries

    Authors: Ayano Ikegami, Raula Gaikovina Kula, Bodin Chinthanet, Vittunyuta Maeprasart, Ali Ouni, Takashi Ishio, Kenichi Matsumoto

    Abstract: Third-party library dependencies are commonplace in today's software development. With the growing threat of security vulnerabilities, applying security fixes in a timely manner is important to protect software systems. As such, the community developed a list of software and hardware weakness known as Common Weakness Enumeration (CWE) to assess vulnerabilities. Prior work has revealed that mainten… ▽ More

    Submitted 17 May, 2022; originally announced May 2022.

    Comments: Accepted as ERA paper to EASE2022

  11. arXiv:2203.14404  [pdf, other

    cs.SE

    Code Review Practices for Refactoring Changes: An Empirical Study on OpenStack

    Authors: Eman Abdullah AlOmar, Moataz Chouchen, Mohamed Wiem Mkaouer, Ali Ouni

    Abstract: 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 discuss refactoring activities before merging code changes in the code base. To date, code review has been extensively studied to explore its general challenges, b… ▽ More

    Submitted 27 March, 2022; originally announced March 2022.

  12. arXiv:2203.10221  [pdf, other

    cs.SE

    An Exploratory Study on Refactoring Documentation in Issues Handling

    Authors: Eman Abdullah AlOmar, Anthony Peruma, Mohamed Wiem Mkaouer, Christian D. Newman, Ali Ouni

    Abstract: Understanding the practice of refactoring documentation is of paramount importance in academia and industry. Issue tracking systems are used by most software projects enabling developers, quality assurance, managers, and users to submit feature requests and other tasks such as bug fixing and code review. Although recent studies explored how to document refactoring in commit messages, little is kno… ▽ More

    Submitted 18 March, 2022; originally announced March 2022.

  13. arXiv:2203.05660  [pdf, other

    cs.SE

    Refactoring Debt: Myth or Reality? An Exploratory Study on the Relationship Between Technical Debt and Refactoring

    Authors: Anthony Peruma, Eman Abdullah AlOmar, Christian D. Newman, Mohamed Wiem Mkaouer, Ali Ouni

    Abstract: To meet project timelines or budget constraints, developers intentionally deviate from writing optimal code to feasible code in what is known as incurring Technical Debt (TD). Furthermore, as part of planning their correction, developers document these deficiencies as comments in the code (i.e., self-admitted technical debt or SATD). As a means of improving source code quality, developers often ap… ▽ More

    Submitted 10 March, 2022; originally announced March 2022.

    Comments: This study has been accepted for publication at: The 19th International Conference on Mining Software Repositories (MSR 2022)

  14. arXiv:2112.15230  [pdf, other

    cs.SE

    AntiCopyPaster: Extracting Code Duplicates As Soon As They Are Introduced in the IDE

    Authors: Eman Abdullah AlOmar, Anton Ivanov, Zarina Kurbatova, Yaroslav Golubev, Mohamed Wiem Mkaouer, Ali Ouni, Timofey Bryksin, Le Nguyen, Amit Kini, Aditya Thakur

    Abstract: We developed a plugin for IntelliJ IDEA called AntiCopyPaster, which tracks the pasting of code fragments inside the IDE and suggests the appropriate Extract Method refactoring to combat the propagation of duplicates. Unlike the existing approaches, our tool is integrated with the developer's workflow, and pro-actively recommends refactorings. Since not all code fragments need to be extracted, we… ▽ More

    Submitted 2 September, 2022; v1 submitted 30 December, 2021; originally announced December 2021.

    Comments: 4 pages, 3 figures

  15. arXiv:2112.01581  [pdf, other

    cs.SE

    On the Documentation of Refactoring Types

    Authors: Eman Abdullah AlOmar, Jiaqian Liu, Kenneth Addo, Mohamed Wiem Mkaouer, Christian Newman, Ali Ouni, Zhe Yu

    Abstract: Commit messages are the atomic level of software documentation. They provide a natural language description of the code change and its purpose. Messages are critical for software maintenance and program comprehension. Unlike documenting feature updates and bug fixes, little is known about how developers document their refactoring activities. Developers can perform multiple refactoring operations,… ▽ More

    Submitted 2 December, 2021; originally announced December 2021.

    Comments: arXiv admin note: text overlap with arXiv:2009.09279

  16. arXiv:2111.07002  [pdf, other

    cs.SE

    Refactoring for Reuse: An Empirical Study

    Authors: Eman Abdullah AlOmar, Tianjia Wang, Vaibhavi Raut, Mohamed Wiem Mkaouer, Christian Newman, Ali Ouni

    Abstract: 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 developers actually refactor their code to improve its reuse. Therefore, we extract, from 1,828 open-source projects, a set of refactorings that were intended to imp… ▽ More

    Submitted 12 November, 2021; originally announced November 2021.

  17. How Do I Refactor This? An Empirical Study on Refactoring Trends and Topics in Stack Overflow

    Authors: Anthony Peruma, Steven Simmons, Eman Abdullah AlOmar, Christian D. Newman, Mohamed Wiem Mkaouer, Ali Ouni

    Abstract: An essential part of software maintenance and evolution, refactoring is performed by developers, regardless of technology or domain, to improve the internal quality of the system, and reduce its technical debt. However, choosing the appropriate refactoring strategy is not always straightforward, resulting in developers seeking assistance. Although research in refactoring is well-established, with… ▽ More

    Submitted 23 October, 2021; originally announced October 2021.

    Comments: Part of a collection: Collective Knowledge in Software Engineering ISSN: 1382-3256 (Print) 1573-7616 (Online)

    Journal ref: Empir Software Eng 27, 11 (2022)

  18. arXiv:2109.15141  [pdf, other

    cs.SE cs.LG

    Predicting Code Review Completion Time in Modern Code Review

    Authors: Moataz Chouchen, Jefferson Olongo, Ali Ouni, Mohamed Wiem Mkaouer

    Abstract: Context. Modern Code Review (MCR) is being adopted in both open source and commercial projects as a common practice. MCR is a widely acknowledged quality assurance practice that allows early detection of defects as well as poor coding practices. It also brings several other benefits such as knowledge sharing, team awareness, and collaboration. Problem. In practice, code reviews can experience si… ▽ More

    Submitted 30 September, 2021; originally announced September 2021.

    Comments: 6 pages, 3 figures Registered report for ICSME21

    Report number: 237

  19. arXiv:2109.11089  [pdf, other

    cs.SE

    Behind the Scenes: On the Relationship Between Developer Experience and Refactoring

    Authors: Eman Abdullah AlOmar, Anthony Peruma, Mohamed Wiem Mkaouer, Christian D. Newman, Ali Ouni

    Abstract: Refactoring is widely recognized as one of the efficient techniques to manage technical debt and maintain a healthy software project through enforcing best design practices or co** with design defects. Previous refactoring surveys have shown that code refactoring activities are mainly executed by developers who have sufficient knowledge of the system's design and disposing of leadership roles in… ▽ More

    Submitted 22 September, 2021; originally announced September 2021.

  20. arXiv:2107.00073  [pdf, other

    cs.SE

    SATDBailiff- Mining and Tracking Self-Admitted Technical Debt

    Authors: Eman Abdullah AlOmar, Ben Christians, Mihal Busho, Ahmed Hamad AlKhalid, Ali Ouni, Christian Newman, Mohamed Wiem Mkaouer

    Abstract: Self-Admitted Technical Debt (SATD) is a metaphorical concept to describe the self-documented addition of technical debt to a software project in the form of source code comments. SATD can linger in projects and degrade source-code quality, but it can also be more visible than unintentionally added or undocumented technical debt. Understanding the implications of adding SATD to a software project… ▽ More

    Submitted 30 June, 2021; originally announced July 2021.

  21. arXiv:2106.13900  [pdf, other

    cs.SE

    On Preserving the Behavior in Software Refactoring: A Systematic Map** Study

    Authors: Eman Abdullah AlOmar, Mohamed Wiem Mkaouer, Christian Newman, Ali Ouni

    Abstract: Context: Refactoring is the art of modifying the design of a system without altering its behavior. The idea is to reorganize variables, classes and methods to facilitate their future adaptations and comprehension. As the concept of behavior preservation is fundamental for refactoring, several studies, using formal verification, language transformation and dynamic analysis, have been proposed to mo… ▽ More

    Submitted 21 July, 2021; v1 submitted 25 June, 2021; originally announced June 2021.

  22. arXiv:2104.14640  [pdf, other

    cs.SE

    Test Smell Detection Tools: A Systematic Map** Study

    Authors: Wajdi Aljedaani, Anthony Peruma, Ahmed Aljohani, Mazen Alotaibi, Mohamed Wiem Mkaouer, Ali Ouni, Christian D. Newman, Abdullatif Ghallab, Stephanie Ludi

    Abstract: Test smells are defined as sub-optimal design choices developers make when implementing test cases. Hence, similar to code smells, the research community has produced numerous test smell detection tools to investigate the impact of test smells on the quality and maintenance of test suites. However, little is known about the characteristics, type of smells, target language, and availability of thes… ▽ More

    Submitted 3 May, 2021; v1 submitted 29 April, 2021; originally announced April 2021.

    Comments: Accepted at: The International Conference on Evaluation and Assessment in Software Engineering (EASE '21)

  23. arXiv:2102.05201  [pdf, other

    cs.SE

    Refactoring Practices in the Context of Modern Code Review: An Industrial Case Study at Xerox

    Authors: Eman Abdullah AlOmar, Hussein AlRubaye, Mohamed Wiem Mkaouer, Ali Ouni, Marouane Kessentini

    Abstract: Modern code review is a common and essential practice employed in both industrial and open-source projects to improve software quality, share knowledge, and ensure conformance with coding standards. During code review, developers may inspect and discuss various changes including refactoring activities before merging code changes in the codebase. To date, code review has been extensively studied to… ▽ More

    Submitted 9 February, 2021; originally announced February 2021.

  24. How We Refactor and How We Document it? On the Use of Supervised Machine Learning Algorithms to Classify Refactoring Documentation

    Authors: Eman Abdullah AlOmar, Anthony Peruma, Mohamed Wiem Mkaouer, Christian Newman, Ali Ouni, Marouane Kessentini

    Abstract: Refactoring is the art of improving the design of a system without altering its external behavior. Refactoring has become a well established and disciplined software engineering practice that has attracted a significant amount of research presuming that refactoring is primarily motivated by the need to improve system structures. However, recent studies have shown that developers may incorporate re… ▽ More

    Submitted 26 October, 2020; originally announced October 2020.

    Journal ref: Expert Systems with Applications. 167 (2021) 114176

  25. arXiv:2009.09279  [pdf, other

    cs.SE cs.LG

    Toward the Automatic Classification of Self-Affirmed Refactoring

    Authors: Eman Abdullah AlOmar, Mohamed Wiem Mkaouer, Ali Ouni

    Abstract: The concept of Self-Affirmed Refactoring (SAR) was introduced to explore how developers document their refactoring activities in commit messages, i.e., developers' explicit documentation of refactoring operations intentionally introduced during a code change. In our previous study, we have manually identified refactoring patterns and defined three main common quality improvement categories, includ… ▽ More

    Submitted 19 September, 2020; originally announced September 2020.

  26. arXiv:2005.06510  [pdf

    cs.SE cs.AI

    Many-Objective Software Remodularization using NSGA-III

    Authors: Mohamed Wiem Mkaouer, Marouane Kessentini, Adnan Shaout, Patrice Koligheu, Slim Bechikh, Kalyanmoy Deb, Ali Ouni

    Abstract: Software systems nowadays are complex and difficult to maintain due to continuous changes and bad design choices. To handle the complexity of systems, software products are, in general, decomposed in terms of packages/modules containing classes that are dependent. However, it is challenging to automatically remodularize systems to improve their maintainability. The majority of existing remodulariz… ▽ More

    Submitted 13 May, 2020; originally announced May 2020.

    Comments: Mkaouer, Wiem, et al. "Many-objective software remodularization using NSGA-III." ACM Transactions on Software Engineering and Methodology (TOSEM) 24.3 (2015): 1-45

    Journal ref: ACM Transactions on Software Engineering and Methodology (TOSEM) 24, no. 3 (2015): 1-45

  27. arXiv:1907.07724  [pdf

    cs.SE

    How Does API Migration Impact Software Quality and Comprehension? An Empirical Study

    Authors: Hussein Alrubaye, Deema Alshoaibi, Eman Alomar, Mohamed Wiem Mkaouer, Ali Ouni

    Abstract: The migration process between different third-party software libraries is hard, complex and error-prone. Typically, during a library migration process, developers opt to replace methods from the retired library with other methods from a new library without altering the software behavior. However, the extent to which such a migration process to new libraries will be rewarded with an improved softwa… ▽ More

    Submitted 2 October, 2020; v1 submitted 18 July, 2019; originally announced July 2019.

    Comments: Accepted at International Conference on Software and Systems Reuse (ICSR-2020)

  28. Do Design Metrics Capture Developers Perception of Quality? An Empirical Study on Self-Affirmed Refactoring Activities

    Authors: Eman Abdullah AlOmar, Mohamed Wiem Mkaouer, Ali Ouni, Marouane Kessentini

    Abstract: Background. Refactoring is a critical task in software maintenance and is generally performed to enforce the best design and implementation practices or to cope with design defects. Several studies attempted to detect refactoring activities through mining software repositories allowing to collect, analyze and get actionable data-driven insights about refactoring practices within software projects.… ▽ More

    Submitted 10 July, 2019; originally announced July 2019.

    Comments: technical paper accepted in 2019 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)

    Journal ref: 2019 {ACM/IEEE} International Symposium on Empirical Software Engineering and Measurement, {ESEM} 2019, Porto de Galinhas, Recife, Brazil, September 19-20, 2019

  29. arXiv:1907.02997  [pdf

    cs.SE cs.CL

    MigrationMiner: An Automated Detection Tool of Third-Party Java Library Migration at the Method Level

    Authors: Hussein Alrubaye, Mohamed Wiem Mkaouer, Ali Ouni

    Abstract: In this paper we introduce, MigrationMiner, an automated tool that detects code migrations performed between Java third-party library. Given a list of open source projects, the tool detects potential library migration code changes and collects the specific code fragments in which the developer replaces methods from the retired library with methods from the new library. To support the migration pro… ▽ More

    Submitted 13 July, 2019; v1 submitted 5 July, 2019; originally announced July 2019.

    Comments: Accepted at ICSME 2019. arXiv admin note: text overlap with arXiv:1906.02591

  30. arXiv:1906.02882  [pdf

    cs.IR cs.CL

    Learning to Recommend Third-Party Library Migration Opportunities at the API Level

    Authors: Hussein Alrubaye, Mohamed Wiem Mkaouer, Igor Khokhlov, Leon Reznik, Ali Ouni, Jason Mcgoff

    Abstract: The manual migration between different third-party libraries represents a challenge for software developers. Developers typically need to explore both libraries Application Programming Interfaces, along with reading their documentation, in order to locate the suitable map**s between replacing and replaced methods. In this paper, we introduce RAPIM, a novel machine learning approach that recommen… ▽ More

    Submitted 6 June, 2019; originally announced June 2019.

  31. arXiv:1906.02591  [pdf

    cs.SE

    On the Use of Information Retrieval to Automate the Detection of Third-Party Java Library Migration at the Method Level

    Authors: Hussein Alrubaye, Mohamed Wiem Mkaouer, Ali Ouni

    Abstract: The migration process between different third-party libraries is hard, complex and error-prone. Typically, during a library migration, developers need to find methods in the new library that are most adequate in replacing the old methods of the retired library. This process is subjective and time-consuming as developers need to fully understand the documentation of both libraries Application Progr… ▽ More

    Submitted 2 June, 2019; originally announced June 2019.

    Comments: accepted at 27th IEEE/ACM International Conference on Program Comprehension 2019

    Journal ref: 27th IEEE/ACM International Conference on Program Comprehension 2019

  32. arXiv:1709.09474  [pdf, other

    cs.SE

    An Empirical Study on the Impact of Refactoring Activities on Evolving Client-Used APIs

    Authors: Raula Gaikovina Kula, Ali Ouni, Daniel M. German, Katsuro Inoue

    Abstract: Context: Refactoring is recognized as an effective practice to maintain evolving software systems. For software libraries, we study how library developers refactor their Application Programming Interfaces (APIs), especially when it impacts client users by breaking an API of the library. Objective: Our work aims to understand how clients that use a library API are affected by refactoring activities… ▽ More

    Submitted 28 September, 2017; v1 submitted 27 September, 2017; originally announced September 2017.

    Comments: Information and Software Technology Journal

  33. arXiv:1709.04638  [pdf, other

    cs.SE

    On the Impact of Micro-Packages: An Empirical Study of the npm JavaScript Ecosystem

    Authors: Raula Gaikovina Kula, Ali Ouni, Daniel M. German, Katsuro Inoue

    Abstract: The rise of user-contributed Open Source Software (OSS) ecosystems demonstrate their prevalence in the software engineering discipline. Libraries work together by depending on each other across the ecosystem. From these ecosystems emerges a minimized library called a micro-package. Micro- packages become problematic when breaks in a critical ecosystem dependency ripples its effects to unsuspecting… ▽ More

    Submitted 14 September, 2017; originally announced September 2017.

    Comments: Submitted 2017

  34. Do Developers Update Their Library Dependencies? An Empirical Study on the Impact of Security Advisories on Library Migration

    Authors: Raula Gaikovina Kula, Daniel M. German, Ali Ouni, Takashi Ishio, Katsuro Inoue

    Abstract: Third-party library reuse has become common practice in contemporary software development, as it includes several benefits for developers. Library dependencies are constantly evolving, with newly added features and patches that fix bugs in older versions. To take full advantage of third-party reuse, developers should always keep up to date with the latest versions of their library dependencies. In… ▽ More

    Submitted 14 September, 2017; originally announced September 2017.

    Comments: 37 Pages

    Journal ref: Empirical Software Engineering 2017

  35. arXiv:1612.01626  [pdf, other

    cs.SE

    Automated Inference of Software Library Usage Patterns

    Authors: Mohamed Aymen Saied, Ali Ouni, Houari Sahraoui, Raula Gaikovina Kula, Katsuro Inoue, David Lo

    Abstract: Modern software systems are increasingly dependent on third-party libraries. It is widely recognized that using mature and well-tested third-party libraries can improve developers' productivity, reduce time-to-market, and produce more reliable software. Today's open-source repositories provide a wide range of libraries that can be freely downloaded and used. However, as software libraries are docu… ▽ More

    Submitted 5 December, 2016; originally announced December 2016.