Dela via


Rekommendationer för standardiserande verktyg och processer

Gäller för den här Power Platform checklisterekommendationen för driftförutsättningar för välstrukturerat ramverk:

OE:04 Optimera programvaruutvecklings- och kvalitetssäkringsprocesser genom att följa branschbeprövade metoder för utveckling och testning. För otvetydig rollbeteckning standardiserar du praxis för komponenter som verktyg, källkontroll, programdesignmönster, dokumentation och formatguider.

I den här guiden beskrivs rekommendationer för hur du definierar standarder för utvecklingsverktyg och -processer. Genom att definiera enhetliga metoder leder det till ett effektivt arbetsbelastningsteam och ett högkvalitativt arbete. Högpresterande team använder branschbeprövade verktyg och processer för att minimera slöseri och potentiella kodfel.

Viktiga designstrategier

Det första steget mot att optimera utvecklingsmetoder är att standardisera verktyg och processer. Om det är möjligt kan du använda branschbeprövade lösningar i stället för att utveckla egna. För alla standardiserade verktyg och processer erbjuder du utbildning för att se till att teamen kan använda dem på ett effektivt sätt.

Om du vill definiera standarder för bästa möjliga utvecklingsmetoder bör du överväga följande rekommendationer.

Använda verktyg som är tillgängliga för plattformen

Prioritera användningen av Power Platform Tools och standardisera användningen av verktygen. Mycket effektiva teknikerteam använder de bästa verktygen. Undvik att utveckla lösningar för planering, utveckling, testning och samarbete. Välj verktyg som uppfyller kraven för din arbetsbelastning.

Verktygen bör innehålla följande funktioner:

  • Arbetsplanering och eftersläpningshantering
  • Versionskontroll och lagringsdatabaser
  • Distributionspipelines
  • Testar
  • Kodutveckling och granskning

I vissa fall kan ett verktyg eller en uppsättning verktyg ha flera funktioner. Se till att du förstår funktionerna i dina verktyg och deras begränsningar så att de uppfyller dina krav för alla funktioner.

Bestäm om du ska använda premiumfunktioner i plattformen eller premiumversioner av verktygen. Tänk på tiden och ansträngningen för att utveckla dina egna lösningar jämfört med funktioner som premiumverktygen tillhandahåller. Överväg engångskostnader jämfört med återkommande kostnader. I de flesta fall ger färdiga verktyg högre värde för ditt team. Hanterade miljöer erbjuder färdiga funktioner för att ställa in ett introduktionsmeddelande för tillverkare eller för att begränsa delning på ett proaktivt sätt. Att skapa dessa funktioner själv kräver utveckling och löpande underhåll som kan visa sig vara mer kostsamt än att investera i hanterade miljöer.

Använd AI-verktyg när det är praktiskt. AI-verktyg kan hjälpa till med kodutveckling, recensioner och optimering.

Upprätta en ram för styrning av gemensam utveckling

Upprätta ett effektivt ramverk för samutvecklingsstyrning för att säkerställa konsekvens och repeterbarhet i tillverkardefinierade projekt och fusionsteam.

Standardisera källhanteringssystemet och -metoderna

Anta ett källkodskontrollsystem som Azure DevOps. Azure DevOps tillhandahåller utvecklingstjänster för supportteam som planerar arbete, samarbetar med kodutveckling och skapar och distribuerar program. Exportera en lösning från utvecklingsmiljön som innehåller program och anpassningar, packa upp din lösning och lagra komponenterna i källkontrollsystemet.

Se till att versionshanteringen av lösningen är korrekt genom att följa riktlinjerna för sprint och utvecklare som anges i Implementera Scrum-metoder för ditt team i Azure Boards. Testresultat från pull-begäran kan ha formen av skärmbilder eller videor som visar de funktioner som skapas. Att automatisera styrningsprocessen för pull-begärna hjälper till att säkerställa kodkvaliteten utan att kräva en manuell granskning av grundläggande kontroller som lösningsversioner.

Skapa mallar för att leverera effektivitet och främja konsekvens. Alla aspekter av teamets verksamhet drar nytta av standardisering och förenkling, från introduktionsuppgifter och presentationer av berättelsegranskning till mallar för arbetsobjekt som är utformade för att spara tid och ge vägledning till teamen när de definierar användarberättelser, funktioner, buggar och uppgifter.

