Afinal, o que é ALM?

A criação de um software hoje é reconhecida como sendo uma atividade de alta complexidade, sendo o software pequeno ou grande. Esta atividade, em geral, é desenvolvida por equipes multidisciplinares que empregam intenso esforço e trabalho humano, além de altos investimentos por parte das empresas que o desenvolvem ou encomendam a criação de um software.

Por essas características, existem estudos, técnicas e metodologias sendo criadas praticamente desde a década de 70, e conforme a tecnologia evolui e as necessidades do mercado mudam e ficam cada vez mais complexas e específicas, mais difícil é ser efetivo e eficiente no desenvolvimento de um software.

Somando ao que foi dito, temos  o movimento de comoditização da TI iniciada da década de 90 e a incorporação da tecnologia no dia a dia das pessoas.

Contudo, o que tem-se notado é uma dificuldade imensa de se criar softwares com qualidade externa e interna, alem do consumo dos investimentos em atrasos de cronograma, re-trabalho, etc.

Com isto temos um paradoxo: de um lado há o uso contínuo e massivo de aplicações no dia-a-dia das empresas e usuários e do outro lado a dificuldade em produzir as mesmas aplicações de forma sofisticada e com a qualidade desejada. Contra isso,  vem sido cada vez mais utilizado métodos e ferramentas de trabalho para organização dos processos de produção de software e engenharia de software.

Com isso, temos o conceito de gestão do ciclo de vida de um software, conhecido como Application Lifecycle Management – ALM, que é estruturado sob 3 pilares que se complementam: pessoas, processos e ferramentas.

 

Junto a esses pilares, o ALM possui as seguintes fases:

A fase de definição é focada na identificação das necessidades que originaram a construção do software. A etapa “escolher” indica a definição de ferramentas, tecnologias e métodos adequados. Usam-se várias técnicas para isso, como técnicas de levantamento, análise de ROI etc.

A fase de contrução é onde se coloca as definições e planejamentos em prática. Usamos as disciplinas de gerenciamento de projetos (por exemplo o PMBok) para conduzir o projeto e metodologias de desenvolvimento, SCRUM, por exemplo, para guiar a equipe técnica de desenvolvimento.

Nessa fase, o uso do famoso triângulo de ferro norteia as decisões e metodologias para maior eficácia são buscadas:

 

 

 

A fase “operação” se dá no momento em que a aplicação está construída, e vamos distribuí-la, além de mantê-la funcional no ambiente da empresa. Nessa fase, podemos dizer que o que mais envolvidos nessa fase, são os departamentos de infraestrutura, que são, geralmente, operacionalizados tomando como base modelos como COBIT, MOF, ITIL e ISO20.000

O uso de disciplinas permite que identifiquemos as entradas e resultados esperados em cada etapa do ALM, assim como as pessoas envolvidas nos processos. As disciplinas presentes no ALM são:

  • Gerenciamento de Requisitos;
  • Gerenciamento de Configuração;
  • Montagem e Integração;
  • Distribuição;
  • Gerenciamento de Defeitos;
  • Testes;
  • Análise de código;
  • Relatórios de acompanhamentos

No próximo artigo iremos abortar o o uso de ferramenta para a gestão do ALM focado na ferramentas da MS, TFS.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Afinal, o que é ALM?