Estou trabalhando em um projeto seguindo fracamente o modelo scrum.
Para deixar claro: seus gerentes provavelmente lhe falaram sobre o Scrum, mas o que você executa não é o Scrum.
Quanto tempo isso normalmente leva?
Reunião de revisão do Sprint + A reunião retrospectiva do Sprint termina o sprint atual. Em sprints curtos, eles devem levar algo entre 30 minutos - 1 hora juntos. O próximo dia útil inicia um novo sprint executando as reuniões 1 e 2. do planejamento da Sprint. Com base no tamanho da equipe e na duração do sprint, essa reunião pode levar de 2 a 4 horas.
Toda a equipe deve estar envolvida?
Toda a equipe deve estar envolvida nas reuniões mencionadas na resposta anterior.
É necessário terminar estritamente antes que os desenvolvedores comecem a trabalhar nos próximos itens do sprint?
Sim, até que a reunião de revisão seja concluída, você não sabe se o cliente aceita o resultado do sprint anterior e não sabe quais histórias de usuários serão confirmadas no planejamento de reuniões.
É quando a revisão e o teste de código ocorrem?
Não. A revisão e o teste de código fazem parte do sprint. Os desenvolvedores devem fazer tudo o que for necessário para fornecer código de trabalho que satisfaça os requisitos. Isso pode incluir revisões de código e sempre deve incluir algum tipo de teste automatizado para validar que o código funciona e faz o que é suposto fazer; caso contrário, a história do usuário não pode ser considerada como concluída.
A principal mudança mental é com o controle de qualidade. Muitos desenvolvedores pensam que o controle de qualidade existe para validar que o código funciona e faz o que deve fazer. Definitivamente não. Esse é o trabalho do desenvolvedor.
O controle de qualidade deve participar do desenvolvimento do produto. Sua principal responsabilidade no sprint deve ser a comunicação com o proprietário do produto e a criação de testes de aceitação automatizados para critérios de aceitação (definição de concluído) que validarão que a história do usuário está realmente concluída e o aplicativo passa todos os novos requisitos. Em equipes pequenas, isso também pode ser responsabilidade dos desenvolvedores.
O controle de qualidade também deve fazer alguns testes manuais para manter o produto consistente e descobrir os recursos ausentes, validar a experiência do usuário com a interface do usuário etc. O controle de qualidade não existe para procurar bugs e testes de regressão - o teste de regressão deve ser altamente automatizado.
Na minha experiência, é aqui que a maioria das empresas que se deslocam para o ágil falha.