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 över olika 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 dyrare ä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 styrningsram för gemensam utveckling
Upprätta ett effektivt ramverk för styrning av samutveckling för att säkerställa konsekvens och repeterbarhet i tillverkardefinierade projekt och sammansatta team.
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 enligt de riktlinjer för utvecklare som finns i Implementera Scrum-praxis 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 gynnas av standardisering och förenkling, från introduktionsuppgifter och presentationer av granskningshistorier till mallar för arbetsobjekt 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, programfel 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:
- Leadtid: Den tid det tar för en uppgift eller en användarartikel att gå från eftersläpning till en produktionsdistribution.
- Genomsnittstid till lösning: Den genomsnittliga tid som har ägnats åt att åtgärda problem eller fel i koden.
- Ändringsfelfrekvens: 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 mer om de designbeslut som fattas under arbetsbelastningens livscykel. Inkludera i ditt arkitekturbeslutsdokument 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 mönster för programdesign för att säkerställa att ditt program är tillförlitligt, att det fungerar och är 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 tester på den lägsta möjliga nivån. 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 arbetsbelastningen för testning. När du utvecklar ditt program ska du göra testbarheten till ett krav.
- Överväg testägarskap, som bygger 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 tester 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 Power Platform kan utvecklare bygga automatiska livscykel-arbetsflöden för programutveckling. 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.
Power CAT Copilot Studio-paket som gör att du kan konfigurera agenter och tester. Genom att köra enskilda tester mot Copilot Studio API:erna (Direct Line) utvärderas agentens svaren mot förväntade resultat.
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 finns 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.
Relaterad information
Styrning av gemensam utveckling