Software Architecture

Current trends towards the use of big data technologies in the context of smart cities drive the need for novel software ecosystems upon which advanced mobility functionalities can be developed. The European project CLASS has delivered a new-generation software architecture, supporting real-time big data analytics over a heterogeneous edge and cloud ecosystem, thus facilitating the development of sustainable, efficient and safe mobility applications for future smart cities. The goal of this new software infrastructure is to allow collecting, storing, analysing and processing vast amounts of data, in order to transform it into valuable knowledge for the public sector, private companies and citizens.

Applying big-data technologies to smart cities applications entails many challenges: from processing data across the compute continuum (from edge to cloud), to predicting real-time responses, and employing a programming model that can mix different application program interfaces (APIs) and models.

The CLASS software architecture

The innovative approach, adopted by CLASS, integrates technologies from various computing domains, including IoT, edge, cloud and high-performance computing, combined with mobile communications to enable sustainable, efficient and safe mobility applications for future smart cities. The CLASS platform provides the right level of abstraction to facilitate the development of complex and distributed workflows for both data-in-motion and data-at-rest analytics, with real-time guarantees.

The software components have been developed with well-defined interfaces to facilitate the interoperability, portability and scalability properties needed to provide developers with a solid infrastructure for better exploiting the distributed and heterogeneous environments considered in CLASS. The project has carefully selected and developed the software components, prioritising those owned by the members of the CLASS consortium or offered as open-source components with a large community behind them, with the objective of reducing the time-to-market and maximise exploitation opportunities.

The CLASS software architecture components can be found in the dedicated CLASS github channel. Read a detailed analysis of them on our Software components page and of their integration process on our Software integration page.