Defina o cliente.
É outra empresa? Outro indivíduo?
É outra equipe da sua empresa?
É um campeão de produtos dentro da sua empresa?
É você?
Todas as opções acima são possíveis e razoáveis, dependendo das circunstâncias. Você não deseja ter uma única visão do túnel sobre o que é ser ágil; portanto, um NO definitivo seria incorreto. SIM, por outro lado, requer um pouco de reflexão lateral.
Pense na palavra Ágil por um momento. O grupo muito inteligente de pessoas que cunhou o termo não poderia ter escolhido uma metáfora melhor para o conceito que estava tentando descrever. Quando você diz Agilidade , o que vem à sua mente? Sendo frota de pé? Rápido para reagir, talvez? Rápido para se adaptar?
Agora pense em todas as práticas Agile comumente aceitas no mercado e pergunte a si mesmo o que elas realmente trazem aos métodos de desenvolvimento de software considerados Agile .
Sou o cliente de todas as intenções e propósitos para meus projetos solo. Às vezes, até uso um chapéu de verdade, quando realmente quero fazer uma mudança mental distinta no meu papel de cliente . Isso não me torna menos ágil do que quando estou no trabalho. Por tudo que eu me importo, meu gato pode ser o gerente. Ele garante que eu descanse de vez em quando e me lembre de evitar ficar obcecado por uma única tarefa. Você pode preferir usar sua sofisticada "Técnica Pomadoro", mas eu prefiro o temporizador "Rascal" !! O fato é que trabalho em um processo estritamente ágil sempre que escrevo código para mim. Eu não sou do tipo hacker e cowboy, que vive uma vida de picos de desenvolvimento sem fim e sem realizar nada. Gosto de criar meu software, agendar o desenvolvimento em torno de minhas vidas profissionais e pessoais e concluí-lo da maneira que eu esperaria que estivesse se estivesse trabalhando para um cliente real. Quando as coisas interrompem meu cronograma, ajusto e priorizo o trabalho do meu projeto de acordo. Eu uso todas as práticas e técnicas padrão do Agile que posso aplicar sozinho e "entrego" código de trabalho para mim mesmo (ou para um amigo ou colega para testar) o mais rápido possível. Se tudo isso não é ágil, pergunto o que é.
Portanto, minha resposta é Sim , você pode ser um desenvolvedor de software ágil e aplicar uma metodologia ágil e não precisa necessariamente do cliente ou mesmo do gerente. Você pode trabalhar sozinho em um projeto e usar vários chapéus. No entanto, pode não ser necessariamente ideal eliminar esses outros papéis, pois é muito útil cooperar com os outros para alcançar uma meta. Eles atuam como uma caixa de ressonância para suas idéias e atendem a requisitos que, de outra forma, você pode achar difícil de gerar com sensatez por conta própria. A outra função muito importante que o cliente e o gerente cumprem é a de manter você focado em seus objetivos, sem adicionar recursos continuamente e refinar seu código além do estritamente necessário.
Ainda assim, se você trabalha de maneira disciplinada, adere estritamente à sua metodologia de escolha e aplica práticas ágeis, e se você se desviar ou mudar de idéia (ao usar o chapéu do cliente) e o design ou direção do produto Por outro lado, se você pode adaptar sua programação e ajustar suas prioridades exatamente como imaginaria que seu cliente esperaria, você estará sendo Agile.