English
Related papers

Related papers: Improving Development Practices through Experiment…

200 papers

Defect Prevention is the most critical but most neglected component of the software quality assurance in any project. If applied at all stages of software development, it can reduce the time, cost and resources required to engineer a high…

Software Engineering · Computer Science 2016-09-08 Suma V. , T. R. Gopalakrishnan Nair

To complete tasks faster, developers often have to sacrifice the quality of the software. Such compromised practice results in the increasing burden to developers in future development. The metaphor, technical debt, describes such practice.…

Software Engineering · Computer Science 2022-02-15 Jiakun Liu , Qiao Huang , Xin Xia , Emad Shihab , David Lo , Shanping Li

Software testing is an important phase in the software development life-cycle because it helps in identifying bugs in a software system before it is shipped into the hand of its end users. There are numerous studies on how developers test…

Software Engineering · Computer Science 2019-02-15 Luis Cruz , Rui Abreu , David Lo

Language model (LM) post-training relies on two stages of human supervision: task demonstrations for supervised finetuning (SFT), followed by preference comparisons for reinforcement learning from human feedback (RLHF). As LMs become more…

Machine Learning · Computer Science 2025-01-15 Yaowen Ye , Cassidy Laidlaw , Jacob Steinhardt

Recent years, the database committee has attempted to develop automatic database management systems. Although some researches show that the applying AI to data management is a significant and promising direction, there still exists many…

Databases · Computer Science 2021-11-23 Yu Yan , Hongzhi Wang , Jian Ma , Jian Geng , Yuzhuo Wang

This paper introduces Diff Authoring Time (DAT), a powerful, yet conceptually simple approach to measuring software development productivity that enables rigorous experimentation. DAT is a time based metric, which assess how long engineers…

Context: Contemporary software development is typically conducted in dynamic, resource-scarce environments that are prone to the accumulation of technical debt. While this general phenomenon is acknowledged, what remains unknown is how…

Automatic testing of mobile applications has been a well-researched area in recent years. However, testing in industry is still a very manual practice, as research results have not been fully transferred and adopted. Considering mobile…

Software Engineering · Computer Science 2020-08-21 Stefan Karlsson , Adnan Čaušević , Daniel Sundmark , Mårten Larsson

To keep up with the pace of innovation, established companies are increasingly relying on internal software startups. However, succeeding with such startups is a challenging task because internal startups need to find a balance between the…

Software Engineering · Computer Science 2021-07-28 Anastasiia Tkalich , Nils Brede Moe , Tor Sporsem

Evaluating Software testability can assist software managers in optimizing testing budgets and identifying opportunities for refactoring. In this paper, we abandon the traditional approach of pursuing testability measurements based on the…

Software Engineering · Computer Science 2021-02-23 Luca Guglielmo , Andrea Riboni , Giovanni Denaro

Pythonic code is idiomatic code that follows guiding principles and practices within the Python community. Offering performance and readability benefits, Pythonic code is claimed to be widely adopted by experienced Python developers, but…

Background: Agile methods are no longer restricted to small projects and co-located teams. The last decade has seen the spread of agile into large scale, distributed and regulated domains. Many case studies show successful agile adoption in…

Software Engineering · Computer Science 2019-06-24 Marcelo Marinho , John Noll , Ita Richardson , Sarah Beecham

Context. Multiple automated techniques have been proposed and developed for mobile application GUI testing aiming to improve effectiveness, efficiency, and practicality. The effectiveness, efficiency, and practicality are 3 fundamental…

Software Engineering · Computer Science 2019-01-01 Yauhen Leanidavich Arnatovich , Lipo Wang

The desire to build quality software systems has been the focus of most software developers and researchers for decades. This has culminated in the design of practices that promote quality in the designed software. Originating from the…

Software Engineering · Computer Science 2022-09-20 Sibonile Moyo

Large language models (LLMs) have shown great potential in automating significant aspects of coding by producing natural code from informal natural language (NL) intent. However, given NL is informal, it does not lend easily to checking…

Software Engineering · Computer Science 2024-10-04 Sarah Fakhoury , Aaditya Naik , Georgios Sakkas , Saikat Chakraborty , Shuvendu K. Lahiri

Technical Debt is a metaphor used to describe the situation in which long-term software artifact quality is traded for short-term goals in software projects. In recent years, the concept of self-admitted technical debt (SATD) was proposed,…

Software Engineering · Computer Science 2021-11-03 Tao Xiao , Dong Wang , Shane McIntosh , Hideaki Hata , Raula Gaikovina Kula , Takashi Ishio , Kenichi Matsumoto

Time-to-market pressure and productivity gap force vendors and researchers to improve embedded system design methodology. Current used design method, Register Transfer Level (RTL), is no longer be adequate to comply with embedded system…

Other Computer Science · Computer Science 2010-05-07 Maman Abdurohman , Kuspriyanto , Sarwono Sutikno , Arif Sasongko

Context: The term technical debt (TD) describes the aggregation of sub-optimal solutions that serve to impede the evolution and maintenance of a system. Some claim that the broken windows theory (BWT), a concept borrowed from criminology,…

Software Engineering · Computer Science 2023-12-29 William Levén , Hampus Broman , Terese Besker , Richard Torkar

A recurring problem in software development is incorrect decision making on the techniques, methods and tools to be used. Mostly, these decisions are based on developers' perceptions about them. A factor influencing people's perceptions is…

Software Engineering · Computer Science 2024-02-13 Sira Vegas , Patricia Riofrio , Esperanza Marcos , Natalia Juristo

Technical Debt is a common issue that arises when short-term gains are prioritized over long-term costs, leading to a degradation in the quality of the code. Self-Admitted Technical Debt (SATD) is a specific type of Technical Debt that…

Software Engineering · Computer Science 2024-04-03 Shima Esfandiari , Ashkan Sami