Aqui estou, no processo de definição de escopo e estimativa de um projeto de desenvolvimento de software relativamente pequeno. Passei pelas histórias de usuários sugeridas pelo cliente e coloquei tarefas em cada uma delas, com uma estimativa e algumas breves notas sobre como a tarefa será realizada. Existem critérios de aceitação. Tudo deve ser bom com o mundo.
Ao olhar para o trabalho que planejei, percebi que havia algo faltando. Haverá um esforço inicial na simples configuração de coisas nas quais podemos aparafusar a funcionalidade. Coisas que pertencem a todas as histórias de usuário, não uma história de usuário específica.
Por exemplo, parte desse aplicativo é um serviço que analisa XML. Do ponto de vista do usuário, existem histórias específicas em que coisas diferentes precisam ser feitas, dependendo do conteúdo do XML. Na verdade, escrever um analisador XML - os bits que procuram um arquivo, o leem e extraem os dados relevantes antes de decidir o que fazer com o conteúdo - faz parte de todas essas histórias. Como é envolvê-lo em um serviço do Windows com um instalador, etc. É uma tarefa centrada no desenvolvedor, sem relevância direta para o usuário.
Outro exemplo relevante desse aplicativo em particular é pegar e reescrever um bloco de código legado ruim que é útil para as funções desse aplicativo. Novamente, isso não tem resultados imediatos para o usuário, mas é um trabalho necessário. Onde o planejamento e a execução deste trabalho "vivem" em um plano de projeto focado em histórias de usuários?
Vi pessoas resolverem isso escrevendo histórias de usuários "Como desenvolvedor, eu quero ...", mas como já foi discutido em outro lugar, essa não é uma história de usuário . É um desenvolvedor.
Estou procurando uma resposta concreta para isso, para me ajudar (e a outros) a planejar projetos usando estritas estruturas de gerenciamento como o TFS online. Elas não costumam ter a função de criar "histórias de partes interessadas" ou outras meta-soluções vagas mencionadas nas respostas a Como uma equipe do Scrum explica as tarefas de infraestrutura na reunião de planejamento?