Modello di funzionalità di ingegneria delle piattaforme
La progettazione delle piattaforme deve essere considerata come un percorso. Un approccio iterativo graduale è in genere più efficace rispetto al tentativo di implementazione immediata su larga scala o a un approccio basato esclusivamente su ordini dall'alto verso il basso. Un progresso incrementale, a partire da prodotti minimi funzionanti (MVP, Minimally Viable Product), consente ai team di perfezionare l'approccio nel tempo, incorporando al tempo stesso il feedback.
Il ciclo di vita della progettazione delle piattaforme rappresenta un approccio strutturato per garantire che una piattaforma sia affidabile, scalabile e in continuo miglioramento. Questo ciclo di vita comprende fasi distinte, ognuna delle quali contribuisce al successo a lungo termine della piattaforma.
Un elemento essenziale del ciclo di vita è il modello di funzionalità di progettazione della piattaforma, che fornisce un framework completo per la valutazione, la pianificazione e l'implementazione delle attività di progettazione della piattaforma. Il modello descrive i livelli di maturità, le procedure consigliate e le funzionalità critiche necessarie in ogni fase del ciclo di vita, garantendo l'allineamento con gli obiettivi dell'organizzazione e le esigenze degli utenti.
Il modello descrive lo stato di avanzamento delle procedure di progettazione della piattaforma in cinque fasi: Iniziali, Ripetibili, Definiti, Gestiti e Ottimizzazione. Nella fase iniziale le organizzazioni hanno una struttura limitata, con processi ad hoc e un investimento minimo nelle funzionalità della piattaforma. Man mano che progrediscono fino alla fase ripetibile , emergono processi di base, ma l'adozione e la governance rimangono incoerenti. La fase Definita contrassegna l'istituzione di standard e processi chiari, con gli utenti che iniziano ad adottare soluzioni di piattaforma intenzionalmente. Nella fase gestita le piattaforme sono gestite attivamente, le risorse vengono sottoposte a provisioning e gestite in modo efficiente e le interazioni degli utenti sono coerenti tramite interfacce standardizzate. Infine, nella fase Ottimizzazione , le piattaforme vengono costantemente migliorate tramite meccanismi di feedback affidabili, risultati misurati e funzionalità adattive allineate alle esigenze degli utenti e agli obiettivi dell'organizzazione.
Il modello viene valutato in base a sei funzionalità: Investimenti, che riflettono l'allocazione di risorse e finanziamenti; Adozione, incentrata sull'individuazione e sull'utilizzo degli utenti; Governance, garantire l'accessibilità delle risorse, il controllo dei costi e la protezione dei dati/IP; Provisioning e gestione, definizione del modo in cui le risorse vengono distribuite e gestite; Interfacce, indirizzando le interazioni degli utenti con la piattaforma; e Measurement & Feedback, enfatizzando il miglioramento continuo attraverso metriche delle prestazioni e informazioni dettagliate sugli utenti. Insieme, queste funzionalità sono strettamente allineate alle aree chiave descritte nel modello di maturità di progettazione della piattaforma di Cloud Native Computing Foundation e riflettono il livello di maturità della progettazione della piattaforma dell'organizzazione.
Per usare il modello di funzionalità di ingegneria delle piattaforme, valutare prima di tutto lo stato attuale dell'organizzazione rispetto a ognuna delle sei aree di funzionalità. È possibile eseguire questa valutazione manualmente o completare il sondaggio platform engineering capability model. Dopo aver identificato le fasi correnti, impostare obiettivi futuri per la crescita e tracciare lo stato di avanzamento dell'organizzazione per ogni funzionalità. Il progresso non deve necessariamente avvenire in tutte le funzionalità contemporaneamente. Concentrarsi sulle aree più rilevanti per l'organizzazione.
Investimento
Man mano che la capacità di investimento si evolve attraverso ogni fase, si concentra sul modo in cui il personale e i fondi vengono allocati alle capacità della piattaforma, con un'enfasi sul budget e sul personale, sulla gestione dell'ambito e sulla misurazione del ritorno sugli investimenti (ROI).
- Iniziale (Volontaria): Le funzionalità della piattaforma in base alla necessità, guidate da singoli ingegneri che si occupano volontariamente di esigenze tattiche immediate. Il budget e il personale sono minimi, con lavoro in genere non finanziato ed eseguito insieme alle responsabilità esistenti. Le soluzioni hanno un ambito ristretto e sono mirate alla risoluzione di problemi specifici con una condivisione limitata delle conoscenze tra i team. Il ritorno sugli investimenti viene misurato in base al livello di efficacia con cui vengono gestiti i requisiti immediati e il rispettivo impatto sui risultati dei progetti principali.
- Ripetibile (Contributi ad hoc): I team dedicati iniziano ad affrontare problemi ricorrenti, ad esempio il provisioning non uniforme o le lacune di sicurezza, ma gli sforzi rimangono in gran parte reattivi. I budget e il personale sono limitati alle preoccupazioni trasversali, con delega vincolata all'intera organizzazione. La gestione dell'ambito è incentrata su problemi specifici senza una prospettiva più ampia a livello di piattaforma. Il ritorno sugli investimenti viene valutato in base ai miglioramenti nell'affrontare le sfide principali, ad esempio la riduzione del backlog.
- Definita (Operatività - Team dedicato): Emergono team della piattaforma finanziati centralmente, che si concentrano sull'accelerazione della distribuzione del software e sulla gestione dei requisiti tecnici. La leadership inizia a promuovere la collaborazione e a implementare le procedure DevOps iniziali, ma la misurazione del valore del team risulta ancora complessa. Il budget e il personale sono formalizzati per i team centrali per soddisfare le esigenze tecniche. Le soluzioni diventano più ampie, risolvendo le sfide comuni tra i team, anche se l'attenzione rimane a breve termine. Il ritorno sugli investimenti viene misurato in base agli incrementi della velocità di consegna.
- Gestita (Scalabile - Come prodotto): Si verifica un cambiamento culturale, per cui gli sviluppatori vengono considerati come clienti e la leadership enfatizza l'empatia e un approccio guidato dal prodotto. I team della piattaforma operano come team del prodotto e il personale è costituito da sviluppatori, responsabili dei prodotti ed esperti dell'esperienza utente. La gestione dell'ambito è allineata alle roadmap dei prodotti, esaminate in collaborazione con i team di progettazione per soddisfare le esigenze a livello di organizzazione. Il ritorno sugli investimenti viene valutato attraverso una maggiore soddisfazione degli sviluppatori, riflettendo miglioramenti continui e l'allineamento alle esigenze degli utenti.
- Ottimizzazione (Ecosistema abilitato): L'investimento è incentrato sull'innovazione, mantenendo la rilevanza della piattaforma grazie a contributi incoraggiati in tutta l'organizzazione. I team della piattaforma introducono funzionalità avanzate, ad esempio miglioramenti della sicurezza e delle prestazioni, consentendo ai team del prodotto di creare senza basarsi su un backlog centralizzato. I budget si estendono oltre i team centrali, con finanziamenti disponibili in tutta l'organizzazione. La gestione dell'ambito enfatizza l'abilitazione di una condivisione rapida delle informazioni a livello di organizzazione. Il ritorno sugli investimenti viene misurato attraverso miglioramenti continui nella soddisfazione degli sviluppatori.
Adozione
La funzionalità Adozione è incentrata sul modo in cui gli utenti individuano e usano le soluzioni di ingegneria delle piattaforme e le rispettive offerte, come indicato da individuazione, selezione e utilizzo di servizi, strumenti e tecnologie. Man mano che le organizzazioni maturano, l'approccio all'adozione passa dall'uso informale e sporadico a un modello più strutturato e partecipato in cui gli utenti interagiscono attivamente con la piattaforma e contribuiscono alla sua evoluzione. Questo progresso riflette il modo in cui le procedure di individuazione, processo decisionale e utilizzo degli utenti si evolvono nel tempo, dall'individuazione informale iniziale alla piena partecipazione allo sviluppo della piattaforma.
- Iniziale (Informale): L'adozione non è uniforme, con team che migliorano in modo indipendente i processi senza coordinamento a livello di organizzazione. Gli strumenti esterni sono spesso preferiti rispetto a quelli interni. Le piattaforme vengono individuate in modo informale, principalmente attraverso passaparola o incontri casuali, con team di progettazione che selezionano i servizi in base alle proprie esigenze specifiche. Ogni team mantiene script e strumenti personalizzati in base ai propri requisiti specifici.
- Ripetibile (Obbligatoria): L'organizzazione impone l'uso di piattaforme condivise, ma le funzionalità sono limitate ai casi d'uso comuni e ciò rende difficile soddisfare requisiti insoliti. L'individuazione degli utenti si basa sulle indicazioni del team della piattaforma, spesso tramite la documentazione o le direttive interne. È possibile che i team selezionino i servizi imposti tramite discussioni informali con il team della piattaforma. Nonostante i processi vengano creati in base agli standard della piattaforma, i team potrebbero non adottarli completamente o non essere soddisfatti dei risultati.
- Definita (Annunciata): Le funzionalità della piattaforma vengono promosse attivamente, in linea con le esigenze del team. Il team della piattaforma collabora con i team di progettazione per offrire servizi di alta qualità che riducono il sovraccarico operativo. Alcuni team potrebbero tuttavia riscontrare comunque un basso ritorno sugli investimenti a causa della dipendenza da pratiche obsolete e debito tecnico. I team individuano le funzionalità tramite direttive relative ai casi d'uso tipici e il team della piattaforma incoraggia l'utilizzo tramite la collaborazione. Anche la promozione per l'uso della piattaforma è informale e avviene tramite i rappresentanti del team.
- Gestita (Basata su valori): I team del prodotto riconoscono e scelgono le funzionalità della piattaforma per il chiaro valore fornito nel ridurre il carico cognitivo e nell'offrire servizi di alta qualità. Le piattaforme sono supportate da documentazione completa, interfacce ergonomiche ed esperienza utente self-service per il provisioning rapido. I team preferiscono ora piattaforme interne rispetto a creare personalmente soluzioni o affidarsi a provider esterni. L'individuazione e il processo decisionale sono semplificati, con team che usano modelli, forum e documentazione per supportare completamente l'adozione della piattaforma.
- Ottimizzazione (Partecipata): I team del prodotto contribuiscono attivamente a migliorare le funzionalità della piattaforma suggerendo nuove funzionalità e correzioni. Sono disponibili processi per consentire agli utenti di identificare i requisiti e collaborare ai contributi. I sostenitori e i rappresentanti degli sviluppatori promuovono una community interna, estendendo la proprietà della piattaforma ai collaboratori. I tecnici della piattaforma collaborano strettamente con i team del prodotto per comprendere le esigenze e suggerire nuove funzionalità, consentendo agli utenti di inviare richieste pull e fornire recensioni.
Gestione
Man mano che la funzionalità Governance si evolve, si concentra sul garantire agli utenti l'accesso alle risorse e alle funzionalità necessarie, gestendo al tempo stesso i costi, i dati e la proprietà intellettuale. Questo progresso viene valutato in base a diverse categorie, tra cui la definizione di criteri e framework, l'implementazione di criteri, il monitoraggio e la mitigazione della conformità e la gestione dell'accesso. La governance si evolve da processi manuali e reattivi a un sistema predittivo integrato che bilancia il controllo centralizzato con la gestione adattiva per esigenze in continua evoluzione.
- Iniziale (Indipendente): La governance è manuale, basata sul controllo centralizzato e sulla selezione delle informazioni, che ostacola la scalabilità. Gli sviluppatori e i team di sicurezza lavorano in modo indipendente, rispondendo in modo reattivo alle violazioni dei criteri. La conformità viene mantenuta tramite standard minimi, con misure di sicurezza che vengono spesso aggiunte come considerazioni successive. Le autorizzazioni di accesso vengono concesse in base alle esigenze immediate, senza un processo standardizzato.
- Ripetibile (Documentata): L'organizzazione inizia a documentare e condividere i criteri, che rimangono tuttavia applicati in modo incoerente e rudimentale. Vengono introdotti strumenti di governance come i sistemi di creazione di ticket per gestire le revisioni dei criteri, ma il processo rimane manuale e lento. I processi di controllo vengono stabiliti ma sono ancora reattivi. Alcuni ruoli e autorizzazioni sono standardizzati, ma l'applicazione rimane irregolare.
- Definita (Standardizzata): La governance diventa centralizzata e standardizzata per migliorare la coerenza e l'efficienza in tutti i team. I criteri sono documentati e gestiti centralmente, con un certo grado di automazione nel processo di implementazione. Gli standard di governance chiave vengono mantenuti tramite il controllo regolare e il controllo degli accessi è automatizzato con un sistema di controllo degli accessi in base al ruolo formale, anche se i team di sviluppo hanno ancora un controllo limitato sulle modifiche ai criteri.
- Gestita (Integrata): La sicurezza e la conformità sono perfettamente integrate nei flussi di lavoro e l'automazione garantisce che i criteri vengano applicati in modo coerente tra sistemi e team. Il monitoraggio in tempo reale e l'analisi avanzata consentono di rilevare e prevenire lacune nella governance. I criteri sono incorporati nelle pipeline CI/CD e la gestione degli accessi è governata da principi di privilegi minimi con revisioni automatizzate, garantendo un approccio più proattivo e integrato alla governance.
- Ottimizzazione (Predittiva): La governance diventa dinamica e contestualizzata, rispondendo alle condizioni mutevoli e ottimizzando il controllo di accesso. L'analisi predittiva consente di identificare potenziali rischi prima che si verifichino, abilitando la mitigazione proattiva. I criteri vengono continuamente perfezionati usando l'analisi avanzata e il controllo di accesso si adatta in modo dinamico in base a fattori in tempo reale, ad esempio la posizione dell'utente e l'ora di accesso, garantendo la conformità e abilitando al tempo stesso flussi di lavoro personalizzati.
Provisioning e gestione
La funzionalità Provisioning e gestione è incentrata sul modo in cui gli utenti creano, distribuiscono e gestiscono le risorse. Il processo si evolve da operazioni manuali e isolate a un sistema adattivo e automatizzato che bilancia la flessibilità con la governance, assicurando che il provisioning delle risorse venga effettuato in modo efficiente rispettando i requisiti di conformità. Questo progresso è costituito da diverse fasi, suddivise in categorie tramite la definizione dei processi di provisioning, la risposta e la gestione delle richieste e il monitoraggio dell'allocazione delle risorse.
- Iniziale (Manuale): Gli sviluppatori configurano manualmente l'infrastruttura in base alle indicazioni dei team IT o dell'architettura, causando incoerenze e ritardi. Senza processi standardizzati, le richieste vengono esaminate manualmente, aumentando il rischio di errori. Questo approccio diventa insostenibile man mano che la domanda cresce, con operazioni isolate che creano inefficienze.
- Ripetibile (Coordinata): L'organizzazione inizia a centralizzare i processi di provisioning usando i sistemi di creazione di ticket per gestire le richieste di infrastruttura. Benché le approvazioni manuali siano ancora necessarie, alcuni errori vengono ridotti, ma i colli di bottiglia rimangono. I team iniziano a usare gli strumenti standard per il monitoraggio delle risorse, anche se la visualizzazione rimane isolata e specifica per il progetto.
- Definita (Percorso definito): I processi di provisioning vengono formalizzati nell'organizzazione usando IaC (Infrastructure as Code), in modo da standardizzare modelli e strumenti. Le richieste vengono gestite tramite flussi di lavoro strutturati, anche se il team della piattaforma potrebbe faticare a gestire un aumento della domanda. I dashboard centralizzati consentono di monitorare l'allocazione delle risorse, offrendo informazioni dettagliate migliori sulle prestazioni.
- Gestita (Automatizzata): Il provisioning diventa automatizzato e integrato nelle pipeline CI/CD, riducendo al minimo il lavoro manuale e garantendo distribuzioni coerenti. I controlli di governance e conformità vengono incorporati nei flussi di lavoro. Le funzionalità self-service automatizzate consentono agli utenti di effettuare il provisioning delle risorse all'interno di parametri controllati. Il ridimensionamento è automatizzato in base ai modelli di utilizzo per ottimizzare le prestazioni.
- Ottimizzazione (Adattiva): Il provisioning diventa adattivo, usando sistemi intelligenti per anticipare le esigenze dell'infrastruttura in tempo reale. Questo approccio garantisce un'allocazione efficiente delle risorse, mantenendo al tempo stesso la governance e la conformità. I sistemi gestiscono in modo proattivo le richieste, bilanciando la flessibilità con la governance, mentre le prestazioni e l'efficienza dei costi sono ottimizzate tramite l'analisi predittiva.
Interfacce
Nella funzionalità Interfacce la considerazione principale è il modo in cui gli utenti interagiscono e utilizzano i servizi e i prodotti della piattaforma. I progressi si concentrano sulla definizione degli standard, sull'aumento dell'autonomia degli utenti e sull'integrazione senza problemi delle funzionalità della piattaforma nei flussi di lavoro esistenti. L'approccio si evolve da processi manuali incoerenti a un sistema self-service integrato che migliora l'esperienza utente e l'efficienza operativa.
- Iniziale (Processi personalizzati): Gli utenti interagiscono con la piattaforma tramite vari processi personalizzati non coerenti che rispondono alle esigenze immediate, ma sono privi di standardizzazione. I tecnici configurano in modo indipendente gli ambienti consultando i colleghi o affidandosi a procedure personali e selezionano strumenti e processi per la diagnosi del comportamento dell'applicazione senza alcuna linea guida stabilita. La condivisione delle conoscenze è informale e i servizi di provisioning richiedono spesso un supporto approfondito dai provider a causa della mancanza di processi formalizzati, che limita la scalabilità e l'efficienza.
- Ripetibile (Standard locali): I tecnici e i team iniziano a definire in modo informale gli standard per migliorare la condivisione delle conoscenze, anche se la coerenza rimane una sfida a causa della dipendenza dall'impegno individuale. Alcuni team possono usare la documentazione o i contenitori per definire i processi di configurazione, ma queste procedure divergono nel tempo, richiedendo sforzi per la risoluzione delle differenze. La diagnosi del comportamento dell'applicazione diventa più standardizzata all'interno dei team, con una certa dipendenza dai team di DevOps o dai team IT per l'accesso alle risorse distribuite. Anche se emergono standard locali, rimangono definiti approssimativamente e non coerenti tra i team.
- Definita (Strumenti standard): Le interfacce diventano più coerenti grazie all'introduzione di strumenti standardizzati e procedure documentate. I team centrali gestiscono modelli e documentazione, con i cosiddetti "percorsi predefiniti" o "golden path" che guidano il modo in cui deve essere effettuato il provisioning e devono essere osservate le funzionalità. Questi strumenti e processi soddisfano esigenze organizzative ampie, anche se il supporto degli esperti è ancora spesso necessario. I team possono modificare i modelli, ma le modifiche non sono sempre integrate centralmente, il che può causare inefficienze nel mantenere la coerenza. La diagnosi del comportamento dell'applicazione segue procedure standardizzate per l'accesso e l'analisi delle risorse distribuite, garantendo una maggiore coerenza tra i team.
- Gestita (Soluzioni self-service): La piattaforma consente una maggiore autonomia degli utenti fornendo soluzioni self-service con supporto minimo del responsabile. Gli utenti hanno accesso a interfacce coerenti e facili da usare che consentono loro di individuare e modificare modelli, creando un ambiente incentrato sugli utenti che migliora l'usabilità. Gli strumenti per la diagnosi del comportamento dell'applicazione e l'osservazione delle risorse vengono resi disponibili su richiesta tramite la piattaforma, assicurando agli utenti le risorse necessarie senza una forte dipendenza da team esterni. La condivisione delle informazioni è facilitata tramite l'individuazione e la modifica dei modelli, che aumenta il valore delle funzionalità della piattaforma.
- Ottimizzazione (Servizi integrati): Le funzionalità della piattaforma sono perfettamente integrate negli strumenti e nei processi che i team usano già, ad esempio l'interfaccia della riga di comando o gli IDE, e costituiscono quindi una parte naturale dei flussi di lavoro degli utenti. Il provisioning di alcune funzionalità viene effettuato automaticamente in base alle esigenze degli utenti e la piattaforma offre blocchi predefiniti flessibili per casi d'uso di livello superiore che potrebbero richiedere una personalizzazione più approfondita. I team della piattaforma determinano continuamente quali funzionalità sono più efficaci, guidando ulteriori investimenti per ottimizzare le offerte di piattaforma. La piattaforma configura automaticamente l'osservabilità per le applicazioni distribuite, offrendo l'accesso in tempo reale ai dati di diagnostica e semplificando il processo di monitoraggio e gestione del comportamento dell'applicazione.
Misurazioni e feedback
La funzionalità Misurazioni e feedback comporta la raccolta, l'analisi e l'incorporazione delle metriche e dei feedback per valutare il successo delle pratiche di ingegneria delle piattaforme. La sua maturità è indicata dal passaggio da metodi ad hoc e informali a una cultura proattiva basata sui dati in cui feedback e informazioni dettagliate sono integrati in processi di miglioramento continuo, guidando le decisioni strategiche e lo sviluppo della piattaforma.
- Iniziale (Ad hoc): Nella fase iniziale i processi di misurazione e feedback sono incoerenti e frammentati. Le metriche vengono raccolte senza un chiaro allineamento agli obiettivi dell'organizzazione, generando quindi dati incompleti e inaffidabili. Il feedback viene raccolto in modo informale ed è spesso aneddotico, con un impegno minimo da parte degli stakeholder. Di conseguenza, le decisioni vengono prese in base a informazioni limitate e la misurazione del vero ritorno sugli investimenti delle procedure di progettazione della piattaforma risulta difficile. La documentazione del feedback e dei risultati è minima e le informazioni vengono acquisite o condivise raramente.
- Ripetibile (Processi strutturati): Vengono stabiliti meccanismi di feedback di base, ad esempio sondaggi o forum, per acquisire esperienze utente in modo più sistematico, ma questi processi variano ancora in base ai team. La misurazione del successo è spesso incentrata sulle metriche basate sull'attività, ad esempio distribuzioni o tempistiche, fornendo alcune informazioni dettagliate sulle prestazioni, ma senza una prospettiva più ampia basata sui risultati. Il feedback rimane informale e dal basso verso l'alto, anche se inizia a influenzare la pianificazione. C'è qualche sforzo per coinvolgere gli stakeholder, ma è ancora limitato e la documentazione iniziale dei processi e dei feedback viene creata ma non è completa o costantemente usata.
- Definita (Coerente): La raccolta di feedback diventa più formalizzata e standardizzata, consentendo di ottenere informazioni più approfondite sulle esigenze degli utenti e sulle metriche chiave. Le metriche si orientano a misurazioni basate sui risultati, ad esempio la produttività degli sviluppatori, anche se collegarle alle prestazioni finanziarie rimane una sfida. L'analisi dei feedback è sistematica e usa metodi qualitativi e quantitativi e vengono adottate metriche standard come DORA ("DevOps Research and Assessment" è un set di metriche che misurano le prestazioni di distribuzione del software, tra cui lead time, frequenza di distribuzione, tempo medio per il ripristino e frequenza di errore delle modifiche) o SPACE ("Satisfaction and well-being, Performance, Activity, Communication and collaboration, and Efficiency" è un framework usato per misurare la produttività degli sviluppatori in queste cinque dimensioni). Le sessioni di revisione regolari con team interfunzionali garantiscono un coinvolgimento attivo degli stakeholder. La documentazione completa dei processi di feedback, dei risultati e delle analisi di fine progetto viene gestita e condivisa tra i team.
- Gestita (Informazioni dettagliate): In questa fase i meccanismi di feedback e i framework di misurazione sono affidabili e incentrati sui risultati aziendali strategici. Le informazioni dettagliate basate sui dati guidano le operazioni della piattaforma e il feedback è integrato nelle roadmap della piattaforma, favorendo miglioramenti continui. L'analisi avanzata viene usata per valutare l'impatto della piattaforma sui risultati aziendali, ad esempio la crescita dei ricavi, e il feedback è correlato alle metriche delle prestazioni per identificare le aree chiave per il miglioramento strategico. Gli stakeholder dell'organizzazione sono profondamente coinvolti nel processo di feedback, con una collaborazione strutturata per evitare silo. La documentazione dinamica in tempo reale riflette il feedback continuo e le analisi di fine progetto, accessibili a tutti gli stakeholder.
- Ottimizzazione (Proattiva): I processi di feedback e misurazione sono strettamente integrati nella cultura dell'organizzazione, creando un approccio proattivo per anticipare e adattarsi alle sfide e alle opportunità future. L'analisi predittiva e le metriche avanzate vengono usate per prevedere le esigenze e le opportunità future, consentendo alla piattaforma di evolversi continuamente in risposta a condizioni mutevoli. Il feedback è completamente integrato in un ciclo di miglioramento continuo e viene stabilita una cultura del feedback in tutti i livelli dell'organizzazione. La documentazione dinamica e in tempo reale riflette il feedback continuo e viene aggiornata continuamente, assicurando che le analisi di fine progetto siano condivise e accessibili a tutti gli stakeholder.