Pergunta

Quais são os mitos ou equívocos relacionados ao Ágil?

Há muitos equívocos relacionados Ágil de que, em média, recém-chegado pode cair.Quais são os equívocos na Ágeis mundo e como justificar que ele é realmente um equívoco?


Atualização:Resumo do Agile Mitos

  • Agile não permite a documentação
  • Métodos ágeis não escala
  • Ágil significa que nenhum plano de
  • TDD cobre todas as necessidades de teste de unidade
  • A programação em par sempre resulta em um código melhor
  • Agile é uma bala de prata solução de problemas de engenharia de software (Não é uma bala de prata em solução)
  • Agile não precisa de frente design
  • Estamos fazendo o scrum, assim não precisamos fazer TDD, Refactoring, a Programação em Par, etc.
  • Pode-se aprender Ágil a partir de um livro
  • O Agile só funciona para o trivial projetos
  • Agile utiliza sempre "as Histórias de Usuário"

Leia a seguir as respostas para obter mais informações sobre acima de mitos e mais mitos.

Foi útil?

Solução

  1. "Estamos fazendo Scrum - de modo que não precisa (par | refactor | fazer TDD | ...)" Na verdade, o Scrum fundadores - Ken e Jeff foram dizendo que todos os de alta produtividade de equipes scrum implementar a gama completa de Extrema práticas de Programação.

  2. Desenvolvimento orientado a testes não encontrar todos os erros / não é fácil para aplicar a tudo - por isso não vamos tentar! - Aprender TDD não é um "tudo ou nada "negócio" e você ficar melhor para julgar o que para testar e como fazê-lo de forma eficiente.Eu venho fazendo isso por dez anos agora e eu ainda estou descobrindo maneiras melhores de fazer e novas coisas a considerar.

  3. Eu posso aprender tudo o que eu preciso para aplicar métodos ágeis de um livro. - Você precisa aprender fazendo e o que significa, muitas vezes, coaching e conhecer outras pessoas que podem ajudar.Muitas coisas dão errado quando as pessoas simplesmente tentar aprender a partir de um livro.

  4. Histérico (e bastante real) "O candidato deve tomar a direção de, e apoiar o scrum master" (a Partir de um trabalho de especificação fui enviado na semana passada...) - O scrum master não é suposto dizer às pessoas o que fazer.Ele/Ela está lá para facilitar - i.e.para ajudar a equipe a aprender a ordenar as coisas em si.É um grande modo de falha - tendo um scrum master, que "comandos" de pessoas!

  5. Falando sobre a "metodologia ágil" - grande falta de noção do indicador.Em primeiro lugar, falando sobre "agile" como se fosse uma coisa específica que é muito vago guarda-chuva termos para muitas coisas diferentes.Em segundo lugar, o uso de "a" metodologia ágil - há um monte deles, e cargas de diferentes modos de fazer, muitos deles!Em terceiro lugar, um monte de pessoas na comunidade ágil cheguei aqui na revolta contra os grandes, pesadas UML-laden métodos dos anos noventa.Essas pessoas não tendem a usar a palavra "metodologia"...

  6. Você precisa especialmente de pessoas talentosas para se desenvolver software de forma ágil. Jeff Sutherland diz que eles consideravam usando o "chefe de uma equipa de programadores do" modelo de gestão de equipes em bancos, mas achei que eles não tem nada parecido o suficiente "chefes".Scrum é projetado para obter melhor produtividade de um monte de moderadamente capaz de programadores.Na verdade, a remoção de um, desproporcionalmente produtivo membro da equipe que não quer ajudar os outros podem "desbloquear" o medíocre membros da equipe e trazer o seu combinado de produtividade de até mais do que compensar o super-produtiva, ex-membro da equipe de...Isso é o que Jeff diz de qualquer jeito...

alguns outros XP relacionadas que nós viemos acima com em um espaço aberto workshop que eu conduziu recentemente: http://xpday-london.editme.com/WhereHasXpGone

Outras dicas

"Software de trabalho sobre documentação abrangente" significa que você não precisa de uma especificação funcional ...

Errado!!! Significa apenas que você pode resolver as rugas iterativamente com os usuários - falando como fornecedor, você ainda precisa de uma boa documentação para ajudar com o controle de qualidade e as fases de assinatura ...

Mito: o uso de práticas de desenvolvimento ágil é uma solução de bala de prata para problemas de engenharia de software.

Mito: o desenvolvimento de teste força seu projeto a fazer testes de unidade adequados.

Fato: Muitos desenvolvedores ficam preguiçosos e os testes de unidade que escrevem antes que seu código sejam frequentemente fracos e inadequados.

Mito: a programação de pares sempre resulta em melhor código.

Fato: Os programadores tendem a ser ligeiramente anti-sociais e a ter processos de pensamento significativamente diferentes um do outro. Ter alguém respirando no pescoço enquanto você código é muito desagradável, e o resultado geralmente é uma atmosfera tensa de trabalho com uma redução na qualidade e na quantidade do código.

Mito: Agile significa nenhuma documentação

Fato: o software de trabalho de valor ágil mais do que a documentação abrangente, mas isso não significa que nenhuma documentação. A documentação deve ser escrita exatamente a tempo e o suficiente. E não, Agile não diz que alguém deveria sempre usando histórias de usuário. Use -os se, e somente, se forem apropriados!

Mito: Agile significa nenhum plano

