Smart Cities

We are developing a cutting-edge standards-based interoperability infrastructure within the scope of Smart Cities


As a result of the emergence of smart city concept and digitalization, the use of central software platforms has become widespread in the monitoring and management of cities. Especially with the development of IoT technologies, we are developing solutions with complex data analytics features that can be integrated with existing applications, where different sensor data used by cities flow to a single center. The most basic functional capabilities of the Smart City platforms we have developed are as follows.

  • Interoperability & integration
  • Scalability
  • Security
  • Usability

Since many different sensor data exist in the cities, we provide near real time data collection and analysis. The platform we have developed is used for monitoring and tracking, as well as for control and management. There are also dynamic process definition and management, command and control features that allow interoperability and process management of different applications.

The infrastructure has been developed on a completely standards-based basis in order to facilitate interoperability. These standards are the SensorThings API from the Open Geospatial Consortium and European widely used (NGSI-LD based) FiWARE standard. Briefly speaking, the OGC SensorThings API is a low-level standard for communicating directly with sensors or actuators, while FiWARE data models are a higher-level application-level standard. Thanks to its NGSI-LD-based structure, it is easily expandable without any code changes.



Completely open-source and no licence requirement


Since the infrastructure we have developed is built on completely open source tools that are widely used in big data processing architectures, there is no license requirement. The system developed in the Docker container structure can be easily installed on any cloud infrastructure.



Take a look at our five-layered architecture:


Sharing Layer

The main purpose of this top-level layer is to securely present the data/functions obtained in the Smart City Center Software to authorized users and applications. It generally consists of the following sub-modules:

  • Integration Services: The purpose of this module is to provide external city systems and (mobile/citizen) applications to present the data in the Smart City Center Software or the analysis obtained using open standards. NGSI-LD based HTTP REST (Representational State Transfer) is used as the communication protocol in this module.
  • Smart City Center Software Graphical Interface: It is the main user interface of the system. It is implemented using Angular Single Page Application infrastructures. It consists of the following components:
    • Business Intelligence Module: With this module, users can perform machine learning and rule definition operations on the data in the system. There is also a notification engine that runs the defined rules or derived models as part of this module.
    • Data Display Module: With this interface module, users can view the collected data in the system with interactive graphics and control panels.
    • Admin Interfaces: These are the interfaces where the management functions of the entire system are performed.

Interoperability Layer

This layer generally provides the ingestion, processing and analysis of data from city system and/or IoT sensors into the system in a scalable and distributed manner. It consists of the following sub-components.

  • Data Ingestion and Open APIs: This functional block provides a communication point to import data in a flexible and standardized way. It provides real-time capabilities for data providers to publish their data according to standards-based defined protocol and API. As a minimal communication protocol, it supporta HTTP REST and MQTT standards, which are widely used in IoT transmission. It also supports standard data model as a data model (e.g., OGC SensorThings, Fiware Ultralight 2.0, etc.).
  • Event Filtering and Data Flow Manager: By means of this module, a pre-processing is provided before sending IoT data, collected from a sub-module, which may be in more than one different format, size and flow rate, to the upper levels. In other words, it is the data logistics platform used to automate the data exchange between different modules within the Smart City Center Software. During data transfer, data loss prevention, low latency and/or high transmission speed are handled by this module.
  • Distributed Streaming Platform: The data coming from the Event Filtering and Data Flow Manager is transferred to the Data Computing Module in a reliable (without losing data), extensible and real-time. In other words, it provides a reliable message queue and it can be scaled automatically.
  • Big Data Analysis Engine: Data analysis and artificial intelligence operations on big data in the system is performed with this component.
    • Distributed Cluster Computing on Streaming Data and/or Batch Data: By means of these modules, streaming or batch IoT data coming from sub-modules is processed in real-time in memory in a distributed/parallel manner (cluster computing).
    • Machine Learning Module: With this module, application-specific machine learning algorithms can be run over flowing and aggregated data.

Data Layer

It is the layer where the data of the entire system is kept.

  • Database: It is the basic database where the data in the system is kept. It can be scaled vertically and horizontally to increase the system's fault tolerance. SQL or NoSQL databases are used.
  • Time Series Database: One of the most basic features of the system is the continuous flow of IoT data. In order to increase the performance, it is also necessary to create a Time Series Database. Likewise, as mentioned above, it should be able to scale vertically and horizontally to increase its fault tolerance. SQL or NoSQL databases can be used.

Administration Layer

This layer generally provides the ingestion, processing and analysis of data from city system and/or IoT sensors into the system in a scalable and distributed manner. It consists of the following sub-components.

  • System Monitoring Module: It is the component in which the performance and operating status of the components in the Smart City Center Software can be viewed in real time.
  • Cluster Management and Scaling Module: It is the module where loading, stopping and scaling of all components in the Smart City Center Software are performed.
  • Authentication and Authorization Management Module: It is the module where the authentication and authorization of the users in the system are managed. OpenID Connect and OAuth2 standards are used.
  • Audit Module: It is the security module where all user events in the system can be audited (audit log).
  • Security Module: It is the component in which all security encryption operations are performed in the Smart City Center Software.

Edge Layer

  • Connection Management and Gateway Software: It is the component that receives data from existing city systems.
  • IoT Sensors and Device Management: The component responsible for communication with IoT Sensors and devices. It is the component that performs the operations of finding devices, viewing their instantaneous status, adding and removing them to the system, receiving measurement data and sending commands.