Power Platform-governance

Risikoscreeningen indikerer forretningsrisikoen ved Power-løsningen og er vejledende for løsningsejer.
Løsningsejer er en leder i enhedsadministrationen bestående af fællesadministrationens vicedirektørområder og de fakulteternes administrative centre. Der kan dog også være tale om institutter, tværfakultære enheder og andre enheder.

Nogle løsninger tilgår imidlertid AU's it-systemer med høj risikoprofil (Systemerne er taget fra systemlisten) og som led i risikostyringen skal systemejerne udarbejde regler og retningslinjer for brugeres/løsningers adgang til data fra systemerne ligesom overholdelse af disse regler og retningslinjer indgår i governancemodellen.

På basis af det besluttede risikoniveau, evt. retningslinjer fra systemejer, risikoappetit og andre hensyn, fastlægger løsningsejer, administrationslederen, om løsningen skal følge governance svarende til risikoniveauet eller et højere niveau. 

Vær opmærksom på, at kun basal governance er fuldt defineret, mens udvidet og omfattende governance stadig er under udarbejdelse. Udvidet governance indeholder også basal governance, mens omfattende governance indeholder både omfattende og udvidet governance. 

Der er indtil videre udelukkende udviklet governanceregler for Power Apps og Power Automate, mens der ikke gælder fælles AU-regler for Power BI og Power Virtual Agents endnu.

Principper i governancemodellen

Ud over hovedprincippet om 3 governanceniveauer er der en række principper, der sætter rammen for governancemodellen.

Et grundprincip i den differentierede governancemodel er, at at krav på lavere niveau også gælder for eller styrkes på højere niveauer. Altså hvad der skal gælde for basal governance skal også gælde for udvidet governance og tilsvarende hvad der gælder for udvidet governance skal også gælde for omfattende governance.

Et andet overordnet princip er, at et governanceaspekt, der gælder på et højere governanceniveau, bør anbefales fulgt på det underliggende governanceniveau såfremt der med en løsning er forbundet risici som addresseres af governanceaspektet.

Generelt skal den differentierede governancemodel omfatte governance og "best pratice" almindeligvis anbefalet for it-organisationer og løsninger på Power Platformen. Derudover skal den følge den særlige praksis for governance der bliver brugt af AU's it-organisation og følge specielle AU-retningslinjer for Power Platformen og den differentierede governancemodel.

Riskoniveau og typen af udviklere og løsninger er retningsgivende for hvilket governanceniveau en governanceaspekt skal være på.

Alle løsninger på Power Platformen skal som minimum overholde basal governance som indebærer en initialrisikoscreening der kan have betydning for det videre udviklingsforløb.


Basal governance er primært relevant ved enkeltstående løsninger der består af en enkeltstående løsninger som f.eks. desktopflows, cloudflows, powerapps eller noget andet, der kan bruges selvstændigt, og som befinder sig i standardmiljøet Aarhus universitet. Løsningen kan dog også være i et andet miljø og bestå af flere apps og/eller flows.

Risikoscreening

Inden start på udvikling af en løsning gør man sig klart hvad formålet er, og vha. riskomodellen gennemføres en hurtig risikoscreening hvor man reflekterer over de forskellige risikoaspekter.

Hvis resultatet er lav forretningsrisko ved løsningen, kan man umiddelbart gå i gang med at lave løsningen under basal governance. Undervejs skal man man have risikoaspekterne i mente og ændrer forudsætningerne sig, laves en ny riskovurdering som evt. kan give anledning til at risikoniveauet ændrer sig.

Er man i tvivl kan man prøve at drøfte det med en kollega eller ens nærmest leder.

Viser den første eller en senere revideret risikoscreening, at der er medium eller høj forretningsrisiko, kontaktes ens administrationsleder, som laver en ny samlet vurdering og beslutter risikoniveauet for løsningen.

Er man ikke selv den oprindelige udvikler af en løsning, men blot benytter en kopi af en løsning, overtager man alligevel det fulde ansvar for løsningen og skal agere som om man er udvikler af den. Det indebærer, at man selv skal lave en lokal risikoscreening og, afhængigt af udfaldet, få fastlagt risikoniveauet af ens lokale leder og sørge for at overholde governance for det fastlagte niveau, herunder overholde retningslinjerne for de højrisikosystemer løsningen måtte benytte sig af.

Navnekonvention

  • Apps, flows og andre komponenter og løsninger navngives, så navnet så vidt muligt afspejler formål og funktionalitet — uden navnet bliver unødigt langt.
    Hold gerne navnet under 60 tegn, da længere navne ofte bliver afkortet i forskellige visninger og kan være svære at skelne fra andre, hvor kun de sidste tegn adskiller dem.
     
  • Relaterede komponenters navne og evt. tilhørende løsninger har et fælles præfiks, som er unik i de miljøer hvor de anvendes — det vil sige, at navnene starter med den samme tegnsekvens.
    Dette gør det lettere at organisere og identificere komponenterne, da de automatisk vil blive vist samlet i listninger. Det forenkler også søgning og skaber et visuelt overblik over, hvilke elementer der hænger sammen.

Eksempler fra kreditkortløsningen

Komponeter i hovedløsningen:

  • CreditCard
    — navnet på lærredapplikationen (canvas appen); visningsnavnet er dog Credit Card, da det er synligt i browseren og i Power Apps-applikation på mobilen.

    Workflowtrin cloud flows:
     
  • CreditCardWfApprovalNotifyInstant
  • CreditCardWfApprovalTrans
  • CreditCardWfRegistrationNotifyInstant
  • CreditCardWfRegistrationTrans

    Workflow hjælpe cloud flows:
     
  • CreditCardWfAuxLogStepEvent
  • CreditCardWfAuxStepEntryEnd
     

