Logo ImpresaCity.it

Cos'è lo sviluppo low-code e che vantaggi promette alle imprese

I tool low-code promettono di creare applicazioni quasi senza scrivere codice. Ma lo scetticismo degli sviluppatori è ancora forte.

Siamo entrati in una nuova epoca d'oro del software custom? A guardare alcune evoluzioni dell'IT, parrebbe proprio. Da un lato, tutto sembra poter diventare software-defined. Il che dà una rilevanza sempre maggiore allo sviluppo, anche se inteso in senso lato e non solo di vere e proprie applicazioni monolitiche. Dall'altro, molte aziende sentono la necessità di differenziarsi dalla concorrenza proprio creando applicazioni e/o servizi digitali su misura. O creandone sempre di nuovi.

Il risultato di tutto questo lo abbiamo già visto. All'IT aziendale - o ai consulenti e fornitori - viene chiesto di sviluppare di più e più velocemente. Da qui l'importanza di approcci come DevOps. Ma anche della disponibilità di strumenti che permettando sviluppare in modi nuovi. Ma se DevOps è un tema molto popolare, i tool per lo sviluppo (più) rapido non lo sono altrettanto. La parola magica in questo ambito è low-code. Un termine creato da Forrester qualche anno fa e che poi è stato esteso (non da Forrester) al concetto di sviluppo no-code.

In teoria il concetto di low-code o no-code dovrebbe essere di grande successo. Anche più di DevOps. In fondo, tutti vogliono applicazioni e servizi mentre di skill adeguati allo sviluppo se ne sente sempre la mancanza. Invece è difficile sentir parlare di low-code e no-code fuori dagli ambiti degli addetti ai lavori. Il motivo? L'idea piace ai business manager e anche ai software architect, dicono le analisi di mercato, ma molto poco agli sviluppatori.

sviluppo desktop

La promessa low-code

Ma cosa promette, in sintesi, l'approccio low-code? In linea di principio, una piattaforma low-code promette di creare la maggior parte di una applicazione combinando fra loro, attraverso una interfaccia grafica, componenti predefiniti. Resta del codice da scrivere, ma essenzialmente per tre soli scopi. Collegare questa applicazione ad altre custom che già esistono, ottimizzare l'interfaccia utente, inserire funzioni che non sono previste dalla libreria di partenza. Un tool no-code va in teoria anche oltre e fa tutto senza richiedere alcuna linea di codice.

Tutto ciò è davvero possibile, secondo i critici, solo se l'applicazione che ne risulta è molto semplice. È una critica che deriva anche dalla proposizione iniziale degli strumenti low-code. Che sono stati presentati come un modo per permettere agli utenti business di creare applicazioni semplici, senza scomodare lo staff IT. Un approccio di marketing che aveva un senso ma che ha generato confusione: a chi sono davvero rivolti questi tool, adesso?

Per cercare di risolvere questo equivoco, diversi software vendor usano il termine no-code per indicare le soluzioni indirizzate agli utenti non tecnici. Questi possono assemblare componenti base per automatizzare alcuni processi di business, magari grazie a funzioni di machine learning che consigliano cosa fare, e come. La RPA è ad esempio diventata un campo d'elezione per lo sviluppo no-code. Che quasi non viene nemmeno chiamato sviluppo.

Le piattaforme low-code sono invece destinate ai professionisti della programmazione. Anche qui lo sviluppo è "componibile", combinando elementi che spaziano dai database ai microservizi, dall'autenticazione alle API. Ma con, si suppone, il supporto per ambienti e componenti enterprise. E soprattutto la possibilità di intervenire direttamente sul codice generato dalla piattaforma.

sviluppo software
Si intuisce come la distinzione tra low-code e no-code sia piuttosto capziosa, più di comodo che di sostanza. I casi in cui si riesce a costruire qualcosa di articolato senza scrivere davvero nemmeno una riga di codice sono molto pochi. E perlopiù relegati ad ambienti proprietari, non ad applicazioni che definiremmo standard. Quindi, i tool sono un po' tutti low-code, con gradi diversi di complessità. Il no-code, afferma ad esempio Forrester, "è un'aspirazione e solo qualche volta una realtà".

A chi piace il low-code, e a chi no

Sui tool low-code spesso non ci sono mezze misure. O li si considera una grande e positiva rivoluzione, o nemmeno li si considera. Ciò non deriva tanto dalle funzionalità delle singole piattaforme. Le principali sul mercato sono tutte solide, articolate ed anche ben diverse fra loro. Tanto che probabilmente chiunque ne trarrebbe, alla fine, un beneficio concreto.

C'è uno scetticismo di fondo da superare, per il low-code. Scetticismo che deriva anche dalle promesse non mantenute degli "antenati" (presunti) dei tool low-code. Ossia le piattaforme CASE (Computer Aided Software Engineering) e quelle RAD (Rapid Application Development) che andavano di moda soprattutto negli anni Novanta. E che non portarono in fondo grandi risultati: troppo rigide, troppo complesse, poco standard. Non a caso le stesse critiche che si fanno oggi ai tool low-code.

Per i sostenitori del low-code questo scetticismo nasconde semplicemente una sorta di machismo da sviluppatori. L'idea che programmare seriamente sia solo macinare codice, mentre assemblare componenti serva a poco e sia per gli sviluppatori di serie B. O, meglio, per i non sviluppatori. E se vogliamo il complottismo, c'è anche quello. Gli scettici sono accusati di voler mantenere una complessità inutile, ma che fa gonfiare i budget dei consulenti e in fondo anche dei dipartimenti IT. Se sviluppare è diventato semplice, come giustificare le spese dei mega-progetti IT?

codice zoom sviluppo
La posizione più pragmatica è che i tool low-code possano trovare spazio in qualsiasi azienda, se sono gestiti con una certa attenzione. Finché si tratta di piccole applicazioni o servizi che automatizzano processi limitati, di solito non ci sono problemi. Quando si parla di applicazioni articolate e di produzione, le cose cambiano

Il low-code che fa bene

La principale considerazione da fare è di semplice buon senso. Nessuna applicazione opera da sola, ma dialoga con il resto dell'IT. Per questo chi la sviluppa - con poco o tanto codice - deve considerare l'ecosistema in cui sarà operativa. E questo approccio non è proprio degli sviluppatori "business" non professionali. Motivo per cui qualsiasi applicazione nata su basi low-code dovrebbe, se cresce oltre un certo limite, essere supervisionata dall'IT tradizionale.

Un altro elemento di importante distinzione è quanto "blindate" sono le applicazioni (in senso lato) generate da un tool low-code. In molti casi non è importante solo che un'applicazione svolga una determinata funzione, ma anche sapere in che modo lo fa. E poter intervenire per cambiare quel modo. E bisogna chiedersi anche quanto le applicazioni generate automaticamente siano "aperte", nel senso di quanto possano operare anche al di fuori dall'ambiente in cui sono nate. Come un particolare cloud o una specifica piattaforma PaaS.

Sono considerazioni, spiegano gli analisti, che comunque non freneranno lo sviluppo del mondo low-code. I vantaggi ci sono e molte imprese li hanno già riconosciuti. Anche per questa evoluzione, come per molte altre legate alla digitalizzazione, il consiglio è quello di sperimentare direttamente. Adottare cioè strumenti low-code con cui portare avanti progetti semplici e Proof of Concept. Per capire meglio come sfruttare le potenzialità - che indubbiamente ci sono - delle nuove piattaforme.

Se questo articolo ti è piaciuto e vuoi rimanere sempre informato con le notizie di ImpresaCity.it iscriviti alla nostra Newsletter gratuita.
Se vuoi ricevere le notifiche delle notizie più importanti della giornata iscriviti al canale Telegram di ImpresaCity al link: t.me/impresacity
Pubblicato il: 18/09/2019

Speciali

Speciali

La nuova IT per la Digital Transformation

Speciale

Stampa gestita: il Printing è sempre più servizio