Condividi tramite


Considerazioni su distribuzione e test per carichi di lavoro di applicazioni intelligenti

Mantieni un processo ALM (Application Lifecycle Management) integro per evitare problemi di produzione e affrontare rapidamente eventuali regressioni.

Determina la tua strategia ALM

Assicurati che il tuo processo di sviluppo sia efficiente e scalabile sviluppando una strategia ALM completa che includa il controllo delle versioni, l'integrazione continua/distribuzione continua (CI/CD) e i test automatizzati.

Valuta le opzioni, da CI/CD semplici a quelle avanzate:

Uso di soluzioni per la gestione degli ambienti

Mantenere ambienti distinti per lo sviluppo, il testing e la produzione. Questa procedura consente di isolare i problemi e garantisce che le modifiche vengano testate accuratamente prima di raggiungere gli utenti.

Utilizza soluzioni per spostare i plug-in creati tra ambienti diversi di Microsoft Copilot Studio.

Considerazioni ed elementi consigliati chiave:

  • Lavorare nel contesto delle soluzioni: garantire che tutto lo sviluppo sia condotto nell'ambito delle soluzioni.
  • Soluzioni separate per la distribuzione indipendente: crea soluzioni distinte solo quando è necessario distribuire i componenti in modo indipendente.
  • Comprendere le limitazioni: comprendere i limiti della distribuzione automatizzata e valutare quali impostazioni devono essere impostate o aggiornate manualmente dopo la distribuzione, ad esempio l'integrazione di Application Insights, i canali distribuiti e le impostazioni di sicurezza.
  • Usa un editore e un prefisso personalizzati: implementa un editore e un prefisso personalizzati per migliorare l'organizzazione e la gestione.
  • Usa variabili di ambiente: usa le variabili di ambiente per impostazioni e segreti che variano da un ambiente all'altro.
  • Esportazione e distribuzione come soluzioni gestite: esporta e distribuisci soluzioni come gestite, tranne quando configuri un ambiente di sviluppo.
  • Limita le personalizzazioni allo sviluppo: evita di effettuare personalizzazioni al di fuori dell'ambiente di sviluppo.
  • Automatizza i processi di ALM: prendi in considerazione l'automazione di ALM per il controllo del codice sorgente e le distribuzioni automatizzate.

Esempio

Questo esempio fornisce una panoramica della strategia di distribuzione per un carico di lavoro di applicazioni intelligenti e descrive i ruoli e i processi associati a ciascun ambiente: sviluppo (Dev), test (Test), controllo qualità (QA) e produzione (Prod).

Configurazione soluzione di esempio

  1. Ambiente di sviluppo (Dev):

    • Ambito: per la creazione iniziale e la personalizzazione della soluzione.
    • Attività: gli sviluppatori creano e modificano componenti come app, flussi e agenti. Tutte le personalizzazioni e le configurazioni vengono eseguite qui.
    • Procedure chiave:
      • Utilizza un editore e un prefisso personalizzati per tutti i componenti.
      • Implementa le variabili di ambiente per le impostazioni e i segreti.
      • Assicurati che tutte le modifiche siano controllate dalla versione e documentate.
  2. Ambiente di test (Test):

    • Ambito: per la convalida preliminare e il test della soluzione sviluppata.
    • Attività: le soluzioni vengono esportate dall'ambiente di sviluppo come soluzioni gestite e importate in un ambiente di test. I test funzionali e di integrazione vengono condotti per identificare e risolvere tempestivamente i problemi.
    • Procedure chiave:
      • Mantenere un ambiente di test separato per simulare scenari reali.
      • Usare le variabili di ambiente per gestire impostazioni e segreti specifici dell'ambiente di test.
      • Automatizza i processi di implementazione per garantire coerenza e ripetibilità.
  3. Ambiente di garanzia della qualità (Q.A. o QA):

    • Ambito: dedicato al controllo qualità approfondito e ai test di accettazione dell'utente (UAT).
    • Attività: le soluzioni gestite vengono importate dall'ambiente di test nell'ambiente di controllo qualità. Vengono condotti test approfonditi, tra cui prestazioni, sicurezza e UAT, per garantire che la soluzione soddisfi tutti i requisiti e gli standard.
    • Procedure chiave:
      • Utilizza le variabili di ambiente per gestire le impostazioni e i segreti specifici del controllo qualità.
      • Coinvolgi gli utenti in UAT per raccogliere feedback e assicurarti che la soluzione soddisfi le loro esigenze.
      • Automatizza i processi di test, ove possibile, per migliorare l'efficienza e l'accuratezza.
  4. Ambiente di produzione (Prod):

    • Ambito: ospita la versione live della soluzione per gli utenti.
    • Attività: dopo aver superato con successo i test di controllo qualità, la soluzione gestita viene esportata dall'ambiente di controllo qualità e importata nell'ambiente di produzione. Questo ambiente è rigorosamente controllato per garantire stabilità e affidabilità.
    • Procedure chiave:
      • Distribuisci le soluzioni come gestite per evitare modifiche non autorizzate.
      • Usa le variabili di ambiente per gestire le impostazioni e i segreti specifici della produzione.
      • Monitora e gestisci la soluzione per garantire prestazioni ottimali e risolvere tempestivamente eventuali problemi.

Strategia generale:

  • Separazione dei problemi: ciascun ambiente ha uno scopo distinto, garantendo che le attività di sviluppo, test, controllo qualità e produzione non interferiscano tra loro.
  • Automazione: automatizza i processi ALM, inclusi il controllo del codice sorgente, i test e le distribuzioni, per migliorare l'efficienza e ridurre il rischio di errori.
  • Coerenza: mantieni la coerenza tra gli ambienti usando variabili di ambiente e script di distribuzione automatizzati.

Definizione di una strategia di test

Assicurati di disporre di un piano chiaro per verificare che i carichi di lavoro e le integrazioni delle applicazioni intelligenti funzionino come previsto.

  • Definisci la tua strategia di test per i carichi di lavoro delle applicazioni intelligenti. Usa il framework di test per eseguire test in blocco delle espressioni utente e verificare che l'argomento appropriato venga attivato o che la prima opzione "intendevi dire" sia quella corretta nel 90% dei casi.

  • Testa le integrazioni nell'ambito dei test di conversazione end-to-end completi con la funzionalità di test di scalabilità del framework di test.

  • Usa il kit Power CAT di Copilot Studio per configurare agenti e test. Esegui singoli test sulle API di Copilot Studio (Direct Line) e valuta le risposte agente rispetto ai risultati previsti.

  • Assicurati di comprendere i requisiti non funzionali come disponibilità, conformità, conservazione/residenza dei dati, prestazioni, privacy, tempi di ripristino, sicurezza e scalabilità. Ad esempio, un widget di chat sul sito Web dovrebbe caricarsi e avviare una conversazione entro 5 secondi dal clic. Allo stesso modo, un flusso cloud attivato per restituire informazioni all'utente dovrebbe fornire i dati desiderati entro 10 secondi.