Alcuni sviluppatori rabbrividiscono al pensiero di utilizzare piattaforme low-code che li portano fuori dai loro ambienti Java, .NET e JavaScript, o li separano dai loro IDE, framework di test automatizzati e piattaforme devops. Altri hanno adottato piattaforme low-code come strumenti che consentono lo sviluppo rapido di applicazioni, supportano integrazioni complesse e offrono esperienze utente mobile.
Ma gli sviluppatori non dovrebbero semplicemente ignorare le piattaforme low-code e le loro capacità. Le aziende richiedono più sviluppo di applicazioni di quanto la maggior parte dei team IT possa fornire o supportare. L'IT potrebbe non utilizzare una piattaforma low-code per tutto, ma può aiutare ad accelerare lo sviluppo e fornire ulteriori vantaggi.
Mi occupo di strumenti di sviluppo rapido, no-code,citizen developing e altri strumenti di sviluppo rapido da quasi due decenni. Le piattaforme odierne consentono ai team di fornire, supportare ed estendere un'ampia gamma di applicazioni. Sono utilizzati nelle trasformazioni digitali per offrire esperienze ai clienti, semplificare i flussi di lavoro, automatizzare le integrazioni dei dati e supportare la visualizzazione dei dati.
Molte aziende hanno utilizzato piattaforme low-code per sviluppare applicazioni in risposta a COVID-19, per modernizzare le applicazioni legacy o per automatizzare le integrazioni su più piattaforme.
Vantaggi della piattaforma low-code
Le piattaforme low-code sono oggi molto più aperte ed estensibili e la maggior parte dispone di API e altri modi per estendersi e integrarsi con la piattaforma. Forniscono diverse funzionalità attorno al ciclo di vita dello sviluppo del software, dalla pianificazione delle applicazioni alla distribuzione e al monitoraggio, e molti si interfacciano anche con le piattaforme di test e devops automatizzati. Le piattaforme low-code hanno diverse opzioni di hosting, inclusi cloud gestiti proprietari, opzioni di hosting cloud pubblico e implementazioni di data center. Alcune piattaforme low-code sono generatori di codice, mentre altre generano modelli. Alcuni sono più simili a SaaS e non espongono le loro configurazioni.
Le piattaforme low-code servono anche diversi paradigmi di sviluppo. Alcuni si rivolgono agli sviluppatori e consentono un rapido sviluppo, integrazione e automazione. Altri si rivolgono sia ai professionisti dello sviluppo software che ai citizen developeri con strumenti per collaborare e sviluppare rapidamente applicazioni.
Ho selezionato le sette piattaforme qui profilate perché molte offrono soluzioni low-code da oltre un decennio, accrescendo la base di clienti, aggiungendo funzionalità e offrendo opzioni di integrazione, hosting ed estensibilità estese. Molti sono presenti nei rapporti di Forrester, Gartner e altri analisti su piattaforme low-code per sviluppatori e sviluppo cittadino.
Ho escluso le piattaforme aziendali che offrono funzionalità low-code , come Salesforce, SAP, ServiceNow e Cherwell e altre piattaforme di gestione dei processi aziendali (BPM), strumenti di gestione dei progetti, applicazioni del flusso di lavoro e piattaforme di visualizzazione dei dati. Recentemente, i cloud pubblici sono diventati più seri riguardo al low-code. Ho intenzione di trattare le opzioni low-code su AWS, Azure e Google Cloud in un prossimo articolo.
Casi d'uso della piattaforma low-code
È un termine improprio che le aziende selezionino e utilizzino piattaforme low-code solo per flussi di lavoro semplici, integrazioni, moduli, visualizzazioni di dati e sostituzioni di fogli di lavoro. Consentitemi di sfatare questo mito.
Dall'elenco seguente, gli sviluppatori utilizzano codice ridotto per sviluppare rapidamente applicazioni rivolte ai clienti, progettare flussi di lavoro ad alta intensità di dati e automatizzare le integrazioni. Molte di queste sono applicazioni sofisticate che si connettono a più sistemi e hanno un mix di funzionalità abilitate dalle piattaforme low-code e altre funzionalità create dagli sviluppatori di software tramite estensioni.
Ecco un esempio delle applicazioni sviluppate su queste piattaforme.
Appian consente agli sviluppatori di creare rapidamente soluzioni per le esigenze aziendali, come la definizione di applicazioni che supportano il percorso del cliente, ottimizzano le operazioni aziendali e applicano la conformità a policy e normative. Ryder ha utilizzato Appian per sviluppare un sistema di prenotazione mobile-first e dimezzare i tempi di transazione. Bayer ha integrato più sistemi di back-end per studi clinici e processi automatizzati per ridurre il tempo di reporting da ore a minuti.
Boomi Flow si rivolge a casi d'uso dell'automazione, applicazioni mobile, flussi di lavoro incorporati e collaborazione organizzativa. La società di servizi di autotrasporto AM Transport ha utilizzato Boomi per ridurre i costi di scambio elettronico di dati (EDI) del 50% mediante l'acquisizione e l'analisi dei dati da Salesforce, dai sistemi ERP e da più sistemi di gestione dei trasporti. Università come Cornell, University of Sussex e Flinders University utilizzano Boomi per integrarsi su più piattaforme, aggiornare ambienti di apprendimento virtuali e semplificare l’integrazione.
Caspio aiuta le aziende a creare applicazioni personalizzate ottimizzando le esperienze dei clienti e i flussi di lavoro interni. Il Tennessee Department of Health ha costruito un sistema di gestione delle risorse IT che monitora 20.000 risorse statali. J-W Power, operatore della più grande flotta di gas naturale compresso negli Stati Uniti, ha implementato portali personalizzati, intranet e oltre una dozzina di applicazioni IT / operative.
Mendix eccelle nei casi d'uso che richiedono tradizionalmente un'ampia gamma di competenze tecniche e aziendali, comprese applicazioni rivolte ai clienti, esperienze mobile e sostituzioni per lo shadow IT. Rabobank ha fornito con Mendix un'esperienza digitale migliorata, rivolta al consumatore, che ha anche ridotto i costi IT del 50%. Zurich Insurance Group ha rapidamente sviluppato FaceQuote che fornisce preventivi di assicurazioni sulla vita potenziali chiedendo un selfie.
OutSystems aiuta le aziende a sviluppare applicazioni in tre grandi categorie: modernizzazione legacy, innovazione sul posto di lavoro e trasformazione dell'esperienza del cliente. Utilizzando OutSystems, la città di Oakland ha trasformato i servizi digitali per i citizen con un portale single sign-on e Humana ha sviluppato un'applicazione per l'esperienza del cliente per aiutare le persone a trovare le posizioni di test COVID-19.
Quick Base viene utilizzato principalmente per fornire visibilità in tempo reale sui processi operativi dinamici in un'organizzazione. Geisinger Health System ha utilizzato Quick Base per sviluppare un'app operativa COVID che riassegnava i dipendenti e colmava le lacune dove c'erano esigenze critiche. Altre società come Metso nell'industria petrolifera e del gas ed Enel Green Power North America hanno sviluppato applicazioni per supportare i cambiamenti operativi legati a COVID.
VisionX è particolarmente potente in situazioni in cui esistono set di dati complessi in combinazione con processi personalizzati per i quali il software out-of-the-box non è disponibile o non è abbastanza flessibile. Alcuni esempi includono la gestione della flotta per i veicoli dell'area sciistica, la gestione di progetti scientifici per la ricerca collaborativa e la configurazione e la gestione delle risorse per i computer quantistici.
Low-code, SDLC e devops
Le piattaforme low-code hanno capacità e approcci diversi per supportare il ciclo di vita dello sviluppo. Alcuni si concentrano su uno sviluppo rapido e semplificato e supportano ampiamente l'intero ciclo di vita di sviluppo sulle proprie piattaforme. Altri fanno un ulteriore passo avanti e offrono diverse esperienze e funzionalità integrate che consentono ai professionisti dello sviluppo software e agli citizen developer di collaborare allo sviluppo di applicazioni. Le piattaforme low-code rivolte alle aziende offrono una maggiore integrazione con gli strumenti devops e le opzioni di hosting.
Di seguito è riportato un riepilogo di come diverse piattaforme low-code consentono lo sviluppo, l'integrazione, le estensioni, i test e la distribuzione delle applicazioni.
Appian ha strumenti di distribuzione nativi e può anche integrarsi con strumenti devops come Jenkins. Gli sviluppatori possono estendere la piattaforma con Appian Integration SDK con plug-in sviluppati in Java e JavaScript.
Boomi Flow offre uno stack architettonico aperto basato su API REST e un'ampia libreria di connettori di integrazione. Dispone di un debugger integrato e del controllo automatico delle versioni e supporta più tenant per lo sviluppo, il test e altre esigenze del ciclo di vita. Gli sviluppatori possono anche integrarsi con Git, GitLab, Jenkins e altri sistemi di codice sorgente.
Caspio fornisce supporto per lo sviluppo assistito principalmente all'interno della piattaforma, inclusa l'anteprima in tempo reale e il controllo delle versioni delle app. La personalizzazione può essere eseguita con JavaScript, con SQL, utilizzando l'API REST di Caspio e tramite piattaforme di integrazione come Zapier.
Mendix Cloud supporta l'SDLC completo che include gestione del backlog, controllo della versione, test e distribuzione. I team di sviluppo possono sfruttare queste funzionalità o utilizzare integrazioni con strumenti come Jira, Jenkins e presto Git. Le applicazioni possono essere distribuite su Mendix Cloud, AWS, Azure, GCP o su sistemi locali e possono essere accoppiate a tecnologie di container come Cloud Foundry, Kubernetes e Docker. Gli sviluppatori possono estendere le funzionalità di Mendix con azioni Java, widget plug-in JavaScript e TypeScript front-end e altre opzioni di estensibilità.
OutSystems fornisce gli strumenti specializzati richiesti dai diversi membri di un team di progetto e le fasi di sviluppo sono collegate insieme a un livello della piattaforma denominato TrueChange. OutSystems afferma che ci sono pochi motivi per cui gli sviluppatori devono tornare alla codifica tradizionale quando creano applicazioni sulla loro piattaforma e gli sviluppatori possono integrare perfettamente codice personalizzato quando richiesto.
Quick Base è uno stack completamente integrato che genera e ospita automaticamente le applicazioni. Gli sviluppatori possono testare le funzionalità con la sandbox Quick Base, estenderne le funzionalità con l'API RESTful e sfruttare le pipeline di Quick Base per le funzionalità di automazione e integrazione drag-and-drop.
VisionX è una piattaforma Java low-code che si integra con l'IDE Eclipse e supporta la generazione di codice bidirezionale. Questa architettura consente agli sviluppatori di lavorare con qualsiasi controllo di versione e piattaforme di automazione dei test tradizionali. Le applicazioni possono essere distribuite utilizzando Jenkins o altri strumenti CI / CD ed eseguite in server di applicazioni come Tomcat, WildFly e GlassFish.
Le piattaforme low-code rispondono all'esigenza di velocità
Ciò che è universale nel parlare con questi fornitori di piattaforme low-code è il loro desiderio di aiutare le aziende e gli sviluppatori a rispondere alla crescente necessità di sviluppare applicazioni per flussi di lavoro interni, esperienze, integrazioni e automazioni rivolte ai clienti. Non stanno cercando di sbarazzarsi del codice, ma stanno adottando misure per collaborare con gli sviluppatori e migliorare la loro capacità di sviluppare ed estendere applicazioni di livello mondiale.
Gli sviluppatori non dovrebbero mai smettere di imparare, testare e sperimentare nuovi strumenti e paradigmi. Se hai evitato di rivedere e testare piattaforme low-code, ora è il momento di rimboccarti le maniche e tentare una prova.