Einsatz des Geschäftsanalytikers: Objektrollenmodellierung mit Visual Studio.NET

Veröffentlicht: 20. Jul 2001 | Aktualisiert: 18. Jun 2004

Anmerkung: Einige Features werden u.U. nicht in der auf dem Markt erhältlichen Visual Studio.NET-Version Beta 2 verfügbar sein.
Auf dieser Seite

 Wofür steht ORM?
 Im Gegensatz dazu: ER
 Vorteile von ORM
 Datenbankerzeugung und Round-Trip-Engineering
 Zusammenfassung

Wofür steht ORM?

ORM oder Objektrollenmodellierung stellt eine konzeptuelle, leicht zu verstehende Methode der Datenmodellierung dar. Die ORM-Methodologie basiert auf drei wichtigen Prinzipien:

  • Einfachheit. Die Daten werden in der elementarsten Form modelliert, die möglich ist.

  • Vermittelbarkeit. Die Datenbankstrukturen werden mit einer Sprache dokumentiert, die von jedem verstanden werden kann.

  • Genauigkeit. Basierend auf dem Datenmodell wird ein korrekt normaliertes Schema erstellt.

In der Regel entwickelt der oder die Modellierende ein Informationsmodell, indem Anforderungen von Personen zusammengetragen werden, die sich mit der Anwendung auskennen, aber keine ausgebildeten Datenmodellierer sind. Der Modellierer muss in der Lage sein, die Datenstrukturen auf Konzeptebene in Begrifflichkeiten zu fassen, die auch ein nicht aus dem technischen Bereich kommender Geschäftsexperte versteht. Der Modellierer muss außerdem die Informationen in einfachen Einheiten analysieren und mit einfachen Populationen rechnen können. ORM ist so konzipiert, dass diese Art der Kommunikation verbessert wird.

Regelausdruck
ORM stellt die Anwendungswelt als Objektgruppierungen dar (Entitäten bzw. Werte), die bestimmte Rollen spielen (Teile in Beziehungen). ORM wird manchmal auch als faktbasierte Modellierung bezeichnet, da sie die relevanten Daten als elementare Fakten verbalisiert. Diese Fakten können nicht in kleinere Fakten aufgeteilt werden, ohne dabei Informationen zu verlieren.

Im Folgenden werden einige typische Beispiele für die einfachen Fakten aufgelistet:

  • Person hat die Rufnummer

  • Person hat die Adresse

  • Person ist geboren am

  • Person wurde eingestellt am

Das entsprechende ORM-Modell für diese Fakten sieht folgendermaßen aus:

Bild01



















Abbildung 1. Objektrollenmodell

Die Kreise im Diagramm stellen Objekte dar, die Kästchen Prädikate. In der ORM-Welt ist ein Prädikat, genau wie in der Logik, einfach ein Satz, in dem Objektlöcher vorhanden sind. Die Pfeile und Punkte stellen Einschränkungen des Systems dar.

Der Pfeil über dem Prädikat im Fakt Person hat die Rufnummer bedeutet z.B. Folgendes:
Es ist möglich, dass die Person x mehrere Rufnummern hat und dass mehrere Personen x eine Rufnummer haben.
Im Fakt Person ist geboren am deutet die Kombination des Pfeils über dem Prädikat und der Punkt, der das Objekt mit dem Prädikat verbindet, auf Folgendes hin:
Jede Person ist exakt am gleichen Tag geboren.

Im Gegensatz dazu: ER

Die Entitätsbeziehung (ER, Entity Relationship) ist eine weitere Form der Datenbankmodellierung. Vergleichen Sie die Einfachheit des ORM-Modells mit ihrem ER-Gegensatz:

Bild02




















Abbildung 2. Entitätsbeziehung

