Il Debito Tecnico con le Dashboard di CAST
Come è ormai noto a tutti, il debito tecnico è una metafora introdotta nel 1992 con la quale Ward Cunningham ha voluto delineare i contorni legati alle correzioni del software durante le fasi di sviluppo e di refactoring di quest’ultimo.
La genesi del debito tecnico è riconducibile a processi, competenze e risorse che solitamente non sono adeguati al raggiungimento degli obiettivi prefissati. La mancanza di tempo e di budget, le priorità per la consegna rapida del software, la carenza di competenze, l’assenza di UAT e di documentazione, l’insufficienza di processi definiti e strutturati, il ridotto numero di risorse disponibili, non consentono di pianificare al meglio i tempi e le attività di sviluppo e manutenzione del software.
Se uniamo quanto citato finora alle esigenze di business di sviluppo di software per nuovi prodotti e servizi, all’implementazione di infrastrutture di sviluppo Agile per affrontare processi di Digital Transformation, Cloud Migration o Application Modernization, ecco che diventa inevitabile introdurre, volontariamente o involontariamente, debito tecnico sul software.
CAST è in grado di calcolare il debito tecnico seguendo le specifiche definite dal Object Management Group® (OMG®), un consorzio che ha lo scopo di definire lo standard per la misura automatica del debito tecnico come illustrato al link https://www.omg.org/spec/ATDM/About-ATDM/.
In questa ambito, CISQ ha sviluppato una specifica per il calcolo del debito tecnico che viene utilizzata durante le misurazioni di CAST con l’installazione di estensioni out-of-the-box; questa specifica si basa su quattro standard OMG che CISQ (https://www.it-cisq.org/standards/code-quality-standards) ha sviluppato per misurare la qualità strutturale del software, cioè:
- Automated Source Code Reliability Measure (ASCRM)
- Automated Source Code Security Measure (ASCSM)
- Automated Source Code Performance Efficiency Measure (ASCPEM)
- Automated Source Code Maintainability Measure (ASCMM)
Con l’estensione “OMG Automated or Contextual Technical Debt Measure”, CAST mette a disposizione degli utenti la possibilità di calcolare il debito tecnico secondo la nomeclatura CTDM (Contextual Technical Debt Measure) riconosciuta da OMG per il calcolo automatico del debito tecnico; in questo modo gli utenti hanno la possibilità di personalizzare, secondo le esigenze aziendali, i parametri di default dell’effort per le remediation delle violazioni.
I risultati delle analisi possono essere collezionati e resi disponibili per la consumption attraverso le Dashboad CAST, la Management e la Engineering. Le view ISO-5055 e OMG Technical Debt della Management Dashboard permettono di avere overview e trend sia a livello dell'intero portfolio applicativo che della singola applicazione.
Nella Management Dashboard è possibile selezionate il modello di debito tecnico di riferimento, ad esempio ISO-5055, CISQ o OMG Technical Debt, verificandone i valori secondo la differente categorizzazione delle rule di appartenenza.
Dalla Management Dashboard è possibile passare direttamente alla Engineering Dashboard per un drill down di dettaglio attraverso il quale verificare direttamente le variazioni del debito tecnico per ogni singola misurazione, secondo le violazioni aggiunte o rimosse nel modello di rischio utilizzato durante l’analisi dell’applicazione.
Partendo dal tile del Technical Debt è possibile selezionare il modello di riferimento di debito tecnico (ISO-5055, CISQ o OMG Technical Debt) e navigare la Engineering Dashboard seguendo l’aggregazione delle violazioni utilizzata per il calcolo del debito tecnico, Business Criteria, Technical Criteria, Rules, Objects, ed atterrare al dettaglio della violazione specifica all’interno dell’oggetto.
In questo modo è possibile intervenire puntualmente sulle violazioni che rappresentano le principali anomalie che contribuiscono alla creazione di debito tecnico.
Le Dashboard di Management e Engineering di CAST, insieme alle altre componenti della suite di Software Intelligence di CAST, rappresentano un’opportunità per misurare e monitorare il debito tecnico del portfolio applicativo, contribuendo a identificare le principali azioni di remediation da intraprendere.
Comments: