Skip to main content

La strada di Appian per il successo: il low-code

Alena Davis, Appian
June 4, 2018

Il report di Forrester "Previsioni 2018: l'anno della resa dei conti" ha lanciato un allarme da non sottovalutare per il 2018.

"La trasformazione digitale non un'operazione che si puÚ scegliere liberamente se attuare o meno. Si tratta piuttosto della risposta fondamentale e necessaria per soddisfare le crescenti aspettative del cliente, garantire esperienze personalizzate su larga scala e stare al passo con il rapido sviluppo del mercato". [corsivo aggiunto]

Cosa implica tutto questo per gli sviluppatori? In breve, la risposta che le aziende dovranno adottare le piattaforme low-code. PerchÈ? Diamo un'occhiata ai due punti fondamentali evidenziati dal report:

1. Le aspettative dei clienti crescono rapidamente e i prodotti non riescono a tenere il passo

Nel report si legge: "Le aspettative dei clienti andranno ben oltre la capacit‡ delle aziende di evolversi o creare esperienze nuove, e le organizzazioni che non hanno effettuato la trasformazione digitale nel 2017 non saranno in grado di adattarsi ai nuovi sviluppi in tempi brevi o in maniera adeguata. Nel 2018, il 30% delle aziende conoscer‡ un ulteriore calo delle prestazioni relative all'esperienza cliente, che determiner‡ a sua volta una netta diminuzione della crescita".

Questo 30% comprende anche le aziende con prestazioni di bassa qualit‡ in termini di customer experience fornita ai consumatori. Le aziende che non sono state in grado di migliorare la customer experience perderanno potenziale di crescita. Si tratta di aziende che non sono state in grado di "evolversi, nÈ di creare esperienze" associate ai prodotti proposti nel modo previsto e richiesto dai clienti, che si trattasse di prodotti tecnologici o meno. In altre parole, se le aspettative del cliente in termini di qualit‡ vengono deluse e se l'azienda non in grado di migliorare l'esperienza utente con le applicazioni software, si rischia di perdere clienti e di conseguenza anche l'utile netto.

2. Il mercato sta cambiando

Le attuali condizioni del mercato costringono gli sviluppatori a soddisfare la richiesta di una customer experience migliore, oltre che ad adoperarsi per ottimizzare l'esperienza utente nell'utilizzo di piattaforme e-commerce, applicazioni software, app mobili e altro ancora. Per gli sviluppatori front-end, tutto questo si traduce in un maggiore lavoro di codifica per migliorare la reattivit‡ della progettazione della propria app o nell'aggiunta di una funzionalit‡ richiesta, ma una nuova versione che incorpori le modifiche avvenute nel codice, in particolare quando si tratta di nuove funzionalit‡, comporta un maggior carico di lavoro per gli sviluppatori. Insomma, ci si ritrova a lavorare di pi˘ sulla codifica, oltre a dover provare la nuova funzionalit‡, dal momento che i "test agili" migliorano significativamente la qualit‡ dello sviluppo agile del software.

La soluzione consisterebbe in uno strumento in grado di far risparmiare tempo utilizzando un linguaggio di programmazione a basso livello, di progettare l'interfaccia utente e i flussi di lavoro, di collegarsi ai processi di back-end e di incorporare test e debugging automatici. Le prove condotte dagli sviluppatori sul proprio codice sono ancora oggetto di vivace discussione all'interno delle relative community.

La soluzione al problema di "ridurre il carico di lavoro necessario per lo sviluppo di test e codici aggiuntivi" sembrano essere le piattaforme low-codemultifunzione, che equivalgono essenzialmente a un ambiente di sviluppo integrato (IDE) con funzionalit‡ di drag-and-drop, in aggiunta a un editor di codifica che funziona secondo il principio WYSIWYG (ottieni ciÚ che vedi), noto anche come interfaccia con funzionalit‡ di drag-and-drop. Questo tipo di piattaforma applicativa in grado di delineare interfacce utente, flussi di lavoro e modelli di dati. Analogamente alle potenti librerie ORM, la piattaforma in grado di collegare e gestire in maniera automatica modelli di dati di back-end, archiviazione e recupero dei dati. Inoltre, gestisce il ciclo di vita dell'applicazione tramite strumenti automatizzati che sviluppano le app, ne eseguono il debug, le implementano e ne effettuano la manutenzione, dai primi test alla produzione.

L'innovazione digitale con meno righe di codice

Utilizzando il software low-code, possibile implementare le applicazioni in tempi pi˘ rapidi, con IDE visivi e un minor lavoro di codifica manuale. Tutto questo si traduce in una riduzione dei costi per l'azienda e pi˘ tempo a disposizione degli sviluppatori, da dedicare a ciÚ che conta di pi˘: il miglioramento dell'esperienza front-end per soddisfare le crescenti esigenze di consumatori alla ricerca di un'esperienza utente sempre migliore. Un gioco da ragazzi, considerato che un'esperienza utente di qualit‡ porta a una massiccia adozione delle applicazioni, incrementando i profitti dell'azienda.

