Externe Anwendungen in Anwendungssystemen

Aktualisiert: November 2007

In Designern für verteilte Systeme können Sie externe Anwendungen beschreiben, die nicht in die Projektmappe implementiert werden sollen, aber mit Anwendungen in der Projektmappe verbunden sind. Zum Beispiel können Sie externe Webdienste visuell darstellen, auf diese verweisen und sie mit Anwendungen in der Projektmappe verbinden. Weitere Informationen finden Sie unter Definieren von Anwendungen in Anwendungsdiagrammen.

Beim Entwurf eines Anwendungssystems mit Anwendungen, die mit externen Anwendungen verbunden sind, können Sie diese externen Anwendungen im System einschließen und sie verbinden. Andererseits können Sie die externen Anwendungen aus dem System ausschließen und dem System einen Proxyendpunkt für jeden Consumerendpunkt im System hinzufügen, der mit einer externen Anwendung verbunden ist. Weitere Informationen finden Sie unter Definieren von Kommunikationswegen in Systemdiagrammen und unter Delegieren und Verfügbarmachen des Verhaltens von Anwendungssystemen.

Hinweis:

In diesem Thema werden zwar beispielhaft externe Webdienste erläutert, die Konzepte gelten aber auch für BizTalk-Webdienste, Datenbanken, generische Anwendungen sowie benutzerdefinierte Anwendungstypen, die mit dem SDM (System Definition Model)-SDK (Software Development Kit) erstellt werden. Weitere Informationen finden Sie unter Anwendungstypen und -prototypen für das Definieren von Anwendungen.

In den folgenden Abschnitten werden diese Ansätze und Richtlinien für die Verwendung erläutert:

  • Including External Web Services in Systems

  • Excluding External Web Services from Systems

  • Choosing the Right Approach

Einschließen von externen Webdiensten in Systemen

Wenn Sie im Anwendungsdiagramm eine Anwendung mit einem externen Webdienst verbinden, können Sie den externen Webdienst in das System einschließen. Durch Einschließen eines externen Webdiensts in das System wird nicht angegeben, dass der Webdienst mit dem System bereitgestellt wird. Wenn Sie jedoch den externen Webdienst einschließen, können Sie die folgenden Aufgaben ausführen:

  • Visuelles Darstellen eines Verweises auf den externen Webdienst im Systemdiagramm.

  • Verbinden Sie mehrere Anwendungen mit dem externen Webdienst, um anzugeben, dass diese Anwendungen mit derselben Webdienst-URL verbunden sein müssen. Weitere Informationen finden Sie unter Kommunikation innerhalb von Anwendungssystemen.

  • Beim Definieren der Bereitstellung für das System können Sie den logischen Server angeben, auf dem der externe Webdienst bereitgestellt werden muss. Sie können auch überprüfen, ob im logischen Datencenter Kommunikationswege vorhanden sind, um Verbindungen zwischen dem externen Webdienst und den Anwendungen, die mit ihm verbunden sind, zu unterstützen. Weitere Informationen finden Sie unter Evaluieren der Systembereitstellung mit dem Bereitstellungs-Designer.

Berücksichtigen Sie bei diesem Ansatz die folgenden Überlegungen:

  • Sie können einen Consumerendpunkt mit einem Anbieterendpunkt oder einem Proxyendpunkt verbinden, aber nicht mit beiden.

    Wenn Sie einen Consumerendpunkt mit einem externen Webdienst im System verbinden, können Sie in diesem System keinen Proxyendpunkt für diesen Consumerendpunkt erstellen. Wenn dieser Consumerendpunkt über keinen Proxyendpunkt verfügt, können Sie diesen Consumerendpunkt außerhalb des Systems nicht verfügbar machen. Außerdem können Sie diesen Proxyendpunkt nicht mit einem Webdienst in einem anderen System verbinden, um die URL aufzulösen.

  • Wenn Sie das System bereitstellen, müssen Sie die URL des externen Webdienst-Anbieterendpunkts bereitstellen. Sie benötigen diese URL, um die verbundenen Consumerendpunkte zu konfigurieren.

Darstellen von ASP.NET-Webanwendungen mit externen Webdiensten

Wenn eine Anwendung im Anwendungsdiagramm mit einer implementierten ASP.NET-Webanwendung (mit einem Anbieterendpunkt eines Webdiensts) verbunden ist und Sie ein System entwerfen möchten, das die ASP.NET-Webanwendung ausschließt, können Sie die ASP.NET-Webanwendung durch einen externen Webdienst ersetzen. Für diese Strategie müssen Sie entweder die ASP.NET-Webanwendung aus der Projektmappe entfernen oder eine andere Projektmappe ohne die ASP.NET-Webanwendung erstellen und das System darin definieren, bevor Sie den externen Webdienst erstellen.

Hinweis:

