Wat is een Model-Driven App?

In de blogreeks: ‘Ontdek de bouwstenen van Power Apps’ behandelen we een voor een alle onderdelen van Power Apps. In het vorige blog uit de reeks hebben we het gehad over Canvas Apps. In dit blog nemen we Model-Driven Apps onder de loep. Ontdek wat een Model-Driven App is in Power Apps, wat je hier mee kan en hoe het samenwerkt met andere onderdelen binnen het Power Platform.

 

Wat is een Model-Driven App in Microsoft Power Apps?

Model-Driven Apps zijn een onderdeel van Microsoft Power Apps. Het is een type applicatie binnen Power Apps.

In 2018 zijn Model-Driven apps voor het eerst geïntroduceerd door Microsoft. Bij Model-Driven apps draait alles om het datamodel en de onderliggende structuur van de data. Bij een Model-Driven App kan alleen Dataverse worden gebruikt als gegevensbron voor de applicatie.

Wil je een Power Apps applicatie ontwikkelen met een andere gegevensbron dan Dataverse? Lees dan hier het blog over Microsoft Canvas Apps, bij dit type app kan je gebruik maken van één van de 1000+ connectors.

Een Model-Driven App bestaat onder andere uit een sitemap, view en forms. Dit zijn standaard componenten die altijd beschikbaar zijn:

  • Sitemap: De sitemap vormt de navigatiestructuur van de applicatie. Hiermee bepaal je welke selecties en tabellen toegankelijk zijn voor gebruikers.
  • Views: Dit zijn vooraf gedefinieerde weergaven waarmee gegevens in een lijst of tabelvorm worden gepresenteerd. Gebruikers kunnen snel door items bladeren en de weergaven kunnen worden aangepast om specifieke kolommen of filters te tonen.
  • Forms: Forms worden gebruikt om de details van een specifiek item te bekijken en deze te bewerken.

Forms en views worden automatisch gegenereerd bij elke tabel in Dataverse. Dit is een standaard lay-out. In de Dataverse tabel kunnen nieuwe forms en views worden aangemaakt die volledig zijn afgestemd op de verwachtingen van de gebruiker. Wil je meer weten over Dataverse? Lees dan hier het blog: wat is Dataverse?


De Model-Driven App Designer maakt het eenvoudig om apps te bouwen met componenten zoals dashboards en formulieren.

 

Wat kan je met een Model-Driven App?

Met een Model-Driven App is het mogelijk om ingewikkelde processen te digitaliseren en automatiseren. Waar Canvas Apps flexibiliteit in design bieden, hebben Model-Driven apps een meer data-gestuurde aanpak. Hierbij ligt de focus op het structureren en beheren van data. Om dit verder toe te lichten heb ik enkele Model-Driven Apps use-cases op een rij gezet:

  • Klantbeheer (CRM): Voor bedrijven die de interacties van hun klanten willen beheren in één systeem kan een Model-Driven App uitkomst bieden. De app kan helpen bij het bijhouden van klantgegevens, verkoopkansen en serviceverzoeken. Dit maakt het mogelijk om klantinteracties en documentatie zoals offertes en verkoopcontracten samen te brengen in één app.
  • Klantenservice: In veel organisaties worden klantinteracties zoals: klantvragen, klachten en verzoeken vaak beheerd via verschillende kanalen zoals e-mail, telefoon of andere losse documenten. Dit kan leiden tot verwarring en vertraging in het antwoordproces. Een Model-Driven App kan een oplossing bieden. Alle klantinteracties kunnen dan namelijk in één systeem worden vastgelegd. Dit maakt het mogelijk om klantvragen snel toe te wijzen aan de juiste medewerkers, de voortgang te volgen, automatische herinneringen te versturen en updates in te stellen.
  • Inventarisatiebeheer: Voor bedrijven die hun voorraad willen beheren van inkoop tot verkoop kan een Moden-Driven App helpen bij het bijhouden van voorraadniveaus, bestellingen en leveringen. Zo hebben wij voor SURF een Journal Catalogue gebouwd. In deze Model-Driven App wordt alle data rondom onderhandelingen van publicaties opgeslagen en verwerkt. Lees hier meer over deze case.
  • Compliance en Risicobeheer: Voor veel organisaties die moeten voldoen aan regelgeving en risicovereisten van de overheid, kan het rapporteren en naleven van deze richtlijnen een tijdrovende en lastige taak zijn. Audits die handmatig worden uitgevoerd, moeten vaak afzonderlijk worden verwerkt en vervolgens samengevoegd worden tot één overzicht. Een Model Driven App kan hier een oplossing voor bieden. Zo kun je alle audits en compliance-gegevens centraliseren in één systeem. Door het maken van verschillende formulieren kunnen alle type en soorten audits eenvoudig in de app worden uitgevoerd en opgeslagen. De opgeslagen data uit de app kan eenvoudig worden geëxporteerd wanneer dit nodig is.


