Del via


Anbefalinger til standardisering af værktøjer og processer

Dette gælder for denne Power Platform kontrolliste til velarkitekt driftsmæssige kontrollister:

OE:04 Optimer processer til softwareudvikling og kvalitetsstyring ved at følge gennemprøvede fremgangsmåder for udvikling og test i branchen. Du kan få en utvetydig rolletildeling ved at standardisere fremgangsmåder på tværs af komponenter som f.eks. værktøjer, kildekontrol, programdesignmønstre, dokumentation og designvejledninger.

I denne vejledning beskrives anbefalingerne til definition af standarder for udviklingsværktøjer og -processer. Hvis du definerer ensartede praksisser, resulterer det i et effektivt arbejdsteam og arbejde af høj kvalitet. Højtydende teams bruger gennemprøvede værktøjer og processer fra branchen til at minimere spild af indsats og potentielle kodefejl.

Vigtigste designstrategier

Det første, du skal gøre for at optimere udviklingspraksis, er at standardisere værktøjer og processer. Hvis det er muligt, kan du bruge gennemprøvede løsninger fra branchen i stedet for at udvikle dine egne. For alle standardiserede værktøjer og processer kan du tilbyde træning for at sikre, at dine teams kan bruge dem effektivt.

Hvis du vil definere standarder, der er med til at optimere din udviklingspraksis, skal du overveje følgende anbefalinger.

Brug værktøjer, der er tilgængelige på platformen

Prioriter brugen af Power Platform Tools, og brug velkendte og færdige standardværktøjer, og standardiser brugen af dem. Yderst effektive tekniske teams indfører de bedste værktøjer. Undgå at udvikle løsninger til planlægning, udvikling, test og samarbejde. Vælg værktøjer, der opfylder kravene til arbejdsbelastningen.

Værktøjer skal levere følgende funktioner:

  • Planlægning af arbejde og administration af efterslæb
  • Versionsstyring og lagre
  • Udrulningspipelines
  • Tester
  • Udvikling og gennemgang af kode

I visse tilfælde kan ét værktøj eller en værktøjspakke indeholde flere funktioner. Sørg for, at du forstår dine værktøjers funktioner og begrænsninger, så de opfylder dine krav på tværs af funktioner.

Find ud af, om du skal investere i premiumfunktioner på platformen eller premiumversioner af værktøjer. Overvej den tid og den indsats, du skal bruge på at udvikle dine egne løsninger i forhold til de funktioner, der findes i premiumværktøjerne. Overvej engangsomkostninger vs. tilbagevendende omkostninger. I de fleste tilfælde giver standardværktøjer større værdi for dit team. Administrerede miljøer tilbyder f.eks. indbyggede funktioner til indstilling af en udviklers onboardingmeddelelse eller til begrænsning af deling proaktivt. At bygge disse funktioner selv kræver udvikling og løbende vedligeholdelsesindsats, der kan vise sig at være dyrere end at investere i administrerede miljøer.

Brug AI-værktøjer, når det er praktisk. AI-værktøjer kan hjælpe med kodeudvikling, gennemgang og optimering.

Etablering af en forvaltningsramme for fælles udvikling

Opret en effektiv styringsstruktur for fælles udvikling for at sikre ensartethed og repeterbarhed i udviklerdefinerede projekter og fusionsteams.

Standardiser kildekontrolsystemet og fremgangsmåderne

Implementer et kildekodekontrolsystem som f.eks Azure DevOps. Azure DevOps tilbyder udviklingstjenester til supportteams, så de kan planlægge arbejde, samarbejde om kodeudvikling samt opbygge og installere applikationer. Eksportér en løsning fra dit udviklingsmiljø, der indeholder dine apps og tilpasninger, Pak din løsning ud, og gem komponenterne i kildekontrolsystemet.

Sørg for, at løsningsversioner er nøjagtige, i overensstemmelse med de retningslinjer for spring og udviklere, der er angivet i Implementer udvidet praksis for dit team i Azure Boards. Testresultater fra pullanmodningen kan have form af skærmbilleder eller videoer, der viser den funktionalitet, der bygges. Ved at automatisere processen til styring af pull-anmodninger kan du bedre sikre kodekvaliteten uden at kræve en manuel gennemgang af grundlæggende kontroller, f.eks. løsningsversioner.

Opret skabeloner for at øge effektivitet og opnå større ensartethed. Alle aspekter af teamets drift drager fordel af standardisering og forenkling, fra onboarding-opgaver og præsentationer af historiegennemgang til arbejdselementskabeloner , der er designet til at spare tid og give vejledning til teams, når de definerer brugerhistorier, funktioner, fejl og opgaver.

