Desenvolver um software corporativo é uma novela. Quem já passou pela empreitada, seja como desenvolvedor ou como gestor de TI, independentemente do tamanho, sabe do que estou falando.
Trata-se de um projeto cheio de expectativas, com pessoas de diferentes níveis de conhecimento, envolvimento e necessidades. Mas para as empresas não há outro caminho senão implantá-lo.
O mundo pede velocidade e precisão e a melhor ferramenta para desenvolver estas qualidades é um bom software de gestão corporativa. Mesmo em pequenas empresas, um bom software faz uma enorme diferença.
Contudo, por que desenvolver ou implantar um software corporativo costuma ser tão penoso, lento e custoso?
Porque é impossível prever seu término. Melhor dizendo, não existe término. Uma vez experimentado o “gosto” da automatização, da precisão e da organização, criam-se, a partir daí, novas formas de melhorar processos e o software é o motor dessa mudança. Isso é ótimo, mas transforma projetos rígidos em projetos orgânicos, que crescem e tomam forma conforme o ambiente.
O resultado é uma mudança de paradigma enorme. Se o projeto é vivo, não pode ser engessado por negociações comerciais da velha escola. Se não é possível saber o tamanho do software, então não é possível prever sua conclusão, nem orçá-lo por completo. Qualquer tentativa do contrário, geralmente falha ou gera a superestimação dos custos e do preço. As negociações entre empresa e desenvolvedor devem proporcionar a flexibilidade que o projeto necessita, para que nenhuma funcionalidade importante deixe de ser criada e lapidada devido a mal-entendidos comerciais. Particularmente, gosto da forma como a metodologia “extreming programming” trata esta questão.
Como consequência, percebemos e aceitamos que no início não temos uma visão completa de todo o projeto. É preciso subir alguns degraus para enxergar os próximos, em ciclos de progresso e aprendizado, assim como em várias outras situações profissionais e pessoais.
Bem, continuando com a analogia, se desenvolver ou implantar um software é uma novela, então podemos escrevê-la em capítulos. Aliás, precisamos escrevê-la em capítulos! Podemos selecionar algumas funcionalidades centrais e evoluí-las até que atinjam a qualidade esperada. Depois de amadurecê-las, podemos agregar funcionalidades secundárias.
Recomendo a organização desta evolução, dividindo-a nos estágios que seguem:
1. Estágio “Registre e organize”
Neste estágio, o software consiste basicamente em formulários de registro, com adição, edição, exclusão, pesquisa, relatórios simples e impressão. Essas poucas funcionalidades trazem uma melhora significativa para a empresa na organização de dados e já permite que usufrua parcialmente do software. Contudo, demanda mais treinamento e suporte do desenvolvedor.
2. Estágio “Facilite e guie”
Os formulários são aprimorados buscando facilitar a utilização e guiar o usuário para conclusão de seus objetivos, de modo que mesmo um iniciante possa usá-lo sem grandes dificuldades. Trata-se basicamente de melhorias na interface, pois a estrutura de processamento, classes e regras de negócio já estão preparadas. Reduz-se a demanda por treinamento e suporte. A interface passa a ser amigável e intuitiva.
3. Estágio “Dê-me relatórios”
Com o acumulo de dados, surge a demanda por relatórios mais elaborados, de modo a auxiliar em tomadas de decisão da empresa e na própria evolução do software.
4. Estágio “Converse”
O software não pode ser uma ilha e então começa a ser integrado com outros softwares que a empresa utiliza, reduzindo a redundância de dados e tornando os processos mais simples e ágeis. Esta integração pode ser automática ou manual, pela exportação e importação de dados em formatos compatíveis.
5. Estágio “Faça por mim”
O software ganha recursos automatizados que reduzem o trabalho humano, especialmente controle de processos e notificações. A utilização de inteligência artificial pode ser uma grande aliada nesta fase.
Por que esta ordem? Porque cada estágio complementa o anterior, principalmente em relação à educação do usuário.
Conforme a utilização do software, o usuário aprende a pensar como o sistema e pode dar sugestões mais apropriadas, condizentes com suas necessidades e com as possibilidades. Conforme a evolução, o escopo do projeto se torna mais simples, pois a conversa entre desenvolvedor e usuário fica entre iguais.
Talvez alguns prefiram antecipar a etapa 4. Contudo, até a etapa 3, o software ainda estará sujeito a alterações na modelagem do banco de dados, o que pode trazer problemas em integrações entre diferentes sistemas.
Sem dúvida, a etapa 5 é a mais promissora e gratificante, onde o software se torna um aliado inseparável do dia-a-dia, passando a ser pró-ativo e a automatizar processos lógicos, sejam simples ou complexos. Com o uso de inteligência artificial é possível facilitar decisões, reduzindo a carga de trabalho do gerenciamento.
Tratando o software corporativo como objeto de evolução constante, devidamente dividido em partes e organizado em estágios, reduzimos a pressa exagerada e geramos relacionamentos comerciais mais saudáveis. As expectativas da empresa e do desenvolvedor são tratadas no início e abre-se espaço para um relacionamento de longo prazo. [Webinsider]
…………………………
Conheça os serviços de conteúdo da Rock Content..
Acompanhe o Webinsider no Twitter.
Daniel Rodrigo Bastreghi
Daniel Rodrigo Bastreghi é sócio administrador e Consultor de Marketing na DRB.MKT. Atua no planejamento, orientação e assessoria de ações integradas de marketing digital, pesquisas e implantação de sistemas MarTech.
Uma resposta
Parabens, a tempos nao lia um artigo de tao alto nivel aqui no webinsider.