Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Erros e acertos no desenvolvimento de software 
Durante o ciclo de vida de um software, várias etapas precisam ser cumpridas para colocá-lo e mantê-lo em 
funcionamento. Independente da metodologia utilizada durante processo de desenvolvimento, o objetivo é 
sempre entregar um software de qualidade. Mas nenhum software está livre de falhas. Isto acontece porque 
elas são parte de qualquer atividade. 
Por exemplo, quando é lançado um novo aparelho eletrônico, a tendência é que seu índice da falhas seja 
relativamente alto no início de seu ciclo de vida devido a erros de fabricação e projeto. À medida que estes 
erros são corrigidos, o produto tende a chegar a um nível estável, dentro dos limites aceitáveis. No final do 
ciclo de vida, as falhas voltam a aumentar novamente por causa do desgaste causado pelo uso, acúmulo de 
poeira, variações de temperatura, entre outros. Por isso o hardware tende a se comportar assim: 
Curva de falhas do hardware – Fonte: PRESSMAN 
(2010) 
Diferente do hardware, um software não se desgasta ao longo do tempo por não ser um produto físico. É 
parte de um sistema lógico. Se um software é lançado sem erros, vai permanecer sem erros, desde que sejam 
mantidas as condições para o seu funcionamento. Então teoricamente a curva de falhas de um software 
deveria tender ao achatamento, estabilizando e reduzindo ao mínimo as falhas ao longo do ciclo de vida. 
Curva de falhas para o software (idealizada) – 
Fonte: PRESSMAN (2010) 
Mas na prática o software pode se deteriorar em função de erros introduzidos durante a sua manutenção. 
Alterações num software podem gerar novos erros antes mesmo da estabilização dos erros de alterações 
anteriores. Isto faz com que a curva de falhas de um software se pareça com esta: 
Curva real e curva idealizada de falhas 
de um software – Fonte: PRESSMAN (2010) 
Podemos ver que, a cada mudança, o índice de falhas tende a aumentar até se estabilizar novamente mas o 
índice real cresce ao longo do tempo. A curva real está bem acima da curva ideal porque toda vez que se faz 
uma mudança, mais erros aparecem. 
Quer dizer que não podemos fazer atualizações num software? Podemos e devemos. Temos que levar em 
conta que: 
 Todo software útil passa por mudanças: um software que tem utilidade no mundo real sempre vai 
passar por atualizações; 
 Mudanças são necessárias: quando falamos de softwares comerciais, um software atualizado pode 
representar um diferencial estratégico para o cliente. Ou continua estático e se torna obsoleto ou 
muda para se adaptar ao negócio; 
 Estudos mostram que 60% a 80% do esforço gasto em um software acontece depois dele ter sido 
entregue pela primeira vez ao usuário, ou seja, na manutenção. 
Então não há meios de eliminar as falhas? Eliminar totalmente não, mas existem técnicas que, se aplicadas 
corretamente, podem ajudar a entregar um software de qualidade. Aliás, a qualidade não está associada 
somente às falhas, mas a outros fatores como desempenho, usabilidade, confiabilidade, satisfação do cliente, 
entre outros. Isto é uma preocupação da Engenharia de Software, disciplina que lida com todos os aspectos e 
etapas da produção de software e que tem como objetivo fornecer métodos para construir softwares de alta 
qualidade. Para que isso seja conseguido é necessário: 
 Aplicar teorias, métodos e ferramentas nas situações apropriadas nas diversas etapas do 
desenvolvimento; 
 Trabalhar de acordo com as restrições organizacionais e financeiras procurando soluções que estejam 
dentro dessas restrições; 
 Gerenciar os projetos de software para que o resultado final esteja dentro do escopo, custo e prazos 
planejados; 
 Adotar uma abordagem sistemática e organizada para produzir software de qualidade de maneira 
mais eficaz. 
Fonte/Referências: Engenharia de Software – Roger Pressman

Mais conteúdos dessa disciplina