In linea di massima, stante l’insostituibile ruolo dell’It nell’abilitare e sostenere l’attività di una qualsiasi organizzazione, sarebbe augurabile che il tasso di sviluppo della tecnologia informatica fosse almeno allineato a quello dei piani di business se non superiore, per poter avere verso questi ultimi una funzione propositiva e trainante. Ma sappiamo bene che non è così. L’It si trova quasi sempre in ritardo. Costretta a una rincorsa continua per raggiungere, nello sviluppo e messa in linea delle soluzioni che le vengono chieste dal business, livelli di agilità e di efficienza che vengono continuamente alzati.
Circa un anno fa Forrester Consulting ha condotto, su incarico di Hp, un’approfondita indagine su oltre 200 Cio e decisori It appartenenti a grandi imprese distribuite sia nella geografia (metà in Nord America e metà in Europa, Asia e Australia), sia nei settori di attività. Unici requisiti: avere un consistente budget It (oltre 10 milioni di dollari all’anno) e un parco applicativo con una forte presenza di soluzioni sviluppate ad hoc o largamente customizzate. Scopo dell’indagine: conoscere i piani e le attività in atto per modernizzare le piattaforme tecnologiche e i processi e strumenti di sviluppo e di gestione del ciclo di vita delle applicazioni (SDLC, Software Development & Life Cycle), in modo d’avere l’agilità e l’efficienza richieste. Di quanto emerso da questo studio diamo una sintesi ai lettori.
La situazione di rincorsa di cui si è detto nasce dal fatto che la funzione It, dopo più di quarant’anni passati a costruire, ampliare, riparare e adattare alle varie tendenze della tecnologia le soluzioni sulle quali poggia il business (e che poi sono la sua stessa ragion d’essere) si è costruita una gabbia a guardia della quale sta, come nell’Inferno dantesco, un mostro a tre teste. Che sono:
1) Piattaforme tecnologiche obsolete, complicate e costose da gestire. Un Data center dall’infrastruttura troppo eterogenea drena risorse economiche ed umane ad un livello tale da avere, secondo l’80% degli intervistati, un impatto critico o quanto meno significativo sulla produttività dello sviluppo applicativo (vedi figura 1 – nella numerazione delle figure di questo articolo si fa sempre riferimento a quella dello studio scaricabile).
Figura 1 – Complex, cumbersome development processes smother productivity
(cliccare sull'immagine per visualizzarla correttamente)
2) Applicazioni invecchiate e non più rispondenti ai bisogni del business. Al pari delle infrastrutture, le applicazioni basate su vecchie tecnologie e tenute in vita a forza d’interventi per risolvere problemi contingenti sono un peso per l’It e andrebbero sostituite quanto prima. Così come, ovviamente, quelle divenute inadeguate ai bisogni del business (vedi figura 2).
Figura 2 – Obsolete technology and applications don't meet business requirement
(cliccare sull'immagine per visualizzarla correttamente)
Ma eliminare le vecchie applicazioni non è facile, e non solo per problemi tecnici. Spesso un software resta in vita solo perché gli utenti, pur conoscendone i limiti, non se ne vogliono staccare o, semplicemente, perché non si ha il tempo di pensare allo sviluppo del nuovo (vedi figura 3).
Figura 3 – Obsolete application aren't retired often enough, bloating the portfolio
(cliccare sull'immagine per visualizzarla correttamente)
3) Processi e strumenti di SDLC superati. La produttività nello sviluppare e gestire il ciclo di vita delle applicazioni non potrà mai crescere in modo decisivo senza una radicale modernizzazione dei processi e degli strumenti correlati. C’è di buono che sviluppo e lifecycle management sono obiettivi primari per tutte le realtà indagate e il 51% ha in atto delle iniziative del genere.
Nel complesso, lo studio Forrester evidenzia che il bisogno di consolidare e razionalizzare il parco applicativo è ben sentito dai responsabili It. Quasi tutti (91%) sono d’accordo sul fatto che ciò porterebbe grandi vantaggi e quasi la metà ritiene assolutamente necessario prevedere nei progetti a budget le risorse occorrenti al ritiro delle applicazioni che questi vanno a sostituire. Ma sebbene il 37% ritenga ugualmente necessario che la dismissione delle applicazioni vada prevista e condotta seguendo un processo formalizzato, in realtà solo un terzo ritira e sostituisce gli applicativi secondo piani e tempi precisi.
Modernizzare e consolidare le applicazioni business è comunque, e non da oggi, tra le priorità dei Cio: il 69% degli intervistati ha allocato allo scopo più di un quarto del budget It e il 30% vi destina oltre la metà (vedi figura 6).
Figura 6 – Modernization plans as a percentage of IT budget
(cliccare sull'immagine per visualizzarla correttamente)
Gli obiettivi finali di questi ingenti sforzi innovativi sono molteplici, ma ridurre i costi, migliorare le funzionalità degli applicativi e, soprattutto, aumentare l’agilità nella produzione del software, sono ai primi posti (vedi figura 7).
Figura 7 – Agility, innovation and cost reduction are driving demand for modernization
(cliccare sull'immagine per visualizzarla correttamente)
Cosa si fa dunque per ottenere tali risultati? Così come le teste del problema, anche le soluzioni messe in atto per superarlo sono molteplici e diverse. In pratica, i responsabili It seguono una strategia bilanciata su più approcci, nessuno dei quali è nettamente prevalente sugli altri. Le attività in atto e/o pianificate puntano ai seguenti obiettivi: migliorare i processi SDLC, compresi quelli di testing; ridurre la dipendenza dalle applicazioni legacy; razionalizzare il portafoglio applicativo; migliorare gli strumenti per il test e la gestione del ciclo di vita del software; ridurre la dipendenza dalle piattaforme legacy; sfruttare le possibilità offerte da diversi modelli di sourcing, incluso ovviamente l’outsourcing. A parte quest’ultima strada, adottata dal 36% degli intervistati, per tutte le altre i livelli di adozione sono, come si è detto, molto vicini tra loro, variando tra il 51% del miglioramento dei processi SDLC e il 47% del rinnovamento delle piattaforme tecnologiche (vedi figura 8).
Figura 8 – Productivity iniziatives focus on SDLC, legacy and rationalization
(cliccare sull'immagine per visualizzarla correttamente)
Interessante notare come tra le attività sui processi SDLC, come si è visto la strada più battuta, l’adozione della metodologia Agile stia portando concreti risultati. L’80% di chi sta usando questo approccio allo sviluppo (che appare più apprezzato e diffuso in Europa che nel resto del mondo) ha rilevato un aumento delle produttività: più del 70% ha guadagnato nella qualità e nel valore delle applicazioni per il business (compreso il time-to-market) e il 65% ha migliorato la struttura dei costi (vedi figura 9).
Figura 9 – Agile adoption yields positive improvement for development
(cliccare sull'immagine per visualizzarla correttamente)
Interessante (anzi “sorprendente”, per Forrester) anche il fatto che il metodo Agile sia applicato non solo allo sviluppo delle nuove applicazioni, ma in una quantità di altri compiti: dalla gestione dei grandi progetti (72% dei casi), all’adozione delle tecnologie Web (67%), sino a lavori prettamente ‘tradizionali’, come la manutenzione e la gestione delle tecnologie mainframe e client-server (vedi figura 11).
Figura 11 – Firms adopt Agile in different ways, across all type of projects
(cliccare sull'immagine per visualizzarla correttamente)
In conclusione, dallo studio si possono estrarre alcune considerazioni sulla necessità e sulle opportunità offerte dall’innovazione degli ambienti di sviluppo e testing applicativo che Forrester sintetizza nelle seguenti “raccomandazioni”: 1) Non si possono gestire le applicazioni del futuro con vecchi strumenti e metodologie superate. E questo è tanto più vero nel momento in cui le imprese devono trarre il meglio di sé per sfruttare l’imminente fase di recupero economico. 2) Bisogna razionalizzare il parco applicativo per eliminare tecnologie superate e applicazioni ridondanti. Altrimenti agilità e innovazione restano un miraggio. 3) Occorre modernizzare tutto il sistema degli strumenti di sviluppo. Si tratta di passare dagli strumenti di prima generazione a set per la gestione integrata dell’intero ciclo di vita delle applicazioni. 4) Le tre facce del problema di cui si è detto all’inizio vanno affrontate con un approccio comprensivo: fluidificazione dei processi (metodo Agile); uso di nuovi tool capaci di sfuttare i nuovi metodi; razionalizzazione della infrastruttura e del parco applicativo; 5) Non dimenticare che se il metodo Agile porta vantaggi concreti, la sua adozione non è affatto banale (il 69% degli intervistati la considera di difficile esecuzione). Va quindi affrontata cercando di conoscerne le difficoltà e chiedendo aiuto se necessario.