A fronte di una carenza di lunga data di sviluppatori esperti, i responsabili IT aziendali hanno esplorato nuovi modi per sbloccare i talenti dello sviluppo software formando personale non IT e distribuendo strumenti che permettono di creare o personalizzare le applicazioni in base alle proprie esigenze.

Oggi è disponibile un’ampia gamma di strumenti per facilitare lo sviluppo del software nell’azienda, da piattaforme no-code come Bubble e strumenti low-code drag-and-drop, sia stand-alone che integrati nelle applicazioni aziendali, a strumenti intelligenti che utilizzano l’apprendimento automatico per suggerire righe di codice agli sviluppatori professionisti.

Le vendite di tutte e tre queste categorie di strumenti sono in crescita. Secondo il report Worldwide Low-Code, No-Code and Intelligent Developer Technologies Forecast, 2022-2026 di IDC le vendite di piattaforme no-code cresceranno a un tasso annuo del 13,9% fino al 2026, quelle di piattaforme low-code del 14,1% e quelle di tecnologie intelligenti per sviluppatori del 31,3%. Quest’ultima categoria ha ricevuto una spinta in quanto i fornitori di piattaforme esplorano il potenziale dei modelli di intelligenza artificiale generativa, come ChatGPT, per creare modelli standard di applicazioni su cui gli sviluppatori possono integrare la propria logica aziendale o persino trasformare requisiti leggibili dall’uomo in codice leggibile dalla macchina.

Michele Rosen, autrice del report, afferma che il mercato degli strumenti intelligenti per sviluppatori è diventato ancora più interessante da quando ha finito di scriverlo, ora che alcuni di questi strumenti, come Einstein GPT di Salesforce o Copilot basato su GPT di Microsoft, sono diventati pubblici, sebbene esistessero già prodotti come AI Mentor di OutSystems che offrivano funzioni simili.

Il vantaggio degli strumenti no-code e low-code

Pensiamo a questi strumenti come scrittori di modelli di testo standard, o di completamento automatico sotto steroidi“, afferma Rosen. “Utilizzati da uno sviluppatore esperto, permettono di integrare le sue conoscenze su una tecnologia, una libreria o un framework con cui non ha mai lavorato prima o per evitare di cercare alcune righe di codice su Stack Overflow”.

Altri usi potrebbero comportare la digitazione di poche parole come prompt per generare le 20 righe necessarie per avviare un progetto. “In realtà è solo un moltiplicatore di forza, un acceleratore“.

Le piattaforme low-code e no-code, d’altra parte, adottano tipicamente un approccio drag-and-drop piuttosto che un’interfaccia a riga di comando, e questo si manifesta nel modo in cui gli sviluppatori line-of-business pensano ai problemi che stanno affrontando.

Gli utenti senza un background tecnico in genere considereranno un’app dall’interfaccia utente”, sottolinea Rosen. “Questa è la mentalità con cui la maggior parte delle persone si avvicina all’informatica“. Se hanno a disposizione componenti UI possono provvedere a creare l’interfaccia utente, e quindi anche componenti che possono essere assemblati e integrarsi con sistemi di terze parti. “Quindi, in un certo senso, per chi ha non una preparazione tecnica lo sviluppo no-code e low-code diventa un’esperienza basata sui componenti”.

Questa “componentizzazione” è fondamentale, secondo Andrew Peterson, CTO della società di ricerca esecutiva Riviera Partners, un utente di lunga data di strumenti di sviluppo low-code.

Uno dei motivi per cui mi piace il low-code è perché alcune parti dell’applicazione diventano una commodity“, spiega Peterson. “Se ho dei componenti già pronti all’uso, allora posso concentrarmi sulla costruzione di cose che aggiungono davvero valore, che sono importanti per la mia particolare attività: la logica aziendale, l’innovazione, i vantaggi competitivi. Quindi ho un tempo di commercializzazione più rapido”.

