TY - CHAP
T1 - Guess Who’s Coming
T2 - Runtime Inclusion of Participants in Choreographies
AU - Gabbrielli, Maurizio
AU - Giallorenzo, Saverio
AU - Lanese, Ivan
AU - Mauro, Jacopo
PY - 2019
Y1 - 2019
N2 - In Choreographic Programming, a choreography specifies in a single artefact the expected behaviour of all the participants in a distributed system. The choreography is used to synthesise correct-by-construction programs for each participant. In previous work, we defined Dynamic Choreographies to support the update of distributed systems at runtime. In this work, we extend Dynamic Choreographies to include new participants at runtime, capturing those use cases where the system might be updated to interact with new, unforeseen stakeholders. We formalise our extension, prove its correctness, and present an implementation in the AIOCJ choreographic framework.
AB - In Choreographic Programming, a choreography specifies in a single artefact the expected behaviour of all the participants in a distributed system. The choreography is used to synthesise correct-by-construction programs for each participant. In previous work, we defined Dynamic Choreographies to support the update of distributed systems at runtime. In this work, we extend Dynamic Choreographies to include new participants at runtime, capturing those use cases where the system might be updated to interact with new, unforeseen stakeholders. We formalise our extension, prove its correctness, and present an implementation in the AIOCJ choreographic framework.
KW - Adaptation of distributed systems
KW - Choreographic programming
KW - Dynamic inclusion of new software components
U2 - 10.1007/978-3-030-31175-9_8
DO - 10.1007/978-3-030-31175-9_8
M3 - Book chapter
AN - SCOPUS:85075042927
SN - 978-3-030-31174-2
T3 - Lecture Notes in Computer Science
SP - 118
EP - 138
BT - The Art of Modelling Computational Systems: A Journey from Logic and Concurrency to Security and Privacy
A2 - Alvim, Mário S.
A2 - Chatzikokolakis, Kostas
A2 - Olarte, Carlos
A2 - Valencia, Frank
PB - Springer
ER -