Modelo de Maturidade de Software – Problemas no desenvolvimento de Software


Hardware ou software?

Vamos começar a nossa aula com uma pergunta simples: qual é o elemento mais importante no desenvolvimento de um software: o hardware ou o software?

Acredito que muitos tenham respondido o software; entretanto, essa não foi a resposta padrão durante muito tempo, contabilizando desde o início do desenvolvimento de sistemas. Por um longo período, o hardware era o componente principal, era o elemento essencial para o qual todas as atenções estavam voltadas.

Porém, esse cenário mudou e, agora, vamos entender bem como isso ocorreu e por que ocorreu, estudando o contexto do desenvolvimento de um software e os problemas que geraram a crise deste elemento.


O contexto do desenvolvimento de software

No início da computação, o elemento-chave era o hardware. Havia uma preocupação muito grande com o projeto e o uso deste componente. Naquela época, o hardware era muito caro e, por isso, o armazenamento nos dispositivos de memória secundária deveriam ser muito bem pensados e medidos. Foi nessa época que o termo “escovar bits” foi cunhado, devido ao alto valor de armazenamento dos dados. Entretanto, no início dos anos 80, foi divulgado um importante artigo na Business Week Magazine falando sobre a importância do software, cujo título era: “Software: the new driving force”.

A partir desse artigo, os pesquisadores começaram a perceber a importância do software para o desenvolvimento de sistemas. Outros artigos foram lançados como vertentes positivas à utilização do software, como: The Third Wave (Toffler, A., 1980); Information Society (Naisbitt, J., 1982).

Eletronic Community (Stoll, C., 1989).

Assim como as vertentes positivas, tivemos também as negativas ao uso do software: Resisting the Virtual Life (Brook, J.); The Future Does Not Compute (Talbot, S.).

Dessa forma, o software ultrapassou o hardware como a chave do sucesso para muitos sistemas baseados em computador. Hoje, o principal desafio é melhorar a qualidade e reduzir o custo de soluções baseadas em computador, pois a economia de todos os países do mundo depende cada vez mais de software, visto que este componente serve de base para: modernas investigações científicas; resolução de problemas de engenharia; controlar sistemas de transporte, medicina, telecomunicações, etc. As pessoas aplicam software em praticamente tudo no dia a dia, como: no trabalho, no conforto, na segurança, no entretenimento, na comunicação, entre outros.


Problemas persistentes

Ainda existem alguns problemas no uso e desenvolvimento de software, como:

Um dos grandes problemas ainda é a manutenção de software. As empresas gastam um valor muito alto para prestar assistência em seus sistemas, o que impacta nos custos de acordo com a etapa em que a alteração no software ocorrerá, conforme a figura abaixo:

problemas no uso e desenvolvimento de software

Percebemos que, depois que o software é entregue ao cliente final, qualquer tipo de alteração demanda um alto custo para sua manutenção. Precisamos analisar bem qualquer tipo de alteração no software para que as mudanças não tenham custos proibitivos. Quanto mais cedo uma alteração for realizada no desenvolvimento de um software, menor será o seu custo.

Também possuímos uma fábrica de desenvolvimento de software em fase de envelhecimento, pois há milhares de aplicações de software críticas que se encontram em dramática necessidade de renovação. Existem muitas aplicações críticas, tais como:

Um estudo realizado pelo governo dos Estados Unidos em relação ao software produzido constatou que:

Essa análise foi o primeiro indício que uma grave crise do software estaria por vir.


Crise do software

A crise do software refere-se aos seguintes problemas:

  1. As estimativas de prazo e de custo são frequentemente imprecisas, visto que:
    1. Não se dedica tempo para coletar dados sobre o processo de desenvolvimento de software;
    2. Os projetos de desenvolvimento de software normalmente são efetuados apenas com um vago indício das exigências do cliente.
  2. A quantidade e a produtividade de pessoas da área de software não têm acompanhado a demanda por seus serviços.
    1. Sem nenhuma indicação sólida de produtividade, não se pode avaliar com precisão a eficácia de novas ferramentas, métodos ou padrões e, até mesmo, formações de pessoas.
  3. A qualidade de software, às vezes, é menor que a adequada.
    1. Apenas recentemente começaram a surgir conceitos quantitativos e qualitativos sólidos de garantia de qualidade do processo e do produto de software.
  4. O software existente é muito difícil de manter.
    1. A tarefa de manutenção devora o orçamento destinado ao software;
    2. A facilidade de manutenção normalmente não é enfatizada como um critério importante nos projetos.

LEIA MAIS EM: http://euclezio.blogspot.com.br/2014/06/a-crise-do-software.html


Características do software

Nesta parte do curso, discutiremos as características e os mitos relacionados ao desenvolvimento do software, que possui algumas características que devem ser muito bem analisadas. São estas:

1. O software é desenvolvido ou projetado por engenharia, não manufaturado no sentido clássico, como o hardware.

2. Software não se “desgasta” com o uso, mas se deteriora.

3. Curva de falha para o hardware

3. Curva de falha para o hardware

4. Curva de falha para o software

4. Curva de falha para o software

5. A maioria dos produtos de software é feita sob encomenda ao invés de ser montada a partir de componentes existentes, que podem ser executáveis e não executáveis, como código e documentação, respectivamente.


Mitos do software

Muitas causas da atual aflição podem remeter-se à mitologia, que surgiu durante os primórdios do desenvolvimento de software. Esses mitos, que propagaram desinformação e confusão, são divididos em: administrativos ou de gerência e dos profissionais. Conheça-os:

  1. Mito administrativo I

Já temos um livro repleto de padrões e procedimentos para a construção de softwares. Isso não oferecerá ao meu pessoal tudo o que eles precisam saber?

Realidade:

 

  1. Mito administrativo II

Meu pessoal tem ferramentas de desenvolvimento de software de última geração; afinal, compramos os mais novos computadores.

Realidade:

 

  1. Mito do profissional I

A única coisa a ser entregue em um projeto bem-sucedido é o programa funcionando.

Realidade:

 

  1. Mito do profissional II

A engenharia de software nos fará criar documentação volumosa e desnecessária, que, certamente, nos atrasará.

Realidade:

 

LEIA MAIS: https://www.profissionaisti.com.br/2011/08/os-principais-mitos-do-desenvolvimento-de-software/


Referências

Base: Pós em Engenharia de Software – Estácio (EAD), com várias adaptações e melhorias.

PFLEEGER, Shari Lawrence. Engenharia de Software: Teoria e Prática. 2ª Edição. São Paulo: Pearson (Livros Universitários), 2003.

PRESSMAN, Roger S. Engenharia de Software: uma abordagem profissional. 7ª Edição. São Paulo: MCGRAW-HILL BRASIL, 2011.

SOMMERVILLE, Ian. Engenharia de Software. 9ª Edição. São Paulo: PEARSON (LIVROS UNIVERSITÁRIOS), 2011.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.