MVA e Arquitetura Evolutiva

Uma boa arquitetura é uma arquitetura que existe. Então aqui está meus 2 centavos sobre MVA (que não é gambiarra) e Arquitetura Evolutiva

MVA e Arquitetura Evolutiva

Quando você vai fazer uma arquitetura, você pensa em que? Throughput? Escalabilidade? Facilidade de fazer mudanças?

Quando eu faço, eu penso em duas coisas:

  • Qualidade
  • Valor

Uma arquitetura só é boa, se ela agrega valor, e esse valor só é aferido, caso você tenha a arquitetura funcionando efetivamente no seu produto.

É muito legal fazer uma arquitetura enorme, que garante coisas que nem sabemos se vamos precisar, mas "caso precise, ta ali". Mas o mais legal é uma arquitetura que existe, que os usuários possam usar e que a sua empresa possa operacionalizar.

E como eu faço isso? Bem, eu curto bastante do conceito de MVA. MVA significa Minimum Viable Architecture. É a ideia de que você tem uma arquitetura mínima necessária pra agregar ao seu negócio. Essa arquitetura tem que ser simples o suficiente pra ser implementada rápido, porém boa o suficiente pra aguentar o que precisa ser feito.

Calma, seu MVA não deve ser igual a foto da capa desse artigo. Assim como o MVP, o MVA é usado pra que a gente possa ter um produto bom, mas enxuto, pra que os usuários possam usar e dar seus feedbacks

Quando você faz um MVA, pense na primeira iteração do produto, ou seja, o que ele inicialmente deverá fazer. "Ah, mas daqui a algum tempo meu sistema vai ter que calcular o tempo de ir de carro daqui até a lua", isso mesmo, daqui a algum tempo. Se isso não é algo a ser feito a curto prazo, então nem esquenta.

Porém, contudo, todavia, entretanto, não pare no MVA. O MVA é muito bom pra você criar algo, porém sempre, e digo SEMPRE, faça o que eu chamo de "Arquitetura Evolutiva".

A Arquitetura Evolutiva é o que você pretende pro projeto como um todo. Não esqueça que a arquitetura evolutiva vai ter o MVA como ponto de partida, então você tem que ter um MVA bom o suficiente para que possa depois se transformar na sua Arquitetura Evolutiva.

Não esqueçamos também, que essa Arquitetura Evolutiva deve ser iterada continuamente. Como o produto está sempre aumentando, nossa Arquitetura Evolutiva deve sempre estar a par da necessidade de negócio e escalabilidade que precisam pra que tudo ocorra da melhor forma possível.

Na NewSchool seguimos exatamente isso, e já estamos no meio do caminho com a nossa arquitetura evolutiva. Caso vocês queiram que eu escreva sobre a arquitetura da NewSchool e qual foi meu raciocínio pra ela, só mandar aqui nos comentários.