Como alguém implementaria os conceitos de processo Agile como desenvolvedor solo? O Agile parece útil para desenvolver aplicativos em um ritmo mais rápido, mas também parece muito orientado para a equipe ...
agile
solo-development
kelleystar
fonte
fonte
Respostas:
Lembro-me de ler uma tese sobre o Cowboy Development, que é essencialmente ágil para desenvolvedores solo, mas não me lembro onde a encontrei.
fonte
Além da resposta de klez (todas as boas sugestões), sugiro o seguinte:
Uma lista de pendências do produto é basicamente uma lista de todos os itens que você pretende concluir em algum momento deste produto.
Um burndown de sprint começa com uma lista de todas as tarefas que você decidiu concluir neste sprint (um subconjunto do backlog do seu produto a ser concluído por um período de tempo definido - por exemplo, 2 semanas) junto com a estimativa do trabalho necessário. Ao marcar as coisas, você as marca como concluídas; reduzindo (ou queimando) o trabalho restante para esse sprint.
Da mesma forma, a burndown de um produto controla o trabalho restante para todo o backlog do produto
A estimativa relativa é uma técnica de estimativa que usa as outras tarefas (ou histórias) como guia. Por exemplo, se você souber que a tarefa A é mais fácil que a tarefa B e duas vezes mais complexa que a tarefa C, verifique se os "pontos" da tarefa A estão corretos em relação a essas expectativas.
A ênfase não está em adivinhar corretamente a quantidade de trabalho necessária, mas em manter as estimativas consistentes entre si.
Velocidade é uma medida de quantos "pontos" você faz em um sprint. Se sua estimativa relativa garantir consistência, essa velocidade poderá ser usada para estimar quais tarefas você provavelmente realizará nos próximos sprints. Observe que essa velocidade deve ser constantemente revisada.
fonte
Provavelmente, essas coisas se aplicam a situações individuais e de equipe pequena (2 ou 3 desenvolvedores).
ADICIONADO: algum tempo depois de escrever esta resposta, encontrei esta palestra na conferência e fiquei muito impressionado: Kanban pessoal: otimizando o codificador individual
fonte
Por fim, defino o Agile realmente como "fazer o que faz sentido para sua equipe e cliente e não aderir às práticas antigas porque elas pareciam ter funcionado no passado".
fonte
O Agile funciona tão bem para os indivíduos quanto para as equipes. Trata-se de encontrar um processo que funcione para você e permitir que você se adapte às novas circunstâncias, uma vez que seu projeto já foi iniciado. Também se trata de agregar valor ao seu cliente regularmente, independentemente de o software estar ou não "finalizado".
Os processos ágeis são altamente iterativos. O trabalho é feito em curtos TimeBoxes / sprints / ciclos / iterações. Alguns trabalhos de design podem ser necessários antecipadamente, mas podem ser reformulados à medida que você aprende mais sobre o que é necessário que um sistema faça. O teste de unidade é a espinha dorsal de quase todos os métodos de desenvolvimento Agile, fornecendo uma indicação sobre se o seu software está funcionando e se as adições / alterações no software quebrarão a base de códigos existente.
Se você aderir ao BDD / TDD, permita que seus requisitos mudem com o vento e possa ajustar suas prioridades de recursos de acordo, se você construir todo o sistema e executar todos os testes com freqüência e se fornecer código de trabalho no final de cada sprint , você já é ágil.
fonte
Uau. Eu tentava manter um amigo no gancho que eu poderia ligar quando estivesse com problemas - e discutir o problema de codificação. Você sabe o que eu quero dizer ... apenas o ato de explicar um problema em voz alta traz uma solução para minha mente 90% do tempo.
fonte