Todos desejamos reduzir custos de qualquer tipo, tanto os pessoais como o de empresas. Na area de TI, podemos utilizar o TCO (Total Cost of Ownership) para nos ajudar a verificar custos e acoes gerenciais para reduzi-los, relacionados a sistemas da empresa.Utilizado pela primeira vez em 1987, o TCO foi criado pelo Gartner Group, como medida e aproximacao para gerenciamento e reducao de custos, envolvendo pessoas, processos e tecnologia. Neste cenario, precisamos estar cientes que os custos relacionados a sistemas, nao estao restritos apenas aos custos de aquisicao ou desenvolvimento dos mesmos.Na verdade, o ciclo de vida de um sistema incorpora o ciclo de desenvolvimento do mesmo alem do custo operacional que considera os envolvidos em manutencoes, tanto corretivas quanto evolutivas.Neste contexto, a ISO/IEC 12207 considera o desenvolvimento e manutencao do software como processos que compoem o ciclo de vida de software, desde sua criacao ate a descontinuacao do mesmo, compondo o TCO relacionado ao produto de software.Deste modo, o custo de manutencao torna-se um ponto de grande importancia para as empresas. No dia a dia percebe-se que muitas pessoas nao possuem um sentimento claro, do quanto pode custar a manter um sistema de baixa qualidade em operacao apos sua implantacao.Ja presenciei empresas com legado composto por diversos sistemas sem documentacao, baixa qualidade e que, frequentemente, apresentam problemas de funcionamento. Alem das paradas no negocio da empresa, estes sistemas geram perdas imensuraveis, relacionadas a sua imagem perante o mercado e clientes. Isto quando os usuarios previstos para o sistema acabam nunca utilizando o mesmo, devido a ele cair em descredito. Neste caso, todo o investimento e perdido por desinteresse em sua utilizacao.Voce continuaria utilizando uma operadora de telefonia celular que vivesse fora do ar? Para quantas pessoas voce falaria mal desta empresa e qual seria o impacto no negocio da mesma? Qual o prejuizo gerado para ela?O que ja vi algumas vezes e que infelizmente acabarei vendo novamente, sao pessoas acreditando que desenvolver software utilizando processos e o paradigma Orientado a Objetos, nao sao necessarios e ate mesmo, bobagem. Simplesmente acham que nao vale a pena gastar e esperar mais, para ter seus sistemas desenvolvidos utilizando as melhores praticas de Engenharia de Software de mercado.A verdade e que tudo que deixa de se gastar desenvolvendo software AD HOC, se gasta muitas vezes mais nos processos de manutencao dos sistemas, alem de eventuais impactos imensuraveis de imagem junto ao usuario e/ou cliente.Mas pense bem, se fosse realmente bobagem utilizar metodologias e orientacao a objetos, por exemplo, por que grandes empresas como a Sun Microsystems, atualmente adquirida pela Oracle, teria gasto tanto esforco de excelentes profissionais nesta area?Estudos mostram que cerca de 50% do tempo gasto em manutencoes e gasto no processo de entendimento do codigo a ser manutenido (Fjeldstad & Hamlen, 1983; Standish, 1984). Isto evidencia a importancia de um codigo bem implementado e documentado.Reducao de custos, o que todos desejamCom o proposito de reduzir custos, podemos mesclar uma serie de opcoes, tais como, renegociar com fornecedores, trocar fornecedores, ajustar Acordos de Nivel de Servico, realizar (re)engenharia de processos de negocios, rastrear gastos,