Glossário Ágil/Scrum
Ágil (ou Agile, em inglês) é o nome da metodologia desenvolvida com o objetivo de fornecer respostas rápidas e imprevisíveis aos feedbacks recebidos pelo projeto. Essas respostas são produzidas por uma equipe, definida como equipe ágil. Porém, esta metodologia carrega consigo muitas expressões e um vocabulário bem específico. Desta forma, a fim de facilitar a compreensão e o aprendizado destas novas metodologias, estamos compartilhando um glossário ágil dos termos mais utilizados pelos especialistas desta área. Vale ressaltar que essa metodologia foi criada com base no desenvolvimento de softwares, desta forma muitas palavras do nosso glossário são definidas com base neste ramo.
Glossário
Acceptance Criteria (Critérios de Aceitação): indicam o escopo de uma história de usuário e ajudam a equipe e o proprietário do produto a determinar o que está feito. Agile (Ágil): é o nome dado ao conjunto mais amplo de idéias em que o Scrum se enquadra e seus valores e princípios do Agile são capturados no Manifesto do Agile. Architect (Arquiteto): não há função de arquiteto em uma equipe Scrum, em vez disso, todos os membros da equipe são responsáveis por emergir a arquitetura. Backlog Grooming (Lista de Pendências): consulte Story Time (Histórias). Backlog Item (Item Pendente): consultar lista de pendências do produto. Daily Scrum (Reunião Diária): uma reunião de equipe diária de quinze minutos para compartilhar o progresso, relatar impedimentos e assumir compromissos. Durante o Scrum diário, cada membro da equipe responde a três perguntas:
- O que eu fiz desde a última reunião do Scrum?
- O que farei antes da próxima reunião do Scrum?
- O que me impede de realizar meu trabalho da maneira mais eficiente possível?
ScrumMaster (Líder de Projeto): garante que os participantes convoquem reuniões paralelas para qualquer discussão que vá muito além dessas restrições. A literatura do Scrum recomenda que essa reunião ocorra logo de manhã, assim que todos os membros da equipe chegarem. Done (Feito/Concluído): esse termo é usado para descrever um incremento de produto considerado potencialmente entregável, ou seja, significa que todo o projeto, codificação, teste e documentação foram concluídos e o incremento está totalmente integrado ao sistema. Emergence (Emergência): o princípio de que os melhores projetos e as melhores maneiras de trabalhar surgem ao longo do tempo através da realização do trabalho, em vez de serem definidos com antecedência. Relaciona-se com os conceitos de empiricism (empirismo) e self-organization (auto-organização). Empiricism (Empirismo): o princípio de "inspecionar e adaptar", que permite que equipes ou indivíduos experimentem algo e aprendam com a experiência pela reflexão e mudança conscientes. Epic (Épica): uma história de usuário muito grande que acaba sendo dividida em histórias menores; as épicas são frequentemente usadas como espaços reservados para novas ideias que não foram totalmente pensadas. Não há nada errado em ter uma épica, desde que não seja de alta prioridade. Estimation (Estimativas): processo de concordar com uma medição de tamanho para as histórias em uma lista não processada de produtos. Feito pela equipe, geralmente usando o software Planning Poker ou também chamado de Scrum Poker. É uma técnica baseada em consenso para estimativa, usada principalmente para estimar o esforço ou o tamanho relativo dos objetivos de desenvolvimento no desenvolvimento de software. Fibonacci Sequence (Sequência de Fibonacci): sequência de números em que o próximo número é derivado adicionando os dois anteriores (1,2,3,5,8,13,21,…). A sequência tem a qualidade de cada intervalo cada vez maior à medida que os números aumentam. Essa sequência é frequentemente usada para Story Points (pontos históricos), simplesmente porque as estimativas são sempre menos precisas ao lidar com épicas. How (Como): é um termo usado para descrever o domínio da equipe, o que deve estar claro para o proprietário do produto. Pode ser também interpretado como uma “tática” para se atingir uma meta. Impediment (Obstáculos/Bloqueios): relaciona-se com qualquer coisa que impeça a equipe de atingir seu potencial (por exemplo, cadeiras desconfortáveis). Se organizacional, é responsabilidade do Scrum Master (Líder de Projeto) eliminá-lo. Se for interno à equipe, eles mesmos devem acabar com isso. Impediment Backlog (Bloqueio de Atrasos): consiste em uma lista visível ou não visível de impedimentos em uma ordem de prioridade, de acordo com a gravidade com que estão impedindo a equipe de produtividade. Planning Poker: trata-se de um software usado para aplicar estimativas às histórias. Ele usa o método Delphi para chegar a um consenso. Este método baseia-se em previsões estruturadas por um grupo de especialistas. Process (Processo): simplesmente é a maneira que alguém trabalha. Todo mundo tem um processo (forma de trabalho). Pode ser pré-definido, empírico ou caótico. Product Backlog (Lista de Pendências do Produto): uma lista priorizada de histórias que estão aguardando para serem trabalhadas, importante termo do glossário Ágil. A lista de pendências do produto (ou "lista de pendências") são os requisitos para um sistema, expressos como uma lista priorizada de itens da lista de pendências do produto. Isso incluía requisitos funcionais e não funcionais do cliente, bem como requisitos gerados pela equipe técnica. Embora existam várias entradas para o backlog do produto, é de responsabilidade exclusiva do proprietário do produto priorizar o backlog do produto. Durante uma reunião de planejamento da Sprint, os itens da lista de pendências são movidos da lista de pendências do produto para uma sprint, com base nas prioridades do proprietário do produto. Product Backlog Item (Lista de Itens Pendentes): qualquer item que esteja na lista de pendências, que incluirá histórias de usuários, épicos e possivelmente histórias técnicas para lidar com dívidas técnicas e outros fatores. Product Owner (Dono(a) do Produto): mantém a visão focada no produto e é responsável por manter, priorizar e atualizar o backlog do produto. No Scrum, o Dono do Produto tem autoridade final que representa o interesse dos clientes, priorizando questões de pendências e requisitos. Essa pessoa deve estar disponível para a equipe a qualquer momento, mas especialmente durante a reunião de planejamento e a reunião de revisão. Desafios de ser dono de produto, segundo o glossário ágil:
- Resistir à tentação de "gerenciar" a equipe. Isso é especialmente desafiador se alguns membros da equipe solicitarem sua intervenção com problemas que a equipe deve resolver por si mesma;
- Estar disposto a fazer escolhas difíceis durante a reunião de planejamento do sprint;
- Equilibrar os interesses das partes interessadas concorrentes.
Release (Entrega): transição de um incremento de produto potencialmente transportável da equipe de desenvolvimento para o uso rotineiro dos clientes. As entregas geralmente acontecem quando um ou mais sprints foram encontrados no produto com valor suficiente para compensar o custo para implementá-lo. Release Burndown Chart (Gráfico de Progresso das Entregas): um gráfico visível para mostrar o progresso em direção a um release. Retrospectiva: uma sessão em que a Equipe e o Scrum Master refletem sobre o processo e assumem compromissos para melhorar. ScrumMaster (Líder de Projeto): é um facilitador para a equipe e o proprietário do produto e é outro importante conceito do glossário Ágil. Em vez de gerenciar a equipe, o ScrumMaster trabalha para ajudar a equipe e o proprietário do produto das seguintes maneiras, segundo o glossário ágil:
- Remove as barreiras entre o desenvolvimento e o proprietário do produto para que o proprietário do produto direcione diretamente o desenvolvimento;
- Ensina o proprietário do produto a maximizar o retorno do investimento (ROI) e alcance seus objetivos através do Scrum;
- Melhora a vida da equipe de desenvolvimento, facilitando a criatividade e o empoderamento;
- Melhora a produtividade da equipe de desenvolvimento de qualquer maneira possível;
- Aprimore as práticas e ferramentas de engenharia para que cada incremento de funcionalidade seja potencialmente entregável;
- Mantém as informações sobre o progresso da equipe atualizadas e visíveis para todas as partes.
Scrum Meetings (Reuniões): definição de uma linha do tempo, planejamento, revisão, retrospectiva, e scrum diário. Scrum Roles (Funções do Scrum): existem apenas três: proprietário do produto, Scrum Master e membro da equipe. Self Organization (Auto-Organização): princípio de que as pessoas mais próximas do trabalho sabem como fazê-lo, estabelecendo metas e limites claros e permitindo que tomem todas as decisões táticas e de implementação. Sprint (Iteração): consiste em uma iteração, aplicando os conceitos discutidos e definidos na scrum dirária. Sprint Backlog (Lista de Iterações em atraso): define o trabalho para um sprint, representado pelo conjunto de tarefas que devem ser concluídas para atingir os objetivos do sprint e pelo conjunto selecionado de itens do backlog do produto. Sprint Burndown: segundo o glossário ágil, trata-se gráfico visível que indica diariamente a quantidade de trabalho restante no sprint. Sprint Goal (Objetivo do Sprint): também conhecido como Tema do Sprint, consiste no foco principal do trabalho para um único sprint. Sprint Planning (Planejamento de Sprint): reunião entre a Equipe e o Dono do produto para planejar o Sprint e chegar a um acordo sobre o compromisso. Sprint Task (Tarefa do Sprint): um único item de trabalho pequeno que ajuda uma história específica a alcançar a conclusão. Story (História): item da lista de pendências geralmente usando o formulário do modelo: como [usuário] eu quero [função] para que [valor comercial], consulte Item da Lista de pendências do produto. Stakeholders (Interessados): às vezes, os termos a seguir são usados como sinônimos - embora seja necessário observar que há nuances em suas definições: história, história do usuário, história técnica do usuário, item de lista de pendências do produto, PBI e requisitos do produto. Story Point (Pontos Históricos): unidade de medida aplicada ao tamanho de uma história, como já relacionado com a sequência de Fibonacci. Story Time (Hora da História): A sessão de trabalho regular em que os itens da lista de pendências são discutidos, refinados e estimados e a lista de pendências é cortada e priorizada. Task List (Lista de Tarefas): as tarefas necessárias para concluir o conjunto de histórias comprometidas com um sprint. Taskboard (Quadro de Tarefas): quadro com cartões e notas adesivas que representam todo o trabalho de uma equipe em um determinado sprint. As notas da tarefa são movidas através do quadro para mostrar o progresso. Team (Equipe): é composta de sete ou mais pessoas e é responsável por se comprometer com o trabalho, entregar e impulsionar o produto a partir de uma perspectiva tática. Para projetos de desenvolvimento de software, os membros da equipe geralmente são uma mistura de engenheiros de software, arquitetos, programadores, analistas, especialistas em controle de qualidade, testadores, designers de interface do usuário etc. Isso geralmente é chamado de "equipes de projeto multifuncionais". As práticas ágeis também incentivam os membros multifuncionais da equipe. Durante um sprint, a equipe se auto-organiza para atingir os objetivos do sprint. A equipe tem autonomia para escolher a melhor forma de atender às metas e é responsável por elas. O ScrumMaster atua como um guardião para garantir que a equipe seja isolada do proprietário do produto. O Scrum também defende a colocação de toda a equipe em uma sala de equipe. Team Member (Membro da Equipe): é definido como qualquer pessoa que trabalhe em tarefas de sprint em direção ao objetivo do sprint. Na linguagem Scrum, o PO e o SM também podem ser membros da equipe, se estiverem desenvolvendo. Thumb Vote (Votação): rapidamente para ter uma ideia de onde a equipe está em termos de comprometimento ou acordo sobre uma decisão etc. No geral significa concordar, ou discordar, em relação a alguma etapa do projeto. A versão analógica disso permite que o polegar esteja em qualquer lugar do semicírculo para indicar diferentes graus de aceitação. Timeboxing (tempo/duração): define uma duração para cada atividade e faz com que ela dure exatamente isso ou seja, nem as reuniões nem o sprint são prolongados. Velocity (velocidade): taxa na qual uma equipe conclui o trabalho, geralmente medido em pontos históricos. No Scrum, velocidade é quanto esforço de backlog do produto uma equipe pode suportar em um sprint. Isso pode ser estimado visualizando sprints anteriores, assumindo que a composição da equipe e a duração do sprint sejam mantidas constantes. Também pode ser estabelecido em uma base de sprint por sprint, usando o planejamento baseado em compromisso. Uma vez estabelecida, a velocidade pode ser usada para planejar projetos e prever datas de lançamento e conclusão do produto. Como os cálculos de velocidade podem ser significativos quando as estimativas de itens de backlog são intencionalmente aproximadas? A lei dos grandes números tende a calcular a rugosidade das estimativas. Vision Statement (Declaração de Visão): descrição de alto nível de um produto que inclui para quem é, por que é necessário e o que o diferencia de produtos similares. What (O que): usado para descrever o domínio do proprietário do produto, distinto para a equipe. XP: conjunto de práticas de desenvolvimento, incluindo programação em pares, TDD (primeiro teste ou desenvolvimento orientado a teste) e refatoração contínua, extraídas da metodologia XP. Muitas equipes de Scrum acham que essas práticas melhoram muito a produtividade e o moral das equipes. Gostou de nosso glossário Ágil? Aproveite e conheça mais sobre o assunto acessando o nosso curso certificado de especialista Scrum. Caso tenha interesse, acesse nosso blog. Lá divulgamos diversos materiais gratuitos como apostilas e e-books. Deseja dar um upgrade na sua carreira, conheça a assinatura FM2S.