Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Kontrollplaner är en viktig del av SaaS (software som tjänst) och multitenant-lösningar. De hjälper dig att hantera en lösning i stor skala. Normalt består ett kontrollplan av två huvudkomponenter:
Klientkatalogen, som lagrar viktig information om klienter, inklusive följande information:
- Hyresgästkonfiguration
- SKU:er som distribuerats för klientresurser
- Vilka utplaceringsstämplar hyresgästerna allokeras till
Processer som hanterar ändringar i miljön. Händelser i klientorganisationens livscykel utlöser dessa processer. Exempel är registrering av klientorganisationer, avregistrering av klientorganisationer och nödvändigt regelbundet underhåll.
Ett kontrollplan fungerar som ett program. Du måste utforma kontrollplanet med samma noggrannhet och omsorg som du tillämpar på andra delar av lösningen. Mer information om vad ett kontrollplan är, varför det är viktigt och designöverväganden finns i Överväganden för kontrollplan för flera klienter.
Den här artikeln beskriver metoder som du kan använda för att utforma och skapa ett kontrollplan. Varje metod är giltig, men en annan arkitektur utanför den här vägledningen kan bättre passa ditt specifika scenario.
Metoder och mönster att tänka på
I följande tabell sammanfattas skillnaderna mellan manuella metoder med låg kod och anpassade metoder för ett kontrollplan.
Att tänka på | Handbok | Låg kod | Skräddarsydd |
---|---|---|---|
Driftkostnader | Högt | Låg medelhög | Låg |
Frekvens för livscykelhändelser som metoden stöder | Sällsynt | Sporadiskt-ofta | Ofta |
Tid och komplexitet att implementera | Låg | Medel | Högt |
Underhållsansvar för kontrollplan | Låg | Medel | Högt |
Testbarhet | Låg | Medel | Högt |
Risk för inkonsekvenser | Högt | Medellåg | Låg |
Manuella processer
Du behöver inte alltid skapa ett helt automatiserat kontrollplan, särskilt när du börjar med bara ett fåtal klienter.
Du kan behålla klientkatalogen på en central plats, till exempel en Excel-arbetsbok eller en JSON-fil som lagras på en plats som ditt team kan komma åt. Oavsett format bör du lagra informationen på ett strukturerat sätt så att du enkelt kan arbeta med data programmatiskt.
Anmärkning
Ett manuellt kontrollplan fungerar bra som utgångspunkt för att hantera ditt program för flera klienter, men det är bara lämpligt för färre än 10 klienter. De administrativa merarbetet och risken för inkonsekvenser ökar med varje manuellt registrerad hyresgästanvändare. Använd endast den här metoden om du har några få klienter och inte kräver automatisk registrering eller självbetjäning.
Tänk på följande faktorer för processer som onboarding av hyresgäster och underhållsprocedurer.
Skapa skript eller automatiserade pipelines när det är möjligt, även om du kör dem manuellt. Skript eller pipeline-processer hjälper stegen att köras konsekvent för varje hyresgäst.
För uppgifter som du inte kan skripta från början dokumenterar du processen i tydliga, detaljerade steg. Förklara hur och varför. Den här informationen hjälper andra att automatisera uppgiften i framtiden.
Följande diagram visar en manuell processmetod för ett första kontrollplan.
Ladda ned en Visio-fil med den här arkitekturen.
Fördelar med en manuell metod
Lättvikt: Dokumentation, skript och pipelines är enkla att utveckla och ändra. Den här flexibiliteten gör dem idealiska när du räknar ut dina processer eftersom du snabbt kan iterera och utveckla dem.
Låg kostnad: Att underhålla och köra en manuell metod är billigt.
Processverifiering: En manuell metod fungerar som ett konceptbevis. Det gör att du kan testa och bekräfta din underhållsstrategi innan du checkar in tid och resurser för att skapa fullständig automatisering.
Nackdelar med en manuell metod
Brist på kontroll: Den här metoden förlitar sig på att alla inblandade gör rätt. Någon kan avvika från de föreskrivna processerna, antingen oavsiktligt eller avsiktligt. Varje processvariation ökar risken för inkonsekvens i din miljö, vilket gör kontinuerlig hantering svår.
Utmaningar med åtkomstkontroll: Den här metoden kräver ofta omfattande, mycket tillåtande åtkomst till operatörer av din lösning. Den här åtkomsten gör det svårt att tillämpa metodtips för åtkomstsegmentering .
Skalbarhet: Det arbete som krävs för att köra manuella processer skalar med det antal klienter som du behöver hantera.
Testbarhet: Manuella processer är svåra att validera och testa.
När du ska överväga att flytta från en manuell metod
När ditt team inte kan hänga med i den arbetsbelastning som krävs för att underhålla programmet. Det här scenariot inträffar ofta när antalet hyresgäster överskrider ett hanterbart tröskelvärde, vanligtvis mellan 5 och 10 hyresgäster.
När du förutser en hyresgästtillväxt över ett viktigt antal hyresgäster och behöver förbereda dig på kraven för att hantera ett större antal hyresgäster.
När du behöver minska risken för inkonsekvenser. Du kan till exempel observera att misstag inträffar eftersom någon inte följer processerna korrekt eller på grund av oklara processer. Risken för inkonsekvens ökar när fler klienter registreras manuellt och när ditt team växer.
Kontrollplan med låg kod
Ett kontrollplan med låg kod eller ingen kod använder en plattform som är utformad för att automatisera affärsprocesser och spåra information. Många plattformar, inklusive Microsoft Power Platform, gör att du kan utföra dessa uppgifter utan att skriva anpassad kod.
Om du använder Microsoft Power Platform kan du lagra klientkatalogen i Dynamics 365, Dataverse eller Microsoft 365. Du kan också behålla samma klientkatalog som du använder för dina manuella processer om du inte vill genomföra hela processen för att automatisera allt först.
För hyresgästers registrering och underhåll kan du använda Power Automate för att köra arbetsflöden som utför hyresgästhantering, konfigurerar hyresgäster och startar pipelines eller API-anrop. Power Automate kan övervaka ändringar i klientkatalogen om den har åtkomst till data. Om du använder en manuell klientkatalog kan du utlösa Power Automate-arbetsflöden manuellt. Inkludera manuella godkännandesteg i dina arbetsflöden när du behöver en gruppmedlem för att verifiera eller slutföra uppgifter som du inte kan automatisera helt.
Den här metoden stöder även självbetjäningsregistrering för dina kunder. Ditt webbprogram kan skapa poster i klientkatalogen automatiskt utan mänsklig inblandning.
Följande diagram visar hur du använder Microsoft Power Platform för att skapa ett kontrollplan som har självbetjäningsregistrering.
Ladda ned en Visio-fil med den här arkitekturen.
Fördelar med en lågkodsmetod
Lättvikt: Du kan snabbt och prisvärt skapa arbetsflöden med låg kod och ansluta dem till omgivande system.
Använder plattformsverktyg: Du kan använda inbyggda plattformsfunktioner för att lagra data, skapa administrativa portaler för ditt team och övervaka arbetsflöden. Den här metoden minskar behovet av att utveckla och underhålla anpassade komponenter.
Anpassningsbara: Du kan utöka arbetsflöden med anpassad kod när det behövs. Power Automate kan till exempel utlösa ett distributionsarbetsflöde i GitHub Actions eller anropa Azure Functions för att köra koden. Den här flexibiliteten underlättar en gradvis automatiseringsimplementering.
Låga omkostnader: Lågkodstjänster hanteras vanligtvis helt och hållet, så du behöver inte hantera infrastrukturen.
Nackdelar med en lågkodsmetod
Nödvändig expertis: Lågkodsplattformar kräver ofta egenutvecklad kunskap för att skapa och hantera processer effektivt. Många organisationer använder redan dessa verktyg, så ditt team kan ha den expertis som krävs, eller så kan du behöva tillhandahålla utbildning.
Ledning: Det kan vara svårt att hantera hantering av stora mängder konfiguration med låg kod.
Testbarhet: Det är svårare att skapa en typisk DevOps-process för att testa och främja ändringar på en hanterad plattform. Du gör vanligtvis ändringar via konfiguration, inte kod.
Design: Lågkodsplattformar hanterar ofta icke-funktionella krav, men du måste fortfarande kontrollera att de uppfyller dina standarder. Utvärdera noggrant hur du uppfyller dessa krav, till exempel säkerhet och tillförlitlighet.
När du ska överväga att flytta från en lågkodsmetod
Så småningom kan dina krav bli så komplexa att du inte kan integrera dem på ett förnuftigt sätt i en lösning med låg kod. När du behöver kringgå verktygsbegränsningar för att uppfylla dina behov bör du gå bort från en hanterad lösning och mot ett anpassat kontrollplan.
Anpassad kontrollplan
Du kan välja att skapa ett helt anpassat kontrollplan. Det här alternativet ger mest flexibilitet och kraft, men det kräver också mest arbete.
Klientkatalogen lagras vanligtvis i en databas. Du arbetar inte direkt med katalogen. I stället hanterar du det via ett administrativt gränssnitt, till exempel ett anpassat program eller ett system som organisationens CRM-program (Customer Relationship Management).
Du skapar vanligtvis en uppsättning kontrollplanskomponenter som stöder dina administrativa klientfunktioner. Dessa komponenter kan innehålla en administrativ portal eller annat användargränssnitt, ett API och bakgrundsbearbetningskomponenter. Om du behöver distribuera kod eller infrastruktur när händelser i klientorganisationens livscykel inträffar kan du även lägga till distributionspipelines i kontrollplanet.
Se till att långvarig bearbetning använder lämpliga verktyg. Du kan till exempel använda Durable Functions eller Azure Logic Apps för komponenter som samordnar klientregistrering, hanterar distributioner eller kräver kommunikation med externa system.
Precis som metoden med låg kod kan du med den här metoden tillhandahålla självbetjäningsregistrering till dina kunder. Webbprogrammet kan direkt lägga till poster i klientkatalogen utan mänsklig inblandning.
Följande diagram visar hur du skapar ett grundläggande anpassat kontrollplan som tillhandahåller självbetjäningsregistrering.
Ladda ned en Visio-fil med den här arkitekturen.
Fördelar med en anpassad metod
Fullständig flexibilitet och anpassningsbarhet: Du har fullständig kontroll över funktionerna i kontrollplanet och kan ändra det om dina krav ändras.
Testbarhet: Du kan använda en standard livscykel för programvaruutveckling för ditt kontrollplansprogram och implementera typiska metoder för testning och distributioner, precis som för dina huvudprogram.
Nackdelar med en anpassad metod
- Underhållsansvar: Den här metoden kräver mer underhållskostnader eftersom du behöver skapa allt själv. Ett kontrollplan är lika viktigt som alla andra delar av ditt program. Du måste vara noga med att utveckla, testa och använda kontrollplanet för att säkerställa dess tillförlitlighet och säkerhet.
Hybridmetoder
Du kan också överväga en hybridmetod som kombinerar manuella och automatiserade system. Eller så kan du använda en hanterad plattform som Microsoft Power Platform och utöka den med anpassade program. Överväg att implementera en hybridmetod om du behöver flexibiliteten i ett anpassat kontrollplan men inte vill skapa och underhålla ett helt anpassat system. Tänk dock på att automatiserade anpassningar av dina manuella processer eller hanterade plattformar kan bli lika komplexa som ett helt anpassat system. Om hybridmetoden blir svår att underhålla kan du överväga att flytta till ett helt anpassat system.
Gradvis implementering
Även om du så småningom vill automatisera ditt kontrollplan behöver du inte nödvändigtvis börja med den metoden. Under de inledande stegen är en vanlig metod för programutveckling att börja med ett manuellt kontrollplan. När programmet fortskrider och registrerar fler klienter identifierar du flaskhalsar och automatiserar dem efter behov. Det här skiftet för dig mot en hybridmetod. När du automatiserar fler uppgifter kan du övergå till ett helt automatiserat kontrollplan.
Antimönster att undvika
Förlitar sig på manuella processer för länge: Manuella processer fungerar bra när du startar eller har ett lågt antal hyresgäster och kräver enkel hantering. Men du måste planera hur du skalar till en automatiserad lösning när du växer. Om du behöver anställa fler teammedlemmar för att hänga med i efterfrågan på dina manuella processer kan du överväga att automatisera delar av kontrollplanet.
Använda olämpliga verktyg för långvariga arbetsflöden: Använd inte verktyg som har körningsgränser, till exempel Azure-standardfunktioner eller synkrona API-anrop, för långvariga åtgärder som Azure Resource Manager-distributioner eller orkestrering i flera steg. Använd i stället verktyg som stöder långvariga arbetsflöden eller sekvenser av åtgärder, till exempel Logic Apps och Durable Functions. Mer information finns i Prestanda och tillförlitlighet för Azure Functions och Asynkront Request-Reply mönster.
Bidragsgivare
Microsoft ansvarar för den här artikeln. Följande deltagare skrev den här artikeln.
Huvudsakliga författare:
- John Downs | Huvudprogramtekniker
- Landon Pierce | Kundtekniker
Övriga medarbetare:
- Mick Alberts | Teknisk författare
- Bohdan Cherchyk | Senior kundtekniker
- Arsen Vladimirskiy | Huvudkundtekniker
Om du vill se linkedin-profiler som inte är offentliga loggar du in på LinkedIn.