Modellieren der Anwendung

Um sicherzustellen, dass die Anwendung die Benutzeranforderungen erfüllt, können Sie Visual Studio Ultimate verwenden, um den Code zu verstehen und die Anwendung zu modellieren. Visual Studio Ultimate hilft Ihnen beim Visualisieren von Code, sodass Sie seine Struktur, Beziehungen und Verhaltensweisen leichter verstehen.

Sie können Modelle mit unterschiedlicher Detailgenauigkeit erstellen und Anforderungen, Aufgaben, Testfälle, Fehler oder andere Arten von Arbeitsschritten nachverfolgen, die den Modellen zugeordnet sind, indem Sie Modellelemente mit Team Foundation Server-Arbeitsaufgaben und dem Entwicklungsplan verknüpfen. Sie können diese Aufgaben über den Anwendungslebenszyklus im Rahmen des Entwicklungsprozesses ausführen. Weitere Informationen finden Sie unter Neues bei den Modellierungstools in Visual Studio 2013 und Übersicht über das Szenario: Ändern des Entwurfs mithilfe von Visualisierung und Modellierung.

So wird's gemacht

Visualisieren von Code:

  • Ordnen Sie Beziehungen zwischen Codeelementen zu, während Sie sie untersuchen.

  • Zeigen Sie die Organisation und Abhängigkeiten zwischen Assemblys, Namespaces, Klassen, Methoden usw. an, indem Sie Abhängigkeitsdiagramme aus Code erstellen.

  • Zeigen Sie die Meldungssequenz innerhalb einer Methode an, indem Sie Sequenzdiagramme aus Code generieren.

  • Zeigen Sie die Klassenstruktur und -member für ein bestimmtes Projekt an, indem Sie Klassendiagramme aus Code erstellen.

  • Suchen Sie Konflikte zwischen dem Code und dem Entwurf, indem Sie Ebenendiagramme zum Überprüfen von Code erstellen.

Beschreiben und Kommunizieren von Benutzeranforderungen:

  • Klären Sie User Stories, Geschäftsregeln und andere Anforderungen ab, und gewährleisten Sie deren Konsistenz, indem Sie Anwendungsfall-, Aktivitäts-, Klassen- und andere UML-Diagramme zeichnen.

Definieren der Architektur:

  • Erstellen Sie ein Modell der allgemeinen Struktur des Softwaresystems und der Entwurfsmuster, indem Sie UML-Komponenten-, Klassen- und Sequenzdiagramme zeichnen.

  • Definieren und erzwingen Sie Einschränkungen für die Abhängigkeiten zwischen Komponenten des Codes, indem Sie Ebenendiagramme erstellen.

Überprüfen des Systems anhand der Anforderungen und des beabsichtigten Entwurfs:

  • Definieren Sie Akzeptanztests oder Systemtests auf Grundlage der Anforderungsmodelle. Dies schafft eine enge Beziehung zwischen den Tests und den Anforderungen der Benutzer und erleichtert das Aktualisieren des Systems bei geänderten Anforderungen.

  • Überprüfen Sie Codeabhängigkeiten mit Ebenendiagrammen, die die beabsichtigte Architektur beschreiben und Änderungen verhindern, die einen Konflikt mit dem Entwurf verursachen könnten.

Freigeben von Modellen und Diagrammen mithilfe der Team Foundation-Versionskontrolle:

  • Stellen Sie Abhängigkeitsdiagramme, Modellierungsprojekte, UML-Diagramme und Ebenendiagramme unter Team Foundation-Versionskontrolle, um diese freigeben zu können.

Arbeiten mehrere Benutzer mit diesen Elementen unter Team Foundation-Versionskontrolle, verwenden Sie diese Richtlinien, um Probleme mit der Versionskontrolle zu vermeiden:

Generieren oder Konfigurieren von Teilen der Anwendung aus UML- oder domänenspezifischen Sprachen:

  • Machen Sie den Entwurf leichter anpassbar an geänderte Anforderungen und flexibel für eine Produktgruppe.

