Gestão
7 dicas de desenvolvimento ágil para CIOs
Confira as dicas de especialistas e desenvolvedores para que o CIO consiga agilizar a produção e entrega de software
Por CIO
Os gerentes querem aplicações excelentes, sem bugs, entregues no prazo e capazes de satisfazer ou supera as expectativas dos usuários – exatamente a intenção de quem desenvolve o software.
O modo como gerentes e desenvolvedores conseguem isso, porém, pode diferir muito. Na “velha” escola de desenvolvimento de software, as especificações eram definidas explicitamente sob a forma de um documento de requisitos inviolável. Em seguida, os gerentes mandavam a equipe de desenvolvimento desenvolver a aplicação e voltar quando terminasse.
O resultado, muitas vezes, era uma resposta ótima para a pergunta errada: software com atraso, que fazia coisas interessantes, mas não supria a real necessidade do usuário... e você bem sabe o que pode acontecer depois.
Ao longo os últimos 10 ou 20 anos, engenheiros de software dedicaram muita energia a tentar descobrir uma metodologia melhor para criar software fantástico que os usuários amam. O desenvolvimento ágil engloba vários processos, tais como desenvolvimento orientado a testes e eXtreme programming (XP). Existem mais alguns processos, cada qual com seus adeptos e evangelistas, mas todos se consideram ágeis.
Sem fazer alarde, eles estão assumindo o controle do departamento de desenvolvimento. De acordo com pesquisa recente da Evans Data, mais da metade dos desenvolvedores norte-americanos utilizam métodos ágeis hoje. Mas talvez os gerentes de TI não estejam aderindo.
O abismo foi transposto e “a maioria das organizações está fazendo desenvolvimento ágil, que funciona melhor na prática”, afirma Scott Ambler, autor de vários livros (entre eles, Agile Database Techniques: Effective Strategies for the Agile Software Developer) e líder da prática de desenvolvimento ágil no Methods Group da IBM.
Se você não é programador ou se ficou tanto tempo sem codificar que sente saudade de JCL, é melhor prestar atenção. Perguntei online há mais de 50 desenvolvedores: “Se você pudesse fazer o chefe entender uma coisa, apenas uma coisa relacionada ao desenvolvimento ágil, o que seria? E por quê?” As respostas que eles deram vão ajudar você a priorizar o que é essencial para incorporar estas práticas de desenvolvimento aos seus projetos de software.
Steven Smith, desenvolvedor de software e CIO da Lake Quincy Media, resume assim as opiniões da maioria dos desenvolvedores: “Gostaria que a gerência entendesse que o valor da qualidade proporcionado por tecnologias ágeis, em especial código bem testado, paga grandes dividendos em termos de redução dos gastos com garantia de qualidade e de maior velocidade de time to market para qualquer projeto de tamanho significativo. Temos alguns projetos que foram desenvolvidos internamente segundo o modelo ágil e outros que não foram – e receamos tocar naqueles que não foram”.
1. Desenvolvimento ágil produz softwares melhores
Metodologias ágeis não são algo que o departamento de desenvolvimento adote simplesmente porque é uma maneira interessante de escrever código. Eles vislumbram os principais benefícios relacionados ao negócio, como fazem os gerentes.
Pela experiência de Kelly Anderson, desenvolvedor de C# e chefe da equipe técnica da Sonic Innovations, a abordagem ágil é menos dispendiosa. “Se você contabilizar o custo dos bugs que aparecem em uma fase adiantada do processo, não há como justificar financeiramente qualquer abordagem exceto a ágil”, diz. “Má qualidade custa dinheiro. Muito dinheiro. Um projeto ágil gera maior qualidade, o suficiente para ser mais barato.”
Além disso, acrescenta Ambler, da IBM, é mais fácil comandar projetos ágeis do que projetos tradicionais.
“O desenvolvimento ágil reduz o custo de mudanças tardias, tornando mais fácil para as organizações de TI reagirem à medida que as necessidades das partes interessadas evoluem”, explica Cem Kaner, autor de Lessons Learned in Software Testing e Testing Computer Software.
Para Kaner, professor de engenharia de software do Florida Institute of Technology, “a coisa mais importante que um executivo pode fazer é repetir sempre a pergunta crítica: como esta prática (programação em par, programação orientada a testes, o que quer que o grupo esteja propondo na semana) nos capacita melhor a sermos mais responsivos depois?” Se quem estiver implementando o processo não souber responder a esta pergunta de maneira convincente, diz Kaner, é um grande sinal de alerta.
O valor da abordagem ágil para o negócio decorre da capacidade da organização de enfocar quais projetos executará, quais recursos incluirá nestes projetos e quais processos utilizará, segundo Kent McDonald, coach de sistemas de negócio da consultoria Knowledge Bridge Partners. “É fornecido valor somente quando são realizadas ações importantes que contribuem diretamente para vantagem competitiva sustentável da organização, ao passo que não é concretizado valor quando são realizadas ações que não contribuem para esta vantagem competitiva sustentável”, afirma. “As organizações podem enfocar valor sem, necessariamente, adotar práticas de desenvolvimento ágil, mas é uma pedra angular destas abordagens.”


