  Developing Internet of Things (IoT) systems has to cope with several
challenges mainly because of the heterogeneity of the involved sub-systems and
components. With the aim of conceiving languages and tools supporting the
development of IoT systems, this paper presents the results of the study, which
has been conducted to understand the current state of the art of existing
platforms, and in particular low-code ones, for developing IoT systems. By
analyzing sixteen platforms, a corresponding set of features has been
identified to represent the functionalities and the services that each analyzed
platform can support. We also identify the limitations of already existing
approaches and discuss possible ways to improve and address them in the future.
