Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Wir gehen davon aus, dass der Leser mit den Grundzügen von Datenbanken vertraut ist.

In der Software-Entwicklung wird in einer Applikation die gleiche Wissen meist an unterschiedlichen Orten benötigt uns klassisch somit auch wiederholt. Das können Feldnamen in der Datenbank, Beschriftungen von Feldern für den User, Relationen und andere Sachen sein. Wir versuchen darum das Wissen über die Applikation an einem zentralen Ort zu definieren um so möglichst dem “Don’t Repeat Yourself (DRY)”-Prinzip zu folgen weil das u.A. auch zur besseren Konsistenz und Wartbarkeit von Applikationen führt.

In bloqs ist dieser zentrale Ort das “Metadaten-Modell” oder auch kurz nur “Metadaten” oder “Modell” genannt. Der Begriff “Meta” wird verwendet weil die Definition des Domänen-Wissens auf einer übergeordneten Ebene geschieht, welche die konkrete technische Umsetzung nicht oder nur teilweise vorgibt.

...

  • Core-Schicht (Datendesign mit den grundlegenden Eigenschaften)

    • Sprachen

      • Daten-Sprachen : (Sprachen in denen Multi-Language Felder gespeichert werden)

      • Anzeige-Sprachen : (Sprachen in denen die Benutzeroberfläche zur Verfügung steht)

    • Module (Aufteilung des gesamten Modells in Bereiche z.B. Stammdaten, Fakturierung…)

    • Klassen

      • Indices

      • Filter

      • Icons

    • Felder

      • Einfache Werte

      • Multi-Language Werte (für jeden Datensprache ein Wert)

      • Relationen

      • Aktionen

    • Validierungsregeln

    • Pfade (definieren Verbindungen zwischen jeweils zwei Klassen inkl. Regeln zur referentiellen Integrität)

      • Endpunkte

  • View-Schicht (Visualisierung auf der Basis der Core-Schicht)

    • Menüeinträge

      • Items

      • Gruppen

    • Titel-Layouts (Repräsentation eines einzelnen Objektes als Text)

    • Listen-Layouts (Liste von Objekten)

      • Spalten (auch versteckte welche sichtbar gemacht werden können)

      • Sortierung

      • Filter

    • Detail-Layouts (detaillierte Datestellung eines einzelnen Objektes)

    • Dashboards

      • Kacheln im Dashboard

    • Kalender-Ansichten resp. Integrationen

    • Ansichten

...