I am a Research Collaborator of Computer Science within the SySMA research unit of IMT Lucca since 2018. I received my Ph.D. in Computer Science in 2019 from the Gran Sasso Science Institute of L’Aquila, Italy. I graduated in Computer Engineering at the University of L’Aquila.
My research activity is focused on modeling and controlling quantitative properties, e.g., response time or throughput, of software systems that are subject to stringent quality of service (QoS) requirements (e.g., business-critical, safety-critical). In particular, most of my research efforts have been directed towards two main objectives: A) the development of efficient run-time self-adaptation techniques B) the automated derivation of analytical performance models from system execution traces.
A) In this context, I focused on techniques for controlling performance-related properties of software systems that are executed under adverse environmental conditions, e.g, sudden peak loads, hardware degradation. The main goal of such techniques is to confer to systems the ability to autonomously reconfigure themselves (e.g., improved load balancing) to prevent the raising of performance issues. I considered software systems that can be described by a well-known performance modeling notation, i.e., multi-class queuing networks (QNs). Unfortunately, the analysis of the QN’s time-dependent evolution suffers the well-known problem of state space explosion, due to the huge state space of the underlying Markov chain. To tackle this issue, we considered an approximate representation of QNs based on ordinary differential equations unleashing a range of techniques that would not be otherwise applicable. The novelty of my approach is the formulation of the performance- driven self-adaptation problem using model predictive control (MPC) and efficient mathematical optimization techniques. Recent results are summarized in a recent tutorial at ICPE’19 and in my P.h.D. thesis:”Formal Design of Performance-driven Self-adaptive Systems under Uncertainty”.
B) The automatic derivation of analytical performance models essential to promote a wider adoption of performance engineering in practice. Unfortunately, despite the importance of such techniques, the attempts pursuing that goal in the literature focus on the estimation of service demand parameters only (i.e., the computational effort needed to realize the desired functionality). I recently proposed two different approaches (based on linear programming and neural-network, respectively) that allowed to automatically derive fully specified QN models from sampled execution traces only. By using models of increasing complexity, we showed the efficiency and the effectiveness of the proposed techniques in yielding models with high prediction power when employed for evaluating the quantitative behavior of systems, under unseen configurations (i.e., not used for the learning process).
Emilio Incerto, Mirco Tribastone, and Catia Trubiani. “Symbolic performance adaptation”. In Proceedings of the 11th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS). IEEE, 2016.
Giulio Garbi, Emilio Incerto, and Mirco Tribastone. “Learning queuing networks by recurrent neural networks”. In Proceedings of the 11th ACM/SPEC on International Conference on Performance Engineering (ICPE). ACM, 2020.
Emilio Incerto, Mirco Tribastone, and Catia Trubiani. “Software performance self-adaptation through efficient model predictive control”. In Proceedings of the 32st IEEE/ACM International Conference on Automated Software Engineering (ASE). ACM, 2017.
Emilio Incerto, Annalisa Napolitano, and Mirco Tribastone. “Statistical learning of Markov chains of programs”. In Proceedings of the 28th International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS). IEEE, 2020