Het ontwikkelen van effectieve interfaces in platform engineering omvat het overstappen van aangepaste, handmatige processen naar gestandaardiseerde en consistente oplossingen die het inrichten en serviceaanvragen stroomlijnen. In dit artikel worden de fasen van interfaceontwikkeling verkend, waarbij u zich richt op het instellen van ontwikkelomgevingen en het diagnosticeren van toepassingsgedrag.
Aangepaste processen
Er bestaat een verzameling verschillende processen voor het inrichten van verschillende mogelijkheden en services, maar de consistentie van de interface wordt niet overwogen. Aangepaste op maat gemaakte processen voldoen aan de onmiddellijke behoeften van personen of teams en zijn afhankelijk van handmatige interventie, zelfs als de provider gebruikmaakt van een aantal geautomatiseerde implementatiescripts.
Kennis van het aanvragen van deze oplossingen wordt gedeeld van persoon tot persoon. Het proces voor het aanvragen van een service ontbreekt aan standaardisatie en consistentie. Voor het inrichten en gebruiken van een platformservice is waarschijnlijk uitgebreide ondersteuning van de mogelijkheidsprovider vereist.
Gebrek aan centrale vereisten en standaarden maakt dit niveau passend wanneer het bedrijf nog geen verwachtingen heeft geïdentificeerd en gedocumenteerd. Het kan effectief zijn voor teams bij bedrijven in een vroeg stadium van hun ontwikkeling of bij platforminspanningen. In deze omgevingen hebben teams de vrijheid om processen en mogelijkheden naar hun behoeften te ontwikkelen, zodat ze sneller kunnen leveren en de prijs van standaardisatie alleen kunnen betalen wanneer dat later nodig is.
Ontwikkelomgeving instellen: individuele technici voegen de stappen samen die nodig zijn om een omgeving in te stellen door collega's te vragen, documentatie te zoeken en hun eigen bekende procedures te volgen.
Toepassingsgedrag diagnosticeren: technici kiezen hun eigen hulpprogramma's en proces voor het diagnosticeren van gedrag. Ze zijn verantwoordelijk voor het nemen van stappen voor toegang tot toepassingen en logboeken.
Lokale standaarden
Technici en technische teams definiëren proactief maar informeel standaarden voor verschillende mogelijkheden en services om de hoeveelheid kennisdeling die binnen de organisatie kan plaatsvinden, te vergroten. Informele ondersteuningsgemeenschappen ontstaan rond deze standaarden, maar dit is afhankelijk van middelen en inzet van individuen en individuele teams.
Ontwikkelomgeving instellen: afzonderlijke teams definiëren hun eigen hulpprogramma's en processen en proberen ervoor te zorgen dat technici binnen teams zich aan deze processen houden. Dit kan zijn via documentatie of containers, maar de keuze voor het documenteren van hulpprogramma's en processen wordt aangestuurd door het team.
Toepassingsgedrag diagnosticeren: afzonderlijke teams definiëren hun eigen procedures en processen voor het diagnosticeren van gedrag. Teams is afhankelijk van DevOps/IT-team voor toegang tot geïmplementeerde resources.
Consistente, standaardinterfaces voor het inrichten en observeren van platforms en mogelijkheden bestaan en voldoen aan brede behoeften. Gebruikers kunnen bepalen welke mogelijkheden beschikbaar zijn en zijn ingeschakeld om mogelijkheden aan te vragen die ze nodig hebben.
Geplaveide wegen of gouden paden, in de vorm van documentatie en sjablonen, worden verstrekt. Deze resources definiëren hoe u typische mogelijkheden kunt inrichten en beheren met behulp van compatibele en geteste patronen. Hoewel sommige gebruikers deze oplossingen zelf kunnen gebruiken, vereisen de oplossingen vaak nog steeds diepgaande domeinexpertise en daarom is ondersteuning van onderhouders nog steeds essentieel.
Belangrijk beheer dat vereist is van het centrale team voor het onderhouden van sjablonen/documentatie, met name als reactie op veranderende behoeften van teams.
Ontwikkelomgeving instellen: er is een aantal investeringen in een gemeenschappelijk pad met documentatie of sjablonen die de vereiste hulpprogramma's en processen in de hele organisatie definiëren. Teams kunnen afwijken van normen terwijl ze sjablonen aanpassen, maar slagen er niet in om weer samen te voegen in een gecentraliseerde teamstructuur.
Toepassingsgedrag diagnosticeren: Standaardpraktijk gedefinieerd voor het openen en diagnosticeren van geïmplementeerde resources.
Selfserviceoplossingen
Oplossingen worden aangeboden op een manier die autonomie biedt aan gebruikers en weinig ondersteuning van onderhouders vereist. De organisatie moedigt oplossingen aan en faciliteert consistente interfaces die de ontdekbaarheid en overdraagbaarheid van de gebruikerservaring tussen verschillende functionaliteiten bevorderen. Hoewel de zelfbediening belangrijk is, vereisen de oplossingen ook teambewustzijn en implementatie. Om deze ervaring te verbeteren, kan er een begeleide en vereenvoudigde interne taal zijn waarmee gebruikers sneller platformmogelijkheden kunnen gebruiken en integreren. Hiermee wordt een gebruikersgerichte, selfservicebare en consistente verzameling mogelijkheden gegenereerd.
Ontwikkelomgeving instellen: Technische teams zijn afhankelijk van het platform voor het instellen van ontwikkelomgevingen. Er bestaat een mogelijkheid om beschikbare bronnen te ontdekken. Technische teams gebruiken het platform uitsluitend voor alle interacties. Het platform helpt bij het delen van kennis door middel van de detectie en aanpassing van nieuwe en bestaande sjablonen, waardoor de waarde die het platform biedt voortdurend wordt verhoogd.
Toepassingsgedrag diagnosticeren: hulpprogramma's en services voor het observeren van resources/mogelijkheden worden aangeboden via platform op aanvraag. Platform biedt de mogelijkheid voor het diagnosticeren en observeren van bronnen/capaciteiten.
Geïntegreerde services
Platformmogelijkheden zijn transparant geïntegreerd in de hulpprogramma's en processen die teams al gebruiken om hun werk te doen. Sommige mogelijkheden worden automatisch ingericht, zoals waarneembaarheid of identiteitsbeheer voor een geïmplementeerde service. Wanneer gebruikers de randen van de geleverde services raken, is er een mogelijkheid om voorbij geautomatiseerde oplossingen te gaan en aan te passen aan hun behoeften zonder de interne aanbiedingen te verlaten, omdat platformmogelijkheden als bouwstenen worden beschouwd. Deze bouwstenen worden gebruikt om transparante en automatische samenstellingen te bouwen om te voldoen aan de use cases op een hoger niveau, terwijl u waar nodig diepere aanpassingen mogelijk maakt.
Interne platformteams kunnen bepalen welke mogelijkheden goed werken voor de organisatie en kunnen deze kennis gebruiken om te bepalen in welke gebieden moet worden geïnvesteerd om het platform verder te verbeteren.
Mogelijkheden kunnen op meerdere manieren worden uitgebreid en verpakt, wat maximale flexibiliteit biedt voor het inrichten, beheren en observeren van resources en mogelijkheden.
Ontwikkelomgeving instellen: platformmogelijkheden zijn geïntegreerd in de hulpprogramma's en processen die teams al gebruiken om hun werk te doen. Kan worden gebruikt via CLI, IDE of andere omgevingen.
Toepassingsgedrag diagnosticeren: Platform stelt automatisch mogelijkheden voor waarneembaarheid in voor elke geïmplementeerde toepassing. Platform biedt de mogelijkheid voor interactie met diagnostische gegevens en geïmplementeerde applicaties.