Met Model-Driven Apps worden gegevens op een gestandaardiseerde manier ingevoerd, ondersteund door slimme achterliggende logica.

 

Rol binnen Power Apps

Model-Driven Apps zijn geschikt voor complexe toepassingen en vraagstukken. Ze zorgen voor een gestandaardiseerde gebruikerservaring door de interface automatisch te genereren op basis van het datamodel. Model-Driven Apps bieden ook ingebouwde ondersteuning voor workflows en business rules . Met workflows kunnen taken vanuit de app worden geautomatiseerd en met business rules kunnen formulieren dynamisch worden aangepast op basis van specifieke condities.

Waar bij Canvas Apps de focus ligt op één specifieke taak en Power Pages zich richt op externe gebruikers, zijn Model-Driven Apps ervoor om gehele bedrijfsprocessen te automatiseren en verbeteren.

 

Hoe werken Model Driven Apps samen met het Power Platform?

Model-Driven Apps werken naadloos samen met de andere onderdelen van het Power Platform. Door de verschillende onderdelen van het Power Platform met elkaar te integreren kunnen waardevolle oplossingen worden gebouwd. Hieronder heb ik een aantal voorbeelden (per onderdeel van het Power Platform) op een rij gezet:

  • Dataverse: Model-Driven Apps maken altijd gebruik van Dataverse als gegevensopslag. Hierdoor werken deze opties uitstekend met elkaar samen. In deze Dataverse tabel(len) staan alle data, forms en views centraal opgeslagen.
  • Power Automate: Met Power Automate kunnen processen binnen een Model-Driven App worden geautomatiseerd. Dit kunnen Power Automate flows zijn die op basis van een bepaalde status veranderingen uitvoeren of flows die na een klik op een knop worden uitgevoerd.
  • Power BI: Power BI kan worden geïntegreerd in Model-Driven Apps om dashboards en rapporten te tonen. Het is mogelijk om een Power BI rapport of dashboard toe te voegen aan een Model-Driven App.
  • Power Pages: Een Model-Driven App kan onderdeel zijn van een Power Pages site door verbinding te maken met de Dataverse-tabellen van de site. Ingezonden verzoeken of aanvragen via de Power Pages site kunnen worden bekeken en beoordeeld in een Model-Driven App. Hierdoor is een naadloze verwerking van externe aanvragen mogelijk.

 

Beperkingen Model-Driven App

Naast alle voordelen en mogelijkheden die Model-Driven Apps bieden, zijn er ook een aantal beperkingen. Model-Driven Apps vereisen altijd een Dataverse database. Dit betekent dat gebruikers in het bezit moeten zijn van een Power Apps Premium license. Daarnaast is er een beperkte aanpassingsmogelijkheid in de UI (User Interface) en UX (User Experience). Dit maakt de applicaties in sommige gevallen minder intuïtief en gebruiksvriendelijk.

 

Conclusie

Model-Driven Apps onderscheiden zich doordat ze sterk datagestuurd zijn en zich richten op het beheren van complexe bedrijfsprocessen. Ze zijn ideaal voor organisaties die met grote hoeveelheden data en veel verschillende tabellen werken vanwege de koppeling met Dataverse. Model-Driven Apps zijn de perfecte keuze voor organisaties die willen automatiseren en efficiënter willen werken. Model-Driven Apps zijn robuust en schaalbaar en hebben de mogelijkheid om integraties met andere Power Platform-tools zoals Power Automate, Power BI en Power Pages te benutten voor verdere automatisering en rapportage.

Maak een afspraak

Blijf op de hoogte

Op de hoogte blijven van alle ‘Ontdek de bouwstenen van Power Apps’ blogs? Schrijf je dan in voor onze nieuwsbrief. Zo ontvang je elke maand alle nieuwste content direct in je mailbox. Je kunt je inschrijven via de knop hieronder.

schrijf je hier in

Geschreven door Mathijs van der Ven
Low-Code Consultant