Il mercato dei device mobili sta rapidamente cambiando ed evolvendo; centinaia di nuovi dispositivi vengono introdotti ogni anno. Nell’era della mobility, siamo di fronte a sistemi operativi molteplici, che cambiano frequentemente (addirittura mensilmente, con l’introduzione di nuovi device), oltre al fatto che abbiamo vari tipi di connessioni network. Dalla prospettiva dello sviluppo applicativo, del testing in particolare, come può l’It cavalcare l’onda della mobility non perdendo in qualità e performance dei servizi erogati, soprattutto oggi che le mobile applications stanno diventando sempre più business critical? Ecco, da un recente studio di Hp, alcuni interessanti spunti per i team It che devono oggi occuparsi di sviluppo e testing per il delivery di applicazioni più moderne e, soprattutto, destinate a ‘girare’ sui dispositivi mobili. Ecco quali sono le 5 sfide più importanti cui far fronte.
1) Test funzionali: come cambia il concetto di qualità
Mentre il business è interessato a migliorare la user experience e a trovare le vie per affrontare in modo più dinamico i cambiamenti del mercato (e vede la mobility come via/strumento efficace), i team It che si occupano di Quality&Assurance nell’ambito dello sviluppo software sono ancora alle prese con test di validazione funzionale ‘tradizionali’ che risultano ‘deboli’ per le applicazioni mobili. Non perché siano inefficaci ma perché l’approccio generale che si è seguito finora è stato adattare metodologie e processi di testing esistenti allo sviluppo di applicazioni mobili. Una via che potrebbe risultare rischiosa e portare a soluzioni qualitativamente e prestazionalmente non in linea con le esigenze del business. Questo perché parliamo di soluzioni differenti rispetto al passato, e non ci si può ‘ridurre’ a un semplice ‘adattamento’ di applicazioni esistenti in funzione di nuovi ambienti e sistemi operativi. Attenzione, non è detto che le applicazioni vadano riscritte ex-novo, ma certo è che i test funzionali devono essere differenti e, sia che si stia lavorando sulla trasformazione applicativa sia che si stia sviluppando una soluzione da zero, è necessario tenere conto di molte più variabili di rischio: tipologia di device (sono molti di più di un tempo e molto diversi tra loro), sistemi operativi (molti ed eterogenei), carrier Tlc e sistemi di connettività, ecc. Inoltre, la delivery chain applicativa è sempre più breve dato che il business necessita di soluzioni in modo rapido e con funzionalità sempre più ricche. La risposta a queste sfide viene dall’automazione dei test funzionali; un approccio manuale risulta molto rischioso proprio per tutte quelle variabili che abbiamo descritto.
2) Performance: ottimizzare la mobile experience
L’accesso al web è ormai diventato una commodity per tutti, sia lato utente sia lato business. Oggi ci si aspetta un tempo di risposta del sito Internet o dell’applicazione web-based molto basso e livelli di performance sempre più elevati. Attese che non sono da meno sotto il profilo del mobile: gli utenti si aspettano gli stessi tempi di risposta e livelli di performance, ma siti ed applicazioni si comportano diversamente se l’accesso avviene tramite dispositivi mobili, per ragioni legate all’uso del sistema operativo, del browser, del servizio di rete o della tipologia stessa di device. I test sulle performance dovrebbero quindi tenere conto di tutte queste variabili simulando anche il comportamento e l’esperienza dell’utente. Anche in questo caso, il supporto arriva dall’automazione ma, soprattutto, dalle soluzioni di performance testing mobile device applications.
3) La sicurezza non va mai trascurata
La sicurezza delle applicazioni è fondamentale. È necessario capire come si comporta la soluzione, come utilizza i sistemi (anche quelli esterni, come per esempio le connessioni Wi-fi) e come consente all’utente di accedere alle risorse. L’approccio è sempre lo stesso, gestione e mitigazione dei rischi, ma le variabili di rischio sono diverse. È qui che va riposta la maggior attenzione.
4) Controllo e monitoraggio a garanzia della qualità di servizio
Per riuscire a garantire performance elevate e alta qualità del servizio è fondamentale adottare un approccio al controllo e monitoraggio di tipo end-to-end che consenta di verificare lo ‘stato di benessere’ dei servizi mobile business. Cioè è necessario tenere sotto controllo non soltanto l’applicazione ma tutte le variabili che incidono sulla sua performance (in particolare sulla user-experience): device, connettività, infrastrutture di back-end, ecc.
5) Patching e updating: inevitabili, ma gestibili
La delivery chain applicativa è sempre più breve e per le applicazioni mobile è richiesto un time-to-market molto più rapido rispetto alle soluzioni tradizionali. Inevitabile che si debba ricorrere, dopo il rilascio in produzione, ad azioni di patching e updating. Questo non rappresenta un problema se prima del rilascio si è lavorato nell’ottica della Quality & Assurance; testare tutte le combinazioni possibili per il mondo mobile prima di rilasciare un’applicazione è pressoché impossibile, anche perché ogni mese vengono introdotti sul mercato nuovi dispositivi. Ma se l’applicazione sviluppata è funzionale, performante, sicura e monitorata, allora il problema non sussiste: il mercato percepirà l’intervento di updating come un ulteriore miglioramento di qualità e non come ‘rimedio a un danno’.