Ersetzen Sie die ASP.NET-Webanwendung im Anwendungsdiagramm nicht, indem Sie einen externen Webdienst anhand dieser Anwendung erstellen. Sie können auf den Speicherort eines .NET-Webdienst-Anwenderendpunkts im Anwendungsdiagramm nur einmal verweisen. Weitere Informationen finden Sie unter Gewusst wie: Suchen von WSDL-Dateien für Webdienste.

Ausschließen von externen Webdiensten aus Systemen

Wenn Sie eine Anwendung mit einem Webdienst verbinden, der nicht in das System eingeschlossen werden soll, müssen Sie Proxyendpunkte für die Consumerendpunkte dieser Anwendung erstellen. Mithilfe von Proxyendpunkten können Sie diese Consumerendpunkte verfügbar machen und sie außerhalb des Systems verbinden, wenn Sie dieses System in andere Systeme einschließen. Weitere Informationen finden Sie unter Delegieren und Verfügbarmachen des Verhaltens von Anwendungssystemen.

Hinweis:

Bei dem Webdienst kann es sich um einen externen Webdienst oder um eine ASP.NET-Webanwendung mit einem .NET-Webdienst-Anbieterendpunkt handeln.

Berücksichtigen Sie bei diesem Ansatz die folgenden Überlegungen:

  • Beim Definieren der Bereitstellung für das System können Sie nicht den logischen Server angeben, auf dem der externe Webdienst, auf den verwiesen wird, bereitgestellt werden muss. Des Weiteren können Sie nicht bestätigen, dass im logischen Datencenter Kommunikationswege vorhanden sind, um Verbindungen zwischen den externen Webdiensten und den Anwendungen, die auf diese verweisen, zu unterstützen.

    Tipp:

    Sie können dieses Problem umgehen, indem Sie das System und/oder den externen Webdienst in ein anderes System einschließen.

  • Sie können im Systemdiagramm nicht angeben, dass Anwendungen im System mit demselben Webdienst-URL verbunden werden müssen.

    Tipp:

    Wenn Sie diesen Ansatz verwenden, dokumentieren Sie jedes Szenario, in dem Proxyendpunkte im System mit derselben Webdienst-URL verbunden sein müssen, separat. Beispielsweise können Sie dem Systemdiagramm Kommentare hinzufügen. Diese Informationen sind wichtig für alle Benutzer, die das System in einem anderen System wiederverwenden. Weitere Informationen finden Sie unter Gewusst wie: Hinzufügen von Kommentaren zu verteilten Systemdiagrammen.

  • Wenn Sie ein System mit Proxyendpunkten (Consumerendpunkten) als eigenständiges System bereitstellen, d. h. nicht im Kontext eines anderen Systems, müssen Sie die Webdienst-URL jedes Proxyendpunkts als Teil des Bereitstellungsprozesses angeben. Sie benötigen diese URLs, um die Consumerendpunkte zu konfigurieren, die die Proxyendpunkte verfügbar machen. Wenn Sie das System als Teil eines anderen Systems bereitstellen, geben die Anbieterendpunkte im enthaltenden System, die mit den Consumer-Proxyendpunkten verbunden sind, die Quelle für die URLs an.

Auswählen des richtigen Ansatzes

Bei einem unabhängigen System, das Sie als eigenständiges System (das nicht in einem anderen System eingeschlossen ist) bereitstellen, können Sie in das System optional externe Anwendungen, generische Anwendungen und benutzerdefinierte Anwendungstypen mit den Anwendungen einschließen, die mit diesen verbunden sind. Möchten Sie das System in andere Systeme einschließen, sind für die Consumerendpunkte im System Proxyendpunkte erforderlich, um ihr Verhalten verfügbar zu machen und sie außerhalb des Systems zu verbinden.

Sie können diese Ansätze auch kombinieren. Wenn Sie ein System als eigenständiges System bereitstellen und es in andere Systeme einschließen möchten, können Sie zwei Systeme erstellen, wobei eines im anderen eingeschlossen ist. Sie können ein System definieren, das die Consumeranwendungen enthält und deren Verhalten über Proxyendpunkte verfügbar macht. Sie können ein weiteres System definieren, das die externen Anwendungen und das System mit den Proxyendpunkten einschließt. Sie können diese externen Anwendungen mit den Proxyendpunkten verbinden. Wenn Sie die Consumeranwendungen in ein anderes System einschließen müssen, können Sie das innere System verwenden. Wenn Sie diese Funktionalität unabhängig bereitstellen möchten, können Sie das äußere System verwenden. Bei diesem Ansatz müssen Sie jedoch zwei Systeme verwalten. Weitere Informationen finden Sie unter Gewusst wie: Kombinieren von externen Anwendungen mit Verweisen auf Anwendungen in Anwendungssystemen.

Siehe auch

Weitere Ressourcen

Entwerfen von Anwendungssystemen in Systemdiagrammen