Fato: O Agile não apóia o desenvolvimento sem planejamento. O Agile usa planejamento e estimativa contínuos para maximizar o ROI. Na verdade, o Agile é sobre gerenciamento de escopo.

Mito: ágil significa nenhuma disciplina

Fato: Os desenvolvedores ágeis devem ser mais disciplinados para o sucesso.

Mito: o Agile só funciona para projetos triviais

Fato: ágil (na verdade scrum aqui) foi usado para

  • Software crítico de vida aprovado pela FDA para raios-X e ressonância magnética,
  • Pedidos de pagamento financeiro,
  • 24x7 com 99,99999% de tempo de atividade requisitos,
  • Aplicativos de banco de dados multiterabytes,
  • etc.

Mito: Agile não escala

Fato: Sutherland usou scrum em grupos de mais de 500, Cohn usou scrum em grupos de 100+

Mito: "Nenhum grande design na frente" significa nenhum design.

Mito: a cachoeira sempre falha.

Realidade: a maior parte do software que você está usando em seu projeto ágil foi desenvolvido com a cascata. Até a cachoeira BDUF, em muitos casos.

Não há mitos reais - mas qualquer coisa levada ao extremo estará errada. Um projeto ágil que zero design na esperança de "projetar o que for" provavelmente falhará. Um projeto em cascata que projeta tudo até o último ponto de vírgula provavelmente falhará devido ao orçamento, tempo ou requisitos de usuário alterados.

Foi disse repetidamente que "métodos de design ágil não escalam", enquanto o desenvolvimento ágil efetivamente escala para qualquer tamanho se implementado e pensado corretamente.

Mito: você precisa planejar e agendar cuidadosamente cada sprint.

Isso leva você a fazer muito e muito planejamento inicial, para que você possa planejar completamente cada sprint.

Isso leva você a derrotar a agilidade e criar uma cachoeira chamada "Agile".

O maior mito que vi é que as pessoas pensam que é melhor do que outros processos de desenvolvimento.

É o óleo de serpente de bullet prateado habitual que vemos nesse setor há anos.

https://stackoverflow.com/questions/301993/is-agile-development-dead/302060#302060

Mito: O Agile é sempre uma opção melhor quando comparado a outras alternativas.

Fato: Dependendo do tamanho do projeto, os requisitos (particularmente a flexibilidade de tal), o cronograma externo e a atitude do cliente, nem sempre é mais produtivo em comparação com a metodologia ortodoxa.

Mito: Ágil significa xp e scrum

Facto: Existem outras práticas como OpenUp, AMDD, etc.

É fácil saber o que cobrar seu cliente. Isso é sempre os maiores problemas para nós, porque não conhecemos o escopo do projeto, não podemos dar ao cliente um preço fixo, e a maioria dos clientes exige um preço fixo.

Ótimo tópico. Embora não ofereça nada de novo na minha postagem de blog relacionada, ilustro as duas principais razões pelas quais o Agile falha quando falha. 1) Falta de requisitos iniciais (levando o 'Comece a codificar com requisitos incompletos' a um extremo) e 2) falta de testes de unidade adequados (porque a mudança acontecerá - e os testes de unidade são a maneira mais rápida de capturar todos os pontos de ruptura resultantes do MUDANÇA).

http://www.anujvarma.com/blogengenve.net/post/2010/11/03/agile-versus-flat-feoted-development.aspx

Você está completamente certo de que há muitos mitos em torno do ágil, alguns vindo de fora e outros por dentro. Aqui estão mais alguns que eu pensei em adicionar à lista:

"Você não precisa mais de gerentes de projeto ou analistas de negócios"

Embora não estejamos fazendo BDUF e as equipes são autodirigentes, à medida que as coisas aumentam, ainda é uma necessidade de pessoas cujo trabalho é coordenar o que está acontecendo. E se você tem um cenário de negócios muito complexo, pode precisar de alguém para ajudá -lo a entender isso. IME, muitos dos projetos que realmente precisavam de PMs e BAS ainda precisam deles (e aqueles que não precisam deles agora, provavelmente nunca precisaram deles!). Mas, é claro, os papéis da PMS e do BAS tendem a ser diferentes no mundo ágil, e isso pode deixar as pessoas desconfortáveis.

"Agile não pode ser usado para projetos de preços fixos"

Pode, mas é um pouco mais difícil. Especialmente porque todos sabemos que o "preço fixo" realmente significa "preço fixo, escopo e tempo" ...

"Nós não fazemos BDUF, fazemos tudo à medida que avançamos"

A única maneira de trabalhar é Jeduf (design suficiente na frente). Às vezes, você precisa de mais, às vezes pode entender menos, mas não faz mais do que precisa nesse ponto.

Mito: O ágil é anti-tético à segurança.

Facto: Isso só é verdade, se você tentar forçar um SDL de estilo cachoeira completo (ciclo de vida do desenvolvimento de segurança) em equipes supostamente ágeis. De fato, eu projetei e implementei variantes Agile-SDL em inúmeras organizações, e posso dizer que colocar o ágil em A segurança pode realmente pagar um nível de segurança mais alto e mais robusto. é preciso apenas uma mudança de mentalidade de segurança - de ao controle para visibilidade e orientação.

Se você não mostrar valor real com o Agile, ele falhará. E falhar miseravelmente como em falência de uma empresa miseravelmente. Ir para o Agile só porque é 'ágil' faz você parecer tão bobo quanto o CIO neste vídeo:

http://www.youtube.com/watch?v=nvks70pd0rs

John

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top