Talvez você não precise dessa customização


Um bom sistema de gestão sempre possui um bom mecanismo de customizações. Me refiro às customizações que te permitem colocar um novo campo em tela, incluir uma nova validação, modificar o comportamento de um processo do ERP, entre outros. É claro que existem excelentes ERP's online que não oferecem esta possibilidade, mas normalmente eles são projetados para micro e pequenas empresas, que não é nosso foco aqui neste post.


Como dizia o tio Ben, grandes poderes trazem grandes responsabilidades. E é neste ponto que é preciso ter bastante cuidado ao propor uma customização, pois o impacto proposto por tal modificação no sistema vai desde o custo envolvido na construção e manutenção do software, até o domínio do conhecimento do processo, que pode acabar sendo do código fonte. Quantas vezes você já recorreu ao fonte ou pediu que alguém o verificasse para saber qual é a regra de funcionamento de um determinado processo?




É fácil encontrar justificativas para customizações:

  • O processo não nos atende.

  • Nós temos um processo específico.

  • Na situação X precisamos fazer Y.


Muitas vezes a customização é realmente necessária, como em um processo totalmente específico ou em situações que fogem do fluxo padrão, mas que ocorrem com frequência. É preciso entender a justificativa e investigar como funciona o processo, pois pode ser possível encontrar uma solução sem a necessidade de desenvolvê-la. Pode ser que o próprio ERP já forneça uma solução para o problema. E se houver alguma tela ou procedimento já preparado para esta situação?


Se for uma customização para casos esporádicos, utilizar campos de observação pode ser uma solução. Se você recebe 100 notas por dia e em média apenas duas exigem uma informação específica, será que não vale a pena informá-la nas observações? Há ainda a opção de reformular o processo da empresa para adequá-lo ao do ERP. Pode ser mais rápido e mais barato. Ao avaliar um sistema de gestão, não concentre-se somente na aderência do sistema a sua empresa, mas também na capacidade de sua empresa em aderir-se ao sistema.



Os sintomas das customizações desnecessárias


As customizações desnecessárias compartilham algumas características básicas, que tornam mais fáceis compreendê-las, seja antes ou durante o seu desenvolvimento. Para a customização na entrada de dados, como novos campos na entrada de uma nota ou pedido, você pode avaliar quantas vezes estes dados serão digitados diariamente ou ainda em quais relatórios eles serão utilizados, ou se serão necessários em alguma validação. Se eles serão pouco usados ou não serão utilizados em validações, digitar as informações nas observações pode ser uma solução.


Um outro sintoma dessas customizações é o nível de complexidade. Já sentou horas com um analista/consultor/usuário tentando documentar um cálculo ou processo que parece não ter explicação ou fim? Esse é um forte indicativo de que você está diante de um processo que precisa ser reavaliado antes de se pensar em customizá-lo. Normalmente nestes casos, o conhecimento é transferido para o código fonte.



De quem é a responsabilidade?


Entendo que a responsabilidade é dividida entre todos os envolvidos. Os especialistas (consultores, analistas e programadores) detêm o conhecimento do sistema de gestão e os meios para investigá-lo e experimentar as soluções, assim como a responsabilidade de compreender o funcionamento dos processos que ocorrem fora do sistema de gestão. Ele é o responsável por entender o problema e propor a solução. O cliente possui grande interesse, pois desenvolver uma customização custa caro, ainda mais quando ela não é necessária. Seu papel é questionar as propostas para garantir que customizações desnecessárias não sejam desenvolvidas.



O custo


Customizar sem necessidade pode custar caro e esse preço pode ser pago de maneiras diferentes, dependendo de qual é o seu papel no projeto da customização. Se você for o cliente, você pode ter que arcar com um projeto que demora "anos" para entrar em produção (note que este é um sintoma de uma customização desnecessária), além de correr o risco de transferir o conhecimento do processo para o código fonte, que como citado acima é outro forte sintoma da customização desnecessária, pois as regras de negócio se tornam complexas demais para alguém entender sem antes dar uma olhadinha no programa.


Para o fornecedor, seja ele interno ou um consultor, há o risco de se alocar mais tempo do que o estimado, acumulando assim prejuízos no projeto, sem contar o custo imensurável de ter sua imagem arranhada diante dos seus clientes. Como você se sentiria se descobrisse que contratou um serviço que não havia a necessidade de ser realizado?