Während ORM Geschäftsfakten mit einfachen Objekten und Prädikaten beschreibt, beschreiben Entitätsbeziehungsmethoden die Welt anhand von Entitäten, die Attribute besitzen und in Beziehungen stehen. Im ORM-Beispiel aus Abbildung 1 werden Person, Telefon, Adresse und Datum alle als Objekte dargestellt, die relativ zueinander Rollen annehmen. Im ER-Beispiel ist "Person" eine Entität, die von den Attributen "Adresse" und "Telefon" beschrieben wird.

Wenn wir "Adresse" z.B. in "Straße", "Hausnummer", "Postleitzahl" und "Ort" aufbrechen möchten, müssen wir "Adresse" in einen Entitätstyp mit den entsprechenden Attributen konvertieren. Dies ändert auch die Art der Beziehung zwischen "Person" und "Adresse". Obwohl die im ORM-Modell ausgedrückten Einschränkungen auch in ER ausgedrückt werden können, lassen sich viele andere Einschränkungen nur ausdrücken, indem dem Modell Anmerkungen hinzugefügt oder das Modell mit Anwendungscode ergänzt wird.

Vorteile von ORM

ORM bietet nicht nur eine einfache, direkte Möglichkeit, Beziehungen zwischen verschiedenen Objekten zu beschreiben. Aus dem Beispiel können wir auch ableiten, dass ORM Flexibilität bietet. Mit ORM erstellte Modelle können besser an Systemänderungen angepasst werden als solche Modelle, die mit anderen Methoden erstellt wurden. Darüber hinaus ermöglicht es ORM Experten aus nichttechnischen Bereichen, in Bezug auf Musterpopulationen über das Modell zu diskutieren, so dass sie das Modell anhand von reellen Daten überprüfen können. Da ORM die Wiederverwendung von Objekten erlaubt, ordnet sich das Datenmodell automatisch einem korrekt normalisierten Datenbankschema zu.

Die Einfachheit des ORM-Modells vereinfacht den Prozess der Datenbankabfrage. Mit Hilfe eines ORM-Abfragetools können Benutzer auf die gewünschten Daten zugreifen, ohne die zugrunde liegende Struktur der Datenbank kennen zu müssen.

Datenbankerzeugung und Round-Trip-Engineering

Wie jede gute Modellierungsmethode ist auch ORM mehr als eine Notation. Sie enthält verschiedene Entwurfsprozeduren, um Modellierer beim Zuordnen von konzeptuellen und logischen Modellen zu unterstützen, und um Reverse Engineering zum Umschalten zwischen diesen Modellen zu verwenden.

ORM-Modelle können auch automatisch Datenbankschemas zugeordnet werden, um in den populärsten relationalen Datenbanken eingesetzt werden zu können. Aus den Beispielen oben wird deutlich, dass das ORM-Modell automatisch das ER-Diagramm (oder das "logische" Modell) erzeugen kann, welches dann in SQL-Code übersetzt und auf die entsprechende Datenbank angewendet werden kann.

Zusammenfassung

Der Einsatz des Wissens von Experten aus dem nichttechnischen Bereich ist entscheidend, damit Anwendungen die Geschäftsanforderungen erfüllen können. ORM, ein Visual Studio.NET-Feature, stellt einen intuitiven und benutzerfreundlichen konzeptuellen Datenmodellierungsansatz dar. Indem ORM Sprache verwendet, die nicht nur Datenbankexperten verstehen, versetzt es Personen, die die Geschäftsanforderungen einer Anwendung genauestens kennen, in die Lage, diese Anforderungen direkt in den Entwurf einfließen zu lassen.

ORM unterstützt zudem ein komplettes Round-Trip-Engineering, so dass nach erfolgter Definition der Geschäftsanforderungen diese schnell in logische und physische Datenbankdiagramme konvertiert werden können. Mit ORM können Organisationen dem Prozess der Anwendungsentwicklung einen neuen Grad an Effizienz verleihen und sicherstellen, dass die Geschäftsanforderungen korrekt umgesetzt werden.


Anzeigen: