Pular para o conteúdo principal

Conceitoavançado

Restrições Organizacionais

Visão Geral

Programas de modernização fracassam mais por razões organizacionais que técnicas.

A dinâmica é reconhecível: o desenho é competente, a equipe é capaz, e o projeto morre por perda de apoio, por conhecimento que saiu, por incentivo desalinhado, ou por prioridade que mudou.

Tratar esses fatores como "fora do escopo técnico" é o que os torna fatais. Eles são parte do projeto, e podem ser endereçados.

Problema

O plano de modernização típico contém arquitetura, sequência, estimativa e riscos técnicos.

O que ele não contém:

quem defende o projeto, e o que acontece se essa pessoa sair
quanto tempo o apoio dura antes de precisar ser renovado
quem sabe o que o sistema faz, e o que acontece se sair
quem perde com a modernização, e como reagirá
o que o time de produto deixa de receber, e se ele concorda

Cada um desses é uma condição de viabilidade. Ignorá-los não os remove.

Conceitos Centrais

O apoio evapora

Programas longos consomem apoio político. A dinâmica:

mês 1 entusiasmo, orçamento aprovado
mês 6 progresso invisível para quem não é técnico
mês 12 "quando isso termina?"
mês 18 prioridade nova, orçamento realocado

O que sustenta apoio não é comunicação de progresso — é entrega de valor visível.

Ver arquitetura de transição. Um programa cujo primeiro valor aparece no mês 14 vai enfrentar essa erosão sem defesa.

E o patrocinador precisa ser mais de um: programas apoiados por uma única pessoa morrem quando ela muda de função — o que, em programas de dois anos, é provável.

Conhecimento concentrado é risco de projeto

O sistema legado é mantido por poucas pessoas, e elas são necessárias para a modernização — para explicar o comportamento, para validar o novo, para resolver o que aparece.

a pessoa sai durante o projeto → o conhecimento que faltava se perde
a pessoa é alocada em outra coisa → o projeto trava
a pessoa resiste → ver adiante

Ver sistemas legados.

O tratamento: transferência de conhecimento como primeira etapa do projeto, não como consequência. Testes de caracterização, documentação, e pareamento.

Isso tem custo de tempo antes de qualquer código novo — e é o investimento que mais reduz risco.

Incentivo desalinhado é a restrição menos discutida

A pergunta que raramente é feita: quem perde com esta modernização?

a pessoa cujo conhecimento único é a fonte da posição dela
o time cuja razão de existir era manter o sistema
o fornecedor que será substituído
a área que perde controle sobre um sistema

Nenhuma dessas resistências é irracional. Elas são respostas previsíveis a incentivos reais.

Ignorá-las produz resistência passiva — informação que não aparece, prazos que escorregam, problemas que só são descobertos tarde.

O tratamento é explícito: identificar quem perde, e endereçar. Frequentemente a solução é simples — a pessoa cujo conhecimento é único se torna a autoridade sobre o sistema novo, em vez de perder relevância.

O time precisa continuar entregando

Modernização compete com produto. E, em programas longos, a competição é resolvida a favor do produto — sempre.

modelo que falha "vamos parar de entregar funcionalidades por um ano"
modelo que funciona modernização e produto em paralelo, com proporção acordada

A proporção — algo como 70% produto e 30% modernização — é mais lenta e sobrevive.

E ela exige que a modernização seja fatiada em incrementos que cabem nessa proporção. Ver modernização incremental.

Estimativa e a natureza do trabalho

Modernização é trabalho de descoberta: boa parte do que será feito só é conhecida depois de começar.

Estimá-la como construção — com escopo definido e prazo — produz o padrão conhecido: o projeto atrasa, a confiança erode, e o apoio some.

O que funciona melhor:

horizonte curto comprometer-se com a próxima fatia, não com o programa
faixa, não ponto "entre 4 e 7 meses", com o que determina cada extremo
reestimar a cada fatia, com o aprendizado

E comunicar a natureza do trabalho antecipadamente: quem patrocina precisa entender que descobertas vão mudar o plano, ou cada mudança será lida como falha de execução.

A estrutura de times precisa acompanhar

Uma modernização que muda fronteiras de sistema sem mudar fronteiras de time produz uma estrutura que não se sustenta.

Ver arquitetura de aplicação.

E o inverso: manter um time dedicado à modernização, separado dos times de produto, produz um sistema novo que ninguém quer receber — porque não foi construído por quem vai mantê-lo.

O modelo que costuma funcionar: os times que vão operar o resultado participam da construção, com apoio de quem tem experiência de modernização.

Modelo Mental

As restrições organizacionais são parte do projeto. Ignorá-las não as remove — apenas transfere a descoberta para o momento em que elas são fatais.

Quando Usar

Esta análise deveria preceder qualquer programa de modernização, especialmente quando:

  • A duração prevista passa de seis meses.
  • O conhecimento do sistema é concentrado.
  • Há times ou fornecedores que perdem com a mudança.
  • A modernização compete com um roteiro de produto ativo.

Quando Não Usar

Tratando restrições organizacionais como fora do escopo.

Com um único patrocinador.

Sem transferência de conhecimento antes de começar.

Parando o produto durante a modernização.

Estimando como construção, com escopo e prazo fixos.

Com time dedicado separado de quem vai operar.

