Designmetod för SaaS-arbetsbelastningar i Azure
Oberoende programvaruleverantörer (ISV: er) måste noggrant planera kraven för sin saaS-lösning (programvara som en tjänst), med tanke på att lösningen är deras verksamhet. Företagskunder, till exempel andra företag eller enskilda konsumenter, är direktanvändare av lösningen. Den här affärsmodellen ställer höga förväntningar eftersom du måste ta hänsyn till både dina arbetsbelastningskrav och kundernas behov som designarkitekt.
Den här artikeln beskriver en designmetod som du kan använda för att systematiskt definiera och förfina krav. Om du är osäker på olika designbeslut och teknikalternativ kan du gå tillbaka till den här metoden för att hålla dig i linje med affärskraven. Att skapa en SaaS-arbetsbelastning är en iterativ process som kräver flexibilitet för att anpassa sig till föränderliga marknader och kundbehov. Det här ramverket kan hjälpa dig att samarbeta med marknadsförings- och säljteam för att validera tekniska beslut och utvärdera kundfeedback för kontinuerlig förbättring.
Design för din affärsmodell
Det är viktigt att förstå hur dina affärskrav påverkar din lösning nedströms. Tänk på följande beslutspunkter:
Platsen där du distribuerar resurser begränsar de arkitekturmönster som du kan använda. Du kan distribuera alla resurser i dina Azure-prenumerationer, eller så kan kunder köpa lösningen och distribuera den i sina egna Azure-prenumerationer. Arbetsbelastningen kan också använda resurser som kunden distribuerar i sina Azure-prenumerationer.
Om du till exempel distribuerar programvaran i kundens miljö kan du inte använda ett arkitekturmönster som endast baseras på delade resurser eftersom varje kund har en egen fristående miljö med dedikerade resurser.
Mer information finns i ISV-distributionsmodeller.
Din prismodell avgör företagets intäkter, vilket i sin tur påverkar din tillåtna kostnad för sålda varor. Den här dynamiken påverkar direkt din tekniska arkitektur.
Mer information finns i Prismodell.
De funktioner eller produkter som du tillhandahåller kan påverka din arkitektur. Du kan behöva göra ändringar eller tillägg i din tekniska arkitektur när du väljer specifika funktioner. Att tillhandahålla olika produkter till olika kunder kan också leda till en mer komplex arkitektur eftersom den måste stödja dessa variationer.
Design för dina kundkrav
Utforma din lösning med kundernas krav i åtanke. Kunder kan ha extra krav för sin lösning, vilket skapar en superuppsättning som din lösning måste uppfylla. Dessa extra krav kan ibland vara i konflikt med dina affärsbehov eller andra kunders behov. När dessa krav skiljer sig från dina affärsbehov eller lägger till fler begränsningar kan det vara svårt att fatta beslut för din lösning. Din lösning kan till exempel uppfylla dina säkerhetsstandarder, men en kund kan ha strängare säkerhetskrav som du måste uppfylla för att skydda deras verksamhet.
Skapa en flexibel arkitektur för att uppfylla dessa extra krav. Om kundens krav inte påverkar dina egna krav kan du försöka integrera dem i din affärsmodell. Beräkna kostnaden för dessa justeringar. Om en kunds unika krav medför extra kostnader kan du överväga att debitera dem i enlighet med detta.
Se till att du har realistiska tillförlitlighetsmål som uppfyller kundernas förväntningar och utforma din arkitektur för att uppnå dem.
Utforma din innehavarmodell
De flesta SaaS-lösningar förlitar sig på flera klientorganisationer som den primära tekniska strategin för att maximera kostnadseffektiviteten. Flera klientorganisationer omfattar en rad alternativ som inte har standardmönster. Din innehavarmodell påverkar aspekter av din arkitektur, inklusive hanteringskostnader, kostnader och dataisolering. Hitta rätt balans för din lösning. Den innehavarmodell som du väljer är avgörande eftersom den måste balansera kund- och affärsbehov.
Information om hur du fattar välgrundade beslut finns i följande artiklar:
Din arkitektur bör ha flexibiliteten att ändra innehavarmodellen baserat på nya eller inkommande kundkrav. Du kan till exempel använda en helt multitenant arkitektur men skaffa en ny kund i en strikt reglerad bransch som behöver extra säkerhet. Du kan partitionerat distributionen lodrätt för att tillhandahålla en dedikerad stämpel. Den här ändringen ger upphov till ett affärsbeslut om de ska betala mer än dina andra klienter. Den här konfigurationen ökar resurskostnaderna och komplexiteten, så det är vettigt för dem att betala mer.
Design som ska vara väldesignad
När du utformar en SaaS-arbetsbelastning bör du vara extra försiktig för att säkerställa att systemet är motståndskraftigt, säkert, effektivt, högpresterande och balanserar kundernas krav. Till skillnad från företagsprogram kan fel i ett SaaS-program också påverka ditt företag, kunder och deras användare.
För varje beslut utvärderar du kompromisserna mellan grundpelarna i Azure Well-Architected Framework. Information om de strategiska metoderna per pelare finns i Designprinciper.
Design för åtgärder
SaaS-arbetsbelastningsåtgärder behöver ett annat perspektiv. Du måste ta hänsyn till faktorer som support. Fastställ hur du ska tillhandahålla plattformsstöd hela dagen och anställa personer med rätt kompetensuppsättning. Behandla inte åtgärder som en eftertanke eller fokusera bara på att skapa nya funktioner. Inkludera användbarhet i din design från början. Tänk på hur dina processer skalas när du får fler kunder. Manuella åtgärder kan till exempel fungera först, men de skalas vanligtvis inte långt över tid.
Om du har en äldre plattform bör du överväga hur eller om du ska flytta kunder till din nya SaaS-plattform. En smidig migreringsväg är nyckeln till att hålla kunderna nöjda under din affärsomvandling.