Oggi che tutti parlano di trasformazione digitale e di agilità dell'IT l'idea di poter
creare applicazioni molto velocemente, quasi senza scrivere una linea di codice, appare ovviamente molto stimolante. Non è nemmeno un'idea nuova, visto che gli strumenti di sviluppo cosiddetto
low-code o addirittura no-code sono sul mercato già da qualche anno. Ma è più di recente che il settore è cresciuto e ha conquistato un numero di utenti sempre maggiore: l'anno scorso Forrester Research ha identificato una quarantina di vendor che, insieme, dovrebbero chiudere il 2017 con un giro d'affari di quasi 4 miliardi di dollari. E soprattutto superare i
15 miliardi già nel 2020.
Molte imprese sono venute a contatto con le piattaforme e i servizi di sviluppo low-code quando hanno dovuto creare velocemente
app mobili rivolte
agli utenti finali. La scelta in quel caso è stata netta: cercare o acquisire le
competenze per sviluppare app scrivendo codice vero e proprio, il che però richiede tempo, oppure puntare su uno sviluppo molto più rapido ma anche limitato, con piattaforme che permettevano di assemblare app con meccanismi di drag-and-drop. È per questa dinamica che sono nati decine di servizi di creazione di app mobili, i quali però
rappresentano solo un lato di un fenomeno low-code molto più sfaccettato.
La gran parte delle piattaforme di sviluppo low-code presenti oggi sul mercato cerca infatti di
coniugare la semplicità con una (relativa) completezza di funzioni e non è affatto limitata al mondo mobile. Sebbene queste piattaforme siano molto attraenti per gli utenti business o i "citizen developer" perché permettono di creare applicazioni
senza scomodare lo staff IT, i vendor pensano anche alle necessità degli sviluppatori veri e propri fornendo strumenti anche complessi. E il termine low-code non va preso alla lettera: chi ha le competenze per farlo può scrivere
tutto il codice che vuole per potenziare la propria applicazione.
La filosofia low-code comunque non è cambiata nella sua
concezione di base. Vale ancora la definizione "storica" di Forrester secondo cui si tratta di "
piattaforme che permettono l'implementazione rapida di applicazioni business con poca scrittura di codice e pochi investimenti in configurazione, training e installazione". La definizione vale perché contiene ancora il succo dello sviluppo low-code: permettere di
creare e distribuire velocemente applicazioni. Sottinteso: in funzione delle esigenze che l'utilizzatore potenziale, interno o esterno all'azienda, ha in quel momento. Il tutto può anche rientrare in un
modello DevOps, quando lo sviluppo rapido è portato avanti prevalentemente dallo staff IT.
L'interfaccia per la creazione delle Microsoft PowerAppsOgni vendor ha la sua visione di come deve essere fatto un ambiente low-code, ci sono però caratteristiche di fondo comuni. Lo sviluppo low-code è essenzialmente
uno sviluppo visuale, con una interfaccia drag-and-drop che permette di combinare fra loro sia elementi dell'interfaccia dell'applicazione finale sia i passi del flusso elaborativo, essenzialmente
modellando sempre in maniera visuale il processo che l'applicazione deve realizzare. Dato l'approccio e data la possibilità di
riusare componenti standard o sviluppati in precedenza, la creazione di un'applicazione è questione di ore e non più di giorni o settimane.
Lo scenario ideale per lo sviluppo low-code in azienda è la
trasformazione di processi che vengono portati avanti manualmente, anche usando strumenti molto tradizionali come i fogli elettronici o l'email, e che sarebbe opportuno automatizzare ma non ci sono le risorse per creare applicazioni ad hoc da zero e non si trovano software commerciali adeguati. Il grado di automazione e di semplicità dello sviluppo
varia caso per caso e a seconda della piattaforma: si va da quelle molto integrate con altri sistemi di business (è il caso di Salesforce) a quelle più generaliste e collaudate (come i nomi noti Appian e Mendix, ad esempio). E nel settore stanno entrando anche
player certamente di peso come Google,
Microsoft e Oracle.