Low code platforms | Uitleg en soorten – ICT informatiecentrum

Low code platforms

Low code platforms bieden een ontwikkelomgeving voor applicaties die zonder specialistische programmeerkennis gemaakt kunnen worden. Enige programmeerkennis is dus wel nodig. No code platforms hebben diezelfde functie voor applicaties die bijna zonder programmeerkennis ontwikkeld kunnen worden. Steeds meer organisaties omarmen deze platformen. Beide bieden een oplossing om sneller en goedkoper nieuwe applicaties te bouwen of om nieuwe functionaliteit toe te voegen aan hun bestaande systemen.

Low code softwareontwikkeling

Standaard softwareoplossingen zijn een praktische keuze als u snel reeds ontwikkelde bedrijfssoftware of een app nodig heeft. Helaas voldoet een standaardoplossing niet altijd aan alle eisen en is geheel of gedeeltelijk maatwerk nodig. Daarvoor bestaan verschillende alternatieven. De eerste is het ‘from scratch’ ontwikkelen van een maatwerkapplicatie op de conventionele manier. Dit full code programmeren biedt softwareontwikkelaars alle vrijheid om de gewenste functionaliteit te realiseren. Maar het is specialistenwerk en elke regel code moet ook echt geschreven worden. Dat wordt een probleem als de business haast heeft en er niet voldoende programmeercapaciteit beschikbaar is. Daarom bestaan er naast full code programmeren twee steeds populairdere alternatieven: low code en no code platforms. Hiermee gaat softwareontwikkeling sneller en eenvoudiger.

Soorten applicatieontwikkeling

De evolutie van programmeertalen kent verschillende generaties. In de jaren tachtig werd vooral geprogrammeerd met derde generatie talen (3GL) zoals COBOL, Pascal, C en Fortran. Vanaf de jaren negentig verschenen vierde generatie talen (4GL) met een hoger abstractieniveau, die het programmeerwerk versnelden. Voorbeelden daarvan zijn SQL en Progress. Deze werden aangevuld met methoden als computer assisted software engineering (CASE) en rapid application development (RAD).

Om het ontwikkelen nog eenvoudiger te maken werd de focus gelegd op visueel werkende (web)tools en programmeren op basis van kant-en-klare componenten. De echte doorbraak hiervan was de komst van low code en no code platforms aan het begin van dit millennium. Met hulp van deze platforms kunnen applicaties gebouwd worden, zonder specialistische technologische kennis. Een vroege vorm hiervan is Excel. Gebruikers hiervan hoeven niet te kunnen programmeren om data in een spreadsheet te visualiseren en te analyseren.

Low code ontwikkelplatformen

Voor het ontwikkelen van low code en no code applicaties wordt gebruik gemaakt van ontwikkelplatforms met een grafische interface. De werking daarvan is visueel, logisch en overzichtelijk, vooral dankzij zogenaamde drag-and-drop tools. Bouwstenen met specifieke functionaliteiten worden eenvoudig aan elkaar gekoppeld tot de gewenste functie, zonder dat de ontwikkelaar zich zorgen hoeft te maken over de onderliggende code die uiteindelijk voor de juiste werking van de applicatie zorgt.

Voor wie ervaring heeft met het maken van websites: het principe van het bouwen van low en no code applicaties via een platform is vergelijkbaar met het bouwen van een website met behulp van WordPress. Met WordPress bouwt u snel en eenvoudig nieuwe webpagina’s door gebruik te maken van vaste, bij een template behorende elementen. Hierbij hoeft u zich geen zorgen te maken over de onderliggende HTML code die de daadwerkelijke opbouw en werking van de pagina definieert. Bij low code en no code wordt de rol van WordPress ingenomen door het ontwikkelplatform van leveranciers zoals OutSystems, Mendix, Thinkwise, GeneXus, Airtable, AppSheet en de app ontwikkelplatformen van Salesforce, Microsoft en Google.

Gebruik van de platforms

Programmeren met low code en no code tools is gemakkelijker dan traditioneel programmeren. Alleen als applicaties complexe functies moeten krijgen, kan programmeren in full code een betere keuze zijn. Er wordt in beide gevallen gebruik gemaakt van visuele tools, waarbij u functionele componenten selecteert en in een visuele flow plaatst. Er is een bibliotheek met functies die u kunt gebruiken om een applicatie te ontwikkelen. Aspecten als de datastructuur worden automatisch ‘onder de motorkap’ aangemaakt op basis van de ingerichte schermen en geselecteerde functies. Aanpassingen worden direct weer geschikt gemaakt voor diverse besturingssystemen, waardoor een applicatie altijd actueel is.

Ook logica en validaties kunnen eenvoudig langs de visuele weg toegevoegd worden. Verder zijn randzaken als dependency management, testen en deployment vergaand te automatiseren. Er is dus relatief weinig programmeerkennis nodig om software te ontwikkelen met low code platform en bijna geen programmeerkennis voor no code platforms. Technisch verschillen low code en no code platforms vooral van elkaar door de toegepaste technologie. Waar low code platforms werken met Java en .NET, werken no code platforms met HTML en Javascript. Dit verklaart direct dat de complexiteit van low code applicaties veel groter kan zijn dan die van no code applicaties.

Model driven development

Low code platforms maken de organisatie minder afhankelijk van gespecialiseerde ontwikkelaars. Dat betekent niet dat het inrichten, configureren en parametriseren van de systemen die ermee ontwikkeld worden, eenvoudig is. Om te voorkomen dat de complexiteit van de ontwikkellaag wordt verplaatst naar de applicatielaag, bestaat er een aanpak die model driven development genoemd wordt. Deze methodiek is bij uitstek geschikt voor het ontwikkelen en overzetten van een serie complexe applicaties. Denk aan applicaties die zijn opgebouwd uit heel veel tabellen en formulieren met een veelvoud aan afhankelijkheden en dwarsverbanden. Deze zijn prima te ‘re-engineeren’ met een model driven low code platform. U kunt er goedwerkende grafische interfaces mee genereren en er is geen testing nodig, omdat de applicatie geen bugs kan bevatten.