Strukturieren der Modellierungslösung
Um Modelle in einem Entwicklungsprojekt effizient zu verwenden, müssen die Teammitglieder gleichzeitig an Modellen aus verschiedenen Teilen des Projekts arbeiten können. In diesem Thema wird ein Schema zum Aufteilen der Anwendung in verschiedene Teile vorgeschlagen, die den Ebenen in einem allgemeinen Ebenendiagramm entsprechen.
Um schnell mit einem Projekt oder Unterprojekt beginnen zu können, ist es hilfreich, über eine Projektvorlage zu verfügen,die der gewählten Projektstruktur folgt. In diesem Thema wird beschrieben, wie eine solche Vorlage erstellt und verwendet wird.
In diesem Thema wird davon ausgegangen, dass Sie an einem Projekt arbeiten, das so groß ist, dass mehrere Teammitglieder erforderlich sind, und an dem möglicherweise mehrere Teams beteiligt sind. Der Code und die Modelle des Projekts sind in einem Quellcode-Verwaltungssystem wie Team Foundation Server gespeichert. Zumindest einige Teammitglieder verwenden Visual Studio zum Entwickeln von Modellen, und andere Teammitglieder können die Modelle mit anderen Versionen von Visual Studio anzeigen.
Unter Versionsunterstützung für Architektur- und Modellierungstools wird erläutert, welche Visual Studio-Versionen die einzelnen Tools und Modellierungsfeatures unterstützen.
Projektmappenstruktur
In einem mittleren oder großen Projekt basiert die Struktur des Teams auf der Struktur der Anwendung. Jedes Team verwendet eine Visual Studio-Projektmappe.
So unterteilen Sie eine Anwendung in Ebenen
Lassen Sie die Struktur Ihrer Projektmappen auf der Struktur der Anwendung basieren, etwa einer Webanwendung, Dienstanwendung oder Desktopanwendung. Verschiedene allgemeine Architekturen werden unter Anwendungsarchetypen im Microsoft-Leitfaden für die Anwendungsarchitektur beschrieben.
Erstellen Sie eine Visual Studio-Projektmappe, die als Architekturprojektmappe bezeichnet wird. Diese Projektmappe wird zur Erstellung des allgemeinen Entwurfs des Systems verwendet. Es enthält Modelle, jedoch keinen Code.
Fügen Sie dieser Projektmappe ein Abhängigkeitsdiagramm hinzu. Zeichnen Sie im Abhängigkeitsdiagramm die Architektur ein, die Sie für Ihre Anwendung ausgewählt haben. Das Diagramm kann beispielsweise die folgenden Ebenen und die Abhängigkeiten zwischen ihnen zeigen: Präsentation, Geschäftslogik und Daten.
Erstellen Sie eine separate Visual Studio-Projektmappe für jede Ebene im Architekturabhängigkeitsdiagramm.
Diese Projektmappen werden verwendet, um den Code für die Ebenen zu entwickeln.
Erstellen Sie Modelle, die die Entwürfe der Ebenen und Konzepte darstellen, die für alle Ebenen üblich sind. Ordnen Sie die Modelle so an, dass alle Modelle in der Architektur-Projektmappe und die relevanten Modelle in den einzelnen Ebenen angezeigt werden können.
Sie können dies mit einem der folgenden Verfahren erreichen. Bei der ersten Alternative wird für jede Ebene ein separates Modellierungsprojekt erstellt, und bei der zweiten wird ein einzelnes Modellierungsprojekt erstellt, das von den Ebenen gemeinsam genutzt wird.
Verwenden eines separaten Modellierungsprojekts für jede Ebene
Erstellen Sie in jeder Ebenenprojektmappe ein Modellierungsprojekt.
Dieses Modell enthält Diagramme, in denen die Anforderungen und der Entwurf der jeweiligen Ebene beschrieben werden. Es kann auch Abhängigkeitsdiagramme enthalten, die geschachtelte Ebenen aufweisen.
Sie verfügen jetzt über ein Modell für jede Ebene sowie über ein Modell für die Anwendungsarchitektur. Jedes Modell ist in einer eigenen Projektmappe enthalten. Dies ermöglicht es Teammitgliedern, gleichzeitig an den Ebenen zu arbeiten.
Fügen Sie der Architektur-Projektmappe das Modellierungsprojekt jeder Ebenenprojektmappe hinzu. Öffnen Sie hierzu die Architektur-Projektmappe. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Knoten der Projektmappe, zeigen Sie auf „Hinzufügen“, und klicken Sie anschließend auf Vorhandenes Projekt. Navigieren Sie zum Modellierungsprojekt (.modelproj) in einer Ebenenprojektmappe.
Jedes Modell wird jetzt in zwei Projektmappen angezeigt: der Start-Projektmappe und der Architektur-Projektmappe.
Fügen Sie dem Modellierungsprojekt jeder Ebene ein Abhängigkeitsdiagramm hinzu. Beginnen Sie mit einer Kopie des Architekturabhängigkeitsdiagramms. Sie können Teile löschen, die keine Abhängigkeiten des Abhängigkeitsdiagramms sind.
Sie können zudem Abhängigkeitsdiagramme hinzufügen, die die ausführliche Struktur dieser Ebene darstellen.
Diese Diagramme werden verwendet, um den Code zu überprüfen, der in dieser Ebene entwickelt wird.
Bearbeiten Sie in der Architektur-Projektmappe die Anforderungen und die Entwurfsmodelle für alle Ebenen mit Visual Studio.
Entwickeln Sie in jeder Ebenenprojektmappe den Code für diese Ebene, der auf das Modell verweist. Wenn Sie die Entwicklung durchführen möchten, ohne den gleichen Computer zum Aktualisieren des Modells zu verwenden, können Sie das Modell lesen und Code entwickeln, indem Sie Versionen von Visual Studio verwenden, die keine Modelle erstellen können. Sie können Code auch aus dem Modell in diesen Versionen generieren.
Diese Methode stellt sicher, dass keine Störungen von Entwicklern verursacht werden, die die Ebenenmodelle zur gleichen Zeit bearbeiten.
Da die Modelle getrennt sind, ist es jedoch schwierig, auf allgemeine Konzepte zu verweisen. Jedes Modell muss eine eigene Kopie der Elemente aufweisen, von denen es über andere Ebenen und die Architektur abhängig ist. Das Abhängigkeitsdiagramm in jeder Ebene muss mit dem Architekturabhängigkeitsdiagramm synchronisiert werden. Es ist schwierig, die Synchronisierung beizubehalten, wenn sich diese Elemente ändern, obwohl Sie zu diesem Zweck Tools entwickeln könnten.
Verwenden eines separaten Pakets für jede Ebene
Fügen Sie in der Projektmappe für jede Ebene das Architektur-Modellierungsprojekt hinzu. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Knoten der Projektmappe, zeigen Sie auf Hinzufügen, und klicken Sie anschließend auf Vorhandenes Projekt. Das einzelne Modellierungsprojekt kann nun aus allen Projektmappen aufgerufen werden: das Projekt für die Architektur und das Entwicklungsprojekt für jede Ebene.
Erstellen Sie im freigegebenen Modell ein Paket für jede Ebene: Wählen Sie im Projektmappen-Explorer das Modellierungsprojekt aus. Klicken Sie im UML-Projektmappen-Explorer mit der rechten Maustaste auf den Modellstammknoten, zeigen Sie auf Hinzufügen, und klicken Sie anschließend auf Paket.
Jedes Paket enthält Diagramme, in denen die Anforderungen und der Entwurf der jeweiligen Ebene beschrieben werden.
Fügen Sie bei Bedarf lokale Abhängigkeitsdiagramme für die interne Struktur der einzelnen Ebenen hinzu.
Diese Methode ermöglicht es, dass die Entwurfselemente der einzelnen Ebenen direkt auf die der Ebenen und gemeinsame Architektur verweisen, von denen sie abhängen.
Obwohl das gleichzeitige Arbeiten an verschiedenen Paketen Konflikte verursachen kann, sind sie relativ einfach zu lösen, da die Pakete in separaten Dateien gespeichert werden.
Erstellen von Architekturvorlagen
In der Praxis erstellen Sie nicht alle Visual Studio-Projektmappen gleichzeitig, sondern fügen sie im Laufe des Projekts hinzu. Wahrscheinlich werden Sie auch dieselbe Projektmappenstruktur für zukünftige Projekte verwenden. Um schnell neue Projektmappen erstellen zu können, können Sie eine Projektmappen- oder Projektvorlage erstellen. Sie können die Vorlage in einer Visual Studio Integration Extension (VSIX) erfassen, damit Sie sie einfach verteilen und auf anderen Computern installieren können.
Wenn Sie beispielsweise häufig Projektmappen mit Präsentations-, Geschäfts- und Datenebenen verwenden, können Sie eine Vorlage konfigurieren, die neue Projektmappen mit dieser Struktur erstellt.
So erstellen Sie ein Projektmappenvorlage
Laden Sie den Assistenten zum Exportieren von Vorlagen herunter, und installieren Sie ihn.
Erstellen Sie die Projektmappenstruktur, die Sie als Ausgangspunkt für zukünftige Projekte verwenden möchten.
Klicken Sie im Menü Datei auf Vorlage als VSIX exportieren.
Der Assistent zum Exportieren von Vorlagen als VSIX wird geöffnet.
Folgen Sie den Anweisungen im Assistenten und wählen Sie die Projekte aus, die in die Vorlage aufgenommen werden sollen, geben Sie einen Namen und eine Beschreibung für die Vorlage an, und geben Sie einen Ausgabespeicherort an.