Hoje em dia, muitas empresas que fazem o próprio site para se inserir na web decidem não renunciar ao seu ERP. Para casos como esse, é necessário desenvolver uma integração, micro-aplicação com a responsabilidade de permitir que o sistema web consiga “conversar” com a aplicação própria da empresa. Na nossa trajetória na Codeby, conseguimos obter muitos erros e acertos, e viemos trazê-los aqui para mostrar a vocês, possivelmente, a “fórmula” da integração. Confira!
1. Teste Os Dados Da Aplicação Inicial
Antes de iniciar qualquer parte do projeto, faça testes. Ferramentas como Postman servem justamente para isso. Faça todas as requisições possíveis. Isso é feito para que possamos descobrir como os dados chegarão para nossa micro aplicação desenvolvida. Acredite, cada teste de requisição poderá ser responsável por mudar totalmente o direcionamento da integração que está sendo desenvolvida, e também nos ajuda a identificar erros que podem não ser de nosso software.
2. Teste Os Dados Da Aplicação De Destino
A ideia é verificar como as informações devem ser enviados para o sistema final. Isso nos ajuda a estudar quais transformações serão necessárias nos dados do sistema inicial para que ele se adéque ao seu destino.
3. O Planejamento É Essencial
Após os testes, está na hora de botar a mão na massa. Por mais óbvio que isso possa parecer, é nesse ponto que o desenvolvimento da integração pode ficar comprometido. Existem situações em que tanto o sistema inicial, quanto o software de destino possuem falhas. E são nesses casos que o planejamento da micro-aplicação deve considerar ambas as pontas da comunicação e ser impecável. Uma projeção ruim acarreta um processo mais longo no desenvolvimento da integração e em correções constantes que poderiam ter sido evitadas nesse passo. Faça fluxogramas, converse com o cliente, não se preocupe em perder tempo aqui. Quanto mais tempo perdido na preparação de seu software, mais tempo se ganhará no desenvolvimento propriamente dito e mais maduro ele se tornará. Ferramentas excelentes como, por exemplo, o Draw.io estão aí para te ajudar, porém, apesar do programador trabalhar diariamente com computador, ele nunca deverá se livrar do papel e caneta.
4. Foque No Funcional
A tarefa deve ser simples e direta: integrar. Quaisquer recursos como painéis administrativos para visualização das informações dessa comunicação deve vir como adicional. Esse é um tipo funcionalidade no projeto que, por mais legal e importante que ela seja, não é essencial para o funcionamento básico da proposta. É claro que o cliente pode vir a exigir algo do tipo, mas jamais perca tempo em uma tarefa que pode ser feita em pouco tempo quando ainda não se tem o núcleo finalizado.
5. Pesquise, E Muito!
É possível e provável que uma das ferramentas na qual você está perdendo mais de 6 horas por dia para desenvolver já tenha sido publicada na internet. A comunidade de desenvolvedores na Web é muito grande, e existem muitas bibliotecas existentes para suprir diversas necessidades. Não reinvente a roda, isso pode ser um tiro no pé tanto no seu quanto no do cliente.
6. Os Dados Serão Mesclados?
Nesse ponto você deverá decidir qual será o fim dos dados provenientes do sistema inicial. Eles deverão ser unidos ao sistema final? Deverão ser simplesmente armazenados, mas separados com algum atributo específico? Esse momento não depende apenas do desenvolvedor. O destino dos dados deve ser estudado com o cliente, levantando os prós e contras de cada possibilidade.
7. A Integração Nunca Estará Perfeita
Apesar de o nome do artigo falar sobre a integração perfeita, isso infelizmente é um mito. Toda aplicação está sujeita a exceções. O papel do desenvolvedor no processo de planejamento até a conclusão efetiva de qualquer sistema é, além de construí-lo, encontrar o máximo de exceções possíveis. Porém, a maior dificuldade nesse processo é que não temos controle sobre todas as possibilidades de reação de um software.
*Para isso, existem diversos frameworks ou robôs desenvolvidos para encontrar uma grande quantidade de possíveis exceções que impeçam o funcionamento adequado do software.
Por fim, a integração perfeita é aquela que funciona e que possui o objetivo atingido. Por mais que seu cliente seja uma empresa de grande porte, desenvolver uma integração de sistemas não deve ser uma tarefa gigante. Pode ser complicada, ter altos e baixos e na pior das hipóteses uma integração funcional, porém com grandes dificuldades para uma manutenção. Porém, busque sempre atingir seu objetivo final e jamais perca a transparência diante do cliente.
Este artigo foi postado primeiro no blog Lucas Yamamoto, escrito pelo nosso CTO.