Utvärdera mätvärden för att kvantifiera effektiviteten

Utvecklings- och kvalitetssäkringsteam kan bara förbättras när de kvantifierar effektiviteten. För att kvantifiera effektiviteten måste de identifiera de mått som mäter utvecklarhastighet och definiera KPI:er.

Exempel på dessa mätvärden inkluderar:

  • Ledtid: Den tid det tar för en uppgift eller användarberättelse att gå från kvarvarande uppgifter till en produktionsdistribution.
  • Genomsnittlig tid till lösning: Den genomsnittliga tid som ägnas åt att åtgärda buggar eller defekter i koden.
  • Frekvens för ändringsfel: Procentandelen ändringar som resulterar i ett fel.

Om du vill hjälpa intressenter och arbetsbelastningsteamet att enkelt spåra problem kan du visualisera KPI:er med hjälp av instrumentpaneler eller andra rapporteringsverktyg.

Standardisera hur arbetsbelastningsteamet skriver, granskar och dokumenterar kod

Standardisera hur arbetsbelastningsteamet skriver, granskar och dokumenterar kod genom att använda en stilguide. En standardstil gör samarbetet enkelt och hjälper till att introducera nya utvecklare. För att kunna arbeta effektivt måste nya utvecklare få veta hur arbetsbelastningsteamet fungerar. En stilguide med tydligt definierade standarder kan förenkla deras utbildningsprocess.

Stilguiden ska omfatta:

  • Namnkonventioner för lösningar, artefakter, kontroller, åtgärder, miljöer, grenar och versioner
  • Felhanteringsstandarder
  • Vanliga mönster eller bibliotek

Håll reda på arkitekturbeslut för att hjälpa teamen att upprätthålla en ny förståelse för arbetsbelastningen och låta nya teammedlemmar lära sig om de designbeslut som fattas under arbetsbelastningens livscykel. Inkludera i ditt beslutsdokument för arkitektur de verktyg och tekniker som övervägdes, orsaken till ett beslut och funktionella och icke-funktionella krav som beaktades i besluten. Registrera beslut om att undvika upprepade uppgifter eller upprepade diskussioner med nya medlemmar eller intressenter.

Implementera standarder och riktlinjer för att hantera teknisk skuld

Plattformen och tekniken förändras snabbt, med nya funktioner som regelbundet lanseras. Anta att teknisk skuld krävs för att arbetsbelastningsteamets produkter ska kunna levereras. Detta tänkesätt motiverar teamet att överväga och ta itu med tekniska skulder regelbundet för att undvika ackumulering. Åtgärda teknisk skuld som en regelbundet återkommande uppgift i eftersläpningen. Se till att du har processer på plats för att hålla dig uppdaterad med plattformsändringar, både nya funktioner och utfasningar, och arbeta med en åtgärdsplan för hur du hanterar ändringar i din arbetsbelastning.

En produktfunktion kan till exempel bli inaktuell eller ersatt med en annan version. Arbetsbelastningsteamet måste prioritera att slutföra övergången till den nya funktionen för att undvika att arbetsbelastningen påverkas. Teamet kan skapa en anpassad lösning eller kontroll, som med tiden blir en del av plattformen. Ditt arbetsbelastningsteam måste övergå till den plattformsfunktionen, vilket minskar den tekniska skulden och underhållet av din egen arbetsbelastning.

Använd branschbeprövade programdesignmönster för att säkerställa att ditt program är tillförlitligt, högpresterande och säkert. Använd dessa mönster om du vill spara tid och arbete i stället för att utveckla egna lösningar för ditt program. Välj vilka mönster som gynnar din arbetsbelastning. Granska regelbundet designmönster och se till att du använder rätt mönster i takt med att arbetsbelastningen utvecklas.

Implementera en testmetod för vänsterskifta

Implementera en testmetod för vänsterskifta genom att utföra enhetstester tidigt och ofta genom hela utvecklingsprocessen. Ofta förekommande tester i varje utvecklingsmiljö hjälper utvecklare att få förtroende för sina program.

