O desenvolvimento de interfaces eficazes na engenharia de plataforma envolve a transição de processos manuais personalizados para soluções padronizadas e consistentes que simplificam o provisionamento e as solicitações de serviço. Este artigo explora os estágios de desenvolvimento de interface, com foco na configuração de ambientes de desenvolvimento e no diagnóstico do comportamento do aplicativo.
Processos personalizados
Existe uma coleção de processos variados para provisionar diferentes recursos e serviços, mas a consistência da interface não é considerada. Processos personalizados e personalizados atendem às necessidades imediatas de indivíduos ou equipes e dependem de intervenção manual, mesmo que o provedor use alguns scripts de implementação automatizados.
O conhecimento de como solicitar essas soluções é compartilhado de pessoa para pessoa. O processo de solicitação de um serviço carece de padronização e consistência. O provisionamento e o uso de um serviço de plataforma provavelmente exigem suporte profundo do provedor de recursos.
A falta de requisitos e padrões centrais torna esse nível apropriado quando a empresa ainda não identificou e documentou as expectativas. Pode ser particularmente eficaz para equipes em empresas em estágio inicial ou esforços de plataforma. Nesses ambientes, as equipes têm a liberdade de desenvolver processos e recursos de acordo com suas necessidades, permitindo que entreguem mais rapidamente e paguem o preço da padronização somente quando necessário posteriormente.
Configurar ambiente de desenvolvimento: engenheiros individuais reúnem as etapas necessárias para configurar um ambiente perguntando a colegas, encontrando documentação, seguindo suas próprias práticas conhecidas.
Diagnostique o comportamento do aplicativo: os engenheiros escolhem suas próprias ferramentas e processos para diagnosticar o comportamento. Eles são responsáveis por tomar medidas para acessar o aplicativo e os logs.
Padrões locais
Engenheiros e equipes de engenharia definem de forma proativa, mas informal, padrões para diferentes recursos e serviços, de modo a aumentar a quantidade de compartilhamento de conhecimento que pode ocorrer dentro da organização. Comunidades de apoio informais surgem em torno desses padrões, mas isso depende de recursos e comprometimento de indivíduos e equipes individuais.
Configure o ambiente de desenvolvimento: equipes individuais definem suas próprias ferramentas e processos e tentam garantir que os engenheiros dentro das equipes cumpram esses processos. Pode ser por meio de documentação ou contêineres, mas a escolha de como documentar ferramentas e processos é conduzida pela equipe.
Diagnosticar o comportamento do aplicativo: equipes individuais definem suas próprias práticas e processos para diagnosticar o comportamento. As equipes contam com a equipe de DevOps/TI para acessar os recursos implantados.
Interfaces padrão consistentes para provisionamento e observação de plataformas e recursos existem e atendem a amplas necessidades. Os usuários podem identificar quais recursos estão disponíveis e podem solicitar os recursos necessários.
Estradas pavimentadas ou caminhos dourados, na forma de documentação e modelos, são fornecidos. Esses recursos definem como provisionar e gerenciar recursos típicos usando padrões compatíveis e testados. Embora alguns usuários possam usar essas soluções por conta própria, as soluções geralmente ainda exigem profundo conhecimento de domínio e, portanto, o suporte dos mantenedores ainda é vital.
Gerenciamento significativo necessário da equipe central para manter modelos/documentação, especialmente em resposta às mudanças nas necessidades das equipes.
Configurar ambiente de desenvolvimento: algum investimento em um caminho comum com documentação ou modelos que definem as ferramentas e processos necessários em toda a organização. As equipes podem se desviar dos padrões à medida que modificam os modelos, mas não podem / não podem mesclar de volta à equipe centralizada.
Diagnosticar o comportamento do aplicativo: prática padrão definida para acessar e diagnosticar recursos implantados.
Soluções de autoatendimento
As soluções são oferecidas de forma a proporcionar autonomia aos usuários e requer pouco suporte dos mantenedores. A organização incentiva e permite que as soluções forneçam interfaces consistentes que permitem a descoberta e a portabilidade da experiência do usuário de um recurso para outro. Embora sejam de autoatendimento, as soluções exigem conscientização e implementação da equipe. Para melhorar essa experiência, pode haver uma linguagem interna guiada e simplificada que permite que os usuários adotem e integrem os recursos da plataforma mais rapidamente. Isso gera uma coleção de recursos centrada no usuário, auto-service e consistente.
Configure o ambiente de desenvolvimento: as equipes de engenharia dependem da plataforma para configurar ambientes de desenvolvimento. A affordance existe para descobrir os recursos disponíveis. As equipes de engenharia adotam a plataforma exclusivamente para todas as interações. A plataforma auxilia no compartilhamento de conhecimento por meio da descoberta e modificação de modelos novos e existentes, aumentando continuamente o valor oferecido pela plataforma.
Diagnosticar o comportamento do aplicativo: ferramentas e serviços para observar recursos/capacidades fornecidos por meio da plataforma sob demanda. A plataforma fornece recursos para diagnosticar e observar recursos/recursos.
Serviços integrados
Os recursos da plataforma são integrados de forma transparente às ferramentas e processos que as equipes já usam para fazer seu trabalho. Alguns recursos são provisionados automaticamente, como observabilidade ou gerenciamento de identidade para um serviço implantado. Quando os usuários atingem as bordas dos serviços fornecidos, há uma oportunidade de ir além das soluções automatizadas e personalizar de acordo com suas necessidades sem sair das ofertas internas, porque os recursos da plataforma são considerados blocos de construção. Esses blocos de construção são usados para criar composições transparentes e automáticas para atender aos casos de uso de nível superior, permitindo uma personalização mais profunda quando necessário.
As equipes internas da plataforma podem determinar quais recursos estão funcionando bem para a organização e podem usar esse conhecimento para determinar em quais áreas investir para melhorar ainda mais a plataforma.
Os recursos podem ser estendidos e empacotados de várias maneiras, oferecendo flexibilidade máxima para provisionar, gerenciar e observar recursos e recursos.
Configure o ambiente de desenvolvimento: os recursos da plataforma são integrados às ferramentas e processos que as equipes já usam para fazer seu trabalho. Pode ser usado via CLI, IDE etc.
Diagnostique o comportamento do aplicativo: a Platform configura automaticamente os recursos de observabilidade para cada aplicativo implantado. A plataforma fornece recursos para interagir com dados de diagnóstico e aplicativos implantados.