Skip to main content

ADR 003: Select STA Tech Stack

Date: 2025-09-04

Status: Accepted

Decision Makers: @mhoffmann @DerLinne @cr0ssing @luckey

Context

We have evaluated two alternatives for providing a SensorThings API backend and for persisting data in the STA format. The evaluation primarily considered the required capabilities for this, the architectural principles, and the open-source criteria. The OGC Sensorthings API is a strong, international standardized, modell-driven Standard. This enables cross-domain interoperability for IoT. There for this implementation follows the model-centric-approach in general.

Checked Architecture Principles

  • [partial] Model-centric data flow
  • [full] Distributed architecture with unified user experience
  • [full] Modular design - Modules for http, mqtt and bus implementation
  • [full] Integration capability through defined interfaces - Integration is based on STA and other standards
  • [full] Open source as the default - FROST-Server is fully open sourced
  • [full] Cloud-native architecture - Helm Chart based deployment incl. Scaling, Metrix Endpoints, etc.
  • [full] Prefer standard solutions over custom development - FROST-Server ist the Defect-Standard
  • [full] Self-contained deployment - Helm Chart brings all needed components to run
  • [full] Technological consistency to ensure maintainability
  • [partially] Multi-tenancy - Not built in, but extendable with the internal data model
  • [full] Security by design - Built in Authorization & Authentication Support (incl. external Auth Providers)

Decision

The FROST server should be used as the STA backend. Its maturity is higher in all aspects compared to the alternative, SensiNact. In some areas, the difference is small, but overall, the FROST server is ahead for this use case.

Consequences

The FROST server can be used very well as the STA backend. If an alternative approach for persisting sensor data is identified later in the project within the overall architecture, this can be changed. Therefore, the decision in favor of the FROST server should be seen as a temporary one that removes dependencies for further work and, for example, enables the implementation of the management portal.

Alternatives

  • SensiNact: SensiNact’s strengths lie more in its integrated ETL pipeline, which is not relevant for this selection. Regarding these capabilities, SensiNact should be re-evaluated at a later stage.

See also