Architekturprinzipien
Diese Architekturprinzipien bilden die Grundlage aller technischen Entscheidungen innerhalb von MarineOS.
Sie ergänzen die Constitution und dienen als Leitlinien für Architektur, Entwicklung und Erweiterungen.
1. Information First
MarineOS verarbeitet Informationen.
Geräte dienen ausschließlich als Informationsquellen.
Anwendungen arbeiten ausschließlich mit Informationen.
2. World Model First
Das World Model bildet die zentrale Wissensbasis der Plattform.
Alle Anwendungen lesen oder verändern Informationen ausschließlich über das World Model.
3. Modular by Design
Jede Funktion soll als eigenständiges Modul entwickelt werden.
Module dürfen unabhängig entwickelt, installiert, aktualisiert oder entfernt werden.
4. Keep the Core Minimal
Der Core stellt ausschließlich Plattformdienste bereit.
Geschäftslogik gehört niemals in den Core.
5. API First
Alle Funktionen werden über klar definierte APIs bereitgestellt.
Die Benutzeroberfläche ist lediglich ein weiterer API-Client.
6. Security by Design
Sicherheit ist Bestandteil der Architektur.
Nicht Bestandteil späterer Erweiterungen.
7. Offline First
MarineOS muss vollständig ohne Internetverbindung betrieben werden können.
8. Vendor Independence
MarineOS darf niemals von einem einzelnen Hersteller abhängig werden.
9. Simplicity
Die einfachste wartbare Lösung wird bevorzugt.
10. Long-term Maintainability
Jede Architekturentscheidung wird unter dem Gesichtspunkt langfristiger Wartbarkeit getroffen.