Composability and Drupal: Scalable Headless Implementation
Composability and Drupal
The need for companies to swiftly respond to changes and the desires and needs of customers has always been crucial. However, since the outbreak of the COVID-19 pandemic, this need has become increasingly evident due to the tremendous disruption faced by businesses. Overnight, physical stores were compelled to establish or expand their digital presence. Companies that had built their digital infrastructure using modular and open platforms gained a significant advantage over their competitors.
Een van de nieuwste trends op het gebied van digitale ervaringen is een composable architectuur. Het gebruik van een composable architectuur stelt organisaties in staat om snel nieuwe kanalen toe te voegen of digitale mogelijkheden toe te voegen of te vervangen. De snelheid, wendbaarheid en flexibiliteit die composable architecturen bieden, bereiden organisaties beter voor op het aanpassen aan veranderende technologische en consumententrends.
Wat is een composable architectuur?
Een composabele architectuur is een modulaire aanpak waarbij de digitale ervaringskanalen (bijv. website, mobiele app, digitale bewegwijzering) effectief worden gescheiden van de achterliggende platforms (bijv. commerce, contentmanagementsysteem, zoekfunctionaliteit). Twee van de belangrijkste principes van composabele architecturen zijn: composabele architecturen zijn onafhankelijk van de front-end en composabele architecturen zijn onafhankelijk van de back-end. Het feit dat ze onafhankelijk zijn van de front-end maakt het mogelijk om een composabele architectuur omni-channel te maken. Het feit dat ze onafhankelijk zijn van de back-end maakt het mogelijk om een composabele architectuur omni-capabel te maken. Deze twee principes vormen de sleutel tot de flexibiliteit die wordt geboden door een composabele architectuur.
Om deze twee principes te realiseren, wordt een orkestratielaag gebruikt om de front-ends te scheiden van de back-ends. De orkestratielaag is verantwoordelijk voor de integratie met de back-end systemen, het toepassen van bedrijfslogica en processen, en het bieden van een interface om de gegevens en inhoud aan de front-end applicaties te leveren. Om aan deze verantwoordelijkheden te voldoen, wordt de orkestratielaag gebouwd met behulp van verpakte bedrijfsmogelijkheden (PBC's). PBC's maken het mogelijk om de gegevens en inhoud op een georganiseerde manier uit de back-end systemen op te halen, te verwerken en terug te sturen naar de front-end applicaties. Er is geen vaste manier om de PBC's te bouwen en te organiseren, wat extra flexibiliteit biedt.
Het gebruik van een composabele architectuur resulteert in een flexibel en wendbaar systeem. Het toevoegen van een nieuw kanaal, platform of PBC kan snel worden gedaan met een kortere time-to-market. De back-end ontwikkelaars kunnen zich richten op het blootstellen van meer functionaliteit en platforms. De front-end ontwikkelaars kunnen zich richten op het samenstellen van oplossingen om aan de behoeften van eindgebruikers te voldoen. De architectuur kan zich aanpassen aan de voortdurend veranderende zakelijke behoeften. Met andere woorden, composabel is schaalbaar zonder afhankelijkheid van een specifieke presentatielaag.
Composabiliteit binnen Drupal
Je vraagt je misschien af hoe Drupal past bij composabiliteit, aangezien Drupal al lange tijd bestaat en gedurende die tijd is blijven evolueren. Op veel manieren is Drupal, zoals Dries Buytaert aangeeft, geëvolueerd tot een composabel digitaal ervaringsplatform op zichzelf. Het doel is altijd geweest om ontwikkelaars in staat te stellen flexibele systemen te bouwen met een modulaire aanpak, zodat hun organisaties snel kunnen inspelen op de behoeften van hun klanten.
Drupal was een van de pioniers in de headless-beweging. Modules om de inhoud via REST-API's met behulp van JSON en GraphQL beschikbaar te stellen, waren al beschikbaar sinds Drupal 7 en veel van deze modules zijn nu opgenomen in de kern van Drupal. Sterker nog, er zijn veel recepten en startkits beschikbaar die het bouwen van een headless Drupal-site gemakkelijker maken.
Modulariteit is een belangrijke eigenschap van een composabele architectuur. Het vermogen om oplossingen op te bouwen uit herbruikbare componenten biedt flexibiliteit en snelheid bij het bouwen van nieuwe ervaringen. Het Drupal-platform is modulair. Drupal-kern wordt geleverd met een verscheidenheid aan modules die worden gebruikt om de meeste Drupal-sites te bouwen. Daarnaast heeft de Drupal-gemeenschap duizenden modules gebouwd die Drupal-kern uitbreiden en ontwikkelaars in staat stellen de functionaliteit verder uit te breiden. Ontwikkelingen zoals Project Browser maken het gemakkelijker om deze modules te vinden en te gebruiken.
Een deel van de belofte van een composabele architectuur is het vermogen om snel een ervaring samen te stellen. Het hebben van een low-code/no-code-tool kan het proces echt versnellen, en hier blinkt het Drupal-platform uit. Layout Builder is een module van Drupal-kern waarmee redacteuren pagina's kunnen bouwen met behulp van slepen en neerzetten met vooraf gebouwde componenten die zijn gemaakt door ontwikkelaars. Producten zoals Site Studio van Acquia tillen het bouwen met low-code/no-code naar een hoger niveau. Het bedrijf is vrij om te innoveren op de snelheid die het nodig heeft.
In veel opzichten biedt Drupal een composabele oplossing. Drupal biedt out-of-the-box ondersteuning voor een headless-website. Het is gebouwd met een modulaire aanpak, is open en maakt het gemakkelijk om veel systemen samen te brengen. Het biedt ook low-code/no-code builders die het eenvoudig maken om oplossingen samen te stellen. En hoewel Drupal veel van de voordelen van een composabele oplossing kan bieden, bereikt het niet het volledige potentieel van een echt composabele oplossing.
Composabiliteit met Drupal
Een echt composabele architectuur is een modulaire oplossing waarbij de front-end en back-end volledig worden gescheiden door een orkestratielaag. Een composabele architectuur is flexibeler, schaalbaarder en efficiënter dan een monolithische architectuur. Dit resulteert in enorme voordelen voor de organisatie. Als er behoefte is aan een extra kanaal in de digitale ervaring, hebben de bouwers de flexibiliteit om het precies te bouwen zoals dat nodig is door gebruik te maken van de al gebouwde componenten. En als de behoeften van de organisatie veranderen, kunnen die componenten op één plek worden bijgewerkt om efficiënt wijzigingen door te voeren. Bij schaalvergroting kunnen de back-end systemen worden vervangen en opgeschaald zonder de digitale ervaringskanalen te verstoren.
Drupal heeft een lange geschiedenis als headless CMS. Sinds Drupal 8 wordt Drupal-kern gebruikt om enkele van de meest innovatieve en krachtige headless-ervaringen mogelijk te maken. Drupal-kern biedt REST- en JSON:API-ondersteuning, waardoor ontwikkelaars de optie hebben om Drupal gekoppeld of headless te gebruiken. Daarnaast biedt Drupal GraphQL-ondersteuning door het installeren van een community-contrib-module.
Drupal excelleert echt als CMS als het gaat om complexe publicatieworkflows en complexe contentmodellering. Drupal heeft een volwassen set functies die het gemakkelijk maken om workflows en gecompliceerde datamodellen te bouwen. Er is veel flexibiliteit en kracht die kan worden benut met Drupal.
Door gebruik te maken van de headless-mogelijkheden van Drupal kan Drupal een belangrijk onderdeel zijn van een composabele oplossing. Contentbeheerders zijn vertrouwd met het gebruik van Drupal en ontwikkelaars kunnen gebruikmaken van de kracht van Drupal. In een composabele architectuur kunnen de vele functies van Drupal worden gebruikt, terwijl ook andere platforms worden gebruikt voor hun sterke punten. Het best-of-breed model maakt gebruik van het beste van alle werelden.
Composabele architecturen zijn een krachtige benadering om op schaal headless implementaties te realiseren, en Drupal is een krachtig instrument dat veel concepten van een composabele architectuur omarmt wanneer het op zichzelf wordt gebruikt. Maar Drupal kan ook een belangrijke rol spelen binnen een bredere composabele oplossing, waarin meerdere platforms en systemen naadloos samenwerken om innovatieve digitale ervaringen te creëren.