Qualidade de Software - Introdução

38
Qualidade de Software Prof.ª M.ª Elaine Cecília Gatto Aula 02

Transcript of Qualidade de Software - Introdução

Page 1: Qualidade de Software - Introdução

Qualidade de SoftwareProf.ª M.ª Elaine Cecília Gatto

Aula 02

Page 2: Qualidade de Software - Introdução

Contextualização

•A qualidade é relativa. O que pode serqualidade para uma pessoa pode ser falta dequalidade para outra. (G. Weinberg)

Page 3: Qualidade de Software - Introdução

Contextualização

Instrumentos

Precisão Cúbito

Page 4: Qualidade de Software - Introdução

Contextualização

Page 5: Qualidade de Software - Introdução

Contextualização

Page 6: Qualidade de Software - Introdução

Contextualização

Page 7: Qualidade de Software - Introdução

Contextualização

Page 8: Qualidade de Software - Introdução

Contextualização

Page 9: Qualidade de Software - Introdução

Contextualização

eficiência

produtividadeconcorrência

disputa

melhoria

Page 10: Qualidade de Software - Introdução

Contextualização

Page 11: Qualidade de Software - Introdução

Contextualização

Produtos artesanais

Produção Manual

Qualidade Individual de

cada peça

Page 12: Qualidade de Software - Introdução

Contextualização

Page 13: Qualidade de Software - Introdução

ContextualizaçãoRecursos Humanos

Leis Trabalhistas

Saúde Mental e

Emocional

Page 14: Qualidade de Software - Introdução

Contextualização

• Década de 20:

• Controle estatístico da produção

• Controle de processos de fabricação

• Qualidade do Produto final

• Década de 40:

• Órgãos reguladores de qualidade

• ABNT, ISO, ASQC

Page 15: Qualidade de Software - Introdução

Contextualização

• Japão (dec. 40)

•Método de Taguchi

•Metodologia 5S

•Diagrama de Espinha de Peixe

Page 16: Qualidade de Software - Introdução

Contextualização

complexidadeTamanho das Especificações

Page 17: Qualidade de Software - Introdução

Software

• Construção de software

• Ferramentas para construir software

• Processo de produção de software

•Qualidade do produto final construído

Page 18: Qualidade de Software - Introdução

Dificuldades na Construção de Software

•Alteração de Requisitos

•Algoritmos existentes (reuso)

• Criatividade

• Comportamento inesperado mesmo sendobem projetado

• Trabalho intelectual das pessoas (capacidadetécnica)

Page 19: Qualidade de Software - Introdução

Soluções

•Metodologias

• Ferramentas automatizadas

•Menor carga de trabalho para o ser humano

•Qualidade

Page 20: Qualidade de Software - Introdução

Qualidade

É bom?

Funciona?Qual

comprar?Critérios

Page 21: Qualidade de Software - Introdução

Qualidade

O que é necessário para

construir?Características

Finalidade

Informações

Requisitos

Especificações

O que garante a qualidade?

Page 22: Qualidade de Software - Introdução

Qualidade

•A qualidade é conformidade aos requisitos.(Crosby, 1992)

• É necessário um ponto de referência parajulgar um produto

Qualidade Requisitos

Page 23: Qualidade de Software - Introdução

Qualidade

• Como efetuar o julgamento do produto?

•Documentar e analisar todo o processo

• Transmitir resultados

Qualidade Requisitos

Page 24: Qualidade de Software - Introdução

Grau (ou intensidade) de Qualidade • Lâmpada de 60W

• Margens de precisão

• 59,9W é melhor do que60,1W?

• 60,1W é mais brilhanteque 59,9W?

• Como saber quanto alâmpada de fatoconsome de W?

Page 25: Qualidade de Software - Introdução

Grau (ou intensidade) de Qualidade

1. Definir aconformidade doprojeto

2. Observar oproduto

3. Papel dediferentes clientesno projeto

Qualidade

Características Observadas

Características Especificadas

Quanto mais longe da especificação, pior será o produto final!

Page 26: Qualidade de Software - Introdução

Grau (ou intensidade) de Qualidade

• Erros medições que não podem sercontroladas

•Desempenho falhas no hardware queafetam a execução do software

Qualidade Observado –

Especificado + Erro

Page 27: Qualidade de Software - Introdução

Grau (ou intensidade) de Qualidade

•Os requisitos foram feitos por alguém, logo aqualidade depende das escolhas que alguémefetuou. (Weinberg, 1994)

• Consenso sobre tarefas: como devem serexecutadas, implementadas, quais são as maisimportantes, etc.

Page 28: Qualidade de Software - Introdução

OBJETIVO DA QUALIDADE

• Satisfazer o cliente

• Visão de quem projeta X visão de quem compra

• RESULTADO DA DINÂMICA

• Orçamento

• Qual objetivo se pretende alcançar com esteproduto?

• Como assegurar que os objetivos planejados noinicio do projeto serão cumpridos?

Page 29: Qualidade de Software - Introdução

Erros de Software – Qualidade

• Erros podem ser relativos e não atrapalhar naexecução do software. Exemplos:

•Games com bugs de cenários

• Sistemas que apresentam erros em apenas1 ou 2 % dos clientes.

• Sistemas em conformidade, erros quaseinexistentes, mas difíceis de usar

Page 30: Qualidade de Software - Introdução

Erros de Software – Qualidade

• Custos

• Existência de erros

• Detecção de erros

• Remoção de erros

• Quanto custará oprojeto e qual lucroobteremos?

• Prejuízo causado pelafalta de qualidade

• Custos para garantir umnível de funcionamentodo software

Page 31: Qualidade de Software - Introdução

DEFEITO

• É uma imperfeição de um produto

• Faz parte do produto

• Em software:

• É algo que está implementado em código demaneira incorreta

• Um programa defeituoso é um programa quenão funciona como deve

• A execução do programa é interrompida

Page 32: Qualidade de Software - Introdução

FALHA

• É o resultado provocado por um defeito oucondição inesperada.

• Exemplo:

•Divisão por zero.

•Quando ocorre uma falha?

• É um código defeituoso?

Page 33: Qualidade de Software - Introdução

Soluções

•Depuração de programa

• Reproduzir o defeito

•Onde está o código defeituoso que gerou afalha?

• Técnicas e ferramentas para descoberta ecorreção de código defeituoso

Page 34: Qualidade de Software - Introdução

Aspectos Importantes da Qualidade

• Testes de software não garantem a ausênciade erros

•Dificuldade para verificar e validar softwares

•Dificuldade em manter os requisitosconsistentes

• Requisitos impactam no resultado final

Page 35: Qualidade de Software - Introdução

Impacto de Erros/Falhas

•O software está embutido em sistemas detodas as naturezas: de transportes, médicos,de telecomunicações, militares, de processosindustriais, de produtos de escritório, ...(PRESSMAN, 2002)

Page 36: Qualidade de Software - Introdução

SWEBOK

• IEEE

• Software Enginneering Body of Knowledge

• Corpo de conhecimento de Engenharia deSoftware

• 11 áreas

Page 37: Qualidade de Software - Introdução

SWEBOK

• Requisitos

• Gerencia de engenharia

• Projeto

• Métodos e ferramentasde Engenharia

• Construção

• Processo de engenharia

• Testes

• Qualidade

• Manutenção

• Gerência deconfiguração

Page 38: Qualidade de Software - Introdução

SWEBOK