Logo ImpresaCity.it

CA Technologies ottimizza il ciclo di vita del software con la virtualizzazione dei servizi

La piattaforma CA Lisa, portata in dote dall'acquisita Itko, consente di ottimizzare lo sviluppo e il testing di applicativi complessi creando infrastrutture e ambienti virtuali in cui progettare e collaudare applicazioni anche per cloud. Uno studio mostra i vantaggi della virtualizzazione dei servizi per le aziende.

Autore: Barbara Torresani

Per stare al passo coi tempi e rimanere competitive sul mercato le aziende devono cercare di sviluppare applicazioni e servizi sempre più innovativi. I team di sviluppo, testing e collaudo si trovano di fronte a sfide sempre più pressanti e complesse, come il fatto di sperimentare il funzionamento del software in condizioni molto vicine a quelle reali al fine di creare un quadro attendibile del comportamento delle applicazioni una volta entrate in  produzione.
Si tratta di un obiettivo difficile da raggiungere a causa dei limiti posti dalle infrastrutture disponibili per le prove, tenendo anche conto che spesso lo sviluppo viene fatto in outsourcing, oppure intervengono terze parti.
Per rispondere a queste sfide nell'ambito dello sviluppo si sta facendo strada la virtualizzazione dei servizi, che si integra con tecnologie e metodologie preesistenti e permette agli sviluppatori di eliminare ostacoli e limitazioni nell'intero ciclo di vita di sviluppo, soprattutto nella fase di  testing. 
CA Technologies è attiva in questo nuovo ambito grazie all'acquisizione dell'azienda texana Itko - un team di 150 dipendenti e clienti di caratura mondiale - che va a colmare un gap sulle filiere di sviluppo test e collaudo.
ca-technologies-ottimizza-il-ciclo-di-vita-del-sof-1.jpgCi introduce al tema Gabriele Provinciali, Senior Principal Consultant di CA Technologies Italia: "La virtualizzazione dei servizi - service virtualization - è una derivazione dell'Application Lifecycle Optimization, nata in tempi recenti  a supporto del più affermato Alm, Application Lifecycle  Management. Si tratta di una disciplina che cambia le modalità con cui le aziende affrontano il ciclo di vita dello sviluppo software. Oggi, infatti, molte aziende esternalizzano e quindi si stanno trasformando da imprese sviluppatrici ad  assemblatrici di software, con necessità di nuovi strumenti".
Si tratta di una nicchia di mercato in cui CA Technologies si distingue grazie alla tecnologia Itko denominata Lisa, dove trovano spazio altri attori quali HP, Ibm e aziende più piccole e focalizzate. 
Per comprendere e spiegare l'utilità di tali strumenti è importante capire come cambiano le attività all'interno delle filiere di sviluppo, test e collaudo.
Per questo CA Technologies ha commissionato uno studio di valutazione alla società di ricerche Coleman Parkes, che ha come perimetro l'Italia, da cui emergono i vantaggi della virtualizzazione dei servizi per il business.
In generale, si può dire che la virtualizzazione dei servizi aiuta le aziende ad accelerare i tempi di sviluppo dei progetti, a migliorare la qualità delle applicazioni e a ridurre i costi complessivi di testing
"In termini metaforici il discorso è molto simile a quello che le aziende stanno affrontando con il paradigma del cloud. Si passa da una logica di possesso a una logica di utilizzo. In questo caso si passa invece da una logica di sviluppo a una logica di sviluppo e assemblaggio. Così come cambiano gli strumenti di comando e controllo per il cloud computing così devono cambiare gli strumenti di comando e controllo per il rilascio del software di produzione", dice Provinciali. 

