Towards Using LLMs in the Reverse Engineering of Software Systems to Object Constraint Language

Using reverse engineering to extract semantic representations from software systems is beneficial for the understanding of these systems, and can facilitate their maintenance and evolution. In particular, extracting semantically-precise specifications from systems is useful for re-engineering of systems to functionally-equivalent versions in different programming languages. Large language models (LLMs) are a type of machine learning (ML) technique that has been utilized in various domains, including software engineering and program translation. Yet, abstracting precise Object Constraint Language (OCL) specifications from source code using LLMs has not gained attention in reverse engineering approaches. In this paper, we present a new reverse engineering approach, named LLM4Models, to abstract OCL specifications from Java and Python programs, using LLMs.

Authors

Institutions

Publication Details

Published
2025-03-04
DOI
https://doi.org/10.1109/saner64311.2025.00096
Citations
2
Primary Topic
Model-Driven Software Engineering Techniques
Type
article
Field-Weighted Citation Impact
4.62

Funders

Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Towards Using LLMs in the Reverse Engineering of Software Systems to Object Constraint Language

Kevin Lano, Hanan Abdulwahab Siala
2 citations
Model-Driven Software Engineering Techniques
4.62
article

Towards Using LLMs in the Reverse Engineering of Software Systems to Object Constraint Language

Kevin Lano, Hanan Abdulwahab Siala
article en
2 citations

Abstract

Using reverse engineering to extract semantic representations from software systems is beneficial for the understanding of these systems, and can facilitate their maintenance and evolution. In particular, extracting semantically-precise specifications from systems is useful for re-engineering of systems to functionally-equivalent versions in different programming languages. Large language models (LLMs) are a type of machine learning (ML) technique that has been utilized in various domains, including software engineering and program translation. Yet, abstracting precise Object Constraint Language (OCL) specifications from source code using LLMs has not gained attention in reverse engineering approaches. In this paper, we present a new reverse engineering approach, named LLM4Models, to abstract OCL specifications from Java and Python programs, using LLMs.

King's College London (GB)
Ministry of Higher Education and Scientific Research
Openalex Percentile: Top 7%
Model-Driven Software Engineering Techniques
4.62
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.