Evaluere metrikværdier for at kvantificere effektiviteten

Udviklings- og kvalitetssikkerhedsteams kan kun blive bedre, når de kvantificerer effektiviteten. For at kvantificere effektiviteten skal de identificere de målepunkter, der måler udviklingshastigheden og definerer nøgletal.

Eksempler på disse målepunkter omfatter:

  • Leveringstid: Den tid, det tager for en opgave eller en brugers historie at gå fra administration til en produktionsinstallation.
  • Gennemsnitlig tid til løsning: Den gennemsnitlige tid, der er brugt på at rette fejl eller reparere kode.
  • Procentdel af ændringsfejl: Den procentdel af ændringerne, der resulterer i en fejl.

Du kan gøre det nemt for interessenterne og arbejdsteamet at spore hastighed ved at visualisere nøgletal ved hjælp af dashboards eller andre rapporteringsværktøjer.

Standardiser, hvordan arbejdsteamet skriver, gennemser og dokumenterer kode

Standardiser, hvordan arbejdsteamet skriver, gennemser og dokumenterer kode ved hjælp af retningslinjer. En standardtypografi gør det nemt at samarbejde og hjælper med at onboarde nye udviklere. Hvis nye udviklere skal kunne arbejde effektivt, skal de vide, hvordan arbejdsteamet arbejder. En vejledning med klart definerede standarder kan lette oplæringsprocessen.

Vejledningen skal dække:

  • Navngivningskonventioner for løsninger, artefakter, kontrolelementer, handlinger, miljøer, forgreninger og builds
  • Standarder for håndtering af fejl
  • Fælles mønstre eller biblioteker

Hold styr på arkitekturbeslutninger for at hjælpe teams med at opretholde en ny forståelse af arbejdsbelastningen og give nye teammedlemmer mulighed for at lære om de designbeslutninger, der træffes i løbet af arbejdsbelastningens livscyklus. Medtag i dit arkitekturbeslutningsdokument de værktøjer og teknologier, der blev overvejet, årsagen til en beslutning og funktionelle og ikke-funktionelle krav, der blev taget i betragtning i beslutningerne. Registrer beslutninger for at undgå at gentage forklaringer eller genåbne diskussioner med nye medlemmer eller interessenter.

Implementering af standarder og retningslinjer for håndtering af teknisk belastning

Platformen og teknologien ændres hurtigt med jævnlige udrulning af nye funktioner og egenskaber. Indfør en tilgang om, at teknisk belastning er nødvendig i forbindelse med arbejdsteamets resultater. Denne tilgang motiverer dit team til jævnligt at overveje og håndtere teknisk belastning for at undgå akkumulering. Håndter teknisk belastning som en jævnligt tilbagevendende opgave i efterslæbet. Sørg for, at du har processer på plads, så du kan holde dig opdateret med platformsændringer, både nye funktioner og udfasninger, og arbejd på en handlingsplan for, hvordan du håndterer ændringer i din arbejdsbelastning.

En produktfunktion kan f.eks. blive udfaset eller erstattet med en anden version. Arbejdsbelastningsteamet skal prioritere at fuldføre overgangen til den nye funktion for at undgå at påvirke arbejdsbelastningen. Teamet kan oprette en brugerdefineret løsning eller et kontrolelement, som med tiden bliver en del af platformen. Dit arbejdsbelastningsteam skal overgå til denne platformsfunktion, hvilket reducerer teknisk gæld og vedligeholdelse af din egen arbejdsbyrde.

Brug gennemprøvede mønstre for programdesign for at sikre, at programmet er stabilt, højtydende og sikkert. Brug disse mønstre for at spare tid og kræfter i stedet for at udvikle dine egne løsninger til dit program. Vælg de mønstre, der gavner din arbejdsbelastning. Gennemgå jævnligt designmønstre for at sikre, at du bruger de rette mønstre, efterhånden som arbejdsbelastningen udvikler sig.

Implementere en skift til venstre-tilgang til test

Implementer en skift til venstre-tilgang til test ved at udføre enhedstest tidligt og ofte i hele udviklingsprocessen. Hvis der ofte udføres test i de enkelte udviklingsmiljøer, kan udviklere have større tillid til deres programmer.

