Ensuring the dependable operation of modern software systems under dynamic and non-stationary operating conditions remains a major challenge in software reliability engineering. Although recent deep reinforcement learning (DRL)-based approaches have demonstrated promising capabilities for closed-loop adaptation of software reliability and testing effort, their black-box nature limits transparency, trustworthiness, and adoption in mission-critical and regulated domains. To address this limitation, we propose X-DRL-SRE, an explainable deep reinforcement learning framework for adaptive software reliability engineering. The framework integrates dynamic operational profile learning, level-wise reliability estimation, and a Proximal Policy Optimization (PPO)-based DRL agent with an explainability module that provides state-, action-, and outcome-level interpretations of reliability control decisions. Explainability is achieved through SHAP-based feature attribution for operational and code-level metrics, integrated gradients for policy sensitivity analysis, and counterfactual reasoning to justify testing effort reallocation under changing operational profiles. The proposed framework was evaluated using repeated stratified 10-fold cross-validation on NASA software defect benchmark datasets, including JM1, KC1, and PC1. Experimental results demonstrate that X-DRL-SRE improves reliability indices by 11.8–15.6% and reduces testing effort by 13.2–18.4% compared with LCSR-OPE, ML-ER-OPE, and non-explainable DRL baselines. Statistical significance was confirmed using paired t-tests and Wilcoxon signed-rank tests (p < 0.01), with medium-to-large effect sizes (Cohen’s d = 0.62–0.89). Furthermore, explanation stability scores exceeding 0.85 indicate that the generated explanations are reliable and consistent without compromising optimization performance. These findings demonstrate that explainability can be effectively integrated into adaptive reliability control, enabling transparent, interpretable, and high-performing software reliability engineering.
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.
MIT News · Artificial Intelligence· news.mit.eduSep 9, 2026
A weeklong summer workshop brought higher education faculty to campus to explore how AI and machine learning materials can be adapted for their classrooms.