Oi internautas!

Sou Alexandre Campos, sou formado em Processamento de Dados pela FATEC-SP, especialista em gerência de projetos pela mesma faculdade. Debutei no mundo da TI fazendo um cursinho de esquina de VB 3.0 há uns quinze anos, desde então venho me especializando em desenvolvimento de software.

Estou estreando esta coluna no blogdati. Neste espaço pretendo falar sobre o mundo que permeia o desenvolvimento de software, vou tratar de assuntos como processo de desenvolvimento, metodologias, gerência de projetos, testes, enfim, todos os processos que fazem parte do ciclo de vida dos softwares, o chamado ALM(Aplication Lifecycle Management), que aliás é o tema desta primeira coluna.

Para entender o que é ALM vamos fazer uma digressão.

No princípio eram os programadores, senhores das linguagens de programação, sabedores dos compiladores, mestres da lógica. Basicamente uma equipe de desenvolvimento era por eles formada, tinha o programador júnior, o pleno e sênior, quanto mais complexo era um software maior o número de programadores.

Mas o mundo evoluiu, as ferramentas evoluíram, os programadores evoluíram, surgiram novas técnicas, novas metodologias, vieram a orientação a objetos, o banco de dados, as bibliotecas e frameworks. Novos papéis foram surgindo: o analista de requisitos, o tester, o analista de processos, o DBA, o gerente de projetos…

Junto com estes novos papéis, ou antes deles, surgiram novas atividades, a complexidade do ambiente de desenvolvimento começou a aumentar. As aplicações foram ganhando camadas, duas, três, quatro, cinco camadas. E com isto vieram o servidor de banco de dados, o servidor de aplicação, o servidor de componentes.

Os ambientes começaram a se multiplicar: era o ambiente de produção, chegou o ambiente de desenvolvimento, logo vieram o ambiente de testes, o de homologação, o de teste integrado, o de pré-homologação, o de backup, o para manutenção. Não é raro encontrar empresas com três, quatro ou até cinco ambientes diferentes.

O ambiente começou a ficar complexo: você tem múltiplos papéis, necessitando de múltiplos ambientes para as múltiplas aplicações multiplataformas que rodam em múltiplas camadas.

Multiplique todos estes múltiplos e a equação que chegará é uma bagunça! Para gerenciar esta bagunça surgiu o conceito de ALM, que busca fechar todas as pontas do ciclo de vida das aplicações, encontrando um denominador comum.

Ou seja, as soluções de ALM procuram ver todas as etapas como um todo, de forma holística. Estas soluções devem tratar dos seguintes pilares:

  • Pessoas
  • Artefatos
  • Processos

Com isto responderemos às três perguntas fundamentais: Quem? O que? Como?

Respondendo a estas três perguntas, gerenciando estes três pilares,  amarraremos todas as pontas, contribuindo para que o ambiente de trabalho seja muito mais produtivo, e que o produto entregue tenha muito mais qualidade, aumentando, então, a eficácia e a eficiência!

Ao longo desta coluna, que espero que seja semanal, cada um destes pilares serão aprofundados, ou individualmente, ou como um todo.

Até a próxima semana.