Hvis du vil oprette teststrategien med en skift til venstre-tilgang, skal du overveje følgende principper:

  • Skriv test på det lavest mulige niveau. Test med færrest eksterne afhængigheder, og kør test som en del af buildet.
  • Skriv test én gang, og kør test overalt, herunder produktion. Skriv test, der kan køres i alle udviklingsmiljøer, uden at tage hensyn til faktorer, der er specifikke for ét miljø, f.eks. krypterede hemmeligheder eller konfigurationer.
  • Design arbejdsbelastningen til test. Når du udvikler programmet, skal kørsel af test være et krav.
  • Overvej ejerskabet af test, som er baseret på ejerskab af arbejdsbelastningen. Dit arbejdsbelastningsteam ejer testen og er ikke afhængig af, at andre teams tester koden.
  • Automatiser test så meget som muligt. Automatiseret kode letter byrden for dit arbejdsteam og sikrer ensartet kvalitet.

Kræv, at dit arbejdsteam forstår de sikkerhedspraksisser, der er relateret til udvikling og kvalitetssikring. Teammedlemmer skal følge denne praksis uden undtagelse. Få mere at vide i Anbefalinger til sikring af en udviklingslivscyklus.

Power Platform-processtyring

Pipelines i Power Platform har til formål at udnytte ALM-funktionerne (Application Lifecycle Management) for Power Platform og Dynamics 365-kunder ved at udnytte ALM-automatisering og løbende integration og funktioner til løbende levering (CI/CD) til servicen.

Copilot-genererede udrulningsnoter i pipelines genererer en løsningsoversigt og udfylder feltet med installationsnoter på forhånd, så alle, der får vist udrulningsanmodningen eller har tilstrækkelig kontekst til at forstå, hvad løsningen gør, og hvad den indeholder.

Microsoft Power Platform Opbyg værktøjer til Azure DevOps kan bruges til at automatisere almindelige build- og udrulningsopgaver til apps, der bygger på Power Platform.

GitHub handlinger til Power Platform gør det muligt for udviklere at bygge automatiserede arbejdsprocesser for softwareudviklingens livscyklus. Med GitHub-handlinger for Microsoft Power Platform kan du oprette arbejdsprocesser i dit lager for at bygge, teste, pakke, frigive og installere apps, udføre automatisering og administrere bots og andre komponenter, der er bygget på Power Platform.

Web-API'en til Power Apps-checkeren leverer en mekanisme til kørsel af statiske analysetjek set i forhold til tilpasninger og udvidelser til Microsoft Dataverse-platformen.

Test Studio giver dig mulighed for at opbygge komplette test af brugergrænsefladen for din lærredapp.

Automatisere test med Azure-pipelines.

Power CAT-værktøjet til kodegennemgang giver dig mulighed for at udføre kodegennemgang.

Brug Power CAT Copilot Studio-pakke tillader fortsat konfiguration af agenter og tests. Ved at køre individuelle tests i forhold til Copilot Studio API'erne (Direct Line) evalueres Helpdesk-medarbejder-svarene i forhold til de forventede resultater.

ALM Accelerator er et open source-værktøj, der består af et sæt programmer, scripts og pipelines, der er udviklet til at automatisere den kontinuerlige integration/kontinuerlige leveringsproces.

Microsoft Power Platform CLI (PAC CLI) er et kommandolinjeværktøj, der understøtter import og eksport af Power Platform løsninger samt pakning til og udpakning fra Power Platform løsningskildefiler. PAC CLI er tilgængelige som enkeltstående kommandolinjeværktøj eller som en udvidelse til Visual Studio Code.

Af andre værktøjer og tjenester, der kan hjælpe dig med at standardisere din udviklingspraksis, kan nævnes:

  • Azure DevOps, en samling tjenester, du kan bruge til at opbygge en samarbejdsbaseret, effektiv og ensartet udviklingspraksis. Azure DevOps samler følgende løsninger:

    • Azure Pipelines, en skytjeneste, der leverer build- og udgivelsestjenester for at understøtte CI/CD i dine programmer.
    • Azure Boards, et webbaseret arbejdsstyringsværktøj, der understøtter agile fremgangsmåder som Scrum og Kanban.
    • Azure Repos, et versionsstyringsværktøj, der understøtter det distribuerede Git-system til versionsstyring og Team Foundation-systemet til versionsstyring.
    • Azure Test Plans, en browserbaseret teststyringsløsning, der indeholder alle de funktioner, som kræves til planlagt manuel test, test af brugeraccept, sonderende test og indsamling af feedback fra interessenter.
  • GitHub-projekter, et værktøj til arbejdsstyring, som du kan bruge til at oprette Kanban-tavler, -rapporter, -dashboards og andre funktioner.

Styring af fælles udvikling

Næste trin