English
Related papers

Related papers: Antipatterns in Software Classification Taxonomies

200 papers

Software module clustering is an unsupervised learning method used to cluster software entities (e.g., classes, modules, or files) with similar features. The obtained clusters may be used to study, analyze, and understand the software…

Software Engineering · Computer Science 2020-12-03 Qusay I. Sarhan , Bestoun S. Ahmed , Miroslav Bures , Kamal Z. Zamli

During software evolution, inexperienced developers may introduce design anti-patterns when they modify their software systems to fix bugs or to add new functionalities based on changes in requirements. Developers may also use design…

Software Engineering · Computer Science 2021-04-02 Zeinab , Kermansaravi , Md Saidur Rahman , Foutse Khomh , Fehmi Jaafar , Yann-Gael Gueheneuc

Due to the growing complexity of software systems, there has been a dramatic increase and industry demand for tools and techniques on software refactoring in the last ten years, defined traditionally as a set of program transformations…

Software Engineering · Computer Science 2020-07-07 Chaima Abid , Vahid Alizadeh , Marouane Kessentini , Thiago do Nascimento Ferreira , Danny Dig

Particularly over the last ten years, Agile has attracted not only the praises of a broad range of enthusiast software developers, but also the criticism of others. Either way, adoption or rejection of Agile seems sometimes to be based more…

Software Engineering · Computer Science 2014-07-03 Vito Veneziano , Austen W. Rainer , Sheraz Haider

Systematic application of software metric techniques can lead to significant improvements of the quality of a final software product. However, there is still the evident lack of wider utilization of software metrics techniques and tools due…

Software Engineering · Computer Science 2013-11-18 Gordana Rakic , Zoran Budimac

Context: Developing software-intensive products or services usually involves a plethora of software artefacts. Assets are artefacts intended to be used more than once and have value for organisations; examples include test cases, code,…

Software Engineering · Computer Science 2023-04-17 Ehsan Zabardast , Javier Gonzalez-Huerta , Tony Gorschek , Darja Šmite , Emil Alégroth , Fabian Fagerholm

Software defect prediction plays a crucial role in estimating the most defect-prone components of software, and a large number of studies have pursued improving prediction accuracy within a project or across projects. However, the rules for…

Software Engineering · Computer Science 2020-04-28 Peng He , Bing Li , Xiao Liu , Jun Chen , Yutao Ma

Answer Set Programming (ASP) is a truly-declarative programming paradigm proposed in the area of non-monotonic reasoning and logic programming, that has been recently employed in many applications. The development of efficient ASP systems…

Artificial Intelligence · Computer Science 2020-02-19 Marco Maratea , Luca Pulina , Francesco Ricca

Software architecture related issues are important for robotic systems. Architecture centric development and evolution of software for robotic systems has been attracting researchers attention for more than two decades. The objective of…

Software Engineering · Computer Science 2017-01-20 Aakash Ahmad , Muhammad Ali Babar

Ineffective software team composition has become recognized as a prominent aspect of software project failures. Reports from results extracted from different theoretical personality models have produced contradicting fits, validity…

Software Engineering · Computer Science 2017-11-22 Abdul Rehman Gilal , Jafreezal Jaafar , Luiz Fernando Capretz , Mazni Omar , Izzatdin Abdul Aziz

Requirements engineering is crucial to software development but lacks a precise definition of its fundamental concepts. Even the basic definitions in the literature and in industry standards are often vague and verbose. To remedy this…

Software Engineering · Computer Science 2019-07-12 Bertrand Meyer , Jean-Michel Bruel , Sophie Ebersold , Florian Galinier , Alexandr Naumchev

This work discusses an important issue in the area of human resource management by proposing a novel model for creation and evaluation of software teams. The model consists of several assessments, including a technical test, a quality of…

Computers and Society · Computer Science 2015-12-03 Surayne Torres , Yadenis Pinero , Pedro Pinero , Luiz Fernando Capretz

Software is an important tool for scholarly work, but software produced for research is in many cases not easily identifiable or discoverable. A potential first step in linking research and software is software identification. In this paper…

Digital Libraries · Computer Science 2023-03-01 Eva Maxfield Brown , Lindsey Schwartz , Richard Lewei Huang , Nicholas Weber

Anti-patterns are poor solutions to recurring design problems. Several empirical studies have highlighted their negative impact on program comprehension, maintainability, as well as fault-proneness. A variety of detection approaches have…

Software Engineering · Computer Science 2019-10-18 Antoine Barbez , Foutse Khomh , Yann-Gaël Guéhéneuc

One source of software project challenges and failures is the systematic errors introduced by human cognitive biases. Although extensively explored in cognitive psychology, investigations concerning cognitive biases have only recently…

Software Engineering · Computer Science 2022-03-22 Rahul Mohanani , Iflaah Salman , Burak Turhan , Pilar Rodriguez , Paul Ralph

Context: Logging is an important part of modern software projects; logs are used in several tasks such as debugging and testing. Due to the complex nature of logging, it remains a difficult task with several pitfalls that could have serious…

Software Engineering · Computer Science 2026-03-11 Nyyti Saarimäki , Donghwan Shin , Domenico Bianculli

Decisions on which classes to refactor are fraught with difficulty. The problem of identifying candidate classes becomes acute when confronted with large systems comprising hundreds or thousands of classes. In this paper, we describe a…

Software Engineering · Computer Science 2007-05-23 Richard Wheeldon , Steve Counsell

Software design patterns are standard solutions to common problems in software design and architecture. Knowing that a particular module implements a design pattern is a shortcut to design comprehension. Manually detecting design patterns…

Software Engineering · Computer Science 2021-12-03 Najam Nazar , Aldeida Aleti , Yaokun Zheng

Background: Research software plays an important role in solving real-life problems, empowering scientific innovations, and handling emergency situations. Therefore, the correctness and trustworthiness of research software are of absolute…

Software Engineering · Computer Science 2022-07-27 Nasir U. Eisty , Jeffrey C. Carver

Success and failure in software engineering are still among the least understood phenomena in the discipline. In a recent special journal issue on the topic, Mantyla et al. started discussing these topics from different angles; the authors…

Software Engineering · Computer Science 2023-04-06 Damian A. Tamburri , Fabio Palomba , Rick Kazman