Ma non si tratta solo di rendere la vita più facile ai programmatori, che si trovino nel reparto IT o altrove. “Una buona piattaforma low-code o no-code aiuterà anche il CIO”, afferma Rosen.

Linee guida per la governance

Un criterio di scelta per chi acquista uno strumento low-code o no-code è capire se il fornitore è seriamente intenzionato ad aiutarlo a costruire una cultura di sviluppo low-code o no-code”, dice Rosen, “per esempio se aiuta a impostare la governance su chi può utilizzare gli strumenti e per cosa possono essere utilizzati“.

In un certo senso, la governance degli strumenti low-code non è diversa da quella di altri strumenti di sviluppo software”, afferma Nick Mates, vicepresidente delle operazioni e della tecnologia presso Lendr, una piattaforma online di prestito business-to-business. “Trattiamo un’applicazione low-code come se fosse un’applicazione di codice tradizionale. Dovrebbe seguire gli stessi cicli di vita della governance, dalla scrivania di un analista aziendale a quella di uno sviluppatore, dal controllo qualità fino all’implementazione“.

Ma con strumenti di facilitazione del codice come questi, “le aziende devono anche stabilire una governance attorno a quali strumenti sono meglio utilizzati per quali casi d’uso“, raccomanda Rosen, osservando che molte aziende utilizzano diversi strumenti di questo tipo. Le organizzazioni con più esperienza nell’utilizzo di strumenti low-code e no-code hanno anche istituito Centri di Eccellenza (CoE) per consigliare le linee di business su quale strumento utilizzare e quando. I CoE forniscono anche supporto codificando interazioni e integrazioni più complesse che gli strumenti di sviluppo low-code o i loro utenti non sono in grado di gestire, fornendo componenti riutilizzabili a cui gli sviluppatori line-of-business possono accedere e rendendoli disponibili in un marketplace o in un repository di codice.

Una fattore importante nella scelta dello strumento giusto, e di quando è necessario l’aiuto di uno sviluppatore professionista, è il livello di interoperabilità che un determinato fornitore ha abilitato nella propria piattaforma. “Il fornitore vuole che porti tutti i tuoi dati e la tua logica sulla sua piattaforma, o permette di creare app su più piattaforme?“, afferma Rosen. “Questa è una caratteristica importante da valutare”.

Il costo di tenere il passo

Secondo IDC, per i CIO i tempi non sono ancora maturi per investire cifre consistenti del budget in questi strumenti di sviluppo. “La creazione di un CoE e la messa a disposizione di componenti software riutilizzabili sono passaggi convenienti per la maggior parte delle aziende”, afferma Rosen. “In generale, iniziare non è costoso: ciò che costa è la scala”.

Piuttosto che preoccuparsi se la loro spesa per il software è al passo con quella dei loro concorrenti, Rosen consiglia ai CIO di chiedersi: “Quali funzionalità non stiamo offrendo che potremmo ottenere attraverso strumenti low-code e che avranno un impatto per l’azienda ?”. Questo approccio potrebbe portare a risparmi sui costi poiché il riutilizzo di interfacce a componenti può significare una minore necessità di assumere programmatori esperti per creare ogni applicazione da zero.

Un indicatore chiave del budget è soppesare il costo per utente per le licenze della piattaforma low-code rispetto al costo dell’assunzione di personale aggiuntivo”, suggerisce Rosen. Per ora, la difficoltà di trovare sviluppatori professionisti con grande esperienza sta sta spostando l’ago della a favore dell’abilitazione del personale line-of-business con strumenti low-code.

Più in basso nella scala delle competenze, la decisione se assumere o riqualificare il personale esistente è meno definita”, afferma. A questo livello, i CIO devono prendere in considerazione altri vantaggi dell’implementazione di piattaforme low-code: non solo sviluppare un nuovo prodotto aziendale digitale, ma anche responsabilizzare e coinvolgere maggiormente i dipendenti.

Una volta chiarito cosa sta cercando”, conclude Rosen, “il CIO può guardare a queste piattaforme con una prospettiva diversa”.