O surgimento do método
de desenvolvimento Ágil foi uma resposta direta ao doloroso histórico de
fracassos de projetos de software, custos superiores ao previsto e
insatisfação do negócio com o modelo tradicional da metodologia em
cascata pela qual o desenvolvimento se desdobra lentamente em uma série
de etapas, abrangendo análise de requisitos, design, implementação,
teste, integração e manutenção.
E embora um número cada vez maior de CIOs esteja
descontinuando aos poucos as metodologias tradicionais de
desenvolvimento, conceitos errôneos sobre o desenvolvimento ágil ainda
existem nas organizações de TI. Os mais deploráveis são: as equipes
ágeis não planejam; pulam a fase de design; não testam; ágil significa
inexistência de documentação.
Por conta desses
conceitos, durante anos arquitetos corporativos, gerentes de projeto e
profissionais de garantia de qualidade fizeram oposição ao métodos de
desenvolvimento Ágil. A preocupação dos arquitetos corporativos era a de
que não houvesse design inicial suficiente e que a consequência disso
fosse código espaguete. Equipes de desenvolvimento Ágil são
auto-gerenciáveis e a função de líder de projeto muda drasticamente —
das ordens à facilitação. E, visto que o teste de QA acontece ao longo
de todo o processo, e não só no fim, o pessoal de teste também costuma
oferecer resistência.
O ceticismo
continua a ser a palavra mais usada quando perguntam a CIOs e analistas
por que tantos líderes de TI continuam mostrado indiferença em relação
ao desenvolvimento ágil de software. Uma forma de acabar com ele é
derrubar de vez alguns mitos sobre Agile.
Em um artigo no blog "O
Mundo depende de Software", da IBM Brasil, Sandra Santos, Gerente de
Desenvolvimento da companhia, aponta os
cinco principais mitos ainda encontrados nas organizações que estão buscando
métodos Ágeis para melhorar sua capacidade de entrega de software e
qualidade. São eles:
1 - Agile é desenvolvimento bagunçado” “Ágil vai me ajudar a desenvolver mais rápido e “burlar” o processo”
Agile é uma maneira muito disciplinada de entregar software, muitas vezes mais disciplinada que os métodos tradicionais:
• Você tem que testar
• Você tem que obter feedback
• Você tem que enviar software regularmente
• Você tem que mudar e atualizar o plano
• Você tem que dar as más notícias cedo
• Você tem que obter feedback
• Você tem que enviar software regularmente
• Você tem que mudar e atualizar o plano
• Você tem que dar as más notícias cedo
2 - “Agile somente serve para desenvolvimentos e times pequenos”
Agile pode se adaptar a qualquer tipo e tamanho de projeto:
• A maior parte dos times ágeis está geograficamente distribuída de alguma maneira
• Organizações têm reportado sucesso em programas ágeis com mais de 500 pessoas
• Um terço dos times ágeis enfrenta necessidade de atender a requisitos regulatórios
• 75% das organizações executando projetos ágeis estão trabalhando em
projetos com médio nível de complexidade e projetos maiores
• 78% dos times estão trabalhando em sistemas legado
(Source: DDJ November 2009 State of the IT Union Survey)
3 - “Agile requer muito retrabalho”
Ao contrário de um desenvolvimento tradicional, Agile reduz o
retrabalho, pois prevê ciclos de entregas mais curtos e coleta de feedback
dos usuários mais cedo.
4 - “Agile é bala de prata”
Agile
não é a solução para tudo. Você pode falhar em um projeto Agile
da mesma forma que pode falhar em um projeto tradicional. Mas você vai
falhar mais rápido
usando Agile (devido à transparência e visibilidade que a metodologia
traz). infelizmente não é uma bala de prata ou uma desculpa para parar
de
pensar.
5 - “Agile é anti-documentação”
Documentação é necessária principalmente para atender compliance. É um
guia valioso para ajudar as pessoas. No entanto, nunca esqueça que o
objetivo principal de desenvolvimento de software é a criação de
software, não de documentos. Elabore somente a documentação que forneça
real valor. Toda informação estará disponível através das ferramentas.
É bom ter em mente também que as
metodologias ágeis não são algo que o departamento de desenvolvimento
adote simplesmente porque ser uma maneira interessante de escrever
código. Elas proporcionam benefícios diretamente relacionados ao
negócio.
Uma vantagem inegável do desenvolvimento
Ágil é a adaptabilidade às mudanças. Metodologias tradicionais tentam
prever todas as possibilidades sem deixar espaço para descobertas
durante o desenvolvimento. Essa vantagem vem sendo a mola propulsora das
metodologias de desenvolvimento Ágil em tempos de nuvem e tudo definido
por software.
A busca pela inovação também impulsiona o desenvolvimento ágil.
O mercado pede agilidade.
Agilidade significa que você será mais rápido que seus competidores.
E agilidade e inovação são pensamentos que têm de começar no CIO.
Fonte: CIO