[tit:I dati salienti della ricerca]
L'indagine condotta di recente in Italia attraverso una serie di interviste a 100 responsabili dello sviluppo di aziende (ma anche di performance e load testing, automazione dei processi) con un fatturato di  oltre 1 miliardo di euro in segmenti di mercato eterogenei.
"L'Application Lifecycle Optimization a livello di mercato mondiale è oggi ad appannaggio soprattutto di banche, assicurazioni e telco; è una disciplina che si applica dove ci sono straficazioni software decennali. Mostrano interesse al tema anche mercati quali utilities, retail e healthcare", afferma Provinciali.
In termini di sviluppo lo studio mostra che il software viene prodotto e testato sempre più in house; solo per il 25% del campione dichiara che queste attività avvengono in outsourcing,  con conseguenze sul carico di lavoro e sulla pressione cui vengono sottoposti i team di sviluppo.
Le aziende internalizzano le attività di sviluppo e testing delle applicazioni per motivi di privacy (lo dice il 75% del campione) e per rispondere più velocemente allo sviluppo di nuovi servizi richiesti dai clienti, come per esempio, applicazioni per il mobile.
Un parametro preso in esame per capire se esiste terreno fertile per ottimizzare il ciclo di vita del software nelle aziende è relativo al numero di software release rilasciate all'anno.
Se in media un team di sviluppo rilascia 6,5 release all'anno, il 45% del campione prevede di effettuare un numero di rilasci ancora più elevato nel 2012 e, addirittura, un terzo del campione pensa di realizzare oltre 10 release l'anno.
Oltre ad aumentare il numero di release, crescono esponenzialmente anche le funzionalità per ogni release, che significa più righe di codice e, di conseguenza, potenzialmente più ore di testing, collaudo e possibilità di anomalie. Per contro diminuisce invece il tempo a disposizione per sviluppare, testare e mettere in produzione le applicazioni: se in media un progetto dura 5 mesi, nel 28% dei casi questi vengono svolti nell'arco di soli tre mesi. 
In generale i  problemi legati al ciclo di sviluppo e testing sono riconducibili a: sistemi non disponibili o inaccessibili per problemi di schedulazione o ritardi nell'implementazione dei progetti; sistemi in cui simulare il comportamento delle applicazioni che non sono all'altezza degli ambienti reali, o troppo complessi - è questo il caso di mainframe - e costosi - per esempio servizi erogati in cloud - da clonare  attraverso i tradizionali approcci basati su hardware. Ne consegue una maggior difficoltà per l'attività di test di nuove applicazioni e un aumento del rischio che il codice rilasciato contenga errori imprevisti o interazioni non pianificate con altri sistemi - il 64% del campione non ha strumenti per comprendere in modo adeguato possibili anomalie, con il rischio di ritardare la chiusura del progetto e avere costi aggiuntivi significativi. 
E le conseguenze sul business si fanno sentire in termini di: perdita di reputazione sul mercato (per il  94% del campione), perdita di clienti (92%), ritardo nell'erogazione di nuovi servizi ai clienti (74%), ridotte funzionalità con ricadute sulle interfacce utente (70%) e aumento delle chiamate dirette al centro assistenza clienti (24%).
"Basta che un anello della catena non sia disponibile per fermare attività produttive che sono fatte da decine di team. L'interruzione di un servizio di integrazione significa mandare fuori uso i test di integrazione di performance, carico... Essendo le applicazioni molto coese tra loro la scomparsa di uno o più moduli funzionali all'interno della catena significa interrompere il lavoro di altri, fermare gli sviluppi. Molte aziende hanno un parco applicativo che è superiore alle 1.000 applicazioni enterprise. Considerando che ci sono dalle 10 o più release all'anno, in pratica ci sono sempre applicazioni in fase di test e collaudo", spiega Provinciali.

[tit:La virtualizzazione dei servizi]
Come vengono in aiuto i servizi virtualizzati, nella fattispecie quelli proposti da CA Technologies con la tecnologia Lisa di derivazione Itko?
Spiega Provinciali: "La service virtualization consente di testare le applicazioni su infrastrutture virtuali, senza dover investire in costose attrezzature hardware e simulando ambienti complessi molto simili a quelli reali, per vedere come si comporterebbero le applicazioni prima della loro messa in produzione, riducendo sensibilmente anomalie e, successivamente, rischi di dowtime e interruzioni di servizio. Si mette una piattaforma che è in grado di apprendere e di rendersi adattiva a seconda delle interazioni che intercorrono tra l'applicazione sotto test e l'ecositema circostante".

