English
Related papers

Related papers: Software Development with Feature Toggles: Practic…

200 papers

One single code change can significantly influence a wide range of software systems and their users. For example, 1) adding a new feature can spread defects in several modules, while 2) changing an API method can improve the performance of…

Software Engineering · Computer Science 2016-06-13 Daoyuan Li , Li Li , Dongsun Kim , Tegawendé F. Bissyandé , David Lo , Yves Le Traon

Predicting program behavior without execution is a critical task in software engineering. Existing models often fall short in capturing the dynamic dependencies among program elements. To address this, we present CodeFlow, a novel machine…

Software Engineering · Computer Science 2025-02-11 Cuong Chi Le , Hoang Nhat Phan , Huy Nhat Phan , Tien N. Nguyen , Nghi D. Q. Bui

Requirements volatility is a major issue in software development, causing problems such as higher defect density, project delays and cost overruns. Software architecture that guides the overall vision of software product, is one of the…

Software Engineering · Computer Science 2019-04-18 Sandun Dasanayake , Sanja Aaramaa , Jouni Markkula , Markku Oivo

Developing efficient and maintainable software systems is both hard and time consuming. In particular, non-functional performance requirements involve many design and implementation decisions that can be difficult to take early during…

Programming Languages · Computer Science 2022-09-05 Linnea Stjerna , David Broman

Being able to access software in daily life is vital for everyone, and thus accessibility is a fundamental challenge for software development. However, given the number of accessibility issues reported by many users, e.g., in app reviews,…

Software Engineering · Computer Science 2021-03-17 Tingting Bi , Xin Xia , David Lo , John Grundy , Thomas Zimmermann , Denae Ford

Job rotation is a managerial practice to be applied in the organizational environment to reduce job monotony, boredom, and exhaustion resulting from job simplification, specialization, and repetition. Previous studies have identified and…

eCommerce transaction frauds keep changing rapidly. This is the major issue that prevents eCommerce merchants having a robust machine learning model for fraudulent transactions detection. The root cause of this problem is that rapid…

Applications · Statistics 2018-10-11 Huiying Mao , Yung-wen Liu , Yuting Jia , Jay Nanduri

Effective debugging is a crucial aspect of software development, demanding problem-solving skills, expertise, and appropriate tools. Although previous research has studied expert developers' debugging strategies, the specific factors…

Human-Computer Interaction · Computer Science 2025-01-22 Maryam Arab , Jenny T. Liang , Valentina Hong , Thomas D. LaToza

A gradual type system allows developers to declare certain types to be enforced by the compiler (i.e., statically typed), while leaving other types to be enforced via runtime checks (i.e., dynamically typed). When runtime checks fail,…

Programming Languages · Computer Science 2025-03-03 Felipe Bañados Schwerter , Ronald Garcia , Reid Holmes , Karim Ali

Context: Fault localization (FL) is the key activity while debugging a program. Any improvement to this activity leads to significant improvement in total software development cost. There is an internal linkage between the program spectrum…

Software Engineering · Computer Science 2024-03-11 Saksham Sahai Srivastava , Arpita Dutta , Rajib Mall

A software product line is a set of software products that are distinguished in terms of features (i.e., end-user--visible units of behavior). Feature interactions ---situations in which the combination of features leads to emergent and…

Software Engineering · Computer Science 2015-03-19 Sven Apel , Hendrik Speidel , Philipp Wendler , Alexander von Rhein , Dirk Beyer

During the usage phase, a technical product system is in permanent interaction with its environment. This interaction can lead to failures that significantly endanger the safety of the user and negatively affect the quality and reliability…

Software Engineering · Computer Science 2023-06-29 Tim Maurice Julitz , Nadine Schlüter , Manuel Löwer

Determining whether a configurable software system has a performance bug or it was misconfigured is often challenging. While there are numerous debugging techniques that can support developers in this task, there is limited empirical…

Software Engineering · Computer Science 2022-03-22 Miguel Velez , Pooyan Jamshidi , Norbert Siegmund , Sven Apel , Christian Kästner

Checking software application suitability using automated software tools has become a vital element for most organisations irrespective of whether they produce in-house software or simply customise off-the-shelf software applications for…

Software Engineering · Computer Science 2015-08-05 Rajesh Mathur , Scott Miles , Miao Du

Background: Modern software systems are commonly built on the top of frameworks. To accelerate the learning process of features provided by frameworks, code samples are made available to assist developers. However, we know little about how…

Software Engineering · Computer Science 2019-07-15 Gabriel Menezes , Bruno Cafeo , Andre Hora

Static type errors are a common stumbling block for newcomers to typed functional languages. We present a dynamic approach to explaining type errors by generating counterexample witness inputs that illustrate how an ill-typed program goes…

Programming Languages · Computer Science 2018-03-20 Eric L Seidel , Ranjit Jhala , Westley Weimer

In the context of software startups, project failure is embraced actively and considered crucial to obtain validated learning that can lead to pivots. A pivot is the strategic change of a business concept, product or the different elements…

Software Engineering · Computer Science 2017-10-12 Sohaib Shahid Bajwa , Xiaofeng Wang , Anh Nguyen Duc , Pekka Abrahamsson

Incident management is a key aspect of operating large-scale cloud services. To aid with faster and efficient resolution of incidents, engineering teams document frequent troubleshooting steps in the form of Troubleshooting Guides (TSGs),…

Software Engineering · Computer Science 2022-05-27 Manish Shetty , Chetan Bansal , Sai Pramod Upadhyayula , Arjun Radhakrishna , Anurag Gupta

Agile processes are now widely practiced by software engineering (SE) teams, and the agile manifesto claims that agile methods support responding to changes well. However, no study appears to have researched whether this is accurate in…

Software Engineering · Computer Science 2020-12-08 Kashumi Madampe , Rashina Hoda , John Grundy

Debugging is considered as a rigorous but important feature of software engineering process. Since more than a decade, the software engineering research community is exploring different techniques for removal of faults from programs but it…

Software Engineering · Computer Science 2018-03-13 Safeeullah Soomro , Mohammad Riyaz Belgaum , Zainab Alansari , Mahdi H. Miraz