Um esquema ALM fornece as capacidades para segurança, governança,
rastreabilidade e gerenciamento de fluxo de trabalho.
O esquema ALM conta com alguns tipos de registros primários e inter-relacionados para garantir
que as solicitações de mudança sejam avaliadas, designadas, rastreadas, trabalhadas e resolvidas
com um processo que assegura a rastreabilidade e o controle completos.
Os tipos de registros primários são ALMRequest, ALMTask e ALMActivity.
Um registro
ALMRequest representa um pedido para algum tipo de mudança.
Um ALMTask endereça
um Pedido e ajuda a gerenciar as Atividades que são as unidades de trabalho para conclusão
da Tarefa.
Um ALMTask pode ser utilizado por um gerente ou líder de equipe para gerenciar o trabalho a ser realizado
e os recursos a serem alocados para todas as atividades.
Cada um dos tipos de registros de trabalho do ALM possui um campo Tipo que pode ser utilizado
para descrever um tipo de trabalho (como por exemplo, Defeito, Aprimoramento e Requisito do Release). Embora os pacotes de ALM incluem os valores de Tipo fornecidos que são comuns
para melhores práticas de desenvolvimento de software, você não está limitado a elas e
pode criar seus próprios tipos.
Os relacionamentos entre os tipos de registros podem ajudar a facilitar os processos
de gerenciamento de alteração através de várias funções. Por exemplo, quando uma ação CreateTask de registro de Pedido
é executada, uma ou mais Tarefas podem ser criadas. Se as Tarefas já foram
criadas para esse Pedido, será possível especificar que a mesma ou um conjunto diferente
de uma ou mais Tarefas será criada com tipos de Tarefas que são os mesmos que os tipos de
Pedidos ou aqueles diferentes. Quando uma ação CreateActivity de registro de Pedido
é executada, uma ou mais Atividades de tipos diferentes pode ser criada.
Se
as Atividades já existirem para essa Tarefa, será possível criar um conjunto diferente de
Atividades. A flexibilidade para customizar o processo de trabalho está disponível, mas opcional.
Cada tipo de trabalho pode ter funções de usuários específicas associadas a elas (por exemplo,
associe a função Teste à Atividade de Teste). Cada função lista os membros da equipe
que têm permissão a desempenhar esse tipo de trabalho.
Um processo de trabalho do ALM começa com um pedido:
- Um usuário envia um pedido. A solicitação de mudança pode descrever um pedido de
aprimoramento, um requisito do release ou um defeito.
- Uma equipe de triagem ou o gerente de controle de mudanças revisa o pedido e o aceita
ou rejeita. Se for aceito, uma tarefa é criada, a qual é uma descrição de alto nível
do trabalho a ser realizado para implementar o pedido. O registro do pedido
inclui um link para o registro da tarefa e a tarefa é designada a um projeto.
- Um líder de desenvolvimento ou outro líder de equipe revisa a tarefa e, em seguida,
ativa-a. A ativação da tarefa, cria atividades para conclusão da mesma. O líder de
equipe designa essas atividades para membros da equipe. Exemplos de atividades são:
atividades de Desenvolvimento; atividades de Teste e atividades de Documentação (Doc). O registro de tarefa inclui links nos registros de atividades e os registros de atividades
têm links para a tarefa.
- Os líderes de Desenvolvimento, Teste e Doc designam suas atividades aos membros da equipe
que atualizam os registros de atividades, para refletir o status de seu trabalho. Quando eles terminam o
trabalho, entregam suas alterações e marcam suas atividades como Concluídas.
- Um engenheiro de release integra e constrói alterações entregues, e cria linhas de base.
- Um testador testa as alterações nas linhas de base. O líder de Teste marca uma tarefa de teste
como Concluída, depois que as atividades de teste foram trabalhadas e concluídas.
- O usuário que enviou o pedido revisa a tarefa e suas atividades
e, se estiver satisfeito, marca-a como Concluída.
Esse processo ajuda a fornecer a rastreabilidade de um pedido de usuário inicial para todas as atividades necessárias para atender o pedido.
Os tipos comuns de funções para um esquema ALM são:
- Requisitantes. Enquanto uma função ALM não estiver definida, um requisitante poderá ser qualquer pessoa, por exemplo, um engenheiro de suporte, desenvolvedor, testador, escritor técnico ou gerente. Um requisitante pode:
- Submeter pedidos.
- Verificar o status do pedido.
- Gerentes de desenvolvimento ou do projeto ou líderes de equipe. Essas funções podem determinar a triagem
de pedidos e identificar os destinos do release. Um gerente pode:
- Verificar o status do pedido e fechar conforme apropriado.
- Verificar se a carga de trabalho para desenvolvedores está balanceada apropriadamente.
- Executar relatórios (métricas de pedido, localizar, fechar, entrada, status do release).
- Avaliador de Documento, Testador e Desenvolvedor. Estas funções:
- Localizar pedidos designados a eles.
- Trabalhar e resolver pedidos.
- Gerente de suporte ou de produto. Estas funções:
- Executar relatórios (métricas de pedido, localizar, fechar, entrada, status do release).
- Verificar status do pedido e do release.
Enquanto um usuário pode ter várias funções a qualquer momento, um esquema ALM permite
uma transição definida mais claramente entre as funções.
Por exemplo, o
mesmo usuário, que é um Desenvolvedor, pode enviar um Pedido e, em seguida, designar uma
Atividade associada a ele e resolvê-lo. Nesse exemplo, o mesmo usuário é
o Requisitante, o Líder de Desenvolvimento, o Desenvolvedor e o Testador.