ca-technologies-ottimizza-il-ciclo-di-vita-del-sof-2.jpg

E continua: "Lisa ascolta le varie interazioni che sussistono tra le applicazioni che sono sotto test e l'ambiente circostante in modo da apprendere, mimare, virtualizzare i servizi applicativi che sono la controparte dell'applicazione in questione. Non è una semplice registrazione: il sistema si fa più ricco a seconda dell'interazione e ha all'interno della logica aggiuntiva che lo rende virtualmente non distinguibile dai sistemi reali. Lo scopo è quello di produrre servizi virtualizzati in grado di riprodurre stato e comportamento dell'ambiente circostante un'applicazione sotto test, mettendo anche una logica aggiuntiva".
Si cattura l'essenza delle applicazioni circostanti e non si riproduce tutta la logica di business ma quella necessaria per produrre qualità e per poter rendere non distinguibile una  risposta da un sistema virtualizzato rispetto alla risposta da un sistema reale. 
Una volta che il sistema è stato testato, dà la possibilità di escludere in parte o totalmente i sistemi reali in modo da poter fare continuare lo sviluppo e il test di un'applicazione esclusivamente con questa tipologia di servizi virtualizzati.
La facilità di creazione è elemento distintivo di questi servizi: "La facilità con cui si produce un nuovo sistema virtualizzato in realtà è molto simile a quanto si può trovare nelle tecnologie 'agili', dice Provinciali. E ancora: facilità di creazione attraverso authoring tra sistemi che ancora non sono approntati e disponibili ma soprattutto allineamento rispetto alle variazioni che possono essere indotte in un sistema.  

Vantaggi e benefici
Secondo lo studio la possibilità di rimuovere le limitazioni presenti lungo il ciclo di sviluppo può portare benefici significativi quali: riduzione dei tempi di rilascio sensibilmente inferiore, riduzione dei costi di infrastruttura, che significa riduzione di Mips e della dipendenza dai sistemi di back end, aumento della la disponibilità dei sistemi, parellelizzazione delle risorse in sviluppo e test, automazione consistente di software e dati di test...
"Lisa è dotata di una certa intelligenza a livello di piattoforma che le consente di gestire dati di test automatizzati e soprattutto di gestirli a livello applicativo. L'automazione dal nostro punto di vista è la chiave che accorcia tempi e costi e soprattutto elimina errori", enfatizza Provinciali..."Con Lisa si riesce a rispettare e a rendere  trasparente l'utilizzo di altri strumenti di 'enpowerement' che sono a disposizione degli sviluppatori così come si rispettano le attività relative alla definizione dei processi e alla govermance, senza toccare le risorse in produzione e supporto...
"Molte grandi banche italiane si sono accorte dei vantaggi della service virtualization. L'interesse è alto anche in banche anche di piccola entità non locali, con granparte dei sistemi in outsourcing che vogliono ridurre i costi di infrastruttura". 

[tit:La piattaforma Ca Lisa]
CA Lisa, che affianca e completa i prodotti di CA Technologies sul fronte dello sviluppo del software, consente di ottimizzare lo sviluppo e il testing di applicativi complessi e compositi grazie a ingredienti come la virtualizzazione dei servizi e il supporto delle cosiddette Dev-Test Clouds - le infrastrutture virtuali finalizzare allo sviluppo e testing - e all'integrazione continua.
Tra le funzionalità di Lisa rientrano la virtualizzazione dei servizi, l'automazione dei test,  la validazione dei comportamenti attesi tra processi e tra componenti di dettaglio in maniera continuativa  la capacità di identificare anomalie.
Pubblicato il: 27/07/2012

Tag:

Cosa pensi di questa notizia?

Speciali

speciali

F-Secure: Download PDF

speciali

HPE - Le tecnologie, le soluzioni