Att utveckla effektiva gränssnitt inom plattformsteknik innebär övergången från anpassade, manuella processer till standardiserade och konsekventa lösningar som effektiviserar etablering och tjänstbegäranden. Den här artikeln utforskar faserna i gränssnittsutvecklingen, med fokus på att konfigurera utvecklingsmiljöer och diagnostisera programbeteende.
Anpassade processer
Det finns en samling olika processer för att etablera olika funktioner och tjänster, men gränssnittets konsekvens beaktas inte. Anpassade skräddarsydda processer tillgodoser enskilda personers eller teams omedelbara behov och är beroende av manuella åtgärder även om leverantören använder vissa automatiserade implementeringsskript.
Kunskap om hur du begär dessa lösningar delas från person till person. Processen för att begära en tjänst saknar standardisering och konsekvens. Etablering och användning av en plattformstjänst kräver sannolikt djup support från kapacitetsprovidern.
Brist på centrala krav och standarder gör den här nivån lämplig när företaget ännu inte har identifierat och dokumenterat förväntningar. Det kan vara effektivt för team i tidiga företag eller plattformsarbete. I dessa miljöer har teamen friheten att utveckla processer och funktioner efter sina behov, så att de kan leverera snabbare och betala priset för standardisering först när det behövs senare.
Konfigurera utvecklingsmiljö: Enskilda tekniker pusslar ihop de steg som krävs för att konfigurera en miljö genom att fråga kollegor, hitta dokumentation och följa sina egna kända metoder.
Diagnostisera programbeteende: Tekniker väljer sina egna verktyg och processer för att diagnostisera beteende. De ansvarar för att vidta åtgärder för att komma åt program och loggar.
Lokala standarder
Tekniker och ingenjörsteam definierar proaktivt men informellt standarder för olika funktioner och tjänster för att öka mängden kunskapsdelning som kan äga rum inom organisationen. Informella supportgrupper dyker upp kring dessa standarder, men detta är beroende av resurser och engagemang från individer och enskilda team.
Konfigurera utvecklingsmiljö: Enskilda team definierar sina egna verktyg och processer och försöker se till att tekniker i team håller sig till dessa processer. Detta kan ske via dokumentation eller containrar, men valet av hur verktyg och processer ska dokumenteras drivs av teamet.
Diagnostisera programbeteende: Enskilda team definierar sina egna metoder och processer för att diagnostisera beteende. Teams förlitar sig på DevOps/IT-teamet för åtkomst till distribuerade resurser.
Konsekventa standardgränssnitt för etablering och observation av plattformar och funktioner finns och uppfyller breda behov. Användarna kan identifiera vilka funktioner som är tillgängliga och aktiveras för att begära funktioner som de behöver.
Asfalterade vägar eller gyllene vägar, i form av dokumentation och mallar, tillhandahålls. Dessa resurser definierar hur du etablerar och hanterar vanliga funktioner med hjälp av kompatibla och testade mönster. Även om vissa användare kan använda dessa lösningar på egen hand, kräver lösningarna ofta fortfarande djup domänexpertis och därför är stöd från underhållspersonal fortfarande viktigt.
Betydande hantering krävs från det centrala teamet för att underhålla mallar/dokumentation, särskilt som svar på ändrade behov från team.
Konfigurera utvecklingsmiljö: Det finns en del investeringar i en gemensam väg med dokumentation eller mallar som definierar de verktyg och processer som krävs i organisationen. Team kan avvika från standarder när de ändrar mallar, men går inte tillbaka till det centraliserade teamet.
Diagnostisera programbeteende: Standardpraxis som definierats för åtkomst till och diagnostisering av distribuerade resurser.
Självbetjäningslösningar
Lösningar erbjuds på ett sätt som ger användarna självbestämmande och kräver lite stöd från underhållarna. Organisationen uppmuntrar och möjliggör lösningar för att tillhandahålla konsekventa gränssnitt som möjliggör identifiering och portabilitet av användarupplevelsen från en funktion till en annan. Även om lösningarna är självbetjäning kräver de teammedvetenhet och implementering. För att förbättra den här upplevelsen kan det finnas ett guidat och förenklat internt språk som gör det möjligt för användare att införa och integrera plattformsfunktioner snabbare. Detta genererar en användarcentrerad, självbetjäningsbar och konsekvent samling funktioner.
Konfigurera utvecklingsmiljö: Teknikteam är beroende av plattform för att konfigurera utvecklingsmiljöer. Affordance finns för att identifiera tillgängliga resurser. Teknikteamen antar plattformen exklusivt för alla interaktioner. Plattformen underlättar kunskapsdelning genom identifiering och ändring av nya och befintliga mallar, vilket kontinuerligt ökar värdet som erbjuds av plattformen.
Diagnostisera programbeteende: Verktyg och tjänster för att observera resurser/funktioner tillhandahålls via plattform på begäran. Plattformen ger möjlighet att diagnostisera och observera resurser/kapabiliteter.
Integrerade tjänster
Plattformsfunktioner är transparent integrerade i de verktyg och processer som teamen redan använder för att utföra sitt arbete. Vissa funktioner etableras automatiskt, till exempel observerbarhet eller identitetshantering för en distribuerad tjänst. När användarna når kanterna på de tillhandahållna tjänsterna finns det en möjlighet att gå förbi automatiserade lösningar och anpassa sig efter deras behov utan att lämna de interna erbjudandena eftersom plattformsfunktioner betraktas som byggstenar. Dessa byggstenar används för att skapa transparenta och automatiska kompositioner för att uppfylla användningsfall på högre nivå och samtidigt möjliggöra djupare anpassning vid behov.
Interna plattformsteam kan avgöra vilka funktioner som fungerar bra för organisationen och kan använda den här kunskapen för att avgöra vilka områden som ska investeras i för att ytterligare förbättra plattformen.
Funktioner kan utökas och paketeras på flera sätt, vilket ger maximal flexibilitet för att etablera, hantera och observera resurser och funktioner.
Konfigurera utvecklingsmiljö: Plattformsfunktioner är integrerade i de verktyg och processer som team redan använder för att utföra sitt arbete. Kan användas via CLI, IDE eller andra miljöer.
Diagnostisera programbeteende: Plattformen konfigurerar automatiskt observerbarhetsfunktioner för varje distribuerat program. Plattform möjliggör interaktion med diagnostiska data och driftsatta applikationer.