Alternativas

  • Fatias menores — reduzem exposição a mudança de prioridade.
  • Modernização oportunista — modernizar o que se toca, sem programa dedicado. Ver modernização incremental.
  • Contenção — isolar o legado em vez de substituí-lo, quando o apoio não existe.
  • Adiar — decisão legítima quando as condições organizacionais não estão dadas.

A última merece consideração: um programa iniciado sem apoio suficiente consome recursos e morre pela metade, deixando a organização pior que antes.

Trade-offs

Programa dedicadoOportunista
Progresso rápidoLento
Consome apoioNão depende dele
Vulnerável a mudança de prioridadeResiliente
Escopo controladoDifuso
Time dedicadoTimes de produto
FocoDivide atenção
Resultado que ninguém quer receberQuem constrói opera
Conhecimento concentrado no novo timeDistribuído

Modos de Falha

Apoio evaporado. Programa interrompido pela metade.

Conhecimento perdido durante o projeto.

Resistência passiva. Informação que não aparece.

Produto parado. Pressão insustentável.

Estimativa tratada como compromisso. Cada descoberta lida como falha.

Sistema novo rejeitado por quem vai operá-lo.

Patrocinador único que muda de função.

Erros Comuns

Não identificar quem perde. Toda modernização retira influência ou familiaridade de alguém. Quem perde e não foi ouvido vira resistência que aparece como objeção técnica.

Não fazer transferência de conhecimento primeiro. As regras não documentadas vivem na cabeça de poucas pessoas. Se elas saírem no meio, o que resta é arqueologia de código.

Prometer prazo em trabalho de descoberta. Enquanto o comportamento real do sistema é desconhecido, qualquer data é ficção — e a data perdida corrói a credibilidade que sustenta o resto do projeto.

Depender de um patrocinador. Modernizações levam anos e patrocinadores mudam de área. Sem apoio distribuído, a saída de uma pessoa encerra o projeto.

Separar quem constrói de quem vai operar. Quem opera herda decisões que não tomou e não tem contexto para sustentar, e a operação do sistema novo fica pior que a do antigo.

Não entregar valor antes do mês seis. Projeto longo sem entrega visível perde prioridade no primeiro corte de orçamento, independentemente do mérito técnico.

Exemplo Real

Uma empresa de energia iniciou a substituição do sistema de faturamento — 21 anos, crítico, mantido por quatro pessoas.

O projeto foi bem desenhado tecnicamente: estrangulamento, fatias definidas, migração de dados planejada.

Ele foi cancelado no mês 15, com cerca de 40% concluído.

A análise posterior identificou quatro causas, nenhuma técnica:

Apoio. O patrocinador — um diretor — saiu da empresa no mês 11. O substituto não tinha compromisso com o programa, e no ciclo de orçamento seguinte realocou os recursos.

Valor tardio. A primeira fatia com valor visível para o negócio estava planejada para o mês 18. Nos 15 meses executados, nada perceptível tinha sido entregue.

Conhecimento. Duas das quatro pessoas que mantinham o sistema saíram durante o projeto — uma delas para um concorrente. A transferência de conhecimento estava planejada para a fase final.

Resistência. O time que mantinha o sistema antigo via o projeto como o fim da própria função. A cooperação era formal e mínima; informações apareciam tarde.

A segunda tentativa, iniciada dois anos depois, mudou a abordagem antes de mudar a técnica:

Três patrocinadores, de áreas diferentes, com revisão trimestral conjunta.

Primeira fatia com valor no mês 4. A sequência foi reordenada para entregar, cedo, uma funcionalidade que o negócio pedia havia anos — emissão de segunda via com recálculo.

Transferência de conhecimento como fase 1. Quatro meses antes de qualquer código novo, com testes de caracterização e documentação produzidos pelas pessoas que mantinham o sistema.

A equipe do sistema antigo como protagonista. As duas pessoas remanescentes foram designadas autoridades técnicas do sistema novo, com o papel formalizado. A resistência desapareceu — elas passaram a ter algo a ganhar.

Proporção acordada. 30% da capacidade em modernização, 70% em produto, revisada trimestralmente.

Estimativa em faixa, por fatia, reestimada a cada entrega.

A segunda tentativa levou 26 meses — mais que os 18 originalmente previstos na primeira — e foi concluída.

Na retrospectiva: o desenho técnico da primeira tentativa era melhor que o da segunda. Ele falhou por razões que estavam fora do documento de arquitetura, e que ninguém tinha considerado escopo do projeto.

Conceitos Relacionados

Exercício Prático

Para um programa de modernização em andamento ou planejado, liste: quem patrocina, quem detém o conhecimento único, e quem perde com a mudança.

As três listas são condições de viabilidade — e nenhuma delas costuma estar no plano.

Perguntas de Entrevista

  • Por que o apoio evapora, e o que o sustenta?
  • Por que resistência a modernização geralmente não é irracional?
  • Por que estimar modernização como construção produz erosão de confiança?

Para Aprofundar

  • Kotter, John. Leading Change. HBS Press, 1996.
  • Skelton, Matthew; Pais, Manuel. Team Topologies. IT Revolution, 2019.
  • Hohpe, Gregor. The Software Architect Elevator. O'Reilly, 2020.
Terminou de ler este documento?Seu progresso fica salvo apenas neste navegador.