Løsninger:

  • CreditCardMainLine
    — navnet på hovedløsningen med alle komponenter der til sammen udgør løsningnen
  • CreditCardDataverseTables
    — navnet på et løsningssegment bestående af tabellerne i løsningen

Beskrivelsesfeltet

Det er vigtigt, at du er opmærksom på at udfyldes beskrivelsesfeltet for din app eller dit flow. Det er særligt vigtigt i forhold til at man på et senere tidspunkt nemt kan afkode hvad et flow gør. Vi anbefaler at man udfylder beskrivelsesfeltet både i flow/app og i registreringsarket til apps og flows.

  • Apps og flows skal have en beskrivelse der uddyber formål og funktionalitet.
  • Desktop flows der bruger nogle af AU's højrisikosystemer skal slutte beskrivelsen af med at angive hvilke systemer. det drejer sig om med en sidste linje på formen:
    Højrisikosystemer: System1, ....
    hvor Systemi er navnet på systemet i henhold til højrisikosystemer, f.eks.
    Navision Stat, Workzone, mitHR, AU STADS, MoveON. 
    Marker med "ingen", hvis der ikke bruges nogle AU højrisikosystemer.

Adgang til data fra højrisikosystemer

Løsninger der tilgår systemer med høj risikoprofil, f.eks. Navision Stat, Workzone, mitHR, AU STADS, MoveON, fra listen af højrisikosystemer skal følge de udarbejdede retningslinjer forbrugeres/løsningers adgang til data fra systemerne. Her er to vicedirektørområder der har udstillet retningslinjer:

Kan man ikke finde retningslinjer for et system, kontaktes systemforvalteren som er anført på systemlisten.

Anbefalet

  • Det anbefales at arbejde med engelsk visningssprog (grænseflade- eller UI-sprog) i de dele af Power Platformen, man benytter.

  • Ved at anvende de engelske termer og formulere søgninger på engelsk, øger man markant sine chancer for at finde relevant vejledning og support, da der findes langt mere dokumentation og community-indhold på engelsk. Samtidig bliver det lettere at forstå og anvende søgeresultaterne i sin egen kontekst.

  • Hvordan man skifter sprog afhænger af, om man ønsker at gøre det generelt for M365 eller kun for en bestemt del af Power Platformen samt om det er online- eller desktopudgaver, man arbejder med. 

  • Ved arbejde med løsninger, der består af flere komponenter, anbefales det at oprette en eksplicit Solution og i løsningen oprette/udpege de komponenter der indgår i den samlede løsning. Løsningen bør navngives i overensstemmelse med navnekonventionen og forsynes med en dækkende beskrivelse.

  • Det sikrer et struktureret overblik, nem adgang til de enkelte dele af løsningen og mulighed for samlet backup og overførsel mellem miljøer.

Overvej om følgende emner, som er uddybes i udvidet governance, kunne være relevante:

  • God kodeprakis og intern dokumentation
  • Backup af løsning (eksporter og gem versioner med passende mellemrum, f.eks. før og efter større ændringer)

Der arbejdes med 3 miljøer:

  • Udviklingsmiljø (Dev) af typen Sandbox
    Her udvikles og opdateres løsningerne og enkeltdelene testes af udvikleren på testdata.
    Det er også her udviklere og andre debugger, afprøver koncepter og eksperimenterer med forskellige løsningsmuligheder og teknikker.
     
  • Testmiljø (Test) også af typen Sandbox
    Her afprøves og godkendes nye løsninger og ændringer af eksisterende løsninger i deres helhed af prøvebrugere, testere og forretningsrepræsentanter.
    Miljøet bruges også til at teste selve udrulningen af løsningerne og opdateringer til dem.
     
  • Produktionsmiljø (Prod) af typen Production
    Indeholder løsninger der arbejder på faktiske produktionsdata og benyttes af rigtige slutbrugere og forretningen.
    Microsoft garanterer højere oppetid og support på Production-miljøer

Miljøerne er underlagt governance der bla. indebærer, at adgang og deling styres gennem sikkerhedsgrupper.

  • Enhver løsning er gjort eksplicit gennem oprettelse af en Solution som udpeger alle de Power Platform-komponenter der indgår i løsningen.
  • Der laves backup af løsninger.
  • Der tilstræbes god kodeprakis og intern dokumentation af alle løsningskomponenter.
  • Højere grad af modularisering med genbrug og hvor konfiguration inkl. værdier, der varierer mellem miljøer, er udskilt i miljøvariable.

Det anbefales at undgå punkt-til-punkt-integration så vidt det er muligt — se omfattende governance.


  • Der arbejdes med undtagelseshåndtering (exception handling) og kodereview, og intern dokumentation suppleres med ekstern dokumentation af hele løsningen.
  • Systematisk og grundig risikobaseret test af funktionalitet — testindsatsen afspejler risikoen.
  • Stort fokus på sikkerhed med logning, backup af mest kritiske data, monitorering, fejlhåndtering og genetableringsplaner.
    Der laves en fuld risikovurdering i henhold til informationssikkerhedspolitikken og kritiske aspekter vurderes og adresseres i løsningen jf. spørgeguide m.m.
  • Løsning nedbrudt og modulariseret i naturlige mindre komponenter herunder
    • løs koblet integration til andre systemer gennem AU's standardservices og -konnektorer
    • punkt-til-punkt-integration, hvad enten det er med API eller sker gennem GUI-robot, reduceret og isoleret mest muligt og maskeret som servicemetoder i selvstændige komponenter
  • Mere formaliseret og standardiseret drift med løbende vurdering af behov for revidering af løsningen.