Enable javascript in your browser for better experience. Need to know to enable it? Go here.
Blogs Banner

Adotando uma estratégia de plataforma digital: uma abordagem iterativa

Lideranças executivas de empresas estabelecidas conhecem bem o desafio. Para permanecer relevantes e competitivas no mundo digital de hoje, é essencial modernizar a tecnologia antiga de suas empresas. Parte do desafio é saber por onde começar e como fazer isso sem interromper as operações cotidianas do negócio.

Na Thoughtworks, nossa abordagem para construir plataformas digitais competitivas promove a integração contínua de recursos digitais com sistemas existentes. Abraçamos o gerenciamento de dependência e a contenção (em vez de manutenção e substituição) de sistemas legados. Nossa abordagem começa com o foco em clientes:
  • Planeje seu percurso: identifique duas ou três metas principais de atendimento a clientes para sua plataforma digital
  • Estabeleça sua base de apoio: proteja a entrega contínua contra ameaças sistêmicas e organizacionais
  • Trace uma nova fronteira: adicione novos recursos e microsserviços para transformar a plataforma em uma base fundamental para o negócio

Essa abordagem em fases permite uma migração suave de sistemas centrais de TI antigos para uma plataforma digital crítica para o negócio. Ela também permite que CIOs transformem a empresa em uma poderosa player digital, ao mesmo tempo em que atenua os riscos operacionais que geralmente assombram projetos de transformação em grande escala. Mas este não é um exercício único. Após cada iteração, sugerimos começar novamente, em busca de mais melhorias, fortalecendo a construção de suas capacidades digitais.

Planeje seu percurso

Empresas maduras passam anos investindo em novos recursos de negócio, integrando aquisições e atualizando stacks de tecnologia para fornecer os melhores produtos e serviços da categoria. Compreensivelmente, para proteger seus investimentos (e contornar a política organizacional), elas lutam para encontrar maneiras de corrigir as deficiências de seus sistemas de TI. Embora isso funcione no curto prazo, com o tempo, essas soluções alternativas tornam-se insustentáveis ou resistentes a mudanças. Como bem definiu Buckminster Fuller: "Você nunca muda as coisas lutando contra a realidade existente. Para mudar algo, construa um novo modelo que torne o modelo existente obsoleto."

Nossa abordagem incentiva as organizações de TI a iterar rapidamente e lançar aplicações orientadas a clientes, ao mesmo tempo minimizando as alterações em sistemas back-end mais lentos. Em vez de buscar melhorar esses sistemas, aconselhamos nossas clientes a concentrarem seus esforços digitais na entrega de experiências de cliente atraentes que irão gerar receita de primeira linha: priorize duas ou três experiências de cliente diferenciadoras; identifique quais recursos sua plataforma digital precisa para fornecer essas experiências (bem como quaisquer dependências em sistemas legados); e, em seguida, facilite um ambiente acelerado em que uma equipe dedicada com competências digitais possa construir e levar essas experiências ao mercado rapidamente.
 
Usamos essa abordagem com uma cliente do setor de telecomunicações, para permitir que ela aprimorasse suas ofertas de novos aparelhos e pacotes de serviços para clientes. Esses pacotes foram a base de suas novas experiências de cliente e foram implantados em uma nova plataforma digital, usando fachadas digitais — um pacote de API leve, implantado na plataforma digital com orquestração ou tradução mínima — para integração com seus sistemas legados de back-end. Essa abordagem permitiu que nossa cliente respondesse rapidamente à demanda de clientes e reduzisse os custos do call center, ao mesmo tempo permitindo que o negócio operasse normalmente.

Mas esta foi apenas a primeira fase. Nossa cliente ainda tinha apenas o esqueleto de uma plataforma digital: se tivesse parado por aí, teria essencialmente apenas adicionado complexidade por meio da fachada de API. Para que as empresas alcancem o próximo nível de maturidade digital, elas precisam avançar ainda mais para entregar mudanças nas capacidades essenciais.

value delivery
Nossa abordagem de fases para modernizar os resultados de TI em uma plataforma digital que agrega valor no início e gradualmente evolui para uma base fundamental para os negócios

Estabeleça sua base de apoio

Obviamente, executar um ambiente de produção tradicional, gerenciado para escalabilidade e confiabilidade, ao lado de fachadas de API, é um desafio. No nível organizacional, você está gerenciando efetivamente dois negócios separados por uma parede de métodos e objetivos aparentemente incompatíveis. De um lado, uma equipe imersa em um ambiente ágil e estimulada a experimentar e iterar (falhar, corrigir e seguir em frente), trabalhando em ciclos de lançamento diários ou semanais. Do outro, uma equipe de TI experiente operando em um ritmo mais moderado para manter o negócio funcionando.

