Freigeben über


Überlegungen zur Bereitstellung und zum Testen von Workloads für intelligente Anwendungen

Sorgen Sie für einen fehlerfreien Application Lifecycle Management-Prozess (ALM), um Produktionsprobleme zu vermeiden und Rückschritte schnell zu beheben.

Legen Sie Ihre ALM-Strategie fest

Stellen Sie sicher, dass Ihr Entwicklungsprozess effizient und skalierbar ist, indem Sie eine umfassende ALM-Strategie entwickeln, einschließlich Versionskontrolle, Continuous Integration und Continuous Deployment (CI/CD) und automatisierter Tests.

Bewerten Sie die Optionen von einfacher bis erweiterter CI/CD:

  • Manuelle Bereitstellung von Lösungen.
  • Automatisierte Bereitstellung mit benutzerfreundlichen Pipelines Power Platform (keine Quellcodeverwaltung).
  • Automatisierte Bereitstellung + Quellcodeverwaltung mit Azure DevOps oder GitHub Power Platform Tools.
  • Automatisiertes Testen der intelligenten Anwendungs-Workload als Teil des Bereitstellungsprozesses.

Lösungen für die Umgebungsverwaltung verwenden

Separate Umgebungen für Entwicklung, Tests und Produktion verwalten. Diese Vorgehensweise hilft, Probleme zu isolieren und stellt sicher, dass Änderungen gründlich getestet werden, bevor sie Benutzende erreichen.

Verwenden Sie Lösungen, um Plugins, die in Microsoft Copilot Studio erstellt wurden, in verschiedenen Umgebungen zu verschieben.

Zentrale Empfehlungen und Überlegungen:

  • Arbeiten im Kontext von Lösungen: Stellen Sie sicher, dass alle Entwicklungen im Rahmen von Lösungen durchgeführt werden.
  • Separate Lösungen für die unabhängige Bereitstellung: Erstellen Sie nur dann unterschiedliche Lösungen, wenn Komponenten unabhängig bereitgestellt werden müssen.
  • Grundlegende Einschränkungen: Verstehen Sie die Einschränkungen der automatisierten Bereitstellung, und bewerten Sie, welche Einstellungen nach der Bereitstellung manuell festgelegt oder aktualisiert werden müssen, z. B. Application Insights Integration, bereitgestellte Kanäle und Sicherheitseinstellungen.
  • Benutzerdefinierten Herausgeber und benutzerdefiniertes Präfix verwenden: Implementieren Sie einen benutzerdefinierten Herausgeber und ein benutzerdefiniertes Präfix für eine bessere Organisation und Verwaltung.
  • Umgebungsvariablen verwenden: Verwenden Sie Umgebungsvariablen für Einstellungen und Geheimnisse, die je nach Umgebung variieren.
  • Export und Bereitstellung als verwaltete Lösungen: Exportieren und stellen Sie Lösungen als verwaltet bereit, es sei denn, Sie richten eine Entwicklungsumgebung ein.
  • Anpassungen auf die Entwicklung beschränken: Vermeiden Sie es, Anpassungen außerhalb der Entwicklungsumgebung vorzunehmen.
  • ALM-Prozesse automatisieren: Erwägen Sie die Automatisierung von ALM für die Quellcodeverwaltung und automatisierte Bereitstellungen.

Beispiel

Dieses Beispiel bietet einen Überblick über die Bereitstellungsstrategie für einen intelligenten Anwendungs-Workload und beschreibt die Rollen und Prozesse, die den einzelnen Umgebungen zugeordnet sind: Entwicklung (Dev), Testen (Test), Qualitätssicherung (QA) und Produktion (Prod).