Anpassen von Modellen und Diagrammen:

  • Passen Sie Modelle an die Verwendung im Projekt an, indem Sie zusätzliche Eigenschaften für UML-Elemente, Validierungseinschränkungen (die sicherstellen, dass die Modelle den Geschäftsregeln entsprechen) sowie zusätzliche Menübefehle und Toolboxelemente definieren.

  • Erstellen Sie eigene domänenspezifische Sprachen.

Typen von Modellen und deren Anwendungsmöglichkeiten

Modelltyp und typische Anwendungsmöglichkeiten

Abhängigkeitsdiagramm

Mit Abhängigkeitsdiagrammen können Sie die Organisation und die Beziehungen im Code anzeigen.

Typische Anwendungsmöglichkeiten:

  • Überprüfen Sie Programmcode, um sich mit der Struktur, den Abhängigkeiten sowie dem Aktualisieren vertraut zu machen und um die Kosten für vorgeschlagene Änderungen einschätzen zu können.

Thema

Ebenendiagramm

Anhand von Ebenendiagrammen können Sie die Struktur einer Anwendung als einen Satz von Ebenen oder Blöcken mit expliziten Abhängigkeiten definieren. Sie können die Validierung ausführen, um Konflikte zwischen Abhängigkeiten im Code und den in einem Ebenendiagramm beschriebenen Abhängigkeiten zu ermitteln.

Typische Anwendungsmöglichkeiten:

  • Stabilisieren der Struktur der Anwendung anhand zahlreicher Änderungen während der gesamten Lebensdauer.

  • Ermitteln Sie unbeabsichtigte Abhängigkeitskonflikte, bevor Sie Änderungen am Code einchecken.

Thema

UML-Modell

Ein UML-Modell beinhaltet mehrere Ansichten, einschließlich Klasse, Komponente, Anwendungsfall sowie Aktivitäts- und Sequenzdiagramme. Sie können UML speziell für Ihre Anwendungsdomäne anpassen. Sie können z. B. Tags, zusätzliche Informationen und Einschränkungen an die Modellelemente anfügen. Außerdem können Sie Tools definieren, mit denen die Modelle bearbeitet werden können. Siehe Entwickeln von Modellen für den Softwareentwurf.

Typische Anwendungsmöglichkeiten:

  • Beschreiben von Anforderungen und Entwurf. UML lässt sich bei der Entwicklung von Anwendungen schnell anwenden. Siehe Verwenden von Modellen im Entwicklungsprozess.

  • Generieren oder Konfigurieren von Tests oder Teilen einer Anwendung. Es ist ein wenig Aufwand erforderlich, um die Notation anzupassen und die Generierungsvorlagen oder konfigurierbare Anwendung zu entwickeln. Siehe Generieren und Konfigurieren der Anwendung aus Modellen.

  • Für allgemeine Beschreibungen und Codegenerierung oder -konfiguration in kleineren Projekten.

Codebasiertes Sequenzdiagramm

Anhand von Sequenzdiagrammen, die aus .NET-Code generiert werden können, lässt sich einfacher grafisch darstellen, wie im Code Methoden implementiert werden.

Typische Anwendungsmöglichkeiten:

  • Verstehen und Analysieren von Programmcode.

Thema

Domänenspezifische Sprache (DSL)

Eine DSL ist eine Notation, die für einen bestimmten Zweck entworfen wird. In Visual Studio ist sie normalerweise eine grafische Darstellung.

Typische Anwendungsmöglichkeiten:

  • Generieren oder Konfigurieren von Teilen einer Anwendung. Es ist ein wenig Aufwand erforderlich, um die Notation und die Tools zu entwickeln. Dadurch können Sie jedoch meist eine bessere Anpassung an die Domäne als bei einer UML-Anpassung erreichen.

  • Bei großen Projekten oder bei Produktlinien, bei denen die Investitionen in die Entwicklung DSL und deren Tools sich deshalb lohnen, weil die DSL für mehrere Projekte verwendet werden kann.

Thema

Wo kann ich weitere Informationen abrufen?

Foren

Blogs

Visual Studio ALM + Team Foundation Server-Blog

Technische Artikel und Journale

The Architecture Journal – Ausgabe 23: Architekturmodellierung und -Prozesse

Andere Sites

MSDN Architecture Center

Siehe auch

Konzepte

Application Lifecycle Management mit Visual Studio Team Foundation Server