Ciclo di vita dell'app
Scenari in cui è necessaria la gestione delle app
Introduzione
La moderna gestione delle app aziendali sta diventando sempre più complicata. Soprattutto le aziende più grandi, con centinaia di app in portafoglio, sono alle prese con tutti i processi relativi al ciclo di vita delle app. Sviluppano e utilizzano apps per i loro partner, per i loro dipendenti e, naturalmente, per le loro applicazioni consumer che vengono distribuite attraverso gli app store pubblici come Google Play o Apple App Store.
La maggior parte di questi dispositivi (eccetto quelli dei dipendenti) non sono collegati e gestiti da un sistema di Mobile Device Management (MDM). Ecco i casi d'uso più comuni in cui l'MDM non può essere d'aiuto e il processo di distribuzione e approvazione delle app dallo sviluppatore all'utente finale deve essere supportato da una soluzione di Enterprise App Management.
Scenario 1: App informativa o di vendita per affiliati e concessionari
Esempio: Le app per gli affiliati e i rivenditori delle grandi aziende di prodotti possono essere un buon meccanismo per tenerli aggiornati con le ultime informazioni. Ad esempio, una casa automobilistica può fornire app con le specifiche più recenti e modelli 3D delle sue nuove auto a chi si trova negli showroom.
Caso d'uso: Business to Business (B2B) Necessità: Un app store aziendale con marchio per fornire queste app a tutti i venditori e agli affiliati. L'app store aziendale deve garantire un'esperienza fluida e veloce e rappresentare il punto di riferimento unico per ottenere tutte le app di cui hanno bisogno.
Scenario 2: App di produttività per l'azienda estesa (BYOD)
Esempio: Le app per i dipendenti esterni o per i dipendenti con dispositivi privati (BYOD) stanno diventando sempre più importanti. Ne sono un esempio i sistemi CRM mobili, i flussi di lavoro di approvazione mobili o i client PIM.
Caso d'uso: Business to Employee (B2E) Necessità: Un Enterprise App Store può fornire un'esperienza fluida e veloce e fungere da punto unico per ottenere tutte le apps di cui ognuno ha bisogno. Un'ulteriore protezione delle app può garantire che le apps siano protette e che i dati aziendali importanti non escano dal contesto aziendale.
Scenario 3: Test e revisione delle app
Esempio: Prendiamo un'app per le informazioni sui prodotti o un'app per lo shopping mobile. Prima che sia pronta per la prima serata, un paio di versioni pre-release vengono sottoposte ad alcune iterazioni di revisione, finché l'app non è pronta per la distribuzione. Queste apps beta possono provenire da un'agenzia esterna o dal reparto interno di sviluppo delle app. Il revisore (ad esempio un consulente o un project manager) deve approvare o rifiutare l'applicazione e comunicare con lo sviluppatore. Caso d'uso: Sviluppatore interno o esterno verso il decisore (proprietario dell'app) Necessità: Uno strumento di gestione delle app aiuta a distribuire automaticamente le versioni delle app tra sviluppatori e revisori. I revisori hanno sempre accesso alle versioni più recenti e possono approvarle o rifiutarle. Inoltre, la fornitura di ambienti di sviluppo (come un repository Git e un processo di build di integrazione continua) può essere utilizzata per standardizzare il processo di consegna delle app all'interno dell'azienda.
Scenario 4: Approvazione dell'app da parte di diversi dipartimenti e responsabili decisionali
Esempio: Le app che verranno distribuite ai consumatori tramite gli store pubblici devono superare un processo di approvazione interno. L'applicazione per i consumatori, magari un'applicazione HR per i candidati, deve superare diverse fasi di approvazione. Potrebbe trattarsi di un test di funzionalità, di un controllo di sicurezza e di un team che deve aggregare tutte le metainformazioni fino alla pubblicazione. Caso d'uso: Decisori o dipartimenti tra loro Necessità: Un processo di approvazione delle app standardizzato e supportato da uno strumento aiuta a organizzare il processo di approvazione tra i reparti e i loro decisori. Gli approvatori hanno sempre accesso alle versioni più recenti e possono approvarle o rifiutarle.
Scenario 5: App per eventi o fiere una tantum
Esempio: Un buon esempio di app di breve durata sono le app per eventi. Simili alle app per fiere che informano i visitatori sull'evento in corso, queste app devono essere distribuite ai visitatori il più rapidamente possibile e senza problemi. Caso d'uso: Business to Business (B2B), Business to Consumer (B2C) Necessità: L'utilizzo di un app store aziendale sarebbe sicuramente sovradimensionato per un visitatore che vuole ottenere un'app che usa solo una o due volte.
Una possibilità è quella di caricare l'app negli store pubblici, ma anche questo richiede tempo e fatica. Gli strumenti di gestione delle app possono aiutare a organizzare e velocizzare l'invio dei meta-dati agli store pubblici. Un'altra soluzione rapida potrebbe essere il download istantaneo da un server locale, accessibile tramite codice QR o attivato da un beacon?
Necessità di strumenti
Questo elenco non è sicuramente completo per quanto riguarda gli scenari delle app aziendali, ma dimostra che c'è una grande necessità di strumenti in questo spazio. La maggior parte di questi scenari non è attualmente coperta dalle soluzioni di Enterprise Mobility Management (EMM). Un semplice Enterprise App Store è solo il frontend per fornire le app agli utenti, ma l'intero processo di backend, dallo sviluppo alla revisione e all'approvazione delle app, spesso non è racchiuso in un processo supportato dal software.
Gestire il ciclo di vita delle app
Sulla base degli scenari sopra descritti, si scopre che mancano le conoscenze e gli strumenti per la gestione del ciclo di vita delle app. È necessario definire e sperimentare molti processi. Iniziamo a fare chiarezza sulla gestione delle app e cerchiamo di distinguere tra tutte le parole d'ordine di questo settore.
Gestione delle app
Uno degli specialisti più noti nel settore della mobilità aziendale è Jack Madden un recente articolo descrive due diversi tipi di gestione classica delle app. Grazie, Jack, per questa definizione - permettetemi di usarla qui:
Gestione delle applicazioni mobili basata su app
La gestione delle app basata sulle app è costituita da tecnologie come SDK (Software Development Kit), strumenti di wrapping o applicazioni speciali di fornitori EMM o ISV che consentono alle aziende di applicare criteri e regole a un'app.
Per farlo, manipolano le interfacce delle app, con il vantaggio che le aziende non devono controllare l'intero dispositivo (cosa che oggi non è sempre possibile, soprattutto negli scenari BYOD) ma controllano l'app. Gli svantaggi sono che questo tipo di tecnologia deve essere integrata nelle app fin dall'inizio e che le aziende possono manipolare solo le app che controllano, ma non quelle pubbliche o di terze parti.
Gestione delle app mobili basata sui dispositivi
Il secondo tipo di gestione delle app è integrato direttamente nel sistema operativo. Esempi di queste tecnologie sono le versioni più recenti di Apple iOS, Samsung Knox o Android for Work. Questi sistemi consentono ai dispositivi controllati da MDM di gestire e proteggere le app attraverso funzionalità basate sul sistema operativo, come la "gestione dell'apertura" sui dispositivi Apple (che consente e vieta alle app di accedere al contenuto di altre app).
Il vantaggio di questi approcci tecnologici è che è possibile gestire tutti i tipi di app e che i sistemi operativi mobili supportano sempre più queste funzionalità. Gli svantaggi sono che il dispositivo deve essere controllato da un software di Mobile Device Management e le possibilità variano a seconda della piattaforma scelta.
Gestione del ciclo di vita delle app mobili
Non stiamo dicendo che queste definizioni siano sbagliate, ma pensiamo che il termine Mobile App Management debba essere ampliato con la parola lifecycle. Ecco perché: proteggere i dati con gli approcci di gestione delle app sopra definiti è assolutamente necessario, ma non è sufficiente: ci sono molte sfide che ruotano attorno al processo di gestione del ciclo di vita delle app.
Ecco un esempio: Un grande produttore tedesco ha più di venti agenzie che lavorano per lui, producendo tutti i tipi di applicazioni: applicazioni rivolte ai consumatori per le informazioni sui prodotti, una soluzione CRM mobile personalizzata utilizzata dai rappresentanti di vendita e molte applicazioni più piccole per uso interno. Centinaia di app in totale, con decine di aggiornamenti al mese. Come riescono a gestire tutte queste app?
Le agenzie inviavano ogni nuova versione dell'app al reparto interno di competenza via e-mail. Il revisore dell'applicazione (in questo caso un project manager o un consulente mobile) riceveva l'applicazione e doveva decidere se soddisfaceva tutti i criteri per il rilascio. Ha quindi dovuto inviare il file del pacchetto (file .apk o .ipa) al suo team e in qualche modo installarlo su alcuni dispositivi di prova (che tra l'altro non erano gestiti da alcuna soluzione MDM). Un'ulteriore sfida era rappresentata dal processo di firma, soprattutto per le app iOS.
Spesso queste app non erano firmate correttamente, ad esempio con un certificato dello sviluppatore e non con il certificato aziendale, quindi non potevano essere installate sui dispositivi di prova desiderati. Dopo una fase di test, contattava l'agenzia per segnalare i bug e i problemi riscontrati, l'agenzia li risolveva e i test ricominciavano. Dopo un paio di iterazioni, inviava l'app a un altro reparto che doveva controllarla e approvarla, come il team UX e il responsabile del reparto.
Poi le app dovevano essere consegnate al pubblico di destinazione: le app per i consumatori dovevano essere pubblicate sugli store pubblici, le app interne dovevano essere caricate nella soluzione MDM, i dispositivi BYOD avevano bisogno di un app store aziendale per scaricare le app e i partner avevano bisogno di un app store per i partner dove scaricare l'ultimo aggiornamento dell'app del loro catalogo prodotti. Un modo di lavorare noioso, lungo e soggetto a errori! Perché non utilizzare uno strumento in grado di coprire tutte le fasi del ciclo di vita di un'applicazione? Per semplificare la consegna delle app da parte delle agenzie, uno strumento come Relution fornisce un unico punto di consegna (ad esempio un portale web o un plugin per strumenti di integrazione continua come Jenkins o Nevercode), in modo che tutte le agenzie possano consegnare le loro versioni delle app nello stesso sistema. Da lì, possono essere attivate tutte le fasi del processo di approvazione (simili ai processi di approvazione degli strumenti ITSM della vecchia scuola per le applicazioni desktop).
Tutto ciò può essere fatto anche da un'applicazione, senza dover accedere a un complicato portale web. L'ultima fase del ciclo di vita di un'applicazione è la sua consegna automatica alle persone giuste. Questo avviene utilizzando un Enterprise App Store che può essere configurato per tutti i tipi di clienti, come utenti aziendali ed esterni, partner e altro ancora. E sì, gli utenti sanno come scaricare un'app da un app store, lo fanno giorno dopo giorno dall'App Store di Apple o dal Google Play Store. Le app consumer possono essere preparate automaticamente per gli store pubblici fornendo tutte le meta-informazioni necessarie, gli screenshot ecc.
Consigli
Utilizzate uno strumento come Relution per organizzare il processo di consegna delle app, l'approvazione delle app e la consegna delle stesse a tutti i dipendenti e agli esterni. Vi farà risparmiare molto tempo e risorse e vi aiuterà a snellire il processo, soprattutto quando il numero di app è in costante aumento. PS: Naturalmente potete dare un'occhiata alla nostra soluzione per gestire il ciclo di vita delle app della vostra azienda.
Perché vi serve la gestione del ciclo di vita delle app
La gestione dei dispositivi mobili (MDM) è stata l'inizio del passaggio a un'infrastruttura client mobile per molte aziende. Utilizzando restrizioni e criteri, gli amministratori IT si sentono (più) tranquilli quando inviano smartphone e tablet ai dipendenti. Ma il vero vantaggio aziendale risiede nella mobilitazione dei processi aziendali, compresa la gestione del ciclo di vita delle app, piuttosto che nella gestione dei dispositivi.
Di conseguenza, le aziende di tutto il mondo utilizzano un numero sempre maggiore di applicazioni aziendali sviluppate internamente o da fornitori per mobilitare i processi aziendali. Per loro stessa natura, le app hanno un ciclo di vita piuttosto breve (cioè le nuove versioni vengono rilasciate regolarmente), di settimane anziché di anni. Questo può rappresentare una sfida.
Le sfide della gestione del ciclo di vita delle app
Utilizzando la giusta soluzione di gestione delle app, è possibile risolvere il problema della gestione del ciclo di vita delle app. È importante che la soluzione copra l'intero ciclo di vita di un'applicazione aziendale. Deve iniziare dalla fase di sviluppo, fornendo un repository di codice sorgente e un sistema di creazione automatica. Ogni nuova versione di un'applicazione viene poi caricata sull'app store aziendale, il front-end di ogni soluzione MAM. Ma attenzione: non volete rendere OGNI nuova versione direttamente disponibile a tutti i dipendenti, vero?
È qui che è necessario definire un processo di rilascio delle app. Spesso questo processo esiste solo sulla carta, e i file ipa e apk vengono inviati via e-mail, allegati a una nota che dice "Per favore, testate" o "Per favore, fatemi sapere se questo è buono...". Vi ricorda qualcosa? Allora avete bisogno di una soluzione di gestione delle app che copra l'intero processo.
Le nuove versioni delle app dovrebbero essere fornite automaticamente solo ai tester e ai responsabili dei rilasci. Solo dopo che questi ultimi non hanno riscontrato problemi con l'app, il suo stato può essere cambiato in "release". La gestione del ciclo di vita delle app consente di farlo. Allo stesso tempo, la versione precedente dell'app dovrebbe essere ritirata. Inoltre, il sistema di gestione delle app dovrebbe inviare messaggi push a tutti i dispositivi su cui è installata l'app, esortando gli utenti ad aggiornarla. Oppure, se utilizzato insieme a un sistema MDM, la nuova versione dovrebbe essere inviata immediatamente ai dispositivi, assicurando che tutti lavorino con la versione più recente dell'app.
Quando l'ultimo utente ha aggiornato l'app sul suo dispositivo, la gestione del ciclo di vita dell'app ricomincia da capo con la versione successiva, magari per un'altra regione o un'altra filiale. Tutto questo avviene contemporaneamente per un numero crescente di app in tutta l'azienda. Relution è una soluzione completa che copre tutti gli aspetti della gestione del ciclo di vita delle app e della gestione delle app e dei dispositivi mobili in generale.
Ulteriori informazioni sulla gestione dei dispositivi mobili e sulle app mobili sono disponibili qui.