Pular para o conteúdo principal

Uma pergunta para melhorar seu legado

Já falei aqui no blog, em outras ocasiões, acerca do meu trabalho em sistemas legados. Pois agora, após de acumular mais algumas experiências, discussões e refinamentos creio que cheguei em uma forma mais sucinta [mas não definitiva] de explicar a lógica que sigo. Tal raciocínio me levou a levantar esta questão no Agile Trends e Agile Brazil deste ano.


Na apresentação cobri diversos exemplos e consequências que derivam do raciocínio. Mas em todos eles existe uma idéia central guiando o processo. Uma pergunta, que ajuda a sumarizar como penso. É sobre ela que quero falar hoje.

Qual o menor passo sustentável que eu consigo executar agora.

Esta pergunta poder ser decomposta em quatro partes.

O menor passso

Sempre somos tentados a pensar na melhor solução. Nossa educação nos treinou a sempre buscar a resposta certa para as perguntas que nos são apresentadas. Porém nem toda pergunta nasce igual. Sendo assim, um mesmo problema [em software] pode ter soluções distintas, de acordo com seu contexto. Dar um passo menor consiste em não apenas quebrar o problema (e solução) em partes mais digestíveis. Mas entender que cada uma delas fornece pequenas dicas de que estamos indo na direção correta. Quanto menor, mais rápido conseguimos verificar e ajustar o curso.

Sustentável

Idealmente uma decisão sustentável seria aquela que não te causa problemas no futuro. Essa é uma tarefa difícil de se alcançar. Isso porque, toda linha de código que se constrói, enquanto resolve um problema, abre portas para uma infinidade de outros. Por isso, prefiro reconstruir a definição de sustentável como as decisões que você se sente confortável com as conseqüências no futuro. Isso implica em se pensar nos desdobramentos e estar ciente da dívida técnica (e negocial) que nossas decisões de software geram.

Eu consigo executar

Ter consciência de nossas limitações é importante. Por muitas vezes não temos o conhecimento ou domínio para executar nosso melhor plano. Entender essa limitação e decidir como ela influencia o caminho a ser seguido. Qual o custo de se adiquirir essa capacidade em relação as necessidades do projeto?

Agora

Por fim, é importante ter em mente durante a tomada de decisão, não somente o que queremos pro sistema no futuro. É rpeciso balancear suas necessidades baseando-se também no agora. Nada adianta decidirmos a melhor solução [sustentável] se a mesma só estará disponível depois de uma capacitação de seis meses, quando a necessidade do negócio é para o mês seguinte. Temos que balancear nossas decisões e planos com o que nos é apresentado no presente e construir o caminho a partir daí.




Como exemplos de extratégias de como melhorar seu legado indico os artigos do Marting Fowler sobre Sacrificial ArchitectureStrangler Application .

Comentários

Postagens mais visitadas deste blog

Suporte para Celular

É engraçado de se pensar que, em 3,5 anos de blog, o post mais acessado do site é o sobre o Suporte para Notebook. Sozinho ele tem quase 3 vezes mais acesso que o segundo colocado. Até hoje eu não sei dizer o por que deste efeito. Apesar disto me orgulho bastante daquele post, afinal além de ter superado minha falta de coordenação motora, ainda cheguei num resultado satisfatório. Já se passaram 2 anos e ambos os suportes se mostram em perfeito estado até hoje.

Pois bem, mas por que ressuscitar este assunto? Na Intacto temos um amigo oculto um pouco diferente, onde cada um tem que fazer seu presente, usando o máximo a sua criatividade. Como eu tirei o Fernando Aguiar, um cara fã de software livre (isso temos em comum). Por isso decidi tentar uma evolução do projeto inicial do Suporte de Notebook (que é aberto e disponível a todos) que elaborei junto ao Marcelo Bassani. Nesta segunda versão usei o Papel Pluma, que apesar de seu valor bem acima que o Paraná (usado anteriormente) resultou…

Aceleração de Startups - Parte 4 - Como melhor aproveitar uma aceleração?

Hoje eu fecho essa série de posts sobre aceleração. Já contei sobre o que é uma aceleradora de estágio semente, onde ela se encaixa no ecossistema e como ela pode te ajudar. Se depois disso tudo, você tenha decidido seguir esse caminho, faltou uma coisa: o que você deve fazer para tirar o maior proveito desse momento. E é isso que vou tentar fazer hoje.

Antes de Aplicar Entenda o momento da empresa Antes de aplicar para um programa, reflita bem sobre o momento. O propósito de um programa de aceleração té auxiliar a empresa a "saltar" para seu próximo estágio. Para fazer isso, é importante entender bem onde se está agora. Isso vai te auxiliar a mirar onde se deseja estar no futuro. Ter noção desses marcos é de grande valia para estabelecer pontos de referência em medir a evolução ao longo do caminho. É imensa a probabilidade que as coisas irão mudar, mas ter esses lugares para se olhar e comparar pode ajudar a direcionar o navio em momentos bons e ruins.

Existem também algun…

Aceleração de Startups - Parte 1 - O que é uma aceleradora?

Costumo dizer que eu já participei de mais programas de aceleração que o aconselhado. Contando com 2018, completei a marca de 5 dessas experiências e acho que já passou da hora de colocar em texto um pouquinho do que vivenciei.

Se você não sabe o que é uma aceleradora de startups, vale muito ler este texto do Tony. Aqui vou focar nos critérios do GAN (Global Accelerator Network) do que é um programa de aceleração.

Termos favoráveis aos Empreendedores Programa de Curto Prazo Orientado a Mentoria Pequenos grupos de trabalho* Oferece espaço físico* Time forte de gestão
Termos favoráveis aos Empreendedores Uma aceleradora tem por propósito ajudar que as startups consigam ganhar corpo em um tempo extremamente reduzido. Daí o termo acelerar. É um extremo contrasenso que ela canibalize as quotas da empresa em um estágio tão crucial. Favorecer os empreendedores é chave não apenas para fomentar que estes corram com o máximo de energia nessa etapa, mas também que tenham fôlego nas etapas futuras para…