L'IDP non è solo un singolo strumento, è un sistema di capacità che lavorano insieme per rispondere alle esigenze specifiche degli sviluppatori e creare un'esperienza più fluida. Le implementazioni possono variare, ma ecco i componenti più comuni.
Portale dello sviluppatore: spesso definito come portale interno dello sviluppatore, rappresenta l'interfaccia principale con cui gli sviluppatori interagiscono. Spesso costruito con strumenti open source come Backstage, fornisce una dashboard, un catalogo di servizi, documentazione, template, plugin e workflow. È il pannello di controllo self-service per sviluppatori della piattaforma.
Catalogo dei servizi: il catalogo dei servizi è un inventario strutturato di tutti i servizi, i sistemi e le risorse. Definisce la proprietà, le dipendenze e fornisce altri metadati in modo che tutti sappiano chi possiede cosa e come i servizi interagiscono tra loro.
Scaffolding e modelli: si tratta di blueprint predefiniti per la creazione di nuovi servizi che consentono agli utenti di creare rapidamente repository GitHub, configurare pipeline CI/CD, applicare configurazioni standard, integrare la registrazione e il monitoraggio e altro ancora. Le pipeline sono preconfigurate e riutilizzabili con best practice incorporate, così gli sviluppatori non devono progettarle da zero.
Provisioning dell'infrastruttura: questo livello gestisce la creazione e la gestione di ambienti, risorse e workload di applicazione attraverso architetture ibride o multi-cloud di vari provider cloud, spesso utilizzando i principi GitOps per l'automazione.
Gestione dell'ambiente: in molte organizzazioni, gli ambienti di sviluppo, staging e produzione si differenziano nel tempo a causa di differenze di configurazione, dipendenze non corrispondenti e dati incoerenti. Un IDP risolve questo problema incoraggiando la parità ambientale, eliminando le ambiguità e rendendo gli ambienti più prevedibili.
Observability: la visibilità è integrata nel comportamento del sistema per impostazione predefinita, fornendo insight in tempo reale tra cui log, metriche e tracce.
Segreti e gestione della configurazione: chiavi API , credenziali e variabili dell'ambiente sono gestite in modo sicuro, aiutando a garantire che i segreti non vengano mai codificati rigidamente e che l'accesso sia controllato e verificabile.
Governance: le politiche di sicurezza e conformità vengono applicate automaticamente e i controlli di governance, come le scorecard e il controllo degli accessi basato sui ruoli (RBAC), definiscono chi può effettuare l'implementazione, chi può accedere a cosa e come vengono approvati i flussi di lavoro.
Documentazione: anziché essere frammentata, la documentazione è integrata nei servizi ed è facilmente reperibile tramite il portale.