Clustering methodologies for software engineering

M Shtern, V Tzerpos - Advances in Software Engineering, 2012 - Wiley Online Library
The size and complexity of industrial strength software systems are constantly increasing.
This means that the task of managing a large software project is becoming even more …

A comparative analysis of software architecture recovery techniques

J Garcia, I Ivkovic, N Medvidovic - 2013 28th IEEE/ACM …, 2013 - ieeexplore.ieee.org
Many automated techniques of varying accuracy have been developed to help recover the
architecture of a software system from its implementation. However, rigorously assessing …

Systematic review on next-generation web-based software architecture clustering models

T Yang, Z Jiang, Y Shang, M Norouzi - Computer Communications, 2021 - Elsevier
Software architecture is the heart of web-based software systems determining its
components and their connections. These days, fast release and quick delivery of next …

{VulSim}: Leveraging Similarity of {Multi-Dimensional} Neighbor Embeddings for Vulnerability Detection

S Shimmi, A Rahman, M Gadde, H Okhravi… - 33rd USENIX Security …, 2024 - usenix.org
Despite decades of research in vulnerability detection, vulnerabilities in source code remain
a growing problem, and more effective techniques are needed in this domain. To enhance …

Anghabench: A suite with one million compilable c benchmarks for code-size reduction

AF Da Silva, BC Kind… - 2021 IEEE/ACM …, 2021 - ieeexplore.ieee.org
A predictive compiler uses properties of a program to decide how to optimize it. The compiler
is trained on a collection of programs to derive a model which determines its actions in face …

Cooperative clustering for software modularization

R Naseem, O Maqbool, S Muhammad - Journal of Systems and Software, 2013 - Elsevier
Clustering is a useful technique to group data entities. Many different algorithms have been
proposed for software clustering. To combine the strengths of various algorithms …

Constructing a shared infrastructure for software architecture analysis and maintenance

J Garcia, M Mirakhorli, L **ao, Y Zhao… - 2021 IEEE 18th …, 2021 - ieeexplore.ieee.org
Over the past three decades software engineering researchers have produced a wide range
of techniques and tools for understanding the architectures of large, complex systems …

The modular and feature toggle architectures of Google Chrome

MT Rahman, PC Rigby, E Shihab - Empirical Software Engineering, 2019 - Springer
Software features often span multiple directories and conceptual modules making the
extraction of feature architectures difficult. In this work, we extract a feature toggle …

Semantic-based software clustering using hill climbing

M Kargar, A Isazadeh… - … international symposium on …, 2017 - ieeexplore.ieee.org
Clustering techniques are used for extracting software architecture in reverse engineering
process. Extracting the Call Dependency Graph (CDG) from the source code is the first step …