a estas falhas trazem numeros desanimadores. Somente para citar alguns:41% dos projetos falham em adicionar valor ao negocio e Retorno de Investimento - ROI.49% dos projetos ultrapassam as estimativas iniciais de custo.Somente 28% dos projetos acontecem no prazo e no orcamento.Fonte: Standish GroupO Standish Group tambem associa tamanho insucesso com os seguintes fatores: falta de envolvimento do usuario, falta de clareza nos objetivo de negocio, incapacidade de se capturar requisitos basicos, falta de controle do escopo do projeto e falta de suporte executivo.O IDC ainda e mais especifico em apontar as causas do fracasso. Segundo o IDC, mais de 80% das falhas em desenvolvimento de software resultam diretamente de problemas no levantamento, na gerencia ou na analise dos requisitos.Segundo o IAG Consulting, mais de 40% do budget de TI sera consumido por especificacoes pobres de requisitos.Os numeros mostram que Einstein tinha uma certa razao. Investir tempo no espaco do problema em termos de desenvolvimento de software significa entender os objetivos de negocio, identificar corretamente os envolvidos, fazer as perguntas corretas para explorar o problema, utilizar tecnicas apropriadas para ser capaz de descrever o que o sistema deve fazer e para que ele esta sendo criado. Apesar de parecer obvio, por que esta questao reconhecida na industria de software e tao dificil de enderecar?Eu enumeraria alguns motivos:E tipica da natureza humana a ansiedade por buscar a solucao rapidamente para algo que lhe foi demandado. O analista mais inexperiente principalmente sente-se desafiado a resolver a questao, ignorando o entendimento detalhado da demanda. Muitas vezes fica pensando se vai ou nao utilizar aquele componente que fez no projeto anterior enquanto o usuario continua explicando suas dificuldades em vao. Esta ansiedade pela solucao acontece em diversos niveis, pois o gerente de projeto e o coordenador da area, tambem so sentem progresso quando veem algo palpavel como linhas de codigo. Nenhum problema nisto desde que nao incentivem o inicio da implementacao ignorando a importancia do entendimento dos problemas de negocio.Nao e confortavel para analistas e engenheiros de sistemas navegar em areas de conhecimento muitas vezes desconhecidas como os processos de negocio e conhecimentos da industria. E sempre mais facil falar sobre tabelas, relatorios, funcoes e dados.Falta de preparacao dos profissionais de TI pela maioria das faculdades e universidades nos cursos relacionados a area. Somos bem treinados em termos de ciencia e engenharia da computacao. Sabemos sistemas operacionais, estatistica, calculos, fisica, compiladores, linguagens de programacao, etc. Nao existe foco em termos de ciencias humanas ou psicologia para aprendermos a nos comunicar com pessoas que nao tem conhecimento tecnico.O baixo envolvimento do usuario durante o projeto esta muitas vezes relacionado a cultura imposta pelo processo de desenvolvimento em cascata, muito utilizado ainda no Brasil, que envolve o usuario no inicio do projeto para definicao dos requisitos e somente depois no final para aceite do sistema.A boa noticia e que existem caminhos. A IBM Rational defende que a mudanca de cultura necessaria para se implantar ou aumentar a maturidade de uma disciplina de engenharia de software exige investimento em 3 pilares: processo, ferramentas e pessoas.Em termos de processo, houve uma