PROJETO DE SISTEMAS Professora Lucélia
UMA CRISE NO HORIZONTE A industria de Software tem tido uma crise que a acompanha há quase 30 anos. Problemas não se limitam ao software que não funciona adequadamente, mas abrange: desenvolvimento, testes, manutenção, suprimento, etc.
THERAC-25 Equipamento de Radioterapia. Entre 1985 e 1987 se envolveu em 6 acidentes, causando mortes por overdoses de radiação. Software foi adaptado de uma antecessora, Therac-6: falhas por falta de testes integrados falta de documentação página 382 do Pfleeger.
DENVER INTERNATIONAL AIRPORT Custo do projeto: US$ 4.9 bilhões 100 mil passageiros por dia 1.200 vôos 53 milhas quadradas 94 portões de embarque e desembarque 6 pistas de pouso / decolagem
DENVER INTERNATIONAL AIRPORT Problemas: Erros no sistema automático de transporte de bagagens: Atraso na abertura do aeroporto com custo total estimado em US$360 Milhões 86 milhões para consertar o sistema.
ARIANE 5
ARIANE 5 Projeto da Agência Espacial Européia que custou: 10 anos. US$ 8 Bilhões. Capacidade 6 toneladas. Garante supremacia européia no espaço.
VÔO INAUGURAL EM 4/JUNHO/1996
RESULTADO Explosão 40 segundos após a decolagem. Destruição do foguete e carga avaliada em US$ 500 milhões.
O QUE ACONTECEU? Fato: o veículo detonou suas cargas explosivas de autodestruição e explodiu no ar. Por que? Porque ele estava se quebrando devido às forças aerodinâmicas. Mas por que? O foguete tinha perdido o controle de direção (atitude). O que causou isso? Os computadores principal e backup deram shut-down ao mesmo tempo
O QUE ACONTECEU? (II) Por que o Shut-down? Ocorrera um run time error (out of range, overflow, ou outro) e ambos computadores se desligaram. De onde veio este erro? Um programa que convertia um valor em ponto flutuante para um inteiro de 16 bits recebeu como entrada um valor que estava fora da faixa permitida.
IRONIA... O resultado desta conversão não era mais necessário após a decolagem...
RECEITA FEDERAL DOS ESTADOS UNIDOS No começo da década de 80, a Receita Federal dos Estados Unidos (IRS) contratou a empresa Sperry Corporation para construir um sistema automatizado de processamento de formulários de impostos federais. De acordo com o jornal americano Washington Post, o sistema se mostrou inadequado à carga de trabalho, custou cerca de duas vezes o esperado e deve ser logo substituído (Sawyer, 1985) Professora: Lucélia Oliveira
(CONTINUAÇÃO) Em 1985, foi necessário adicionar US$ 90 milhões aos US$ 103 milhões que já haviam sido pagos pelos equipamentos da Sperry. Além disso o problema acarretou o atraso das restituições da IRS aos contribuintes, o que forçou a IRS a pagar US$ 40,2 milhões em juros e US$ 23 milhões em horas extras para os funcionários que tentaram compensar o estrago. Professora: Lucélia Oliveira
(CONTINUAÇÃO) Em 1996, a situação não havia melhorado. O jornal americano Los Angeles Times publicou, em 29 de março daquele ano, que ainda não havia nenhum plano para a modernização dos computadores da IRS, somente um relatório com 6.000 páginas. O congressista americano Jim Lighfoot chamou o projeto de um fiasco de quatro bilhões de dólares que está afundando por falta de planejamento Professora: Lucélia Oliveira
QUAIS SÃO OS PROBLEMAS? A sofisticação do software ultrapassou nossa capacidade de construção. Nossa capacidade de construir programas não acompanha a demanda por novos programas. Nossa capacidade de manter programas é ameaçada por projetos ruins.
IMPORTÂNCIA DO PLANEJAMENTO Em 1994, uma pesquisa realizada pelo The Standish Group demonstrava que nos Estados Unidos apenas cerca de 19% do total de projetos de software iniciados eram terminados com sucesso. 52,2% dos projetos eram concluídos com atrasos e acima dos orçamentos. Professora: Lucélia Oliveira 31,1% eram cancelados.
PERGUNTAS QUE A ENGENHARIA DE SOFTWARE QUER RESPONDER: Porque demora tanto para concluir um projeto (não cumprimos prazos)? Porque custa tanto (uma ordem de magnitude a mais)? Porque não descobrimos os erros antes de entregar o software ao cliente? Porque temos dificuldade de medir o progresso enquanto o software está sendo desenvolvido?
CAUSAS ÓBVIAS Não dedicamos tempo para coletar dados sobre o desenvolvimento do software - resulta em estimativas a olho. Comunicação entre o cliente e o desenvolvedor é muito fraca. Falta de testes sistemáticos e completos.
CAUSAS MENOS ÓBVIAS O Software é desenvolvido ou projetado por engenharia, não manufaturado no sentido clássico. Profissionais recebem pouco treinamento formal. Falta investimento em ES Falta métodos e automação.
MITOS DO SOFTWARE - ADMINISTRATIVOS Um manual oferece tudo que se precisa saber. Computadores de última geração solucionam problemas de desenvolvimento. Se estamos atrasados, basta adicionar programadores e tirar o atraso (chamado conceito de hordas de mongois ).
MITOS DO SOFTWARE - DO CLIENTE Uma declaração geral é suficiente para começar a escrever programas. Mudanças podem ser facilmente acomodadas em um projeto.
MITOS DO SOFTWARE - DO PROFISSIONAL Um programa está terminado ao funcionar. Quanto mais cedo escrever o código, mais rápido terminarei o programa. Só posso avaliar a qualidade de um programa em funcionamento. A única coisa a ser entregue em um projeto é o programa funcionando.
QUANTO MAIS TARDE A DETECÇÃO DE UM ERRO, MAIS CARA É A SUA CORREÇÃO! Segundo Pfleeger, o custo para a correção de um erro cometido em um projeto durante a etapa inicial da análise é um décimo do custo para corrigir um erro semelhante depois que o sistema foi entregue ao cliente. Metade dos custos de correção de defeitos encontrados durante a fase de testes e manutenção vem de erros cometidos no início de vida do sistema. Professora: Lucélia Oliveira
QUAL TEM SIDO O GRAU DE SUCESSO DOS SISTEMAS ATUAIS? Pense como era a vida das pessoas antes dos processadores de texto, das planilhas eletrônicas, do correio eletrônico, da telefonia sofisticada. Os produtos de softwares têm apoiado avanços na medicina, na agricultura, nos transportes, etc Professora: Lucélia Oliveira Além de nos permitir realizar as coisas nunca feitas antes, como microcirurgias, educação, multimídia e robótica.