Sep 2026· Measuring and computing devices in technological processes
Software Reliability and Analysis Research
Abstract
Ensuring the architectural quality of software systems in continuous development is an urgent task of modern software engineering. The work is devoted to the development of a method for quantitatively assessing the metrics of the evolutionary architecture of software systems in continuous integration and delivery (CI/CD). An approach is proposed to construct a generalized fitness function that aggregates six structural quality metrics - SpotBugs violations, critical violations, line coverage by tests, code smells, line duplication density and Checkstyle violations - into a single quantitative assessment that is calculated automatically at each execution of the CI/CD pipeline. The pipeline normalizes each component by comparing the current value of the metric with the base value of the main branch stored in the cloud database. The weighting coefficients of the metrics are determined in accordance with the classification of quality characteristics priorities according to the ISO/IEC 25023 standard, where reliability, testability and maintainability receive relative priorities, respectively. An algorithm for integrating the architectural metrics assessment process into a CI/CD pipeline based on GitHub Actions has been developed, which ensures timely detection of signs of architectural degradation for each pull request and on schedule for the main branch. The approach has been experimentally tested on a real monolithic Java/Spring Boot system within 12 controlled scenarios covering improvement, degradation, and neutral changes in architectural quality. Statistical analysis confirmed the ability of the fitness function to qualitatively distinguish between different types of architectural changes. Comparison with the SonarQube Quality Gate mechanism showed the advantage of the proposed method: unlike the binary “pass/fail” signal, the fitness function quantifies the direction and magnitude of the variability of architectural metrics and avoids false positives in purely structural refactoring.
This publication proposes a definition and a classification of agile software development approaches and analyses ten software development methods that can be characterized as being "agile" against the defined criterion.
P. Abrahamsson, O. Salo, Jussi Ronkainen et al.· arXiv.org· 727 citations· ⚡54
The study shows that agile practices improve both informal and formal communication, but indicates that, in larger development situations involving multiple external stakeholders, a mismatch of adequate communication mechanisms can sometimes even hinder the communication.
M. Pikkarainen, Jukka Haikara, O. Salo et al.· Empirical Software Engineeri...· 401 citations· ⚡48
The results indicate that software engineering work practices are chosen opportunistically, adapted and configured to provide value under the constrains imposed by the startup context.
Nicolò Paternoster, Carmine Giardino, M. Unterkalmsteiner et al.· Information and Software Tec...· 394 citations· ⚡54
The results show that the embedded industry has been able to apply agile methods in its development processes and that the appreciation of the agile methods and their individual practices appears to increase once adopted and applied in practice.
O. Salo, P. Abrahamsson· IET Software· 238 citations· ⚡9
Consequences of happiness and unhappiness that are beneficial and detrimental for developers' mental well-being, the software development process, and the produced artifacts are found.
D. Graziotin, Fabian Fagerholm, Xiaofeng Wang et al.· Journal of Systems and Softw...· 236 citations· ⚡13
The Mobile-D approach is briefly outlined here and the experiences gained from four case studies are discussed, which helped develop an agile development approach for mobile application development.
P. Abrahamsson, Antti Hanhineva, H. Hulkko et al.· Conference on Object-Oriente...· 225 citations· ⚡18
AI is making software generation faster, but speed does not remove the need for expertise. As more work is delegated to AI, tacit knowledge may become one of the most important human advantages in software engineering. The post Beyond Prompt Engineering: The Role of Tacit Knowledge in Software Engineering appeared first on GPT-Lab.
A path, a fence, a knot. MindTopo sets a new benchmark for testing how AI understands topological relationships and highlights new opportunities to strengthen spatial reasoning and planning. The post MindTopo reveals VLMs’ spatial reasoning abilities appeared first on Microsoft Research.
We use cookies to run the site and, with your consent, for analytics and to show ads.
See our Cookie Policy.