Para que a equipe da plataforma digital evolua, é essencial proteger e reforçar as fachadas de API, para que você tenha uma base pronta. Estas são as quatro preocupaçõe principais a se consider ao executar sistemas duplos:
  • Proteja contra limitações e restrições técnicasA interface entre seus novos serviços digitais e o back-end legado é um ponto fraco em potencial. Por exemplo, pode haver uma incompatibilidade no número de solicitações que cada sistema pode tratar. Você também pode enfrentar uma corrupção da lógica de negócio ou dos modelos de dados, caso as alterações nos sistemas de back-end não possam ser evitadas. Técnicas como estrangulamento e quebra de circuito podem tornar suas fachadas mais robustas, enquanto adaptadores e gateways odem atuar como camadas anticorrupção.
  • Proteja os ciclos rápidos de lançamento da plataformaA plataforma digital oferece suporte a ciclos de lançamento que provavelmente serão muito mais curtos do que os de sistemas legados. Mas você não pode deixar que o legado arraste o negócio para baixo. Em vez disso, técnicas como alternância de recursos e teste de contrato podem oferecer suporte à entrega contínua durante a execução de sistemas legados.
  • Proteja a proposta de valor da plataforma. No nível organizacional, antes de expandir a plataforma digital com novos recursos, você precisa aumentar a confiança em toda a organização. Você pode conseguir isso reforçando a proposta de valor da plataforma por meio de uma série de ganhos rápidos — continue adicionando serviços para tornar a plataforma mais robusta e evite desafiar estruturas responsáveis por sistemas de back-end até que a plataforma digital seja confiável.
Depois que a plataforma digital é desacoplada dos ciclos de lançamento legados e protegida da lógica e dos princípios de negócios legados, você garante seu valor. Agora, você pode enfrentar com segurança a batalha maior para consolidar e executar o processo de replataforma de sistemas legados caros, sem acumular qualquer dívida técnica ou arquitetural.

Em algumas organizações, uma barreira bem aplicada entre uma plataforma digital e sistemas legados pode ser uma boa solução por vários anos. A plataforma digital pode ser usada para experimentação contínua, para suportar novas experiências de uso e habilitar novos canais, enquanto a empresa continua se adaptando às mudanças.

Em alguns casos, as organizações param neste ponto: elas têm novos recursos digitais robustos e ficam satisfeitas em evitar a complexidade percebida de eliminar gradualmente os sistemas legados. Mas se você está buscando diferenciar sua organização em seus recursos principais — e não apenas nas experiências superficiais de uso — é necessário mais esforço. A mudança estratégica se baseia fundamentalmente em mudar o que você faz e como o faz organizacionalmente.

Trace uma nova fronteira

Com uma fronteira firme entre a plataforma digital e os sistemas de produção tradicionais, você pode começar a implementar microsserviços com recursos próprios de gerenciamento de dados distribuídos. Estas são algumas das diretrizes de integração a serem consideradas durante esta fase final de seus esforços de transformação digital:
  • Aplique o princípio "aberto/fechado". Estenda os recursos da plataforma digital de modo que classes de software, módulos, funções, etc. sejam considerados "abertos para extensão" e o sistema existente "fechado para modificação ". De agora em diante, todos os recursos de negócios aprimorados e novos devem ser criados apenas na plataforma digital, como extensões para sistemas legados.
  • Transição do sistema de registro para um sistema de consistência eventual. Com uma arquitetura de microsserviços implementada na plataforma digital, o sistema de registro existente pode ser transferido para um sistema de consistência eventual. Nesse ponto, a plataforma digital assume cada vez mais responsabilidades tradicionalmente capturadas pelos sistemas de back-end antigos, mas as informações ainda fluindo para esses sistemas "nos bastidores" até que possam ser contidas ou substituídas. Isso permite o verdadeiro desacoplamento de dependências.
  • Exponha eventos ou mensagens de sistemas existentes. Para apoiar os dois esforços anteriores, pode ser necessário abrir os sistemas existentes para que seus dados sejam expostos. Ou você pode precisar garantir uma visão consistente dos dados, na qual os fragmentos podem ser armazenados em sistemas diferentes. Padrões de integração ricos podem ser alcançados explorando maneiras não-invasivas de expor eventos de sistemas legados. Por exemplo, muitos sistemas COTS e SaaS suportam notificações, e muitos sistemas desenvolvidos de forma personalizada dependem de bancos de dados que podem enviar mensagens ou notificações. Se essas mudanças forem consideradas por meio de uma abordagem aberta/fechada, os sistemas externos podem eventualmente ser completamente dissociados da plataforma digital.

Conclusão

O sucesso de seus esforços de transformação digital depende de sua capacidade de identificar e gerenciar as dependências da plataforma digital em sistemas legados. Se você não tiver cuidado, corre o risco de comprometer a velocidade de entrega da plataforma digital e, dependendo das circunstâncias, até mesmo vê-la falhar. Muitas vezes, as iniciativas de modernização e transformação só têm sucesso após várias tentativas — e se as tentativas são iniciadas e, em seguida, abandonadas, os recursos previstos para a plataforma modernizada são adicionados ao acúmulo ou reimplementados nos sistemas legados que deveriam "estrangular".

Compreender e gerenciar dependências legadas também fornece oportunidades para novas cadeias de valor e decisões (como modernização ou substituição). Primeiro, no entanto, você deve estabelecer e reforçar os recursos da plataforma e a confiança organizacional.

Aviso: As afirmações e opiniões expressas neste artigo são de responsabilidade de quem o assina, e não necessariamente refletem as posições da Thoughtworks.

Atualize-se com nossos insights mais recentes