Gli strumenti di programmazione visiva low-code/no-code promettono di semplificare e accelerare radicalmente lo sviluppo delle applicazioni, consentendo agli utenti aziendali di creare nuove applicazioni tramite interfacce drag and drop e riducendo il carico di lavoro per gli sviluppatori professionisti (sempre più difficili da trovare). Un recente report di Gartner prevede che entro il 2025 il 70% delle nuove applicazioni sviluppate dalle aziende utilizzerà tecnologie low-code o no-code, rispetto a meno del 25% nel 2020.

Molti trovano estremamente utili questi strumenti per automatizzare rapidamente le attività standard e sperimentare nuovi servizi, ma anche per aiutare gli utenti aziendali a testare rapidamente nuovi servizi, modificare le interfacce utente e fornire nuove funzionalità. Tuttavia, il low code/no code non è una manna dal cielo per tutti i tipi di applicazioni e può richiedere costose riscritture del codice se si sottovaluta il grado con cui le applicazioni devono essere scalate o personalizzate una volta raggiunta la produzione.

Ci sono quindi anche motivi che spingono a essere cauti quando si ha intenzione di implementare in azienda tali strumenti, ma è indubbio come questi tool riescano a offrire vantaggi che vanno anche oltre la semplice riduzione del carico di lavoro per gli sviluppatori professionisti.

Sperimentare con le interfacce utente e fornire nuovi servizi

Sendinblue, fornitore di software di comunicazione di marketing basato su cloud, utilizza il low-code per l’automazione del flusso di lavoro, l’integrazione dei dati e di strumenti di gestione per sperimentare rapidamente funzionalità come i nuovi piani tariffari, afferma il CTO dell’azienda Yvan Saule. Senza il low-code, che consente di testare nuove funzionalità al 10-15% del costo dello sviluppo tradizionale, “non potremmo permetterci tutti gli esperimenti che stiamo facendo”, dice Saule. “Se avessimo dovuto scrivere 15 diversi sistemi di pricing, ci sarebbero voluti anni tra sistemi di evasione degli ordini di back-end e controlli del credito per ogni prezzo specifico”.

La società di tecnologia e servizi finanziari Fidelity National Information Services (FIS) utilizza la piattaforma low-code di WaveMaker per sviluppare interfacce utente rivolte ai clienti. “È per accelerare il time-to-market”, afferma il CTO Vikram Ramani. Questo approccio è particolarmente prezioso data la carenza di sviluppatori qualificati. Mentre FIS sta ancora valutando i risultati, Ramani dice di aspettarsi un miglioramento della velocità del processo time-to-market nell’ordine del 20-30%.

Tra i tanti strumenti low-code disponibili oggi sul mercato, FIS ha scelto WaveMaker perché i suoi componenti sembravano più scalabili rispetto ai suoi concorrenti e il suo modello di licenza per sviluppatore era meno costoso del modello per runtime di altri strumenti. In Joist, una startup che sviluppa software di gestione finanziaria, il CEO Rohan Jawali ha scelto invece la piattaforma no-code di AppMachine per creare rapidamente prototipi di applicazioni, ottenere feedback dai clienti e quindi creare l’applicazione effettiva per saltare alcune iterazioni nel processo di progettazione.

sviluppo low-code

Automazione dei processi e raccolta dati

Presso il produttore di acqua in bottiglia Blue Triton Brands, Derek Lichtenwalner ha utilizzato Microsoft Power Apps per creare un’applicazione di condivisione delle informazioni e comunicazioni per i lavoratori del reparto produzione. Prima di diventare un analista aziendale IS/IT all’inizio del 2022, Lichtenwalner non aveva una formazione informatica formale, ma è stato in grado di creare l’app in circa un mese. Ora quella applicazione è in uso in sei strutture con circa 1.200 utenti, ma ci sono già piani per espanderne l’utilizzo a 3.000 utenti in tutte le 27 strutture dell’azienda.

Il fatto che utenti non specializzati nell’IT come Lichtenwalner sviluppino app per condividere informazioni e automatizzare i processi è una valida opzione per i settori con piccoli staff di sviluppatori qualificati come l’edilizia, dove “ci sono molti processi che devono essere digitalizzati e dove un approccio low-code/no-code può rendere tutto più facile”, afferma Jawali. Inoltre, alcuni fornitori e clienti utilizzano strumenti low code/no code per facilitare non solo lo sviluppo di app, ma anche la condivisione dei dati tra app.

Comprendere le vere esigenze

Un approccio low code/no code “può essere il migliore amico di un professionista IT per le sfide quotidiane tradizionali come l’approvazione del flusso di lavoro e la raccolta dei dati” afferma Carol Dann, VP Information Technology presso la National Hockey League (NHL), che mette però in guardia dal cercare di utilizzare un tale strumento per creare una nuova applicazione solo perché è piacevole da usare. Scegliere infatti la soluzione sbagliata può essere controproducente, con qualsiasi vantaggio ottenuto in tempi brevi che rischia di essere cancellato altrettanto rapidamente dalla necessità di scrivere nuovo codice o modificare quello esistente. 

