Para muitas empresas, a jornada para a nuvem reduz os custos técnicos da dívida e atende aos objetivos de CapEx para OpEx. Isso inclui rearquitetura para microsserviços, lift-and-shift, reformulação de plataforma, refatoração, substituição e muito mais. À medida que práticas como DevOps, engenharia nativa da nuvem, sem servidor e engenharia de confiabilidade de site (SRE) amadurecem, o foco está mudando para níveis significativos de automação, velocidade, agilidade e alinhamento de negócios com TI (o que ajuda a TI corporativa a se transformar em organizações de engenharia).
Muitas empresas lutam para obter valor real das suas jornadas na nuvem e podem continuar a gastar mais. Vários analistas relataram que mais de 90% das empresas continuam a gastar mais na nuvem, muitas vezes sem obter retornos substanciais.
A verdadeira essência do valor emerge quando os negócios e a TI podem colaborar para criar novos recursos em alta velocidade, resultando em maior produtividade do desenvolvedor e velocidade de lançamento no mercado. Esses objetivos exigem um modelo operacional alvo. A implantação rápida de aplicativos na nuvem requer não apenas aceleração do desenvolvimento com integração, implantação e testes contínuos (CI/CD/CT), mas também requer aceleração do ciclo de vida da cadeia de suprimentos, que envolve vários outros grupos, como risco de governança e conformidade (GRC), gerenciamento de mudanças , operações, resiliência e confiabilidade. As empresas estão continuamente buscando maneiras que capacitem as equipes de produtos a passar do conceito à implantação mais rápido do que nunca.
Abordagem baseada em automação e liderada por DevSecOps
Muitas vezes, as empresas adaptam elementos de transformação da nuvem nos processos existentes da cadeia de fornecimento de aplicativos, em vez de considerar novos ciclos de vida e modelos de entrega adequados para velocidade e escala. As empresas que reinventam o ciclo de vida do aplicativo por meio de uma abordagem que prioriza a automação incentivam uma aceleração do ciclo de vida do produto orientada pela engenharia que concretiza o potencial da transformação da nuvem. Exemplos incluem:
Arquitetura baseada em padrões que padroniza o processo de arquitetura e design (enquanto as equipes têm autonomia para escolher padrões e tecnologia ou co-criar novos padrões). Padrões que abordam dimensões de segurança e conformidade, garantindo rastreabilidade a esses requisitos. Padrões como código que ajudam a codificar múltiplas preocupações transversais (isso também promove o modelo de origem interno de maturidade de padrões e impulsiona a reutilização). Atividades orientadas por pipeline de DevOps que podem ser utilizadas em todo o ciclo de vida. Geração automática de dados específicos necessários para análises de segurança e conformidade. Avaliações de prontidão operacional com intervenção manual limitada ou nenhuma.
À medida que as empresas adotam o nativo da nuvem e tudo como código, a jornada do código à produção tornou-se um aspecto crítico da entrega de valor aos clientes. Esse processo complexo, muitas vezes chamado de “caminho para implantação”, abrange uma série de etapas e decisões complexas que podem impactar significativamente a capacidade de uma organização de fornecer software de maneira eficiente, confiável e em escala. Desde arquitetura, design, desenvolvimento de código, testes até implantação e monitoramento, cada estágio do caminho para implantação apresenta desafios e oportunidades únicos. À medida que você navega pelas complexidades que existem hoje, a IBM® pretende ajudá-lo a descobrir as estratégias e o modo de estado alvo para alcançar um caminho contínuo e eficaz para implementação.
Serão exploradas as melhores práticas, ferramentas e metodologias que capacitam as organizações a agilizar seus pipelines de entrega de software, reduzir o tempo de lançamento no mercado, melhorar a qualidade do software e garantir operações robustas em ambientes de produção.
A segunda postagem desta série fornece um modelo de maturidade e blocos de construção para ajudar as empresas a acelerar o ciclo de vida da cadeia de fornecimento de software no cenário em constante evolução do desenvolvimento de software empresarial nativo da nuvem.
Caminho para implantação: visão atual e desafios
O diagrama abaixo resume uma visão do ciclo de vida de desenvolvimento de software empresarial (SDLC) com portas típicas. Embora o fluxo seja autoexplicativo, a chave é entender que há vários aspectos do processo da cadeia de fornecimento de software que fazem dele uma combinação de modelos ágeis em cascata e intermitentes. O desafio é que o cronograma de construção e implantação de um aplicativo (ou uma iteração dele) é afetado por diversas atividades de primeira e última etapa que normalmente permanecem manuais.
Os principais desafios da natureza tradicional do SDLC são:
Tempo de espera de pré-desenvolvimento de 4 a 8 semanas na fase de arquitetura e design para chegar ao desenvolvimento. Isso é causado por: Várias revisões iniciais para garantir que não haja impactos adversos nos negócios, incluindo questões de privacidade, classificação de dados, continuidade de negócios e conformidade regulatória (e a maioria delas são manuais). Processos SDLC em toda a empresa que permanecem em cascata ou semi-ágeis, exigindo execução sequencial, apesar dos princípios ágeis nos ciclos de desenvolvimento (por exemplo, provisionamento do ambiente somente após a aprovação completa do projeto). As aplicações consideradas “únicas” estão sujeitas a um exame minucioso e a intervenções com oportunidades limitadas de aceleração. Desafios na institucionalização da arquitetura e do desenvolvimento baseados em padrões devido à falta de esforço coeso e de condução do agente de mudança, como a padronização. Uma cultura de segurança que afeta a velocidade do desenvolvimento, com adesão a controles e diretrizes de segurança que geralmente envolvem processos manuais ou semimanuais. Tempo de espera de desenvolvimento para provisionar ambiente e integração de ferramentas CI/CD/CT devido a:Provisionamento de ambiente manual ou semiautomático.Padrões (no papel) apenas como orientação prescritiva. Ferramentas de DevOps fragmentadas que exigem esforço para serem unidas. O tempo de espera pós-desenvolvimento (última milha) antes da entrada em operação é facilmente de 6 a 8 semanas ou mais devido a: Coleta manual de evidências para passar por revisões de segurança e conformidade além do padrão SAST/SCA/DAST (como configuração de segurança, dia 2 controles, marcação e muito mais). Coleta manual de evidências para análises de operação e resiliência (como suporte a operações em nuvem e continuidade de negócios). Revisões de transição de serviço para apoiar serviços de TI e gerenciamento e resolução de incidentes.
Caminho para implantar: estado de destino
O caminho para implantar o estado alvo requer um processo simplificado e eficiente que minimize gargalos e acelere a transformação da cadeia de fornecimento de software. Neste estado ideal, o caminho para a implantação é caracterizado por uma integração perfeita do design (primeira milha), bem como dos estágios de desenvolvimento, teste, engenharia de plataforma e implantação (última milha), seguindo princípios ágeis e DevOps. Isso ajuda a acelerar a implantação de alterações de código de forma rápida e automática, com as validações necessárias (orientadas pela automação) para ambientes de produção.
A visão de estado alvo da IBM prioriza a segurança e a conformidade, integrando verificações de segurança e validação de conformidade no pipeline de CI/CD/CT, permitindo a detecção precoce e a resolução de vulnerabilidades. Esta visão enfatiza a colaboração entre equipes de desenvolvimento, operações, confiabilidade e segurança por meio de um modelo de responsabilidade compartilhada. Também estabelece monitoramento contínuo e ciclos de feedback para coletar insights para melhorias futuras. Em última análise, o estado-alvo visa fornecer atualizações de software e novos recursos aos utilizadores finais rapidamente, com intervenção manual mínima e com um elevado grau de confiança para todas as partes interessadas da empresa.
O diagrama abaixo descreve uma visão potencial do caminho de implantação que ajuda a adotar o modelo SDLC nativo da nuvem.
Os principais elementos do modelo SDLC nativo da nuvem incluem:
Arquitetura e design orientados por padrões institucionalizados em toda a empresa. Padrões que incorporam requisitos-chave de segurança, conformidade, resiliência e outras políticas empresariais (como código). Revisões de segurança e conformidade que são aceleradas como padrões e usadas para descrever a solução. Desenvolvimento central, incluindo a criação de ambientes, pipelines e configuração de serviços (que é conduzido por meio do catálogo corporativo de engenharia de plataforma). Pipeline CI/CD/CT que cria vínculos com todas as atividades ao longo do caminho para implantar o ciclo de vida. A engenharia de plataforma cria, configura e gerencia plataformas e serviços com todas as políticas corporativas (como criptografia) incorporadas como políticas de plataforma. Ferramentas de segurança e conformidade (por exemplo, verificações de vulnerabilidades ou verificações de políticas) e automação integradas aos pipelines ou disponíveis como autoatendimento. Geração de um alto nível de dados (a partir de logs, resultados de ferramentas e insights de varredura de código) para diversas revisões sem intervenção manual. Rastreabilidade desde o backlog até as notas de versão da implantação e impacto das alterações. Intervenções apenas por exceções.
O caminho para implantação impulsiona a aceleração por meio de clareza, responsabilidade e rastreabilidade
Ao definir um caminho estruturado para implementação, as organizações podem padronizar as etapas envolvidas no ciclo de vida da cadeia de abastecimento, garantindo que cada fase seja rastreável e auditável. Isto permite que as partes interessadas monitorizem o progresso através de fases distintas, desde a concepção inicial até à implementação, proporcionando visibilidade em tempo real do estado do programa. Atribuir a responsabilidade em cada estágio do caminho de implantação garante que os membros da equipe sejam responsáveis por seus resultados, facilitando o rastreamento de contribuições e mudanças, além de acelerar a resolução de problemas com o nível certo de intervenção. A rastreabilidade ao longo do caminho até a implantação fornece insights baseados em dados, ajudando a refinar processos e aumentar a eficiência em programas futuros. Um caminho de implantação bem documentado apoia a conformidade com as regulamentações do setor e simplifica os relatórios, pois cada parte do processo é claramente registrada e recuperável.
Leia a Parte 2: Explorando o modelo de maturidade e a abordagem de realização