em explorar 2-3 estrutura / ferramenta alternativa
Às vezes, isso pode acontecer se você tiver um requisito especial, precisará fazer um POC para escolher a melhor ferramenta para resolver o requisito. É para isso que serve o pico, porque sem saber qual estrutura você usará, provavelmente não poderá estimar a história e armazenar sem estimativa não pode ser planejado e dividido em tarefas.
depois, aprendendo a estrutura que selecionamos para o projeto
Bem. Isso é bastante perigoso. Quando o cliente paga um SW, ele espera que você seja profissional e que já saiba como usar suas ferramentas. O cliente não paga por aprendizado ou abordagem de desenvolvimento de tentativa / falha. É responsabilidade do desenvolvedor aprender novas ferramentas em seu tempo livre ou em um tempo alocado especial pago pelo funcionário e não pelo cliente. Gastar dinheiro do cliente para aprender sem informar o cliente não é profissional.
Se você realmente precisar usar algo especial (por exemplo, a API ou a ferramenta de um cliente selecionado por um cliente) que você nunca usou antes, deverá informar ao cliente que o preço será aumentado pelo tempo necessário para aprender a usar a API. Talvez o cliente mude de idéia se o aumento de preço for muito grande.
Claro, não estou falando de uma situação em que você deve procurar algum novo problema específico na estrutura que você usou várias vezes. Quero dizer a situação em que você começa a usar a nova API ou estrutura sem gastar um tempo significativo (fora do projeto) para aprender.
Se você violar isso, estará visível na sua velocidade de qualquer maneira, porque você fornecerá uma quantidade muito pequena de valor comercial por iteração. Se o cliente não estiver ciente do motivo, ele provavelmente cancelará o projeto.
Isso ainda é válido no caso de projetos internos - você deve informar seu gerente / empresa sobre o tempo necessário para aprender nova API ou ferramenta. Geralmente, tem consequências muito ruins se o gerente contar com sua produtividade normal e sua produtividade for apenas uma fração devido à nova API que você está tentando aprender durante suas tarefas. Isso é obviamente ainda pior se algumas pessoas de vendas calcularem com produtividade normal quando assinarem contrato com o cliente.
na configuração dos servidores (SVN, bancos de dados, etc.)
Essa é sua infraestrutura e custos internos. Quando você inicia o projeto, espera-se que você tenha sua infraestrutura preparada. A configuração do seu ambiente de desenvolvimento não tem valor para o cliente e não deve fazer parte de nenhum indicador relacionado ao projeto - por exemplo, velocidade no Scrum. Vi isso implementado como uma iteração pré-projeto especial usada apenas para configurar o ambiente, criar infraestrutura básica etc.