“Lo sviluppo no-code è ideale quando si dispone di un’architettura applicativa semplice e si desidera distribuire e testare rapidamente un’applicazione”, aggiunge Jawali. “Si tratta di una soluzione perfetta per esperimenti innovativi in cui si desidera molto controllo sull’esperienza utente e sull’interfaccia utente, cosa che non si può ottenere con una piattaforma low-code. Il low code è più utile quando è necessario introdurre più sicurezza e collegamenti ad altre applicazioni, seppur al costo di una maggiore complessità e della necessità di più sviluppatori specializzati”.

La semplicità del drag and drop tipica dello sviluppo no-code rende difficile raggiungere quella percentuale finale di differenziazione che rende un’applicazione utile per un’organizzazione specifica afferma Mark Van de Wiel, CTO sul campo presso il fornitore di software di integrazione dei dati Fivetran. Tale personalizzazione aggiuntiva resa possibile dal low-code potrebbe includere, ad esempio, l’uso della logica fuzzy per correggere i nomi errati in un database dei clienti, o l’utilizzo della logica di business necessaria per calcolare un punteggio da uno a 10 dell’efficacia di varie risorse di marketing in base a metriche come visualizzazioni rispetto ai click-through.

sviluppo low-code

Le app low-code/no-code possono anche essere difficili da scalare, afferma Saule, che raccomanda di limitarne l’uso a parti strategiche non fondamentali dell’azienda e solo quando si desidera sperimentare. “Quando un esperimento ha successo e c’è la necessità di scalare, è il momento di pensare a riscriverlo in un linguaggio più tradizionale ma scalabile”.

Inoltre, solo perché il no-code/low-code consente a più utenti di creare le proprie applicazioni, non significa che dovrebbero farlo, afferma Van de Wiel. Le organizzazioni che consentono un ampio sviluppo di app fai-da-te devono anche garantire che questo pool più ampio di sviluppatori non professionisti segua i requisiti aziendali e normativi per proteggere i dati dei clienti.

Sapere quando utilizzare gli strumenti adatti

AppMachine è una buona soluzione per le app di condivisione delle informazioni sviluppate da Jawali perché devono servire solo centinaia di utenti piuttosto che decine di migliaia o più. È invece una soluzione meno adatta alle applicazioni che richiedono elevati livelli di sicurezza, perché ad esempio non può creare i profili utente necessari per l’accesso basato sui ruoli. Manca anche il supporto per le API necessarie per connettersi ad altre applicazioni come i sistemi di gestione dei prodotti o di tracciamento delle consegne.

“I problemi possono sorgere quando le persone cercano di far fare a questi strumenti cose per le quali non sono stati creati, invece di ammettere che servirebbe un’altra soluzione”, afferma Dann. Comprendere tutto ciò che gli strumenti hanno da offrire e quindi cosa possono fare bene e cosa no è un aspetto fondamentale per prendere decisioni ponderate. Ed è qui che entrano in gioco anche i fornitori di questi strumenti, che oltre a specificare esattamente quello che il loro tool possono fare, devono spiegare se i loro strumenti riescono a integrarsi tramite API con altre applicazioni e se hanno una strategia di autenticazione e autorizzazione che si adatti ai processi di sicurezza del cliente.

Non trascurare le soluzioni low-code/no-code “off the shelf”

Se pensate al low-code/no-code come a una strategia per semplificare lo sviluppo piuttosto che a una categoria di prodotti, potete trovare opportunità interessanti per accelerare lo sviluppo di app con software che già usate o con funzionalità standard in prodotti familiari come il cloud storage. Ciò vale soprattutto per funzioni di routine ben definite come la gestione di documenti e flussi di lavoro.

La NHL, ad esempio, ha configurato le capacità di integrazione del suo sistema di gestione del flusso di lavoro Monday.com come una soluzione low-code/no-code per sostituire un sistema legacy per incanalare le richieste al suo staff creativo. Ha implementato questo sistema sostitutivo in circa due settimane, rispetto ad almeno sei mesi che sarebbero serviti utilizzando metodi di sviluppo tradizionali.

Se utilizzati correttamente, gli strumenti low-code/no-code possono quindi velocizzare lo sviluppo di nuove app per clienti e dipendenti, riducendo al contempo costi e ritardi. Possono anche prevenire violazioni della sicurezza o dei criteri o la necessità di riscrivere un’applicazione che non può scalare, ma come per ogni strumento anche in questi casi è essenziale capire cosa possono e non possono fare e cosa è necessario che facciano.