em Artigos

Original: CRN Brasil
http://crn.itweb.com.br/blogs/os-perigos-da-programacao-em-excel/

Por Marcelo Yamada Araujo
em 18 de outubro de 2013 08:58

Sim, estou me referindo ao seu velho conhecido Excel. O Microsoft Excel. O software de planilha eletrônica.
(Para não deixar meus amigos da Microsoft aborrecidos, entendam que as ponderações abaixo se aplicam a qualquer aplicativo de planilha eletrônica.)
Lembro-me do passado não muito distante em que não era óbvio comprar uma suíte completa de aplicativos (o Microsoft Office) e tínhamos que economizar nosso dinheirinho optando por comprar uma ou duas coisas dentre as opções disponíveis da Microsoft: o Word, o Excel, o PowerPoint, o Access ou o editor HTML (cujo nome caiu no esquecimento).
Nessa época, os usuários mais habilidosos não tinham dúvida em recomendar: “se você tiver dinheiro para comprar um único software, com certeza compre o Excel“. Um software de planilha eletrônica faz cálculos, certamente, mas também permite fazer tabelas, cartazes, cartas, relatórios, apresentações – um conjunto de habilidades que nenhum dos outros aplicativos do pacote consegue improvisar tão bem.
Não vou aqui falar da histórica do pato. (Você não conhece a história do pato? Rapidamente: “O homem pediu a Deus que criasse um pássaro que soubesse fazer tudo: andar, nadar, voar, cantar. E então Deus criou o pato – que anda mal, nada mal, voa mal e canta mal.”)
Os perigos do Excel não estão relacionados ao fato dele se parecer com um pato. Na verdade ele parece um pato muito bom. Os perigos do Excel estão relacionados ao desenvolvimento de software em Excel.
Li recentemente um artigo sobre um erro na avaliação de risco no JPMorgan causado por erros de copy-and-paste e de fórmulas numa planilha de cálculo complexa, o que me relembrou sobre a importância de escrever este artigo.
A implementação de cálculos complexos em planilhas Excel usualmente gera apenas arquivos grandes e de abertura e recálculo demorados (em função do grande volume de dados e pela grande quantidade de fórmulas baseadas em funções de bancos de dados, como LOCALIZAR(), PROCV() e outras que certamente lhes são familiares), o que por si só já é um problema (pois aumenta a configuração do desktop exigido para sua execução e, o que é comum, às vezes somente ser aberta em algumas poucas máquinas na empresa).
Mas em sua dimensão mais extrema, uma planilha Excel se torna um software complexo, com base de dados, formulários de entrada de informações, figuras, gráficos, relatórios e muitas, muitas, muitas rotinas implementadas em macros.
Quanto maior a complexidade da planilha, maior o risco de erros de cálculo, de vazamento de informações e de dificuldades em sua execução.
A empresa pode repentinamente perceber que se apoia em planilhas de cálculo no seu dia-a-dia que podem deixar de funcionar e paralisar processos de negócio.
Qual é a responsabilidade da equipe de TI corporativa? O que ela deve fazer?
Proibir essa prática? Nãããããããão! A automação de rotinas pelos próprios usuários é uma prática que oferece ganhos de produtividade e, quem sabe, a oportunidade de ver surgir um produto ou serviço novo para a empresa. Falamos tanto em “trabalhador do conhecimento” (knowledge worker, o título deste blog) e precisamos dar a esse profissional a autonomia para explorar ao máximo a aplicação do seu conhecimento inclusive através da automação. Inteligência nas pontas.
Ignorar os riscos – deixar rolar? Não, não é também uma boa ideia. Mas vamos explorar melhor este ponto.
Veja bem: o problema não é o Excel. (Não fique chateado.) O problema é o usuário do Excel. O knowledge worker não é necessariamente um programador, um desenvolvedor de software. É um advogado, um analista de finanças, um coordenador de RH, um profissional de marketing, um gerente de projetos. Ele pode saber programar, mas isso não significa que saiba desenvolver software.
O desenvolvimento de software é uma área de conhecimento que acumula cinquenta anos de evolução. Fazem parte desse amadurecimento a preocupação com a documentação das rotinas, os testes em ambiente de homologação, a preservação das versões anteriores, a auditoria de qualidade e de segurança, a compatibilidade com diversos modelos de equipamentos e assim por diante.
Não se pode esperar que o usuário – por mais avançado que seja no uso do Excel – domine e esteja disposto a executar todas essas tarefas.
Cabe aí, então, à equipe de TI permitir as experimentações mas orientar sobre cuidados básicos de documentação e teste. E, quando a planilha se mostrar realmente de valor para o negócio, oferecer recursos humanos e materiais para transformar em desenvolvimento de software de verdade o que então foi apenas um “puxadinho“.
Aí, sim, estaremos extraindo o maior valor possível do trabalhador do conhecimento e da ferramenta de cálculo, com um nível de risco que podemos considerar aceitável.