English
Related papers

Related papers: Case study: Class diagram restructuring

200 papers

The occurrence of similar code, or `code clones', can make program code difficult to read, modify and maintain. This paper describes industrial case studies of clone detection and elimination using a refactoring and clone detection tool. We…

Software Engineering · Computer Science 2017-04-03 Simon Thompson , Huiqing Li , Andreas Schumacher

Microservices are becoming the defacto design choice for software architecture. It involves partitioning the software components into finer modules such that the development can happen independently. It also provides natural benefits when…

Software Engineering · Computer Science 2021-02-09 Utkarsh Desai , Sambaran Bandyopadhyay , Srikanth Tamilselvam

Detecting design pattern instances in unfamiliar codebases remains a challenging yet essential task for improving software quality and maintainability. Traditional static analysis tools often struggle with the complexity, variability, and…

Software Engineering · Computer Science 2025-02-26 Christian Schindler , Andreas Rausch

Machine unlearning, a process enabling pre-trained models to remove the influence of specific training samples, has attracted significant attention in recent years. Although extensive research has focused on developing efficient machine…

Machine Learning · Computer Science 2026-01-13 Heng Xu , Tianqing Zhu , Dayong Ye , Lefeng Zhang , Le Wang , Wanlei Zhou

In current AI era, users may request AI companies to delete their data from the training dataset due to the privacy concerns. As a model owner, retraining a model will consume significant computational resources. Therefore, machine…

Machine Learning · Computer Science 2024-05-27 Wenhan Chang , Tianqing Zhu , Heng Xu , Wenjian Liu , Wanlei Zhou

In data-rich domains such as vision, language, and speech, deep learning prevails to deliver high-performance task-specific models and can even learn general task-agnostic representations for efficient finetuning to downstream tasks.…

Machine Learning · Computer Science 2023-12-07 Pin-Yu Chen

This Innovative Practice full paper explores how Large Language Models (LLMs) can enhance the teaching of code refactoring in software engineering courses through real-time, context-aware feedback. Refactoring improves code quality but is…

Software Engineering · Computer Science 2025-08-14 Anshul Khairnar , Aarya Rajoju , Edward F. Gehringer

[Background] Refactoring has matured over the past twenty years to become part of a developer's toolkit. However, many fundamental research questions still remain largely unexplored. [Aim] The goal of this paper is to investigate the…

Software Engineering · Computer Science 2019-08-06 Steve Counsell , Mahir Arzoky , Giuseppe Destefanis , Davide Taibi

Refactoring is a change made to the internal structure of software to make it easier to understand and cheaper to modify without changing its observable behaviour. A database refactoring is a small change to the database schema which…

Software Engineering · Computer Science 2010-09-09 Patrick O'Beirne

This paper introduces Redescription Model Mining, a novel approach to identify interpretable patterns across two datasets that share only a subset of attributes and have no common instances. In particular, Redescription Model Mining aims to…

Databases · Computer Science 2021-07-12 Felix I. Stamm , Martin Becker , Markus Strohmaier , Florian Lemmerich

Software systems are evolving by adding new functions and modifying existing functions over time. Through the evolution, the structure of software is becoming more complex and so the understandability and maintainability of software systems…

Software Engineering · Computer Science 2014-08-22 Ginika Mahajan , Ashima

Object orientation has become the predominant paradigm for conceptual modeling (e.g., UML), where the notions of class and object form the primitive building blocks of thought. Classes act as templates for objects that have attributes and…

Software Engineering · Computer Science 2021-06-02 Sabah Al-Fedaghi

We present a novel approach to detect refactoring opportunities by measuring the participation of references between types in instances of patterns representing design flaws. This technique is validated using an experiment where we analyse…

Software Engineering · Computer Science 2011-03-17 Jens Dietrich , Catherine McCartin , Ewan Tempero , Syed M. Ali Shah

Software is typically modeled from different viewpoints such as structural view, behavioral view and functional view. Few existing works can be considered as applying multi-view retrieval approaches. A number of important issues regarding…

Software Engineering · Computer Science 2014-02-04 Hamza Onoruoiza Salami , Moataz Ahmed

A key question in Reinforcement Learning is which representation an agent can learn to efficiently reuse knowledge between different tasks. Recently the Successor Representation was shown to have empirical benefits for transferring…

Machine Learning · Computer Science 2018-07-06 Lucas Lehnert , Michael L. Littman

Machine unlearning aims to solve the problem of removing the influence of selected training examples from a learned model. Despite the increasing attention to this problem, it remains an open research question how to evaluate unlearning in…

Machine Learning · Computer Science 2024-11-08 Teodora Baluta , Pascal Lamblin , Daniel Tarlow , Fabian Pedregosa , Gintare Karolina Dziugaite

With growing emphasis on privacy regulations, machine unlearning has become increasingly critical in real-world applications such as social networks and recommender systems, many of which are naturally represented as graphs. However,…

Machine Learning · Computer Science 2026-01-19 Ziheng Chen , Jiali Cheng , Hadi Amiri , Kaushiki Nag , Lu Lin , Sijia Liu , Xiangguo Sun , Gabriele Tolomei

Transfer learning allows us to train deep architectures requiring a large number of learned parameters, even if the amount of available data is limited, by leveraging existing models previously trained for another task. Here we explore the…

Software Engineering · Computer Science 2020-03-04 Natalie Best , Jordan Ott , Erik Linstead

Improving modularity and reusability are two key objectives in object-oriented programming. These objectives are achieved by applying several key concepts, such as data encapsulation and inheritance. A class in an object-oriented system is…

Software Engineering · Computer Science 2014-05-09 Jehad Al Dallal

The Unified Modeling Language (UML) is rapidly emerging as a de-facto standard for modelling OO systems. Given this role, it is imperative that the UML have a well- defined, fully explored semantics. Such semantics is required in order to…

Software Engineering · Computer Science 2014-09-25 Andy Evans , Robert France , Kevin Lano , Bernhard Rumpe