2014-01-21 46 views

Antwort

26

A Domänenmodell ist konzeptionelles Modell in Datenbankmodellierung genannt, während ein Designmodelllogisches Modell genannt wird.

Diese Unterschiede sind auch in der modellgetriebenen Entwicklung eingesetzt, wo wir eine Reihe von drei Arten von Modellen:

  1. (Lösung unabhängig) Domain Modelle aus Domain/technischen Anforderungen in die Systemanalyse oder die Anfangsphase eines Entwicklungsprojekts
  2. (plattformunabhängig) Entwurfsmodelle resultierend aus den Systemdesignaktivitäten in der Ausarbeitungspha se
  3. (plattformspezifische) Umsetzungsmodelle, die aus einem Design-Modell sowohl Informationen als auch Prozessmodellierung abgeleitet werden

Während System-Modellierung enthält, scheinen Sie nur mit Information Modeling zur Beunruhigung. Hier können wir die Begriffe "Domain-Class-Diagramm" und "Design-Class-Diagramm" für das konzeptionelle Informationsmodell und das Information-Design-Modell in Form von UML-Klassendiagrammen verwenden.

[Der folgende Text/Grafiken wurden später, im September 2016 hinzugefügt]

Die Eins-zu-viele Beziehungen zwischen konzeptionellen Modellen und Designmodellen und zwischen Design-Modellen und Umsetzungsmodellen in der folgenden Abbildung dargestellt sind :

The one-to-many relationships in model refinement

Als ein Beispiel, das zeigt, wie die Ableitungskette vom Konzept über Design bis zur Implementierung funktioniert, betrachten Sie das folgende Modell eines Menschen/Person Konzept/Klasse:

From concept via design to implementation

Domain-Modelle sind lösungsunabhängige Beschreibungen einer Problemdomäne in der Analysephase eines Software-Engineering-Projekt erzeugt. Der Begriff "konzeptionelles Modell" wird oft als Synonym für "Domänenmodell" verwendet. Ein Domänenmodell kann sowohl Beschreibungen der Zustandsstruktur der Domäne (in konzeptionellen Informationsmodellen) als auch Beschreibungen ihrer Prozesse (in konzeptionellen Prozessmodellen) enthalten. Sie sind lösungsunabhängig oder "rechnungsunabhängig" in dem Sinne, dass sie keine Systemdesign-Entscheidungen oder andere Rechenprobleme betreffen. Vielmehr konzentrieren sie sich auf die Perspektive und Sprache der Fachexperten für den betrachteten Bereich.

In der Entwurfsphase wird zunächst ein plattformunabhängiges Entwurfsmodell als allgemeine rechnerische Lösung für das gegebene Software-Engineering-Problem auf Basis des Domänenmodells entwickelt.Dasselbe Domänenmodell kann möglicherweise verwendet werden, um eine Anzahl von (sogar radikal) unterschiedlichen Entwurfsmodellen zu erzeugen, die verschiedene Entwurfsoptionen repräsentieren. Unter Berücksichtigung einer Anzahl von Implementierungsproblemen, die von Architekturstilen, nicht zu optimierenden Qualitätskriterien (z. B. Leistung, Anpassungsfähigkeit) und Zieltechnologieplattformen reichen, werden dann ein oder mehrere plattformspezifische Implementierungsmodelle von dem Entwurfsmodell abgeleitet.

Siehe auch http://web-engineering.info/book/WebApp1/ch05s03.html

3

UML Domain Model

Enterprise Architect hat keine solche Diagramme hat - bei wiki aussehen.

Wie für "Class Design Diagramm", ist es einfach weder von EA noch von VP UML oder UML selbst bekannt. Ich denke, das übliche Klassendiagramm der UML ist gemeint.

12

Wenn Ihr Fokus auf das Diagramm ist selbst gibt es zwei große Unterschiede zwischen Diagrammen über Domänenmodell und Diagramme über Design-Modell: (Mindestens das ist, was das Larman Buch Anwenden von UML und Patterns sagt)

  1. In UML-Diagrammen, die das Domänenmodell darstellen, können Sie keine Pfeile verwenden. Alle Klassen sind mit einer Linie verbunden, die "relation" bedeutet, und Sie sollten Textanmerkungen über den Zeilen verwenden, um zu veranschaulichen, welche Beziehung genau es ist. Während in Design-Modellen, müssen Sie Pfeile verwenden, alle Arten von Pfeilen: Assoziation, Vererbung ... usw.

  2. In Design-Modell müssen Sie den Typ der Eigenschaften und Methoden usw. angeben, während in Domain-Modell haben Sie nur um sie ohne etwas Zusätzliches zu schreiben (genau wie in der realen Welt). Beispiel: value: int im Entwurfsmodell wird als value im Domänenmodell geschrieben.

Referenz: Anwenden von UML und Patterns 3rd Edition Kapitel 9 und 16.

Verwandte Themen