Progettazione per i requisiti aziendali

Completato
Raccogliere i requisiti aziendali con un focus sull'utilità prevista del carico di lavoro.

I requisiti aziendali vengono definiti tramite un lavoro di collaborazione tra stakeholder aziendali e architetti del carico di lavoro. Si devono raggiungere compromessi per ciascuna delle parti per garantire che i requisiti concordati siano realistici e realizzabili, rispettando al contempo gli obiettivi di affidabilità che il carico di lavoro deve soddisfare. I requisiti devono coprire l'esperienza dell’utente, i dati, i flussi di lavoro e le caratteristiche univoche per il carico di lavoro. Il risultato del processo di requisiti deve indicare chiaramente le aspettative. Gli obiettivi devono essere raggiungibili e negoziati con il team, dato un investimento specificato. Devono essere documentati per guidare scelte tecnologiche, implementazioni e operazioni.

Scenario di esempio

Contoso Insurance è nella fase iniziale di progettazione dello sviluppo di un'applicazione Web per elaborare le richieste per i titolari di criteri. La maggior parte dei flussi principali di utenti e sistemi sono stati stabiliti e il team del carico di lavoro ha identificato diversi servizi di Azure che comporranno l'app: Servizio app di Azure, database SQL di Azure, Servizi di Azure AI, Griglia di eventi di Azure e App per la logica di Azure.

Identificare le destinazioni di affidabilità

Quantificare il successo impostando obiettivi sugli indicatori per singoli componenti, flussi di sistema e utente e il sistema per intero.

Le metriche quantificano le aspettative. Consentono di comprendere le complessità e di stabilire se i costi downstream di tali complessità sono entro il limite di investimento.

I valori di destinazione indicano uno stato ideale. È possibile usare i valori come soglie di test che consentono di rilevare le deviazioni da tale stato e il tempo necessario per tornare allo stato di destinazione.

I requisiti di conformità devono avere anche risultati prevedibili per i flussi nell'ambito. La definizione delle priorità di questi flussi consente di prestare attenzione alle aree più sensibili.

Sfida di Contoso

  • Il team del carico di lavoro vuole assicurarsi di ottimizzare il modo in cui vengono spese le risorse per rendere affidabile il carico di lavoro.
  • Hanno scomposto il carico di lavoro nei flussi e hanno valutato i flussi in base alla loro criticità.

Applicazione dell'approccio e risultati

  • Il team stabilisce che il flusso di invio di attestazioni e approvazione avrà i requisiti di affidabilità più elevati per il carico di lavoro a causa della dipendenza dei medici e dei pazienti dalla disponibilità di tale flusso.
  • Il team del carico di lavoro stabilisce i componenti che supportano questo flusso e determina le misure di affidabilità necessarie per raggiungere gli obiettivi.

Comprendere gli impegni della piattaforma

Comprendere le metriche di affidabilità garantite fornite dalla piattaforma cloud e prendere in considerazione i limiti, le quote e i vincoli di capacità per i servizi.

I contratti di servizio variano in base al servizio. Non tutti i servizi e le funzionalità sono trattati equamente. Avere una buona conoscenza della copertura e dei limiti consente di rilevare la deriva e creare meccanismi di resilienza e ripristino.

Sfida di Contoso

  • Il team del carico di lavoro e gli stakeholder hanno stabilito che i dati per l'app devono avere un obiettivo di tempo di ripristino garantito (RTO) che non può superare i 30 secondi per supportare la criticità del flusso di invio e approvazione delle attestazioni.

Applicazione dell'approccio e risultati

  • Dopo aver esaminato i contratti di servizio pubblicati da Microsoft, il team rileva che dovrà distribuire il livello business critical con la replica geografica attiva per raggiungere questa destinazione RTO.

Stabilire le dipendenze e il relativo effetto sulla resilienza

Quando si scompone il carico di lavoro nei componenti, è necessario assicurarsi di aver documentato tutte le dipendenze, sia interne che esterne all'azienda, e di identificare i malfunzionamenti con le dipendenze possono influire sui flussi

Tenere traccia dell'infrastruttura dipendente, dei servizi, delle API e delle funzioni sviluppate da altri team o terze parti consente di stabilire se il carico di lavoro può operare in assenza di tali dipendenze. Consente inoltre di comprendere gli errori a catena e di migliorare le operazioni downstream. Gli sviluppatori possono implementare schemi progettuali resilienti per gestire potenziali errori quando si usano servizi esterni che potrebbero essere soggetti a errori.

Sfida di Contoso

  • Il flusso di invio e approvazione dell'attestazione ha una dipendenza da un piccolo set di dati di riferimento ospitato e gestito da un reparto diverso all'interno di Contoso Insurance.
  • Il set di dati viene aggiornato più volte al giorno, durante le normali ore lavorative.
  • L'app è progettata per tollerare un certo decadimento nei dati di riferimento, ma i dati devono essere sempre disponibili per l'app.

Applicazione dell'approccio e risultati

  • Il team del carico di lavoro interagisce con il team che supporta il set di dati di riferimento e informa che la destinazione di affidabilità per il set di dati è inferiore a quella del flusso che lo userà.
  • Il team aggiunge attività di progettazione al backlog per aggiungere una cache locale del set di dati e un processo in background per aggiornare la cache durante la notte. La tolleranza di decadimento consentita dalla progettazione non verrà violata da questa soluzione.

Verificare le conoscenze

1.

Quale dei seguenti non è un aspetto del carico di lavoro per cui definire gli obiettivi di affidabilità?

2.

Quando si scompone il carico di lavoro in componenti, quale degli aspetti seguenti è consigliabile considerare per la progettazione dell'affidabilità?

3.

Il team del carico di lavoro di Contoso Insurance è interessato a conoscere il tempo di attività garantito per diversi SKU del Servizio app di Azure. Dove devono cercare queste informazioni?