Tänk på följande principer om du vill skapa en teststrategi med vänsterskiftemetoden:

  • Skriv prov på lägsta möjliga nivå. Föredrar tester med minsta möjliga externa beroenden och kör tester som en del av versionen.
  • Skriv tester en gång och kör tester överallt, inklusive produktion. Skriv tester som du kan köra i alla utvecklingsmiljöer utan att behöva ta hänsyn till faktorer som är specifika för en miljö, som krypterade hemligheter eller konfigurationer.
  • Utforma din arbetsbelastning för testning. När du utvecklar ditt program ska du göra testbarheten till ett krav.
  • Överväg testägarskap, som baseras på ägarskap för arbetsbelastningen. Ditt arbetsbelastningsteam äger testningen och bör inte förlita sig på andra team för att testa koden.
  • Automatisera testerna så mycket som möjligt. Automatisk kod förser arbetsbelastningsteamet med ansvar för detta och upprätthåller en enhetlig kvalitet.

Kräva att arbetsbelastningsteamet förstår säkerhetsrutinerna för utveckling och kvalitetssäkring. Teammedlemmar måste följa dessa rutiner utan undantag. Läs mer i Rekommendationer för att skydda en utvecklingslivscykel.

Underlätta Power Platform

Pipelines i Power Platform syftar till att demokratisera hanteringen av programmets livscykel (ALM) för Power Platform och Dynamics 365-kunder genom att föra in ALM-automatisering och kontinuerlig integration och kontinuerlig leverans (CI/CD) i tjänsten.

Copilot-genererade distributionsanteckningar i pipelines genererar en lösningssammanfattning och fyller i fältet för distributionsanteckningar i förväg, vilket ger alla som visar distributionsbegäran eller registrerar tillräckligt med kontext för att förstå vad lösningen gör och vad den innehåller.

Microsoft Power Platform Build Tools för Azure DevOps kan för att automatisera vanliga bygg- och distributionsuppgifter relaterade till appar som skapats i Power Platform.

GitHub Actions för att göra det möjligt för utvecklare att skapa automatiserade arbetsflöden för Power Platform programvaruutvecklingens livscykel. Med GitHub-åtgärder för Microsoft Power Platform, kan du skapa arbetsflöden i ditt arkiv för att bygga, testa, paketera, släppa och distribuera appar; utföra automatisering; och hantera bots och andra komponenter som bygger på Power Platform.

Webb-API-kontrollen för Power Apps tillhandahåller en mekanism för att köra statiska analyskontroller mot anpassningar och tillägg till Microsoft Dataverse-plattformen.

Test Studio gör att du kan skapa UI-tester från slutpunkt till slutpunkt för din arbetsyteapp

Automatisera tester med Azure-pipelines.

Med Power CAT kodgranskningsverktyget kan du utföra kodgranskningar.

ALM Accelerator är ett verktyg med öppen källkod som består av en uppsättning program, skript och pipelines som är utformade för att automatisera processen för kontinuerlig integrering/kontinuerlig leverans.

Microsoft Power Platform CLI (PAC CLI) är ett kommandoradsverktyg som stöder import och export av Power Platform lösningar samt packning till och uppackning från Power Platform lösningarnas källfiler. PAC CLI är tillgängligt som ett fristående kommandoradsverktyg eller som ett tillägg för Visual Studio Code.

Andra verktyg och tjänster som kan hjälpa dig att standardisera dina utvecklingsmetoder är:

  • Azure DevOps, en samling tjänster som du kan använda för att bygga upp en gemensam, effektiv och enhetlig utvecklingspraxis. Azure DevOps buntar ihop följande lösningar:

    • Azure Pipelines, en molntjänst som tillhandahåller versions- och utgivningstjänster för att stödja CI/CD för dina program.
    • Azure Boards, ett webbaserat arbetshanteringsverktyg som stöder agila metoder som Scrum och Kanban.
    • Azure Repos, ett versionskontrollverktyg som stöder det distribuerade Git-versionskontrollsystemet och Team Foundation-versionskontrollsystem.
    • Azure testplaner är en webbläsarbaserad testhanteringslösning som ger alla funktioner som krävs för planerad manuell testning, testning av användaracceptans, utforskande testning och insamling av feedback från intressenter.
  • GitHub Projects, ett arbetshanteringsverktyg som du kan använda för att skapa Kanban-tavlor, rapporter, instrumentpaneler och andra funktioner.

Styrning av gemensam utveckling

Gå vidare