Marco Autili
Department of Information Engineering Computer Science and Mathematics (DISIM)
University of L'aquila (Italy)
My academic background is in Computer Science and Software Engineering, with expertise in solution- and knowledge-oriented research. My primary research interests include Autonomous Systems, Context-Aware Systems, Distributed Systems, and Self-Adaptive Systems. My work focuses on automated approaches for developing correct-by-construction practical solutions grounded in theoretical understanding and well-established architectural principles. I have gained extensive experience working across diverse countries and contexts, actively engaging with the international research community. I also have consolidated experience in National and European Union projects and collaborate with various companies worldwide. Recently, I have focused on:Ethical-aware Autonomous Systems
Automated context-aware ethics-based negotiation in the autonomous vehicle and robot domains.
Self-adaptive Multi-robot Systems
Automated synthesis for handling uncertainty through mission adaptation and enforcing correctly distributed coordination.
Cloud-to-Autonomous-Vehicles Continuum
Enabling the cloud-to-autonomous-vehicles continuum for future industrial applications.
Microservice Architecture
Automated migration of monoliths to scalable and correctly coordinated microservice-oriented distributed systems.
Distributed Software Synthesis
Automated reasoning and synthesis techniques for correct-by-construction solutions, such as fully decentralized coordination and mission/protocol adaptation.
About Me
I graduated with honors in Computer Science at the University of L’Aquila in April 2004, and I received my Ph.D. in April 2008 with the highest distinction.
I collaborate with various companies and international research groups worldwide. I have consolidated experience in European Union and Italian research and development projects, serving as principal investigator, scientific and technical project leader, research unit coordinator, and work package leader.
I am the (co-)author of approximately 120 publications in international journals, conference proceedings, book chapters, and editorials.
I serve as a reviewer for several international conferences, workshops, and top-tier international journals. I am also an associate editor and a member of the editorial board for several international journals. Additionally, I act as the lead guest editor for various special issues and thematic series and am actively involved in the organization of workshops and conferences in the field of Software Engineering.
My research focuses on the application of automated software engineering techniques and practical formal methods to the modeling, architecture, analysis, and automatic synthesis of complex systems, spanning from theory to practice. The overarching goal is to simplify inherent system complexity for developers by leveraging expressive yet usable specification notations and languages, enabling automated reasoning and synthesis for correct-by-construction composition, coordination, and adaptation.
My primary research contributions lie in the domains of distributed self-aware systems that support autonomic and autonomous self-adaptive behaviors, including multi-robot and (micro)service-oriented systems. These systems involve distributed computing resources endowed with self-managing and decision-making capabilities, adapting dynamically to unpredictable changes, emerging goals, changing contexts, and, more recently, end-user ethical preferences.
I released a number of software tools and platforms in connection with research projects and publications.
Research
100%
Services
100%
Students
100%
Responsibility
100%
SoSy Lab
I serve as the head of the Software Synthesis Lab, where I coordinate all research and development activities.
The Software Synthesis Lab (>>> go to Laboratory Web Site) focuses on automated software synthesis approaches for the modeling, verification, and analysis of complex self-aware distributed systems that support autonomic and autonomous self-adaptive behaviors, including multi-robot and (micro)service-oriented systems.
The aim is to simplify the inherent complexity for developers through the use of practical specification formalisms, enabling automated reasoning and synthesis for correct-by-construction composition, coordination and adaptation.
Targeted systems involve distributed computing resources equipped with autonomic self-management and autonomous decision-making capabilities, enabling dynamic adaptation to unforeseen goal and mission changes, evolving operational contexts, and end-user ethical preferences.
Education
Doctoral Degree
Ph.D. in Software Engineering
Thesis Title: Synthesis Of Distributed Adaptors To Enforce Temporal Properties Specified Through Graphical Scenarios
Awarded by: University of L'Aquila
Advisor: Prof.ssa Paola Inverardi
Master Degree
Laurea cum laude in Computer Science
Thesis Title: Automatic synthesis of software coordinators for communication protocols enhancement
Awarded by: University of L'Aquila
Advisor: Prof.ssa Paola Inverardi
Qualifications
[ITA] Abilitazione Scientifica Nazionale (ASN) alle Funzioni di Professore di I Fascia
[ENG] National Scientific Habilitation as Full Professor
Released by: Ministry of University and Research (MUR) - ITALY
GSD: 01/INFO-01 - INFORMATICA
SSD: INFO-01/A - Informatica
[ITA] Abilitazione Scientifica Nazionale (ASN) alle Funzioni di Professore di II Fascia
[ENG] National Scientific Habilitation as Associate Professor
Released by: Ministry of University and Research (MUR) - ITALY
GSD: 01/INFO-01 - INFORMATICA
SSD: INFO-01/A - Informatica
Subject-matter Expert (SME)
Programming Foundations and Java Language
Granted by: Academic Council - University of L'Aquila
Academic Career
previous steps
Assistant Professor
tenure track position
DISIM, University of L’Aquila - ITALY
Projects: CHOReVOLUTION H2020 EU, Leonardo, TACTICS, GAUSS Italian PRIN, ConnectPA POR FESR Abruzzo
Senior Research Associate
temporary position
DISIM, University of L’Aquila - ITALY
Projects: CHOReOS IP EU FP7, CHOReVOLUTION H2020 EU, Learn Pad STREP EU FP7, Original in Touch, Leonardo, TACTICS
Assistant Professor
temporary position
DISIM, University of L’Aquila - ITALY
Projects: CONNECT FET EU FP7, D-ASAP Italian PRIN, PLASTIC IST EU FP6, Learn Pad STREP EU FP7, IDEAS Italian PRIN, Ricostruire - RIDITT
Postdoctoral Research Associate
DISIM, University of L’Aquila - ITALY
Projects: CONNECT FET EU FP7, D-ASAP Italian PRIN, PLASTIC IST EU FP6
Visiting Research Associate
Swinburne University of Technology, Melbourne - AUSTRALIA
Visiting Research Fellowship
INRIA Rocquencourt, Paris - FRANCE
Project: PLASTIC IST EU FP6
Visiting Research Fellowship
Faculty of Sciences, Technologies and Communications, University of Luxembourg - LUXEMBOURG
Project: CORRECT Luxembourgish project
Research Collaboration Fellowship
University of L’Aquila - ITALY
Project: SAILOR Satellite Integrated UMTS Emulator IST EU project
Exchange Student
University of British Columbia, Vancouver - CANADA
Projects
I have consolidated experience in EU and Italian research and development projects as principal investigator, scientific and technical project leader, research unit coordinator, and work package leader.
RoboChor
Robot Choreography
Italian PRIN PNRR project, Call 2022 (30 November 2023 - 29 November 2025)
CAVIA
Enabling the Cloud-to-Autonomous-Vehicles continuum for future Industrial Applications
Italian PRIN project, Call 2022 (28 September 2023 - 27 September 2025)
HALO
etHical-aware AdjustabLe autOnomous systems
Italian PRIN project, Call 2022 (28 September 2023 - 27 September 2025)
SISMA
Solutions for Engineering Microservices Architectures
Italian PRIN project, Call 2017 (29 August 2019 - 28 August 2023)
Full list of projects >>>
ConnectPA (Connect Public Administration) POR FESR Abruzzo 2014-2020 - Industrial Research and Experimental Development. Action 1.1.1: "Support for research projects of companies that employ researchers" - Action 1.1.4: "Support for collaborative research and development activities for the development of new sustainable technologies, new products and services"
GAUSS (Governing Adaptive and Unplanned Systems of Systems) Italian PRIN project, Call 2015 (February 2017 - February 2020)
CHOReVOLUTION (Automated Synthesis of Dynamic and Secured Choreographies for the Future Internet) H2020 EU project, Research and Innovation Actions: ICT 9 - 2014: Tools and Methods for Software Development, 2015-2018
TACTICS (TACTICal Service oriented architecture) European Defence Agency (EDA) ad hoc B Program project, 2014-2017;
LeonarDO (Smart digital ecosystem for the Customer Experience Enhancement): advanced ICT technologies (social means, mobile apps and big data analytics) for Customer Services. Founded by the Italian Ministry of Economic Development, 2014 - 2017
Original in Touch (Development of a Hardware and Software System to Fight Counterfeit). Founded by the Italian Ministry of Economic Development, from 2015
Ricostruire - RIDITT (Italian Network for Innovation and Technology Transfer to Enterprises) Founded by the Italian Ministry of Economic Development, from 2012
INCIPICT (INnovating CIty Planning through Information and Communication Technologies). Founded by the Italian Ministry for Economic Development, from 2014
IDEAS (Integrated Design and Evolution of Adaptive Systems) Italian PRIN project (Call 2012)
Learn PAd (Model-Based Social Learning for Public Administrations) STREP EU project, FP7, from 2014
CHOReOS (Large Scale Choreographies for the Future Internet) IP EU project, FP7, 2010-2013
S-Cube (EU Network of Excellence in Software Services and Systems)
CONNECT (Emergent Connectors for Eternal Software Intensive Networked Systems) FET EU project, FP7, 2009-2013
D-ASAP (Adaptable Software Architectures and Reliable Pervasive Systems) Italian PRIN 2007 project - 2007XKEHFA, 2008-2010
PLASTIC (Providing Lightweight and Adaptable Service Technology for pervasive Information and Communication) IST EU project, FP6, 2006-2009
CORRECT (rigorous stepwise development of Complex Fault TOlerant DistRibuted Systems: from ARchitEctural DesCription to Java ImplemenTation) Luxembourgish Project, 2004-2007
ASA (Adaptive SoftwAre) INRIA-DISIM Equipes Associées project, 2006-2007
SAILOR (Satellite Integrated UMTS Emulator) IST EU project, FP5, 2002-2005
Teaching
Academic
A.A. 2024/25
-
OPerating Systems Laboratory (OPSLab) (60 hours), part of the two modules course (120 hours) "Operating Systems with Laboratory" (Marco Autili and Vittorio Cortellessa)
University of L’Aquila -
Service-Oriented Software Engineering (SoSE) (48 hours) (Marco Autili)
University of L’Aquila -
Open and Big Data Management and Processing (90 hours) (Marco Autili, Michele Tucci and Mattia D’Emidio)
University of L’Aquila
Previous years >>>
A.A. 2023/24
-
OPerating Systems Laboratory (OPSLab) (60 hours), part of the two modules course (120 hours) "Operating Systems with Laboratory" (Marco Autili and Vittorio Cortellessa)
University of L’Aquila -
Service-Oriented Software Engineering (SoSE) (48 hours) (Marco Autili)
University of L’Aquila -
Open and Big Data Management and Processing (90 hours) (Marco Autili, Michele Tucci and Mattia D'Emidio)
University of L’Aquila
A.A. 2022/23
-
OPerating Systems Laboratory (OPSLab) (60 hours), part of the two modules course (120 hours) "Operating Systems with Laboratory" (Marco Autili and Vittorio Cortellessa)
University of L’Aquila -
Service-Oriented Software Engineering (SoSE) (48 hours) (Marco Autili)
University of L’Aquila -
Multimedia and Computer Science for the Social Sciences (48 hours) (Marco Autili, Monica Nesi and Davide Di Ruscio)
University of L’Aquila
A.A. 2021/22
-
OPerating Systems Laboratory (OPSLab) (60 hours), part of the two modules course (120 hours) "Operating Systems with Laboratory" (Marco Autili and Vittorio Cortellessa)
University of L’Aquila -
Service-Oriented Software Engineering (SoSE) (48 hours) (Marco Autili)
University of L’Aquila -
Open Data and Web Services (ODWS) (48 hours) (Marco Autili and Claudio Pompilio)
University of L’Aquila
A.A. 2020/21
-
OPerating Systems Laboratory (OPSLab) (60 hours), part of the two modules course (120 hours) "Operating Systems with Laboratory" (Marco Autili and Vittorio Cortellessa)
University of L’Aquila -
Service-Oriented Software Engineering (SoSE) (48 hours) (Marco Autili)
University of L’Aquila -
Open Data and Web Services (ODWS) (48 hours) (Marco Autili and Claudio Pompilio)
University of L’Aquila
A.A. 2019/20
-
OPerating Systems Laboratory (OPSLab) (60 hours), part of the two modules course (120 hours) "Operating Systems with Laboratory" (Marco Autili and Vittorio Cortellessa)
University of L’Aquila -
Service-Oriented Software Engineering (SoSE) (48 hours) (Marco Autili)
University of L’Aquila -
Open Data and Web Services (ODWS) (48 hours) (Marco Autili and Alexander Perucci)
University of L’Aquila
A.A. 2018/19
-
OPerating Systems Laboratory (OPSLab) (60 hours), part of the two modules course (120 hours) "Operating Systems with Laboratory" (Marco Autili and Vittorio Cortellessa)
University of L’Aquila -
Service-Oriented Software Engineering (SoSE) (48 hours) (Marco Autili)
University of L’Aquila -
Open Data and Web Services (ODWS) (48 hours) (Marco Autili and Alexander Perucci)
University of L’Aquila
A.A. 2017/18
-
OPerating Systems Laboratory (OPSLab) (60 hours), part of the two modules course (120 hours) "Operating Systems with Laboratory" (Marco Autili and Vittorio Cortellessa)
University of L’Aquila -
Service-Oriented Software Engineering (SoSE) (48 hours) (Marco Autili)
University of L’Aquila
A.A. 2016/17
-
OPerating Systems Laboratory (OPSLab) (60 hours), part of the two modules course (120 hours) "Operating Systems with Laboratory" (Marco Autili and Vittorio Cortellessa)
University of L’Aquila -
Service-Oriented Software Engineering (SoSE) (48 hours) (Marco Autili)
University of L’Aquila -
Adavanced Service-Oriented Software Engineering (ASoSE)
(Massimo Tivoli)
(12 hours - integrative teaching) - University of L’Aquila
A.A. 2015/16
-
Foundations Of Programming Languages (60 hours), part of the two modules course (120 hours) "Introduction To Programming: Foundations And Languages" (Paola Inverardi/Marco Autili and Monica Nesi)
University of L’Aquila
A.A. 2014/15
-
Foundations Of Programming Languages (60 hours), part of the two modules course (120 hours) "Introduction To Programming: Foundations And Languages" (Paola Inverardi/Marco Autili and Monica Nesi)
University of L’Aquila
A.A. 2013/14
-
Foundations Of Programming Languages (60 hours), part of the two modules course (120 hours) "Introduction To Programming: Foundations And Languages" (Paola Inverardi/Marco Autili and Monica Nesi)
University of L’Aquila
A.A. 2012/13
-
Foundations Of Programming Languages (60 hours), part of the two modules course (120 hours) "Introduction To Programming: Foundations And Languages" (Paola Inverardi/Marco Autili and Monica Nesi)
University of L’Aquila -
Programming Laboratory III
(Massimo Tivoli)
(5 hours - integrative teaching) - University of L’Aquila
A.A. 2011/12
-
Foundations Of Programming Languages (60 hours), part of the two modules course (120 hours) "Introduction To Programming: Foundations And Languages" (Paola Inverardi/Marco Autili and Monica Nesi)
University of L’Aquila -
Advanced Software Engineering
(Vittorio Cortellesa)
(4 hours - seminar teaching) - University of L’Aquila -
Programming Laboratory III
(Massimo Tivoli)
(6 hours - integrative teaching) - University of L’Aquila
A.A. 2010/11
-
Foundations Of Programming Languages (60 hours), part of the two modules course (120 hours) "Introduction To Programming: Foundations And Languages" (Paola Inverardi/Marco Autili and Monica Nesi)
University of L’Aquila -
Programming Laboratory III
(Massimo Tivoli)
(6 hours - integrative teaching) - University of L’Aquila -
Computers Architecture Laboratory
(Massimo Tivoli)
(4 hours - seminar teaching on Distributed Architectures) - University of L’Aquila
A.A. 2009/10
-
Foundations Of Programming Languages (60 hours), part of the two modules course (120 hours) "Introduction To Programming: Foundations And Languages" (Paola Inverardi/Marco Autili and Monica Nesi)
University of L’Aquila -
Analysis and Testing of Component-based Systems
(Henry Muccini)
(4 hours - seminar teaching on Service-oriented Architecture) - University of L’Aquila -
Computers Architecture Laboratory
(Massimo Tivoli)
(4 hours - seminar teaching on Distributed Architectures) - University of L’Aquila
A.A. 2008/09
-
Foundations Of Programming Languages (60 hours), part of the two modules course (120 hours) "Introduction To Programming: Foundations And Languages" (Paola Inverardi/Marco Autili and Monica Nesi)
University of L’Aquila -
Programming Laboratory III (Massimo Tivoli)
(6 hours - integrative teaching) - University of L’Aquila
A.A. 2007/08
-
Foundations Of Programming Languages (60 hours), part of the two modules course (120 hours) "Introduction To Programming: Foundations And Languages" (Paola Inverardi/Marco Autili and Monica Nesi)
University of L’Aquila -
Analysis and Testing of Component-based Systems
(Henry Muccini)
(4 hours - seminar teaching on Service-oriented Architecture) - University of L’Aquila -
Software Engineering Laboratory I
(Massimo Tivoli)
(6 hours - integrative teaching) - University of L’Aquila -
Programming Laboratory III
(Massimo Tivoli)
(5 hours - integrative teaching) - University of L’Aquila
A.A. 2006/07
-
Foundations Of Programming Languages (60 hours), part of the two modules course (120 hours) "Introduction To Programming: Foundations And Languages" (Paola Inverardi/Marco Autili and Monica Nesi)
University of L’Aquila -
Software Engineering Laboratory I
(Massimo Tivoli)
(6 hours - integrative teaching) - University of L’Aquila
A.A. 2005/06
-
Foundations Of Programming Languages (60 hours), part of the two modules course (120 hours) "Introduction To Programming: Foundations And Languages" (Paola Inverardi/Marco Autili and Monica Nesi)
University of L’Aquila
A.A. 2004/2005
-
Software Engineering (120 hours), (Paola Inverardi/Marco Autili and Monica Nesi)
University of L’Aquila -
Foundations Of Programming Languages (60 hours), part of the two modules course (120 hours) "Introduction To Programming: Foundations And Languages" (Paola Inverardi/Marco Autili and Monica Nesi)
University of L’Aquila
External Courses
-
2005
(60 hours) Multimedia Designer – IAL-CISL ABRUZZO, L’Aquila
(60 hours) Tecniche di Programmazione – Pianeta Formazione, Tivoli - Roma -
2006
(120 hours) Expert of Web Multimedia Languages: JAVA Language – Pianeta Formazione, Palombara Sabina, Roma
(80 hours) Expert of Web Multimedia Languages: Programming Foundations – Palombara Sabina, Roma -
2013
(2 hours - seminar lecture) Model-Based Synthesis Process for Choreography Realizability Enforcement – Gran Sasso Science Institute (GSSI), International PhD school and center for advanced studies in Physics, Mathematics, Computer Science and Social Sciences - L'Aquila (Italy) -
2014
(40 hours) Service Oriented Architecture and Web Service – INTECS S.p.A., L’Aquila -
2014
(36 hours) Service Oriented Architecture – THALES ITALIA S.p.A., Chieti
Released Tools
The following tools have been developed and released in connection with research projects and publications.
PSC
Property Specification Charts
PSC is a simple but expressive language for specifying temporal properties. Two are the main requirements of PSC, simplicity and expressiveness. Remaining close to the graphical notation of UML2.0 Sequence Diagrams and Message Sequence Charts (MSC), the requirement of simplicity is satisfied. The PSC expressiveness is measured with the property specification patterns.
CHOReVOLUTION IDRE
Dynamic and secured choreographies
CHOReVOLUTION IDRE offers an integrated development and execution environment for dynamic and secured choreographies of services through a distributed coordination. This approach is useful in the development and management of complex interactions, such as intelligent transportation systems, IoT and smart city applications.
CHOReOSynth
Service choreographies synthesis
CHOReOSynth is a set of tools to automatically synthesize an automata-based specification of the coordination logic out of a BPMN2 choreography specification, and to distribute it between the choreography participants.
MultiSynth Studio
Model-based synthesis of integration code
The MultiSynth Studio is a web application that supports different kind of model-based synthesis of software integration code, as well as different kinds of analysis and verification. For instance, it permits to realize distributed systems by integrating existing software peers in a fully distributed way. It offers extension mechanisms so to include other kind of integration synthesis methodologies. Our mid-term goal is to include in the studio all the synthesis methodologies we have proposed in the past, so to offer a ready-to-use integrated working environment where practitioners can experiment with different synthesis methodologies, meeting both theoretical and practical interests.
CHAMELEON
Adaptable Java applications
CHAMELEON is a framework for tailoring adaptable Java applications for resource-constrained devices and can be used for tackling a form of adaptation to the execution context. CHAMELEON is based on a static analysis approach to the inspection of Java programs and their characterization w.r.t. their resource consumption in a given execution environment. Explicitly targeting resource-constrained devices, we implemented and instantiated all the needed machinery on the Java platform (although other platforms are eligible) due to its widespread availability on today's mobile devices (e.g., smart phones, PDAs, etc.).
SYNTHESIS
Components glue code synthesis
SYNTHESIS is a tool for the automated synthesis of centralized, distributed, and modular software connectors. The synthesized connector serves as integration code for a set of software components whose interaction beahviour is specified by means of state machines and interface description languages (e.g., IDL, WSDL). The generated code allows both the prevention of possible deadlocks and the insurance of safety and liveness properties specified through temporal logic (e.g., LTL).
Contact
Dipartimento di Ingegneria Science dell’Informazione e Matematica (DISIM) Università degli Studi dell’Aquila Via Vetoio 67100 Coppito (L'Aquila) Italia