Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Crise do Software, Notas de estudo de Engenharia Informática

Sobre a crise do software

Tipologia: Notas de estudo

Antes de 2010

Compartilhado em 19/12/2009

alanderson-dalmaso-2
alanderson-dalmaso-2 🇧🇷

4.3

(3)

7 documentos

1 / 3

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Crise do software
A crise do software foi um termo utilizado nos anos 70, quando a engenharia de
software era praticamente inexistente. O termo expressava as dificuldades do
desenvolvimento de software frente ao rápido crescimento da demanda por software, da
complexidade dos problemas a serem resolvidos e da inexistência de técnicas
estabelecidas para o desenvolvimento de sistemas que funcionassem adequadamente ou
pudessem ser validados.
A noção da crise do software emergiu no final dos anos 60. Uma das primeiras e mais
conhecidas referências ao termo foi feita por Edsger Dijkstra, na apresentação feita em
1972 na Association for Computing Machinery Turing Award, intitulada "The Humble
Programmer" (EWD340), publicada no periódico en:Communications of the ACM.
Logo que o desenvolvimento de software começou a caminhar com o advento das
linguagens estruturadas e modulares, uma situação tornou-se clara diante de todos: a
indústria de software estava falhando repetidamente na entrega de resultados dentro dos
prazos, quase sempre estourando os orçamentos e apresentando um grau de qualidade
duvidoso ou insatisfatório.
Em um relatório de 1969 [Naur+1969], esse problema havia sido reconhecido.
Conforme foi observado, cerca de 50 a 80% dos projetos nunca foram concluídos ou
estavam tão longe de seus objetivos que foram considerados fracassados. Dos sistemas
que foram finalizados, 90% haviam terminado 150 a 400% acima do orçamento e
dos prazos predeterminados [Wallnau+2002].
Os problemas que originaram essa crise tinham relacionamento direto com a forma de
trabalho das equipes. Eram problemas que não se limitavam a "sistemas que não
funcionam corretamente", mas envolviam também dúvidas sobre como desenvolver e
manter um volume crescente de software e ainda estar preparado para as futuras
demandas. Essencialmente, eram sintomas provenientes do pouco entendimento dos
requisitos por parte dos desenvolvedores, somados às técnicas e medidas pobres
aplicadas sobre o processo e o produto, além dos poucos critérios de qualidade
estabelecidos até então [Pressman2004].
A palavra crise tem sido discutida por não descrever exatamente o problema em
questão. Uma definição mais precisa talvez seja aflição crônica, pelas características de
continuidade e intermitência dos sintomas [Pressman2004].
Todos esses fatores exigiram respostas e métodos que foram sendo aprimorados e
documentados, dando início à área de Engenharia de Software. A busca por eficiência e
competência revelou oportunidades, desafios e perigos que guiaram as tecnologias e
apontaram novos rumos para as pesquisas.
A Crise de Software e a Idade Média
Para compreender melhor as origens da Crise de Software, podemos fazer uma
comparação muito interessante com a história das outras indústrias. Por exemplo, antes
da revolução industrial, os sapatos eram feitos de forma muito individual. Nesses
pf3

Pré-visualização parcial do texto

Baixe Crise do Software e outras Notas de estudo em PDF para Engenharia Informática, somente na Docsity!

Crise do software

A crise do software foi um termo utilizado nos anos 70, quando a engenharia de software era praticamente inexistente. O termo expressava as dificuldades do desenvolvimento de software frente ao rápido crescimento da demanda por software, da complexidade dos problemas a serem resolvidos e da inexistência de técnicas estabelecidas para o desenvolvimento de sistemas que funcionassem adequadamente ou pudessem ser validados.

A noção da crise do software emergiu no final dos anos 60. Uma das primeiras e mais conhecidas referências ao termo foi feita por Edsger Dijkstra , na apresentação feita em 1972 na Association for Computing Machinery Turing Award , intitulada "The Humble Programmer" (EWD340), publicada no periódico en:Communications of the ACM.

