Metodologia Agile: qual o seu “sabor” preferido?
Metodologia Agile e as frameworks
- Foco no cliente…
- Foco na equipa
- Melhoria contínua
- Entregas constantes e incrementais de valor
- Validação e verificação constantes do produto entregue
- …Foco no cliente
Kanban e Scrum: os atores principais do Agile
- Foco constante nas atividades/funcionalidades que aportam mais valor (forçando a priorização constante do que irá ser feito de seguida);
- Redução do tempo de entrega ao cliente;
- Diminuição do desperdício;
- Feedback antecipado e contínuo;
- Aumento de produtividade (quando se trabalha em várias coisas em simultâneo, a mudança permanente de contexto faz com que se gaste mais tempo e os erros são mais comuns).
Kanban
- Reflete o fluxo de trabalho da equipa (ou cadeia de valor);
- Especifica, por estado, o número máximo de atividades permitidas – limitação do WIP;
- A equipa, diariamente, reflete sobre as prioridades e gere o fluxo de trabalho;
- Os pontos de congestionamento do fluxo são identificados e a equipa toma decisões sobre como ultrapassá-los (identificação de ineficiências e melhoria contínua);
- O objetivo principal é reduzir o tempo decorrido desde o momento em que algo entra em execução até que é terminado (eficiência e redução de desperdício).
Scrum
É, de longe, a framework Agile mais conhecida e implementada em todo o mundo, por todo o tipo de organizações e aplicada ao desenvolvimento de qualquer tipo de produto.
O planeamento das atividades e limitação do WIP é feita a nível da sprint (onde se identificam o conjunto de atividades que têm de ser concluídas durante esse período de tempo).
As sprints constituem o pilar básico da entrega iterativa e incremental de produto, servindo ao mesmo tempo para limitar o que está a ser produzido e para marcar o ritmo da equipa. Nada mais são do que um período temporal com duração fixa, normalmente de 2 semanas.
As sprints do Scrum, tal como no atletismo, servem para obter resultados rápidos, ao invés de uma maratona, cujos resultados só são atingidos a longo prazo.
Ao entregar o produto em blocos mais pequenos (iterativos e incrementais), a equipa é capaz de concentrar todas as suas energias nas tarefas mais importantes, nos momentos certos.
Deste modo a equipa constrói, apresenta e recolhe feedback, de forma rápida e frequente, sobre o produto que está a ser desenvolvido.
Quais os principais conceitos da framework Scrum?- Product Backlog: tudo o que tem de ser feito para garantir a entrega do produto com qualidade e com valor para o cliente (requisitos funcionais e técnicos, anomalias por corrigir, etc.).
- Sprint: períodos temporais com duração fixa, usados para entregar valor ao cliente de modo iterativo e incremental
- 3 papéis definidos:
- Core Team
Conjunto de pessoas responsáveis pela construção do produto (desde a sua especificação, até à entrega ao cliente)
- Product Owner
Representa o cliente na equipa e é ele o responsável pelo Backlog do produto. Valida/aprova o produto entregue pela Core Team.
- Scrum Master
Responsável por garantir que a equipa segue os princípios e valores do Scrum, remove impedimentos e promove a melhoria contínua da equipa enquanto equipa.
- "Cerimónias” de trabalho definidas neste modelo:
- Sprint Planning
A equipa define o que de mais importante (com maior valor para o cliente) tem de ser feito na sprint que inicia e como o vai fazer
- Daily Scrum
Todos os dias, no mesmo local, em pé e em 15 minutos no máximo, a equipa reflete sobre o progresso dos trabalhos da sprint e toma decisões de modo a garantir que cumpre com os objetivos da sprint
- Sprint Review
A equipa demonstra o trabalho realizado ao cliente, Product Owner e outros stakeholders de modo a obter a aprovação do trabalho feito e/ou recolhe feedback para incorporar no produto em sprints futuras
- Sprint Retrospective
A equipa reflete sobre o modo como decorreu o seu trabalho enquanto equipa, e identifica o que correu bem e deve ser mantido ou que não correu tão bem e que tem de ser melhorado enquanto equipa de modo a aumentar a produtividade e satisfação da equipa
- Equipa autónoma e auto-organizada
- DoD(Definition of Done): condições que os incrementos de produto têm de cumprir para que sejam considerados como prontos. A única medida de progresso é software funcional e concluído (DoD)
- Kanban board é usado para gerir o fluxo de trabalho.
Ao contrário do Kanban, a framework Scrum prescreve papéis, sessões de trabalho e algumas ferramentascom o intuito de guiar a equipa e organização na adoção do Agile.
Qualquer sistema ou framework não é nada mais do que um conjunto recomendações, boas práticas e ferramentas, que as organizações podem usar na definição do seu modelo Ágil de trabalho.