MicroMatic: Fully Automated Microservices Identification Approach From Monolithic Systems
Why this work is in the frame
A frame that forgets how it found something cannot be audited. These are the routes that admitted this work.
Bibliographic record
Abstract
The Internet of Things (IoT) revolution is transforming system interactions and functionalities, necessitating more adaptable, scalable, and responsive systems architectures. These IoT systems build on recent advances in software architectures, particularly Microservices Architecture (MSA), enabling scalability, facilitating cloud deployment, and supporting seamless integration with DevOps practices. While new IoT applications can seamlessly integrate Microservices Architecture from their design, the migration of existing monolithic IoT systems to MSA is essential to leverage its benefits yet it remains a challenging and costly process. To facilitate this migration, we propose MicroMatic, a tooled fully automated microservices identification approach that is based on static-relationship analyses between code elements as well as semantic analyses of the source code. Our approach relies on Machine Learning (ML) techniques and uses service types to guide the identification of microservices from IoT monolithic systems. We validate the effectiveness of our tool through a detailed case study, comparing our results with established ground truths. This process included a quantitative evaluation of the microservices generated, focusing on their business capabilities. Our findings demonstrate the efficiency of MicroMatic in automating one of the most labour-intensive aspects of migrating legacy systems to a microservices framework, successfully identifying architecturally significant microservices with 62.5% precision and 45.5% recall.
Fetched live from OpenAlex and de-inverted. Abstracts are not stored in this database: the inverted indexes are 8.6 GB of the frame’s 9.3 GB of text, and the host has 13 GB free.
Full frame distilled prediction
Teacher imitationNot calibrated prevalence, not ground truth. Human validation pending. Learned from the 10,348 direct Codex labels and 10,348 direct Gemma labels. Candidate is the union of thresholded teacher heads; consensus is their intersection. These outputs are machine_predicted_unvalidated and are not human labels or direct frontier model labels.
Codex and Gemma teacher scores by category
| Category | Codex | Gemma |
|---|---|---|
| Metaresearch | 0.001 | 0.000 |
| Meta-epidemiology (narrow) | 0.000 | 0.000 |
| Meta-epidemiology (broad) | 0.000 | 0.000 |
| Bibliometrics | 0.000 | 0.001 |
| Science and technology studies | 0.000 | 0.000 |
| Scholarly communication | 0.001 | 0.001 |
| Open science | 0.001 | 0.000 |
| Research integrity | 0.000 | 0.000 |
| Insufficient payload (model declined to judge) | 0.000 | 0.001 |
Machine scores (provisional)
The two teacher heads of the student model, read on this work. A score orders the frame for review; it never asserts a category, and the validation status ships verbatim with every row.
Baseline scores from an immature model (maturity gate not passed, 7 training rounds). Scores rank; they never assert a category.
score_only:v0-immature-baseline · verbatim from the scoring run: score_only means the number may rank works, and no category label ships from it