Logo que o desenvolvimento de software começou a caminhar com o advento das linguagens estruturadas e modulares, uma situação tornou-se clara diante de todos: a indústria de software estava falhando repetidamente na entrega de resultados dentro dos prazos, quase sempre estourando os orçamentos e apresentando um grau de qualidade duvidoso ou insatisfatório.

Em um relatório de 1969 [Naur+1969], esse problema já havia sido reconhecido. Conforme foi observado, cerca de 50 a 80% dos projetos nunca foram concluídos ou estavam tão longe de seus objetivos que foram considerados fracassados. Dos sistemas que foram finalizados, 90% haviam terminado 150 a 400% acima do orçamento e dos prazos predeterminados [Wallnau+2002].

Os problemas que originaram essa crise tinham relacionamento direto com a forma de trabalho das equipes. Eram problemas que não se limitavam a "sistemas que não funcionam corretamente", mas envolviam também dúvidas sobre como desenvolver e manter um volume crescente de software e ainda estar preparado para as futuras demandas. Essencialmente, eram sintomas provenientes do pouco entendimento dos requisitos por parte dos desenvolvedores, somados às técnicas e medidas pobres aplicadas sobre o processo e o produto, além dos poucos critérios de qualidade estabelecidos até então [Pressman2004].

A palavra crise já tem sido discutida por não descrever exatamente o problema em questão. Uma definição mais precisa talvez seja aflição crônica, pelas características de continuidade e intermitência dos sintomas [Pressman2004].

Todos esses fatores exigiram respostas e métodos que foram sendo aprimorados e documentados, dando início à área de Engenharia de Software. A busca por eficiência e competência revelou oportunidades, desafios e perigos que guiaram as tecnologias e apontaram novos rumos para as pesquisas.

A Crise de Software e a Idade Média

Para compreender melhor as origens da Crise de Software, podemos fazer uma comparação muito interessante com a história das outras indústrias. Por exemplo, antes da revolução industrial, os sapatos eram feitos de forma muito individual. Nesses

tempos mais remotos, os sapateiros faziam cada par de sapatos de forma única para cada cliente, desde a obtenção da matéria prima até o produto final.

As semelhanças com a indústria de software começam logo aí. Primeiro, porque as técnicas de desenvolvimento de software ainda não estão totalmente maduras e consolidadas. Afinal, a variedade de técnicas que surgiram nas últimas décadas é enorme.

Em segundo lugar, existe uma tendência muito forte em desenvolver software sem aproveitar o material produzido no passado. E para piorar, além de entregá-lo quase sempre mal documentado, a maior parte do conhecimento envolvido na sua construção permanece apenas na cabeça dos desenvolvedores, o que deixa a situação muito parecida com a do sapateiro do exemplo.

Causas da crise de software

As causas da crise do software estão ligadas a complexidade do processo de software e a relativa imaturidade da engenharia de software como profissão:

  • As estimativas de prazo e de custo freqüentemente são imprecisas
  • Não dedicamos tempo para coletar dados sobre o processo de desenvolvimento de software;
  • Com poucos dados históricos como guia as estimativas tem sido a olho, com resultados previsivelmente ruins;
  • A produtividade das pessoas da área de software não tem acompanhado a demanda por seus serviços;
  • Os projetos de desenvolvimento de software normalmente são efetuados apenas com um vago indício das exigências do cliente;
  • A qualidade de software às vezes é menos que adequada o Só recentemente começam a surgir conceitos quantitativos sólidos de garantia de qualidade de software;
  • O software existente é muito difícil de manter o A tarefa de manutenção devora o orçamento destinado ao software; o A facilidade de manutenção não foi enfatizada como um critério importante. . A crise se manifesta de varias formas:
  • Projetos estourando o orçamento;
  • Projetos estourando o prazo;
  • Software de baixa qualidade;
  • Software muitas vezes não atingia os requisitos;
  • Projetos ingerenciáveis e o código difícil de manter.

A maior parte dos projetos continuam com estes problemas ainda na atualidade, assim pode se dizer que a crise continua vigente ainda na atualidade.