Meno bug, pi˘ IA

Un minor numero di righe di codice si traduce anche in un minor numero di errori da correggere e per i quali eseguire il debug, e tutte le API collegate vengono testate in anticipo. Inoltre, l'IA gi‡ integrata. » possibile automatizzare tutte quelle attivit‡ come l'integrazione di diverse fonti di dati o l'analisi di dati semi-strutturati o non strutturati tramite l'RPA e l'automazione intelligente. Ovviamente, poi, con l'automazione si risparmia tempo.

Il low-code integra scalabilit‡ e sviluppo di prototipi

Dalle applicazioni pi˘ piccole alle implementazioni di livello aziendale, le piattaforme low-code sono intrinsecamente scalabili. Le applicazioni specifiche, gli algoritmi o le funzionalit‡ aggiuntive di fornitori terzi avranno sempre bisogno di codici personalizzati. L'IDE low-code visivo un valido strumento per ampliare l'implementazione delle app con tempistiche esponenzialmente pi˘ lunghe, senza bisogno di migliaia di righe di codice. La realizzazione di prototipi e lo sviluppo di MVP oggi molto pi˘ semplice, dal momento che il processo di verifica e convalida (V&V) del software puÚ essere completato in modo facile e veloce prima dello sviluppo della funzionalit‡ finale. » utile sapere se un'applicazione funziona come previsto, senza bug, e se soddisfa tutti i requisiti di alto livello.

Da dove nascono le paure istintive degli sviluppatori?

Il passaggio dal vecchio SDLC, con eserciti di sviluppatori che compilano e codificano, all'integrazione di piattaforme di sviluppo low-code nei flussi di lavoro non sar‡ certo veloce: tra gli sviluppatori serpeggiano timori viscerali e genuini relativi al rischio di restare disoccupati, alla qualit‡ delle app non autorizzate dall'azienda (senza nessun controllo e con un maggior numero di bug) e all'impossibilit‡ di creare codici personalizzati, solo per citarne alcuni.

C' chi teme che l'utilizzo di piattaforme low-code possa automatizzare alcune delle sue mansioni e quindi metterne a rischio il posto di lavoro, ma non affatto cosÏ. Dal momento che gli sviluppatori possono dedicare pi˘ tempo ad altre attivit‡, sono in grado di riflettere pi˘ a fondo sul prodotto nel suo insieme e di concentrarsi su ciÚ che, in definitiva, conta di pi˘: l'utente finale e la sua soddisfazione in termini di esperienza utente. Toccher‡ a loro pensare a quali vantaggi dovrebbero apportare i propri prodotti nell'ecosistema dell'utente finale.

Alcuni hanno espresso il timore che un ambiente con codice a basso livello sia ingestibile e possa portare a versioni di qualit‡ inferiore, con un maggior numero di bug. Lo sviluppo low-code consente agli sviluppatori del business e ai developer di collaborare in un ambiente drag-and-drop che continua a essere controllato dal reparto IT, qualora gli sviluppatori temessero di perdere il controllo e il verificarsi dell'effetto "black box". E mentre gli sviluppatori mantengono il pieno controllo dell'ambiente di sviluppo, le prove automatizzate riducono il numero di bug e consentono interazioni pi˘ rapide. In definitiva, il team offre un prodotto migliore, che ci riporta al risparmio di tempo derivante dalla rapidit‡ di interazione e consegna.

Un'altra diffusa preoccupazione degli sviluppatori riguarda il fatto che tali piattaforme sono limitate e non consentono di utilizzare codici personalizzati. In realt‡, una piattaforma low-code uno strumento di sviluppo fortemente personalizzabile. Attraverso l'utilizzo di API lato client e lato server, possibile sviluppare, approntare e implementare nuove funzionalit‡, come l'aggiunta di servizi esterni di apprendimento automatico o integrazioni che estendono le funzionalit‡ originarie dell'app a database, widget o a elementi riciclabili dell'interfaccia utente. E l'utilizzo di API per sviluppare questa funzionalit‡ estesa determinato esclusivamente tramite soluzioni con codici personalizzati. Di fatto, la maggior parte delle applicazioni implementate utilizzando piattaforme low-code include parte del codice personalizzato JavaScript e altre integrazioni di linguaggio come C# o Java.

Gli sviluppatori innovativi fanno aumentare i profitti aziendali

Con pi˘ tempo a disposizione e fiducia nel potenziale dell'automazione, funzionalit‡ rapide di debug e implementazioni scalabili in tempi brevi, ora pi˘ che mai gli sviluppatori potranno fungere da forza trainante e sfruttare il proprio potenziale per affrontare il costante impegno necessario per il miglioramento del front-end.

A poco a poco, l'intera azienda comprender‡ di cosa necessario dotarsi ai fini della trasformazione digitale in questo mercato: software su misura con un'esperienza utente migliorata, per soddisfare le aspettative di mercato determinate dai clienti ed evitare di perderli.