Datenmodellierung mit Summen und Produkten

Für diesen Artikel gibt es auch eine englischsprachige Übersetzung.

Datenmodellierung ist oft ein unterschätzter Aspekt der Softwarearchitektur, spielt jedoch eine entscheidende Rolle, um nicht nur funktionale, sondern auch Nutzbarkeits- und Wartungsziele zu erreichen. Schlechte Datenmodelle und schlecht integrierte Datenmodelle können die Architekturarbeit erheblich behindern. Daher sollte die Datenmodellierung – insbesondere die des zentralen Informationskerns eines Projekts – als grundlegende Verantwortung von Softwarearchitekt:innen angesehen werden.

Dies ist besonders relevant für die iSAQB Foundation-Schulungen, da dort kürzlich ein neues Lernziel zur Datenmodellierung hinzugefügt wurde.

Dieser Artikel untersucht zwei grundlegende Werkzeuge für gute Datenmodelle: Summen und Produkte. Diese Konzepte sind unter verschiedenen Namen bekannt, abhängig vom Kontext, der Community und der Programmiersprache. Produkte sind auch bekannt als Records, Structs, Datenklassen (data class), Tupel, zusammengesetzte Daten oder Und-Daten, während Summen als discriminated Union, disjoint Union, Union, gemischte Daten oder Oder-Daten bezeichnet werden.

Weiterlesen...

Startschuss für die BOB 2025!

Am 14. März 2025 findet die BOB, unsere Hauskonferenz über das Beste in der Softwareentwicklung, statt – wieder in Berlin und wieder im Scandic Berlin Potsdamer Platz.

Die Keynote hält Annette Bieniusa!

Der Call for Contributions läuft. Schicken Sie uns also (bis zum 15. November 2024) Ihren Vorschlag für einen Vortrag oder ein Tutorial – das Programmkomitee freut sich darauf!

Eine Neuerung gibt‘s gleich am Anfang: Es gibt bereits ab jetzt vergünstigte Katze-im-Sack-Tickets für 160 €. Wer sich also jetzt schon für den Besuch der BOB entscheidet, ist klar im Vorteil. Diese Tickets gibt es noch bis zur Bekanntgabe des Programms am 11. Dezember.

Weiterlesen...

Wie lernt man am besten Agda – Eine Quellen­sammlung

Im letzten Artikel der Denotational-Design-Reihe hatten wir die Programmiersprache bzw. den Theorembeweiser Agda kennen gelernt. In diesem kleinen Einschub stelle ich einige Ressourcen vor, mithilfe derer man seine Agda- und Dependent-Typing-Skills vertiefen kann. Ich stelle die Ressourcen in einer Reihenfolge vor, von der ich denke, dass sich diese für mich gut zum Lernen geeignet hätte.

Weiterlesen...

BOB 2024 – Retrospektive

Am 15.03.2023 feierte die BOB, unsere alljährliche Entwickler:innenkonferenz, ihre elfte Ausgabe. Diesmal im Scandic-Hotel Potsdamer Platz, Berlin, eine Location, die einige schon von der SommerBOB 2019 kannten. Bereits am Vorabend hatten sich die ersten zu einem lockeren Austausch bei Pizza und Bier getroffen – vielen Dank an dieser Stelle an NewStore GmbH für die Einladung und die Organisation!

Weiterlesen...