English
Related papers

Related papers: Mining API Interactions to Analyze Software Revisi…

200 papers

The proliferation of software and AI comes with a hidden risk: its growing energy and carbon footprint. As concerns regarding environmental sustainability come to the forefront, understanding and optimizing how software impacts the…

Software development is getting changed so rapidly. It will be highly benefited if we can accelerate software development process by guiding developers. Appropriate guidelines and accurate recommendations to developers during development…

Software Engineering · Computer Science 2020-06-24 Ratul Uddin Ashraf , Anujoy Das , Ziaur Rahman , Ali Newaz Bahar , Husne Ara Rubaiyeat

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…

Software Engineering · Computer Science 2020-10-05 Hussein Alrubaye , Deema Alshoaibi , Eman Alomar , Mohamed Wiem Mkaouer , Ali Ouni

A fundamental building block of a mobile application is the ability to persist program data between different invocations. Referred to as \emph{persistence}, this functionality is commonly implemented by means of persistence frameworks.…

Software Engineering · Computer Science 2018-06-29 Zheng "Jason'' Song , Jing Pu , Junjie Cheng , Eli Tilevich

Energy efficiency has become a growing concern in software development, leading to the need for tools designed to measure energy consumption. While several energy measurement tools are available as open-source projects, their…

Software Engineering · Computer Science 2026-03-24 Manuela Bechara Cannizza , Michel Albonico

With over 500,000 commits and more than 700 contributors, the Android platform is undoubtedly one of the largest industrial-scale software projects. This project provides the Android API, and developers heavily rely on this API to develop…

Software Engineering · Computer Science 2022-06-01 Pei Liu , Li Li , Yichun Yan , Mattia Fazzini , John Grundy

Recent industrial and academic research has focused on data-driven analytics with smartphones by collecting user interaction, context, and device systems data through Application Programming interfaces (APIs) and sensors. The Android OS…

Human-Computer Interaction · Computer Science 2022-06-08 Hansoo Lee , Joonyoung Park , Uichin Lee

Type systems provide software developers immediate feedback about a subset of correctness properties of their programs. IDE integrations often take advantage of type systems to present errors, suggest completions and even improve…

Programming Languages · Computer Science 2022-07-14 Alcides Fonseca , Guilherme Espada

The ever-growing popularity of mobile phones has brought additional challenges to the software development lifecycle. Mobile applications (apps, for short) ought to provide the same set of features as conventional software, with limited…

Software Engineering · Computer Science 2018-03-16 Luis Cruz , Rui Abreu

This paper analyzes the phenomenon of software aging - namely, the gradual performance degradation and resource exhaustion in the long run - in the Android OS. The study intends to highlight if, and to what extent, devices from different…

Software Engineering · Computer Science 2020-05-26 Domenico Cotroneo , Antonio Ken Iannillo , Roberto Natella , Roberto Pietrantuono

Environmental sustainability is a major and relevant challenge facing computing. Therefore, we must start teaching theory, techniques, and practices that both increase an awareness in our student population as well a provide concrete advice…

Software Engineering · Computer Science 2025-04-29 Henrik Bærbak Christensen , Maja Hanne Kirkeby , Bent Thomsen , Lone Leth Thomsen

Lack of experience, inadequate documentation, and sub-optimal API design frequently cause developers to make mistakes when re-using third-party implementations. Such API misuses can result in unintended behavior, performance losses, or…

Software Engineering · Computer Science 2021-07-13 Sebastian Nielebock , Robert Heumüller , Kevin Michael Schott , Frank Ortmeier

Software Repositories contain knowledge on how software engineering teams work, communicate, and collaborate. It can be used to develop a data-informed view of a team's development process, which in turn can be employed for process…

Software Engineering · Computer Science 2020-07-17 Christoph Matthies , Franziska Dobrigkeit , Guenter Hesse

The web has become a ubiquitous application development platform for mobile systems. Yet, web access on mobile devices remains an energy-hungry activity. Prior work in the field mainly focuses on the initial page loading stage, but fails to…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-08-07 Lu Yuan , Jie Ren , Ling Gao , Zhanyong Tang , Zheng Wang

Software developers study and reuse existing source code to understand how to properly use application programming interfaces (APIs). However, manually finding sufficient and adequate code examples for a given API is a difficult and a…

Software Engineering · Computer Science 2022-08-02 Mohammad Ghafari , Konstantin Rubinov , Mohammad Mehdi Pourhashem K

Technology use has grown rapidly in recent years. It is infused in virtually every aspect of organizational and individual life. This technology runs on servers, typically in data centers. As workloads grow, more serves are required. Each…

Software Engineering · Computer Science 2023-11-06 Kaushik Dutta , Debra Vandermeer

Context: Application Programming Interface (API) code examples are an essential knowledge resource for learning APIs. However, a few user studies have explored how the structural characteristics of the source code in code examples impact…

Software Engineering · Computer Science 2024-04-04 Seham Alharbi , Dimitris Kolovos

Smartphones have been shipped with multiple wireless network interfaces in order to meet their diverse communication and networking demands. However, as smartphones increasingly rely on wireless network connections to realize more…

Networking and Internet Architecture · Computer Science 2013-12-25 Feng Xia , Ching-Hsien Hsu , Xiaojing Liu , Fangwei Ding , Wei Zhang

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…

Software Engineering · Computer Science 2017-10-02 Raula Gaikovina Kula , Ali Ouni , Daniel M. German , Katsuro Inoue

Measuring energy consumption is a challenging task faced by developers when building mobile apps. This paper presents EMaaS: a system that provides reliable energy measurements for mobile applications, without requiring a complex setup. It…

Software Engineering · Computer Science 2019-03-01 Luis Cruz , Rui Abreu