Buscar

AULA 9 - QUALIDADE E TESTE DE SOFTWARE - 20_04_2021

Prévia do material em texto

Aula 9 - Qualidade e Teste de 
Software
DATA: 20/04/2021
Evolução do conceito de qualidade de 
software
Foco Aspectos
Desenvolvedor
• Inicio: Qualidade = Funcionar
• 2º momento: Qualidade = 
Confiabilidade
• 3º momento: Qualidade 
incorpora outros aspectos
Cliente
• Percepção da Qualidade
• Pacotes de Software
Tecnologia
• Deixou de ser diferencial (todos)
• Passa a atributo de Qualidade, 
como por exemplo :interface
Evolução do conceito de qualidade de 
software
Usuário
– Interesse: Qualidade de Uso e desempenho
– Interesse nas medidas externas
• As funções estão disponíveis?
• Software é confiável? 
É eficiente?
• Fácil de usar? 
• Fácil para mudar de 
ambiente?
– Características 
construtivas não 
interessam
Visões da qualidade
• Desenvolvedor
– Coerente com 
expectativas dos 
usuários (requisitos 
e aceitação)
– Interesse nas 
medidas internas 
(técnicas)
– Qualidade de produtos 
intermediários 
(documentos, 
modelos e 
diagramas)
Visões da qualidade
• Gerente de Desenvolvimento
– Medida global da qualidade;
– Qualidade x Prazo x Custos;
– Qualidade do processo.
Visões da Qualidade
NBR ISO/IEC 9126 (Produto)
• Qualidade é: “totalidade de características de 
uma entidade que lhe confere a capacidade de 
satisfazer as necessidades explícitas e 
implícitas“
• As 2 necessidades subsidiam as 
validações e verificações (como testes)
• Explícitas (externas) = condições em 
que produto deve ser usado, objetivos, 
funções,desempenho esperado 
(depende de especificações de 
requisitos).
• Implícitas (internas) = Não estão especificados 
nos requisitos, mas são características obvias e 
fundamentais.
• Define Características e sub-características que
definem um MODELO de qualidade.
• Não apresenta métricas para características de
qualidade.
– Propõe que cada empresa use as próprias
• Qualidades explícitas (externas) = métricas
externas ou seja medições baseadas nas
necessidades dos usuários (produto final).
• Qualidades implícitas (internas) = métricas
internas (produtos intermediários).
• Qualidades de uso = Visão de qualidade que o
usuário tem do software.
NBR ISO/IEC 9126 (Produto)
• Modelo de QUALIDADE da norma é
composto de 2 partes:
– A qualidade do produto deve ser avaliado
segundo um modelo definido.
– O modelo deve ser usado para
estabelecer metas de qualidade do SW e
produtos intermediários.
• Público alvo: desenvolvimento SW,
Adquirentes, Equipe de qualidade e
Avaliadores.
NBR ISO/IEC 9126 (Produto)
O objetivo é que o produto tenha o 
efeito desejado em um contexto 
particular de uso. 
NBR ISO/IEC 9126 (Produto)
A qualidade do 
produto de software 
pode ser avaliada 
pela medição:
dos atributos internos (tipicamente 
medidas estáticas de produtos 
intermediários);
dos atributos externos (tipicamente 
medidas do comportamento do código 
quando executado);
dos atributos de qualidade em uso.
Modelo de
Qualidade
9126-1
Características 
Externas
9126-2
Características
Internas
9126-3
Características de
Qualidade de uso
9126-4
Quando executado Durante o desenvolvimento
• Instrumentos necessários para realizar uma 
avaliação 
• Como medir qualitativamente e quantitativamente 
a qualidade - 9126-1
Utilização do software
Modelo de Qualidade NBR ISO/IEC 9126
Métricas do Modelo de Qualidade NBR 
ISO/IEC 9126
Característica Especificidades
Funcionalidade • Ser adequado aos requisitos
Confiabilidade • Manter o nível de desempenho
Usabilidade • Ser de fácil uso. Sem esforço
Manutenibilidade • Esforço para modificações
Portabilidade • Ser transferido de ambiente
Eficiência • Uso otimizado de recusrsos.
O que a norma entende como 
característica?
Característica Especificidades
Eficácia
• Permitir que usuário atinja sua meta com 
acurácia e completude
Produtividade
• Permitir que os usuários empreguem a 
quantidade apropriada de recursos em 
relação a eficácia obtida
Segurança • Apresentar níveis aceitáveis de riscos
Satisfação •Satisfazer os usuários.
O que a norma entende como Qualidade 
em uso?
Princípios do Modelo de Qualidade NBR 
ISO/IEC 9126
Qualidade do Processo
Contribui para a 
melhoria da qualidade 
do produto
Contribui para a 
melhoria da qualidade 
do uso
Métricas do Modelo de Qualidade NBR 
ISO/IEC 9126
• Atual NBR ISO/IEC 25051)
• A norma estabelece conjunto de:
• 1. Estabelece os requisitos de qualidade de um 
software tipo pacote.
• 2. Fornece instruções para testá-lo, com base 
nos requisitos.
• Escopo: Pacotes oferecidos ao mercado. 
• Compreendem os processadores de texto, 
planilhas, BDs, softwares gráficos, programas 
para funções administrativas, técnicas ou 
científicas e programas utilitários.
NBR ISO/IEC 12119 (Pacote)
• Esta Norma não trata de 
processos de produção 
de software (tampouco 
atividades e produtos 
intermediários, por 
exemplo especificações); 
• O sistema de qualidade 
do produtor (tratado, por 
exemplo, na NBR ISO 
9001) está fora do 
escopo desta.
NBR ISO/IEC 12119 (Pacote)
• Pacotes de software
conjunto completo e 
documentado de 
programas fornecidos a 
diversos usuários para 
uma aplicação ou função 
genérica. (SW de 
prateleira).
NBR ISO/IEC 12119 (Pacote)
NBR ISO/IEC 12119 (Pacote)
ISO/IEC 
12119
Requisitos de 
qualidade
Pré-requisitos 
de testes
Descrição 
do produto
Documentação 
do usuário
Programas e 
dados
Atividades 
de testes
Registros 
de testes
Relatórios 
de testes
Teste de 
acompanhamento
Instruções 
para testes
• Os requisitos de qualidade 
incluem que: 
1. A descrição do produto
2. Documentação do usuário; 
3. Documentação do produto e 
dados necessários ao seu 
funcionamento
• Um pacote de software está 
em conformidade com esta 
Norma se atende a todos aos 
requisitos acima.
NBR ISO/IEC 12119 (Pacote)
NBR ISO/IEC 12119 (Pacote)
Pré-requisitos para teste:
Deve ser considerada a 
presença de itens de produto; 
de sistema necessário e 
treinamento quando 
mencionado na descrição do 
produto
Atividades de teste: 
Testar se estão de acordo com 
os requisitos de qualidade tais 
como a descrição do produto, 
a documentação do usuário, e 
os programas de dados
Registro de teste:
Deve conter informações suficientes 
para permitir a repetição do teste como 
a elaboração do plano de teste, casos 
de teste, registros de resultados com 
falhas e/ou sucessos e por fim, a 
identificação de pessoas envolvidas
Relatório de teste: 
Contém a descrição do produto, o hardware e 
software usado no teste, os documentos 
usados, os resultados dos testes (descrições, 
documentação, programas e dados), a lista de 
não conformidades dos requisitos, a lista de 
não conformidades de recomendações e as 
datas dos inícios e término do teste
• O que é um pacote de software?
• O que é um pacote de software?
Trata-se de um produto de software
que envolve um conjunto completo e
documentado de programas
fornecidos a diversos usuários para
uma aplicação ou função genérica.
Um pacote de software envolve todos
os componentes do produto
disponíveis aos usuários, tais como
documentação, manual de instruções
e guia de instalação.
EXERCÍCIOS
EXERCÍCIO 1
O que é qualidade de software?
A. ( ) É um processo não sistemático.
B. ( ) São os modos de representação - tanto quantitativa quanto qualitativa - do
software.
C. ( ) São as normas de funcionamento do software.
D. ( ) É um processo sistemático que focaliza todas as etapas e artefatos produzidos
com o objetivo de garantir a conformidade de processos e produtos
especificados, prevenindo e eliminando defeitos.E. ( ) Nenhuma das respostas anteriores.
Existe uma atividade que é aplicada no processo de engenharia de software, validada
pelos desenvolvedores quanto ao cumprimento de determinadas normas exigidas e que
está sujeita à auditoria. Essa atividade é denominada:
A. ( ) controle de mudanças.
B. ( ) revisão técnica formal.
C. ( ) manutenção de registros.
D. ( ) teste de software.
E. ( ) prática de padrões e procedimentos formais.
EXERCÍCIO 2
EXERCÍCIO 1
O que é qualidade de software?
A. ( ) É um processo não sistemático.
B. ( ) São os modos de representação - tanto quantitativa quanto qualitativa - do
software.
C. ( ) São as normas de funcionamento do software.
D. ( X ) É um processo sistemático que focaliza todas as etapas e artefatos produzidos
com o objetivo de garantir a conformidade de processos e produtos
especificados, prevenindo e eliminando defeitos.
E. ( ) Nenhuma das respostas anteriores.
Existe uma atividade que é aplicada no processo de engenharia de software, validada
pelos desenvolvedores quanto ao cumprimento de determinadas normas exigidas e que
está sujeita à auditoria. Essa atividade é denominada:
A. ( ) controle de mudanças.
B. ( ) revisão técnica formal.
C. ( ) manutenção de registros.
D. ( ) teste de software.
E. ( X ) prática de padrões e procedimentos formais.
EXERCÍCIO 2
Em uma organização produtora de software, considere o desafio de implementar, práticas efetivas de
medição e análise baseadas em um subconjunto dessas métricas, com a finalidade de satisfazer as
necessidades de informação da gerência de projeto. É de conhecimento que a organização, atualmente,
não faz uso de métricas. A respeito das práticas de medição e análise mencionadas, e das abordagens
para implantação de métricas, assinale a opção correta.
( ) O estabelecimento de alguma capacidade básica de medição e análise que atenda às necessidades
de informação mínimas da gerência de projetos, inclusive relativa à qualidade de produto.
( ) O teste de software são somente uma escolha da organização produtora de software, pois
sabe-se que é algo complementar e sem urgência.
( ) É um erro comum, durante o estabelecimento de uma capacidade de medição e análise
relacionada com teste de software, o compartilhamento, com a equipe de desenvolvimento, de
sumários e de dados de tendências.
( ) Na terminologia de testes, uma falta ou defeito é a causa de um mau funcionamento de um
software; uma falha é o resultado incorreto de uma falta ou defeito; um erro é a diferença entre
um resultado computado e um resultado esperado. As falhas são descobertas por meio de testes,
mas é a correção da falta ou do defeito que eliminará a falha.
( ) Teste é uma abordagem de controle de qualidade de um software, e o teste pode ser
desenvolvido por meio de técnicas de análise estática de código, embora sejam mais comuns
as técnicas dinâmicas, incluindo simulação.
EXERCÍCIO 3
Em uma organização produtora de software, considere o desafio de implementar, práticas efetivas de
medição e análise baseadas em um subconjunto dessas métricas, com a finalidade de satisfazer as
necessidades de informação da gerência de projeto. É de conhecimento que a organização, atualmente,
não faz uso de métricas. A respeito das práticas de medição e análise mencionadas, e das abordagens
para implantação de métricas, assinale a opção correta.
( ) O estabelecimento de alguma capacidade básica de medição e análise que atenda às necessidades
de informação mínimas da gerência de projetos, inclusive relativa à qualidade de produto.
( ) O teste de software são somente uma escolha da organização produtora de software, pois
sabe-se que é algo complementar e sem urgência.
( ) É um erro comum, durante o estabelecimento de uma capacidade de medição e análise
relacionada com teste de software, o compartilhamento, com a equipe de desenvolvimento, de
sumários e de dados de tendências.
( X ) Na terminologia de testes, uma falta ou defeito é a causa de um mau funcionamento de um
software; uma falha é o resultado incorreto de uma falta ou defeito; um erro é a diferença entre
um resultado computado e um resultado esperado. As falhas são descobertas por meio de testes,
mas é a correção da falta ou do defeito que eliminará a falha.
( ) Teste é uma abordagem de controle de qualidade de um software, e o teste pode ser
desenvolvido por meio de técnicas de análise estática de código, embora sejam mais comuns
as técnicas dinâmicas, incluindo simulação.
EXERCÍCIO 3
A garantia da qualidade de software (Software Quality Assurance - SQA) é uma
atividade "guarda-chuva", aplicada ao longo de todo o processo de engenharia de
software. Abrange uma série de tarefas vinculadas especificamente às atividades que
compõem um plano de garantia da qualidade. O que este plano deve considerar?
I. avaliações, auditorias, revisões, define padrões para o projeto.
II. procedimentos para relato e acompanhamento de erros e documentação
necessária.
III. A alocação de recursos necessários para o desenvolvimento do software.
IV. realimentação à equipe com informações conclusivas do projeto.
A. ( ) Apenas I e II.
B. ( ) Apenas II, III e IV.
C. ( ) Apenas I, III e IV.
D. ( ) Apenas I, II e IV.
E. ( ) Apenas I, II e III.
EXERCÍCIO 4
A garantia da qualidade de software (Software Quality Assurance - SQA) é uma
atividade "guarda-chuva", aplicada ao longo de todo o processo de engenharia de
software. Abrange uma série de tarefas vinculadas especificamente às atividades que
compõem um plano de garantia da qualidade. O que este plano deve considerar?
I. avaliações, auditorias, revisões, define padrões para o projeto.
II. procedimentos para relato e acompanhamento de erros e documentação
necessária.
III. A alocação de recursos necessários para o desenvolvimento do software.
IV. realimentação à equipe com informações conclusivas do projeto.
A. ( ) Apenas I e II.
B. ( ) Apenas II, III e IV.
C. ( ) Apenas I, III e IV.
D. ( X ) Apenas I, II e IV.
E. ( ) Apenas I, II e III.
EXERCÍCIO 4
Sobre teste de software considere:
I. Uma estratégia de teste que é escolhida por grande parte das equipes de software adota uma visão 
incremental do teste, começando com o teste de unidades individuais de programa, avançando para 
testes projetados a fim de facilitar a integração das unidades e culmina com testes que exercitam o 
sistema construído.
II. O teste de unidade focaliza o esforço de verificação na menor unidade de projeto do software - o 
componente ou módulo de software. Usando a descrição de projeto no nível de componente como 
guia, caminhos de controle importantes são testados para descobrir erros dentro dos limites do 
módulo.
III. O teste de unidade é normalmente considerado um apêndice ao passo de codificação. O projeto de 
teste de unidade pode ser realizado antes que o código seja iniciado ou depois de o código-fonte ter 
sido gerado.
IV. O teste de integração é uma técnica sistemática para construir a arquitetura do software enquanto, 
ao mesmo tempo, conduz testes para descobrir erros associados às interfaces. O objetivo é, a partir de 
componentes testados no nível de unidade, construir uma estrutura de programa determinada pelo 
projeto.
Está correto o que se afirma em
A. ( ) I, II, III e IV.
B. ( ) I, II e IV, apenas.
C. ( ) II, III e IV, apenas.
D. ( ) III e IV, apenas.
E. ( ) I e III, apenas.
EXERCÍCIO 5
Sobre teste de software considere:
I. Uma estratégia de teste que é escolhida por grande parte das equipes de software adota uma visão 
incremental do teste, começando com o teste de unidades individuais de programa, avançando para 
testes projetados a fim de facilitar a integração das unidades e culmina com testes que exercitam o 
sistema construído.
II. O teste de unidade focaliza o esforço de verificação na menor unidade de projeto do software - o 
componente ou módulo de software. Usando a descrição de projeto no nível de componente como 
guia, caminhos de controle importantes são testados para descobrir erros dentro dos limitesdo 
módulo.
III. O teste de unidade é normalmente considerado um apêndice ao passo de codificação. O projeto de 
teste de unidade pode ser realizado antes que o código seja iniciado ou depois de o código-fonte ter 
sido gerado.
IV. O teste de integração é uma técnica sistemática para construir a arquitetura do software enquanto, 
ao mesmo tempo, conduz testes para descobrir erros associados às interfaces. O objetivo é, a partir de 
componentes testados no nível de unidade, construir uma estrutura de programa determinada pelo 
projeto.
Está correto o que se afirma em
A. ( X ) I, II, III e IV.
B. ( ) I, II e IV, apenas.
C. ( ) II, III e IV, apenas.
D. ( ) III e IV, apenas.
E. ( ) I e III, apenas.
EXERCÍCIO 5
Teste de Equivalência de Classe é
A. ( ) É uma técnica que trabalha por dedução física.
B. ( ) É uma técnica que tem por objetivo primário reduzir o número de casos de
testes.
C. ( ) É uma técnica que trabalha por dedução indutiva.
D. ( ) É uma técnica que tem por objetivo primário ampliar o número de casos de
testes.
E. ( ) É uma técnica que tem por objetivo primário montar um conjunto de regras
de decisão a partir de uma tabela.
EXERCÍCIO 6
Teste de Equivalência de Classe é
A. ( ) É uma técnica que trabalha por dedução física.
B. ( ) É uma técnica que tem por objetivo primário reduzir o número de casos de
testes.
C. ( ) É uma técnica que trabalha por dedução indutiva.
D. ( X ) É uma técnica que tem por objetivo primário ampliar o número de casos de
testes.
E. ( ) É uma técnica que tem por objetivo primário montar um conjunto de regras
de decisão a partir de uma tabela.
EXERCÍCIO 6

Continue navegando