Dev (Back & Front)ARTIGO

Programar antes de codificar

Hoje vou falar sobre a importância do planejamento de projetos. Todos sabem da sua importância, mas poucos levam realmente a sério essa questão. Projetos de desenvolvimento de software estão se tornando cada vez mais complexos, com recursos cada vez mais dinâmicos e integrados. Com isso, aumenta-se a possibilidade de falhas, inerentes aos projetos. Por falha podemos entender não somente erros que fazem comportamentos específicos do sistema não funcionarem, podem se enquadrar coisas como itens pedidos por clientes e que estão funcionando de outra forma, falta de navegabilidade no sistema, demora para execução de requisições etc.

Muitos gerentes de projetos simplesmente aumentam seu número de pessoas nos projetos, com o objetivo de minimizar essas falhas. Outros diminuem o tempo de desenvolvimento e aumentam o tempo de testes de qualidade. Enfim, existem diversas maneiras utilizadas por diversos profissionais. E as falhas continuam com índices altos.

A melhor forma para conseguirmos um bom resultado ao final do projeto é começar da melhor forma possível. E esse termo ‘começar da melhor forma possível’ é mal compreendido, porque iniciar o processo de implementação o mais rápido possível não significa ‘ da melhor forma’. E é exatamente o que acontece na maioria das vezes, pois as pessoas tendem a julgar o desempenho atual pelo que é visível no momento, esquecendo-se do futuro.

Assim eu divido um projeto: fase de programar, fase de codificar e fase revisão.

Ou seja, programar é muito mais do que o fato de escrever códigos, item que chamo de codificar. O termo codificar pode ser mudado para desenvolver, para o conceito de projeto ser universal e englobar designers, DBA’s etc.

Para que funcione da maneira correta, todos os integrantes do projeto devem ser responsáveis pelo seu segmento e devem fazer as três etapas acima. Logo, não é apenas tarefa do gerente do projeto saber o tempo de duração do projeto, nem apenas tarefa da pessoa responsável pelos testes de qualidade, fazer a revisão. Cada pessoa faz todo o processo com seu segmento.

Outro ponto importante é a definição de projeto. Projeto não deve ser entendido como um único item, com um único início, meio e fim. Deve-se dividi-lo em vários módulos, para que se tenha mais controle do mesmo. Ou seja, devemos ter vários ‘inícios’ e ‘fins’, assim conseguimos manipular melhor cada processo envolvido.

Na fase de programar (fase que tem que durar pelo menos a metade do tempo), deve-se fazer todas as análises de recursos necessários, buscar melhores formas para resolução de determinados itens, testar esses recursos, caso necessário, para ver a sua aplicabilidade e entender as ferramentas a serem utilizadas.

Na fase de codificar, colocamos tudo o que foi analisado para funcionar. Aqui ganhamos muito tempo. Não vamos perder muito tempo nela, já que foi analisada com muito cuidado e colocada a teste na fase anterior.

A parte da revisão é muito mais prática com esse conceito. Pois com um bom planejamento, a tendência é um projeto muito mais tranqüilo. Logicamente que erros são previsíveis, lembrando que somos seres humanos. Mas se temos um bom planejamento do projeto no inicio, e o projeto é dividido em vários sub-projetos, esses erros são minimizados, e muito.

É desenvolvedor web há mais de 8 anos, foi representante da Fatec Zona Sul na maratona brasileira de programação por dois anos consecutivos. Atualmente estuda Matemática Aplicada no IME-USP Focado em algoritmos, estrutura de dados e desenvolvimento web em geral. Possui certificações em Java: SCJP (OCJP) e SCJA (OCJA) e em HTML5/Javascript/CSS MCSD 70-480. Atualmente é Analista de Sistemas em grandes projetosno portal UOL.

Ver perfil