Beispiel für eine Lösungskonfiguration

  1. Entwicklungsumgebung (dev):

    • Zweck: Für die anfängliche Erstellung und Anpassung der Lösung.
    • Aktivitäten: Entwickler erstellen und ändern Komponenten wie Apps, Flows und Agenten. Alle Anpassungen und Konfigurationen werden hier durchgeführt.
    • Zentrale Methoden:
      • Verwenden Sie für alle Komponenten einen benutzerdefinierten Herausgeber und ein benutzerdefiniertes Präfix.
      • Implementieren Sie Umgebungsvariablen für Einstellungen und Geheimdaten.
      • Stellen Sie sicher, dass alle Änderungen versionskontrolliert und dokumentiert sind.
  2. Testumgebung (Test):

    • Zweck: Zur vorläufigen Validierung und zum Testen der entwickelten Lösung.
    • Aktivität: Die Lösung werden dann von der Entwicklungsumgebung als verwaltete Lösung exportiert und in Ihre Testumgebung importiert. Funktions- und Integrationstests werden durchgeführt, um Probleme frühzeitig zu erkennen und zu beheben.
    • Zentrale Methoden:
      • Pflegen Sie eine separate Testumgebung, um reale Szenarien zu simulieren.
      • Verwenden Sie Umgebungsvariablen, um Einstellungen und Geheimnisse zu verwalten, die für die Testumgebung spezifisch sind.
      • Automatisieren Sie Bereitstellungsprozesse, um für Konsistenz und Wiederholbarkeit zu sorgen.
  3. Qualitätssicherungsumgebung (Q.A. oder QA):

    • Zweck: Gewidmet für gründliche Qualitätssicherung und Benutzerakzeptanztests (UAT).
    • Aktivität: Verwaltete Lösungen werden von der Testumgebung in QA-Ungebungen importiert. Es werden umfangreiche Tests durchgeführt, einschließlich zu Leistung, Sicherheit und UAT, um sicherzustellen, dass die Lösung alle Anforderungen und Standards erfüllt.
    • Zentrale Methoden:
      • Verwenden Sie Umgebungsvariablen, um QA-spezifische Einstellungen und Geheimnisse zu verwalten.
      • Binden Sie Benutzende in UAT ein, um Feedback zu sammeln und sicherzustellen, dass die Lösung ihren Anforderungen entspricht.
      • Automatisieren Sie Testprozesse wann immer möglich, um die Effizienz und Genauigkeit zu verbessern.
  4. Produktionsumgebung (Prod):

    • Zweck: Hostet die benutzerorientierte Liveversion der Lösung.
    • Aktivitäten: Nach erfolgreichen QA-Tests wird die verwaltete Lösung aus der QA-Umgebung exportiert und in die Produktionsumgebung importiert. Diese Umgebung wird streng kontrolliert, um Stabilität und Zuverlässigkeit zu gewährleisten.
    • Zentrale Methoden:
      • Stellen Sie Lösungen als verwaltet bereit, um unbefugte Änderungen zu verhindern.
      • Verwenden Sie Umgebungsvariablen, um produktionsspezifische Einstellungen und Geheimnisse zu verwalten.
      • Überwachen und warten Sie die Lösung, um eine optimale Leistung sicherzustellen und Probleme umgehend zu beheben.

Allgemeine Strategie:

  • Trennung der Zuständigkeiten: Jede Umgebung dient einem bestimmten Zweck und stellt sicher, dass sich Entwicklungs-, Test-, Qualitätssicherungs- und Produktionsaktivitäten nicht gegenseitig stören.
  • Automatisierung: Automatisieren Sie ALM-Prozesse, einschließlich Quellcodeverwaltung, Tests und Bereitstellungen, um die Effizienz zu steigern und das Fehlerrisiko zu verringern.
  • Konsistenz: Sorgen Sie für Konsistenz in allen Umgebungen, indem Sie Umgebungsvariablen und automatisierte Bereitstellungsskripts verwenden.

Eine Teststrategie etablieren

Stellen Sie sicher, dass Sie über einen klaren Plan verfügen, um zu überprüfen, ob Ihr intelligenter Anwendungs-Workload und Ihre Integrationen wie erwartet funktionieren.

  • Legen Sie Ihre Teststrategie für intelligente Anwendungs-Workloads fest. Verwenden Sie das Testframework , um Massentests von Benutzeräußerungen durchzuführen und zu überprüfen, ob das entsprechende Thema ausgelöst wird oder ob die erste Meinten Sie-Option in 90 % der Fälle die richtige ist.

  • Testen Sie Integrationen im Zuge der vollständigen End-to-End-Unterhaltungstests mit der Skalierungstestfunktion des Testframeworks.

  • Verwenden Sie das Power CAT Copilot Studio Kit, um Agenten und Tests zu konfigurieren. Einzelne Tests für die Copilot Studio APIs (Direct Line) ausführen und Agent-Antworten anhand der erwarteten Ergebnisse auswerten.

  • Stellen Sie sicher, dass Sie nichtfunktionale Anforderungen wie Verfügbarkeit, Compliance, Datenaufbewahrung/-speicherort, Leistung, Datenschutz, Wiederherstellungszeit, Sicherheit und Skalierbarkeit verstehen. Beispielsweise sollte ein Chat-Widget auf der Website innerhalb von fünf Sekunden nach dem Anklicken geladen sein und eine Unterhaltung beginnen. Ebenso sollte ein Cloud-Flow, der ausgelöst wird, um Informationen an den Benutzenden zurückzugeben, die gewünschten Daten innerhalb von zehn Sekunden bereitstellen.