Application lifecycle management
Gerenciamento de Ciclo de Vida de Aplicativos (ALM) é o casamento entre gerência de negócio com engenharia de software, que se tornou viável graças a ferramentas que facilitam e integram processos como análise de requisitos, modelagem de arquitetura, desenvolvimento de código, gerenciamento de mudanças, gerenciamento de testes e gerenciamento de versões de produtos realizados. Cada um destes processos faz parte de uma etapa de um ciclo de vida de um software.
Índice |
[editar] Benefícios
As vantagens do gerenciamento de ciclo de vida de aplicativos compreendem:
- Aumento de produtividade: A equipe é estimulada a utilizar melhores práticas de desenvolvimento, reaproveitamento de código e otimização da utilização de recursos.
- Aumento de qualidade: A capacidade de expor o projeto de forma clara tem como consequência a compreensão do escopo por parte da equipe e a consolidação dos objetivos da parte da area de negócio, permitindo a condução do projeto focado no produto pretendido. Gerencia as atividades de testes identificando os defeitos.
- Melhora a interatividade através da colaboração e do bom fluxo da informação, incentivando a comunicação entre os membros da equipe, estando eles centralizados em um ambiente ou distribuídos geograficamente.
- Acelera o desenvolvimento através de uma integração simplificada, distribuindo atividades de acordo com a situação e a necessidade do projeto e organizando os recursos, reaproveitando código e minimizando o retrabalho.
- Reduz o tempo de manutenção sincronizando aplicação e modelagem e identificando automaticamente o impacto de mudanças de escopo.
- Maximiza os investimentos em competência, processos e tecnologias.
[editar] Conceitos
Conforme o desenvolvimento de aplicações evoluiu com o tempo, foram introduzidos novos métodos para guiar o desenvolvimento com o objetivo de aprimorar os processos para que fossem mais eficientes. ao passo em que se exige mais qualidade em prazos cada vez mais curtos, a organização do trabalho e da equipe se torna um fator fundamental para o sucesso. Além disto, existem etapas que um software passa desde a identificação do problema ou da necessidade, até a sua utilização. estas etapas se dividem fundalmentalmente em:
Planejamento:
- Análise de viabilidade: Levantamento de riscos, custos, e recursos necessários para a execução.
Definição:
- Análise de requisitos: Identifica as funções que o aplicativo irá realizar.
Design ou Modelagem:
- Define a arquitetura que servirá de base para o desenvolvimento em formato visual onde a notação uml é utilizada predominantemente.
Desenvolvimento ou Configuração:
- Refere-se ao trabalho de estruturação de lógica e produção de código.
Testes:
- Etapa onde os defeitos são identificados e corrigidos. uma correta análise deve cercar todos os defeitos que possam ocorrer.
Implementação:
- Fase em que o aplicativo é colocado em atividade.
[editar] Características de Ferramentas para ALM
Uma ferramenta de gerenciamento de ciclo de vida de aplicativos deve integrar estas estapas e fornecer recursos para que os utilizadores possam usufruir das vantagens de se utilizar de boas práticas.
É esperado que a aplicação gerencie o projeto e a equipe de forma sincronizada, promovendo comunicação entre os membros, controlando a versão de fontes, em alguns casos gerenciando ativdades de acordo com metas especiicadas, realizando a gerencia do controle de mudanças, que indica o impacto de alterações durante o decorrer do projeto, além de garantir a qualidade por meios de políticas a serem cumpridas no decorrer do desenvolvimento e além de tudo fornecer uma visão clara do status do projeto para o setor de negócio, que tem por necessidade a ciência do andamento real do andamento do projeto, além de outras estatísticas que podem ser cruciais para a tomada de decisões.