TU Darmstadt / ULB / TUbiblio

Multitier Modules

Weisenburger, Pascal and Salvaneschi, Guido (2019):
Multitier Modules.
In: Proceedings of the 33rd European Conference on Object-Oriented Programming, Dagstuhl, Leibniz-Zentrum für Informatik, London, In: ECOOP '19, 134, ISSN 1868-8969,
ISBN 978-3-95977-111-5,
DOI: 10.4230/LIPIcs.ECOOP.2019.3,
[Online-Edition: http://doi.org/10.4230/LIPIcs.ECOOP.2019.3],
[Conference or Workshop Item]

Abstract

Multitier programming languages address the complexity of developing distributed systems abstracting over low level implementation details such as data representation, serialization and network protocols. Since the functionalities of different peers can be defined in the same compilation unit, multitier languages do not force developers to modularize software along network boundaries. Unfortunately, combining the code for all tiers into the same compilation unit poses a scalability challenge or forces developers to resort to traditional modularization abstractions that are agnostic to the multitier nature of the language.

In this paper, we address this issue with a module system for multitier languages. Our module system supports encapsulating each (cross-peer) functionality and defining it over abstract peer types. As a result, we disentangle modularization and distribution and we enable the definition of a distributed system as a composition of multitier modules, each representing a subsystem. Our case studies on distributed algorithms, distributed data structures, as well as on the Apache Flink task distribution system, show that multitier modules allow the definition of reusable (abstract) patterns of interaction in distributed software and enable separating the modularization and distribution concerns, properly separating functionalities in distributed systems.

Item Type: Conference or Workshop Item
Erschienen: 2019
Creators: Weisenburger, Pascal and Salvaneschi, Guido
Title: Multitier Modules
Language: English
Abstract:

Multitier programming languages address the complexity of developing distributed systems abstracting over low level implementation details such as data representation, serialization and network protocols. Since the functionalities of different peers can be defined in the same compilation unit, multitier languages do not force developers to modularize software along network boundaries. Unfortunately, combining the code for all tiers into the same compilation unit poses a scalability challenge or forces developers to resort to traditional modularization abstractions that are agnostic to the multitier nature of the language.

In this paper, we address this issue with a module system for multitier languages. Our module system supports encapsulating each (cross-peer) functionality and defining it over abstract peer types. As a result, we disentangle modularization and distribution and we enable the definition of a distributed system as a composition of multitier modules, each representing a subsystem. Our case studies on distributed algorithms, distributed data structures, as well as on the Apache Flink task distribution system, show that multitier modules allow the definition of reusable (abstract) patterns of interaction in distributed software and enable separating the modularization and distribution concerns, properly separating functionalities in distributed systems.

Title of Book: Proceedings of the 33rd European Conference on Object-Oriented Programming
Series Name: ECOOP '19
Volume: 134
Place of Publication: Dagstuhl
Publisher: Leibniz-Zentrum für Informatik
ISBN: 978-3-95977-111-5
Divisions: 20 Department of Computer Science
20 Department of Computer Science > Software Technology
DFG-Collaborative Research Centres (incl. Transregio)
DFG-Collaborative Research Centres (incl. Transregio) > Collaborative Research Centres
DFG-Collaborative Research Centres (incl. Transregio) > Collaborative Research Centres > CRC 1053: MAKI – Multi-Mechanisms Adaptation for the Future Internet
DFG-Collaborative Research Centres (incl. Transregio) > Collaborative Research Centres > CRC 1053: MAKI – Multi-Mechanisms Adaptation for the Future Internet > C: Communication Mechanisms
DFG-Collaborative Research Centres (incl. Transregio) > Collaborative Research Centres > CRC 1053: MAKI – Multi-Mechanisms Adaptation for the Future Internet > C: Communication Mechanisms > Subproject C2: Information-centred perspective
Event Location: London
Date Deposited: 11 Jul 2019 06:46
DOI: 10.4230/LIPIcs.ECOOP.2019.3
Official URL: http://doi.org/10.4230/LIPIcs.ECOOP.2019.3
Export:

Optionen (nur für Redakteure)

View Item View Item