Un DevOps di Qualità

By on
 

DevOps, una combinazione di sviluppo (Dev) e operazioni (Ops), è l'unione di persone, processi e tecnologia per offrire continuamente valore ai clienti. Una definizione alla quale oggi fanno riferimento tutte le software factory, sia per progetti nuovi che per progetti che necessitano di reingegnerizzazione.

Con DevOps è possibile controllare il ciclo di vita della applicazioni, pianificando tutte le fasi, dalla definizione architetturale allo sviluppo del codice, passando per gli UAT (User Acceptance Testing) e finalizzando il rilascio e la messa in produzione.

La aziende che adottano una cultura DevOps devono anche attivarsi per predisporre un ambiente di sviluppo che consenta rapidamente il lavoro in modalità Agile ottimizzando le risorse impegnate.

I team di sviluppo sono quindi coinvolti, per le aree di loro competenza, a frequenti cicli di rilascio di software che semplificano le tempistiche di pianificazione e la gestione dei rischi, garantendo affidabilità delle applicazioni sviluppate.

In questo contesto, la piattaforma CAST Imaging si inserisce perfettamente all’interno di DevOps per la verifica della qualità del codice sviluppato. L’integrazione di CAST DevOps utilizza un plug-in di pipeline con tasks che consentono di automatizzare gli Onboarding nelle Dashboard di CAST delle applicazioni rilasciate.

Modello Gate CAST

Il task di CAST AIP Console appCreation prende in carico il codice dell’applicazione per la creazione di nuove applicazioni per l’Onboarding in CAST.

Il task di CAST AIP Console Automation Task si occupa invece di innescare la creazione e l’analisi del codice rilasciato verificando se è una Baseline di una prima versione di codice o un Rescan del codice di un’applicazione già analizzate precedentemente da CAST. Le misurazioni di CAST fanno riferimento a regole di qualità del codice riconducibili a debolezze e vulnerabilità del codice secondo gli standard CISQ, OMG, OWASP, CWE, ISO 5055. Il modello di Risk management rappresenta infatti il trigger utilizzato per la delivery delle applicazioni che le aziende sviluppano in house o tramite fornitori esterni.

 

Il task di CAST AIP Quality Gate può essere attivato per una validazione di KPI di Health Measure dell’applicazione (Security, Robustness, Changeability, Efficiency, Transferability) o di Risk Model con le violazioni rilevate per le metriche definite come Golden e Silver Rule. Questi criteri possono definire step successivi Go/NoGo nel processo CD/CI. In questo modo il rilascio di nuovo può essere immediatamente verificato e autorizzato per un passaggio da un ambiente di Develop a Test e Prod. Il risultato finale è un codice scritto e rilasciato immune da violazioni critiche, garantendo la stabilità delle applicazioni, la sicurezza dalle vulnerabilità, efficienza e sostenibilità delle risorse.

Il task di CAST Bug Automation Tool consente inoltre di creare tickets per le violazioni che sono state rilevate durante l’analisi del codice secondo le metriche definite nel Metamodello di analisi di CAST. Le informazioni disponibili possono essere indirizzate agli sviluppatori interessati con report specifici o con link di accesso diretto alla Engineering Dashboard di CAST.

La definizione di un Quality Gate unito a piani di remediation finalizzati alla riduzione/eliminazione delle violazioni critiche nel codice rilasciato, sono alcuni dei principali benefici derivanti dall’integrazione di CAST con DevOps.

La qualità del codice non passa solo da un buon processo di DevOps ma deve essere affinata da strumenti in grado di misurarne la qualità; ecco quindi che è importante per le aziende integrare CAST nei processi di DevOps un codice sicuro e affidabile con il minore impegno di risorse.