Blogs | InSpark

Power Platform: reduceer complexiteit en ontwikkeltijd van apps

Geschreven door Thijs Soepenberg | Jul 16, 2024 8:35:46 AM
Als vervolg op mijn eerdere blog over mijn lessons learned , wil ik jullie nu meenemen in onze tips rondom App ontwikkeling. Hieronder mijn 4 best-practices.

‘One-trick pony’ apps

Indien je nog niet bekend bent met deze uitdrukking: het betreft een app met slechts één functie met één specifiek doel. Bij een declaratie app is dat het indienen van een declaratie en dat zal ook altijd zo moeten blijven. Toch kan het verleidelijk om deze app uit te breiden met andere ‘financiële’ functies, zoals het accorderen van de zojuist ingediende declaratie door de manager van een afdeling. Een uitbreiding van de app met deze functies betekent dat je ondersteuning gaat bieden voor een hele andere doelgroep en dit levert onnodig complexe situaties op. Kies daarom voor een separate app die je beschikbaar stelt voor een manager indien mogelijk.

Reduceer het aantal ‘controls’ per scherm

Met ‘controls’ bedoel ik o.a. labels, invoervelden en knoppen. Het is verleidelijk om alles in één scherm aan te bieden, zodat een eindgebruiker nooit dat scherm hoeft te verlaten, doe dat echter niet. Het wordt hierdoor onnodig complex en het duurt aanzienlijk langer, voordat een scherm geladen is. De toename van complexiteit vermoeilijkt het beheer en de overdracht naar de business  van de applicatie.

Afbeelding 1: Een aantal Power Apps controls die je kunt gebruiken in je app

Maak altijd een app ontwerp

Ik bedoel dan niet een functioneel ontwerp van 10 A4’tjes, maar werk met wireframes. Bepaal welke schermen je nodig hebt in je app, voordat je aan de functionaliteit begint. Definieer de controls op hoofdlijnen in je wireframe. Bepaal hoe je van het ene naar het andere scherm kunt navigeren. Een gezamenlijk whiteboardsessie is hiervoor erg efficiënt. Bij eenvoudige apps kun je ook volstaan met  OneNote (zie afbeelding) of direct in Power Apps indien je een ervaren App ontwikkelaar bent.

Afbeelding 2: Voorbeeld van simpele, maar effectieve wireframes (getekend in OneNote).

Werk vanuit templates en/of een designsysteem

Het is zeer verleidelijk om elke keer weer helemaal opnieuw (from scratch) te beginnen met de ontwikkeling van een nieuwe app. Dit is niet efficiënt en komt de uniformiteit binnen te organisatie niet ten goede. Werk in plaats daarvan met basistemplates en een designsysteem, zodat je telkens dezelfde ervaring aan je eindgebruikers kan aanbieden.

App/Flow Templates

Deze templates bevatten standaard bouwstenen die je elke keer weer opnieuw in je Apps en workflows nodig hebt, zoals navigatie elementen, header & footers, laadschermen, iconen, knoppen en mechanismen/logica voor generieke foutafhandeling. Laat deze templates tot stand komen tijdens de ontwikkeling van de eerste 3 organisatiebrede apps. Deel vervolgens de templates met de andere app ontwikkelaars (ook wel citizen developers genoemd), zodat er een uniforme manier ontstaat voor het ontwikkelen van nieuwe apps.

Designsysteem

Optioneel kun je gebruik maken van een uitgebreid designsysteem. Een designsysteem is een verzameling van herhaalbaar inzetbare UX-componenten (User eXperience) en onderling afgestemde afspraken. Een designsysteem kan helpen om een nog consistentere gebruikerservaring en uniformiteit in apps te bieden. Voorbeelden van twee populaire designsystemen zijn o.a. Bootstrap en Material design. Je bepaalt als organisatie zelf hoever je wilt gaan in het vastleggen van afspraken over het design van je business apps.

Op dit moment is het al mogelijk componenten centraal beschikbaar te stellen in Power Apps via de component library.