# O túnel que ficou esperando

**Arquitetura: quem decide como as partes do sistema se encaixam, e deixa lugar para o que ainda vai existir**

> Capítulo 6.11 de *Antes do Código*, livro aberto e gratuito de Marcelo Castelo Branco.
>
> Leia esta página no site: https://marcelocastelo.io/livros/antes-do-codigo/secao-6/capitulo-6-11

---

![A linha tracejada era um túnel que ninguém ia usar por vinte e dois anos. Construir esse pedaço antes saiu mais barato do que construir depois.](https://marcelocastelo.io/assets/livros/antes-do-codigo/6-11-a-linha-tracejada.webp)

*A linha tracejada era um túnel que ninguém ia usar por vinte e dois anos. Construir esse pedaço antes saiu mais barato do que construir depois.*

O capítulo do gestor de linha terminou com o trem das onze e meia levando trezentas pessoas para casa. O Raimundo só pôde pôr um trem a mais porque, muitos anos antes, alguém desenhou a linha com espaço para isso, e este capítulo volta ao tempo em que o metrô inteiro ainda era um desenho numa prancheta.

Você já viu um sistema em que cada mudança pequena quebra uma coisa do outro lado. Quase ninguém pergunta quem decidiu, lá no começo, que as partes desse sistema ficariam tão grudadas.

> — Arquitetura de software é coisa de sênior, eu nem preciso entender.
>
> — Primeiro a gente faz funcionar, depois vê como organiza.
>
> — Planejar para o futuro é perda de tempo, ninguém sabe o futuro.
>
> — Quanto mais completo o desenho, melhor o sistema.

> As decisões do começo de um sistema são as mais caras de mudar depois.

## A prancheta de vinte e dois anos atrás

Na prancheta da imagem que abre este capítulo está preso um projeto antigo, com as linhas de metrô em traços contínuos e as estações marcadas por círculos. Da estação do centro sai uma linha tracejada, em verde, para um lado onde ainda não há estação nenhuma. Na borda da prancheta ficam o compasso, a régua e o lápis, e ao lado, um cesto de projetos enrolados e, num banquinho, um capacete de obra.

O projeto é da Teresa, a engenheira que planejou as estações do mesmo metrô vinte e dois anos atrás. Antes de qualquer obra, a equipe de seis engenheiros da Teresa estudou o solo, o movimento das avenidas e o crescimento da cidade. A Teresa decidiu onde cada estação ia nascer, como os túneis iam se cruzar e onde a energia seria mais estável.

## Oitenta metros para nada

Ao desenhar a estação do centro, a Teresa pediu uma coisa que ninguém entendeu. A Teresa queria construir, embaixo da estação, um pedaço de túnel de oitenta metros, fechado nas duas pontas, sem trilho e sem destino, para uma linha que talvez um dia cruzasse ali. A obra ficaria oito por cento mais cara.

O comitê do orçamento achou desperdício. Ninguém sabia se a outra linha ia existir, e oito por cento era muito dinheiro para um túnel vazio.

Pare aqui um segundo e responda como se você fosse do comitê. Você aprovava pagar por um túnel que talvez nunca fosse usado?

## O pedaço que não dava para fazer depois

A Teresa explicou a conta. Cavar aqueles oitenta metros com a obra aberta custava oito por cento a mais. Cavar os mesmos oitenta metros embaixo de uma estação funcionando, com trens passando por cima, custaria anos de obra e meses de estação fechada.

A Teresa não pediu a outra linha inteira, nem a outra estação. **A Teresa pediu só o pedaço que seria quase impossível fazer depois**.

O comitê aprovou. O túnel ficou vazio por vinte e dois anos.

Neste ano, a linha nova chegou ao centro, entrou pelo túnel que esperava, e a estação do centro não fechou um dia sequer. **A arquitetura boa não tenta prever tudo, e deixa espaço só onde mudar depois sairia caro demais**.

> O túnel vazio custou oito por cento, e evitou fechar a estação mais movimentada da cidade.

## O pagamento separado do resto

Na empresa de ingressos, o Ciro é o arquiteto de software, que em inglês se chama software architect. **Arquitetura de software é o conjunto das decisões que dizem como as partes de um sistema se encaixam**, e por isso dizem o que vai ser fácil ou difícil de mudar depois.

Quatro anos atrás, quando a empresa era pequena, o Ciro decidiu separar o sistema de pagamento do resto do site. Cada parte ficou em computadores próprios, e as duas partes conversam trocando recados, sem uma parte precisar saber como a outra funciona por dentro. Na época, a separação pareceu exagero para uma empresa daquele tamanho.

Na manhã da venda, **a separação do Ciro foi o túnel da Teresa**. A Ivone conseguiu pôr mais computadores só no pagamento, sem mexer no site inteiro. A fila virtual da Sueli entrou na frente do pagamento sem que ninguém reescrevesse o pagamento.

## Só um túnel, e não a linha inteira

O Ciro também diz não ao futuro. Quando a diretoria falou do programa de pontos, o Ciro não construiu a estrutura dos pontos antes da hora, porque ninguém sabia se os pontos iam sair. O Ciro só deixou o cadastro dos clientes fácil de aumentar, para os pontos entrarem depois sem obra grande, e anotou o motivo.

O Ciro escreve, num documento, o porquê de cada decisão importante, com o que foi considerado e o que foi deixado de lado.

O mercado chama esse documento de registro de decisões de arquitetura (architecture decision record). **Uma decisão sem o motivo escrito parece erro para quem chega depois**, e é desfeita justamente por quem não sabia por que ela existia.

> A Teresa construiu só os oitenta metros que seriam caros depois, e o Ciro separou só o pagamento.

## Como saber se o desenho do metrô combina com você

### Quatro perguntas para saber se desenhar o sistema é o seu caminho

*Se você pensa em trabalhar com arquitetura*

As quatro perguntas cabem numa conversa curta. A arquitetura costuma ser trabalho de quem já tem anos de experiência, e quem está começando aprende primeiro a entender as decisões que já existem.

**1. Você pensa no que vai ser difícil de mudar depois?**

A Teresa não pensou em tudo. A Teresa pensou no pedaço que seria quase impossível fazer com a estação funcionando.

**2. Você aceita pagar um pouco mais agora, por um espaço só?**

A Teresa pagou oito por cento pelos oitenta metros, e nada pela linha inteira. A área pede a medida certa entre o desperdício e a falta de espaço.

**3. Você escreve o porquê das suas decisões?**

O registro do Ciro diz por que o pagamento ficou separado. Sem esse registro, alguém juntaria as partes de novo para ganhar uma semana.

**4. Você explica uma decisão técnica para quem decide o dinheiro?**

O comitê não entendia de túnel. A Teresa ganhou a discussão com a conta do custo de agora contra o custo de depois.

> Na arquitetura, a pergunta mais útil é o que vai custar caro mudar depois.

## Levar para a entrevista

*Três perguntas que mostram se você entende as decisões que deixam um sistema fácil de mudar.*

Nas três perguntas abaixo existe a mesma tentação: desenhar o sistema mais completo e mais dividido que você consegue imaginar. Só que nenhuma das três perguntas está medindo o tamanho do seu desenho. As três estão medindo se você sabe onde vale cavar o túnel antes, e onde não vale.

### “Como você organizaria um sistema pequeno que pode crescer?”

A pergunta parece pedir um desenho grande, e é sobre a medida do desenho.

**O que quem entrevista quer ouvir**

- Que você separa o que tem motivo para mudar sozinho
- Que você mantém simples o que não tem motivo
- Um caso seu em que a separação ajudou

**O que derruba**

- Separar tudo, como as empresas gigantes fazem
- Não separar nada e resolver depois
- Responder com nome de tecnologia, sem o motivo

**Boa resposta**

“No sistema de agenda que fiz para um salão, deixei separada a parte que manda o lembrete para a cliente, porque eu não sabia se a dona ia querer mensagem ou e-mail. Quando ela pediu e-mail, troquei só aquela parte, em uma tarde. O resto eu não separei, porque não tinha motivo, e o código ficou mais simples de entender.”

**Resposta ruim**

“Eu separaria tudo em várias partes pequenas, como as grandes empresas fazem.”

As grandes empresas separam porque têm o problema de tamanho delas. **A resposta constrói a linha inteira para uma cidade que ainda não existe**.

### “Me conta de uma decisão técnica sua que você teve de desfazer.”

Esta pergunta mede se você aprende com as decisões, e não só com os erros de digitação.

**Boa direção**

- Contar por que a decisão fez sentido na época
- Dizer o que mudou para a decisão deixar de servir
- Contar o que você fez para a próxima pessoa não repetir

**Direção ruim**

- Dizer que nunca precisou desfazer nada
- Culpar quem pediu a primeira versão
- Contar o erro sem dizer o que aprendeu

**Boa resposta**

“No estágio, decidi guardar os pedidos numa planilha compartilhada, porque era rápido e eram poucos pedidos. Com dois mil pedidos, a planilha travava. Levei uma semana para passar tudo para um banco de dados, e escrevi o motivo da primeira decisão e o da segunda, para o próximo estagiário entender as duas.”

**Resposta ruim**

“Eu nunca precisei desfazer nada.”

Toda decisão de arquitetura vence um dia. Quem nunca desfez nada ainda não ficou tempo suficiente com um sistema.

### “Como você explicaria a quem decide o dinheiro por que gastar mais agora?”

A pergunta procura a Teresa diante do comitê.

**O avaliador técnico quer ver**

- Que você compara o custo de agora com o custo de depois
- Que você pede só o pedaço que fica caro depois
- Que você admite que o futuro pode não chegar

**O avaliador de pessoas quer ver**

- Que você explica sem palavra técnica
- Que você respeita quem cuida do dinheiro
- Que você aceita um não, se a conta não fechar

**Boa resposta**

“Na reforma da casa da minha mãe, o pedreiro sugeriu deixar um cano vazio na parede, para um dia ter um banheiro em cima. Minha mãe achou desperdício. Fiz a conta com ela: o cano custava cem reais, e quebrar a parede depois custaria uns três mil. Minha mãe topou, e dois anos depois o banheiro saiu sem quebrar nada.”

**Resposta ruim**

“Eu diria que é uma boa prática de mercado.”

“Boa prática” não convence o comitê. A conta dos cem reais contra os três mil convence.

## Levar para o trabalho

*Três situações do dia a dia de quem cuida da arquitetura.*

### O time pediu para juntar duas partes do sistema, para a entrega sair mais rápido

Essa situação aparece sempre que o prazo aperta. O erro comum é juntar as partes em silêncio, ou recusar o pedido sem mostrar o custo de juntar.

**Esperam de você**

- Que você diga o que a junção ganha agora
- Que você diga o que a junção custa depois
- Que você proponha um caminho se a pressa for maior

**Não esperam de você**

- Que você junte sem contar o custo
- Que você recuse sem explicar
- Que você trate a separação como questão de gosto

**O que dizer**

“A gente consegue juntar, e a entrega desta semana sai mais rápido. O custo vem depois: com as duas partes juntas, cada mudança no pagamento mexe no site inteiro, e na venda grande a Ivone não consegue reforçar só o pagamento. Prefiro manter separado. Se a pressa for maior, a gente junta e anota para separar no mês que vem.”

A fala põe as duas contas na mesa, e deixa anotado o motivo, para quem decidir agora e para quem chegar depois.

### Você quer preparar o sistema para um futuro que ninguém pediu

Essa vontade aparece em quem gosta de arquitetura. O erro comum é construir a linha inteira para uma estação que ninguém sabe se vai existir.

**Esperam de você**

- Que você pergunte se existe algum sinal de que o futuro vem
- Que você deixe só o espaço que sairia caro depois
- Que você anote o que deixou de construir, e por quê

**Não esperam de você**

- Que você construa o futuro inteiro por precaução
- Que você ignore o futuro de propósito
- Que você gaste o tempo do time sem combinar

**O que dizer**

Para o time: “Pensei em deixar pronto o espaço para o programa de pontos. Antes, quero saber se existe algum número dizendo que os pontos vão sair. Se esse número não existe, eu deixo só o cadastro dos clientes fácil de aumentar, e não construo os pontos agora.”

A fala segura a vontade de construir com a mesma pergunta que a Teresa fez: qual pedaço seria caro fazer depois.

### Você chegou ao time e achou uma decisão que parece errada

Essa situação acontece no primeiro mês de quase todo emprego. O erro comum é desfazer a decisão para mostrar serviço, sem perguntar por que a decisão existe.

**Esperam de você**

- Que você procure o motivo antes de mexer
- Que você pergunte a quem decidiu
- Que você proponha a mudança com o motivo novo escrito

**Não esperam de você**

- Que você desfaça a decisão para mostrar serviço
- Que você chame a decisão de erro na frente do time
- Que você aceite calado o que não entendeu

**O que dizer**

“Achei estranho o pagamento rodar separado do site, porque cada mudança pede duas entregas. Antes de propor juntar, li o registro de decisões e entendi que o motivo era a venda grande. Ciro, esse motivo ainda vale para as vendas deste ano, ou dá para rever?”

A fala mostra que você leu o motivo antes de mexer, e deixa a decisão com quem conhece a história do túnel.

> Uma decisão que parece errada quase sempre tem um motivo, e o motivo escrito evita que alguém feche o túnel da Teresa por engano.

## O que muda daqui em diante

**Arquitetura**

- Antes: Coisa de quem tem cargo alto
- Agora: As decisões que deixam o sistema fácil ou difícil de mudar

**Planejar o futuro**

- Antes: Adivinhar tudo
- Agora: Cavar só o túnel que ficaria caro cavar depois

**Separar as partes**

- Antes: Complicação
- Agora: Poder mexer numa parte sem parar as outras

**A decisão antiga**

- Antes: Erro de quem veio antes
- Agora: Uma escolha que tinha motivo, e que pode ter vencido

- Perguntar o que vai ser difícil de mudar depois
- Deixar espaço para o futuro só onde ele sairia caro
- Escrever o porquê de cada decisão importante
- Explicar a decisão com o custo de agora e o de depois
- Rever a decisão quando o motivo mudar

> O túnel de oitenta metros esperou vinte e dois anos, e a linha nova chegou sem fechar a estação do centro.

---

*Capítulo 6.11 de **Antes do Código** — O guia para quem quer entender a tecnologia — e não só usá-la.*

*O livro inteiro, de graça: https://marcelocastelo.io/livros/antes-do-codigo*
