Buscar

Aula 06 - Qualidade e Teste de Software

Prévia do material em texto

Avaliação de Software
Daniele Cicillini
Aula 6
*
Índice
Unidade 3 – Testes de Validação
3.5 – Norma ISO/IEC 9126-1
3.6 – Métodos Estruturados de Validação
3.7 – Fases da Validação
3.7.1 – Validação da Unidade
3.7.2 – Validação da Integração
3.7.3 – Validação do Sistema
3.7.4 – Validação do Aceite 
 
 
 
*
*
3.5 – Norma ISO/IEC 9126-1
Como já comentamos anteriormente, a qualidade é um conceito muito importante para o software.
Durante muito tempo, foram propostos modelos de qualidade, mas a confiabilidade era o único meio de se avaliar a qualidade de um software.
Surgiu então a necessidade de um modelo padronizado.
*
*
3.5 – Norma ISO/IEC 9126-1
Por essa razão, o comitê técnico da ISO (International Organization for Standardization) e IEC (International Electrotechnical Comission), iniciaram em 1985 o desenvolvimento da Norma Internacional ISO/IEC 9126, que estabelece características baseadas no conceito de qualidade para um produto de software.
*
*
3.5 – Norma ISO/IEC 9126-1
A Norma ISO/IEC 9126:1991 ou NBR 13596:1996 apresenta a padronização mundial do Software como Produto considerado como um “Software de Qualidade”.
Esta norma fornece um modelo de propósito geral o qual define 6 categorias de características de qualidade de software que são, por sua vez, divididas em subcaracterísticas que podem ser avaliadas por um conjunto de métricas.
*
*
3.5 – Norma ISO/IEC 9126-1
A figura a seguir mostra a estruturação das características e subcaracterísticas da qualidade interna e externa da Norma ISO/IEC 9126-1.
*
*
3.5 – Norma ISO/IEC 9126-1
Funcionalidade: capacidade do produto de software de prover funções que atendam às necessidades explícitas e implícitas, quando o software estiver sendo utilizado sob condições específicas. 
Adequação;
Acurácia;
Interoperabilidade;
Segurança de Acesso;
Conformidade.
*
*
3.5 – Norma ISO/IEC 9126-1
Confiabilidade: capacidade do produto de software de manter um nível de desempenho especificado, quando usado em condições específicas.
Maturidade;
Tolerância a Falhas;
Recuperabilidade;
Conformidade.
*
*
3.5 – Norma ISO/IEC 9126-1
Usabilidade: capacidade do produto de software de ser compreendido, aprendido, operado e atraente ao usuário, quando usado sob condições específicas.
Inteligibilidade;
Apreensibilidade;
Operacionalidade;
Atratividade;
Conformidade.
*
*
3.5 – Norma ISO/IEC 9126-1
Eficiência: capacidade do produto de software de apresentar desempenho apropriado, relativo à quantidade de recursos usados, sob condições específicas.
Comportamento em relação ao tempo;
Comportamento em relação aos recursos;
Conformidade;
Manutenibilidade;
Analisabilidade;
*
*
3.5 – Norma ISO/IEC 9126-1
Eficiência
Modificabilidade;
Estabilidade;
Testabilidade;
Conformidade.
*
*
3.5 – Norma ISO/IEC 9126-1
Portabilidade: capacidade do produto de software de ser transferido de um ambiente para outro.
Adaptabilidade;
Capacidade de ser instalado;
Coexistência;
Capacidade para substituir;
Conformidade.
*
*
3.5 – Norma ISO/IEC 9126-1
Na norma cada característica é refinada em um conjunto de subcaracterísticas e cada subcaracterística é avaliada por um conjunto de métricas. A norma não fornece métricas e nem métodos para medição, pontuação ou julgamento.
Cada organização pode estabelecer seus próprios modelos de processo de avaliação e métodos para a criação e validação de métricas relacionadas com as características.
*
*
3.6 – Métodos Estruturados de Validação
Os métodos para a estruturação dos testes na fase de validação são elementos essenciais para o sucesso das atividades de teste em um projeto de software.
São eles que definem as entradas a serem informadas pelo testador (manualmente ou com apoio ferramental) e os resultados esperados a partir desta ação.
*
*
3.6 – Métodos Estruturados de Validação
Assim, eles nos permitem medir o quanto o software está sendo testado. Já um procedimento de teste define os passos/ sequência necessários para executá-los.
*
*
3.6 – Métodos Estruturados de Validação
Sendo assim segundo os autores Craig e Jaskiel (2002), estes artefatos do processo de teste de software podem ser definidos da seguinte forma:
Caso de Teste;
Procedimento de Teste.
*
*
3.6 – Métodos Estruturados de Validação
Caso de Teste: descreve uma condição particular a ser testada e é composto por valores de entrada, restrições para a sua execução e um resultado ou comportamento esperado.
Procedimento de Teste: é uma descrição dos passos necessários para executar um caso (ou um grupo de casos).
*
*
3.7 – Fases da Validação
Nos testes de validação, os mecanismos de testes são divididos em dois grupos: 
Baixo nível: que envolve os testes de unidade e de integração e, 
Alto nível: que envolve os testes de sistema e de aceitação.
*
*
3.7.1 – Validação da Unidade
Essa é a primeira etapa do processo de validação e, tem por objetivo testar componentes individuais de uma aplicação.
É um teste que verifica em nível e componente ou classe. É o teste cujo objetivo é um ‘pedaço de código’.
*
*
3.7.1 – Validação da Unidade
Os testes unitários devem ser projetados visando à cobertura de código nos objetos, realizando testes em todas as operações do mesmo, além de verificar seus atributos e simular os mais diversos eventos que causem alguma mudança nesse objeto, utilizando diferentes entradas para atingir tal objetivo.
*
*
3.7.2 – Validação da Integração
A validação de integração é uma continuação natural dos testes unitários.
 
O principal objetivo é validar a compatibilidade entre os diversos componentes do software.
*
*
3.7.2 – Validação da Integração
Testes de integração ou também chamados de testes de componentes, “[...] é uma técnica sistemática para construir a arquitetura de software ao mesmo tempo que conduz testes para descobrir erros associados com as interfaces.” (PRESSMAN, 2011, pag. 409). 
*
*
3.7.3 – Validação do Sistema
Aqui, o principal objetivo passa a ser a validação do sistema como um todo. Quando se chega nessa fase é necessário que a maior parte das falhas de funcionalidade tenham sido detectadas pelos testes unitários e os testes de integração.
*
*
3.7.3 – Validação do Sistema
Segundo Pressman (2011, pag. 421), os testes de sistema caracterizam-se em “[...] uma série de diferentes testes cuja finalidade primária é exercitar totalmente o sistema.”
Para isso vimos anteriormente algumas maneiras de tipos de testes que são realizados nesse estágio como, por exemplo, os testes de funcionalidade, os testes de recuperação, testes de segurança, testes de desempenho e testes de disponibilidade.
*
*
3.7.4 – Validação do Aceite
Nessa etapa, o software é disponibilizado para os clientes e usuários para que estes validem todas as funcionalidades requisitadas no início do projeto.
Neste último estágio, Sommerville (2011, pag. 159) define que os testes de aceitação têm como objetivo: [...] que os usuários ou clientes fornecem entradas e conselhos sobre o teste de sistema.
*
*
3.7.4 – Validação do Aceite
Isso pode envolver o teste formal de um sistema que foi aprovado por um fornecedor externo ou processo informal em que os usuários experimentam um produto de software novo para ver se gostam e verificar se faz o que eles precisam.
Para Molinari (2003, pag. 161), esse estágio de testes se caracteriza por um “[...] teste exploratório voltado para validar aquilo que o usuário deseja, tendo um objetivo claro: dar o aceite ou não.”
*
*
3.7.4 – Validação do Aceite
Dentro dos testes de aceitação, os mesmos podem ser divididos em dois estágios, sendo estes o TESTE ALFA e o TESTE BETA. (BARTIÉ, 2002, pag. 158-159).
*
*
3.7.4 – Validação do Aceite
Teste alfa: É caracterizado pelos testes realizados pelos usuários em um ambiente simulado, podendoeste estar localizado dentro da empresa criadora do software.
Esse estágio de teste tem como objetivo observar a naturalidade com que o sistema é utilizado pelos usuários finais.
Ele deve ter um conjunto reduzido desses procedimentos, garantindo, assim, um mínimo de cobertura dos testes de aceitação.
*
*
3.7.4 – Validação do Aceite
Teste beta: Tem como característica a execução do sistema na própria infraestrutura da empresa que vai utilizar o software e, assim, será utilizado nas mesmas proporções que são utilizadas diariamente. 
Esse estágio de teste serve para que os usuários possam ter segurança em utilizar essa versão em produção, contando com o apoio da equipe de desenvolvimento para correção de qualquer problema que possa prejudicar o seu o uso.
*
Avaliação de Software
Daniele Cicillini
Atividade 6
*
*
Atividade
Questão do concurso para ANALISTA DE TECNOLOGIA DA INFORMAÇÃO - TESTE E QUALIDADE. Ano: 2013 Banca: IADES Órgão: EBSERH
1) Os testes de software são executados, usando os procedimentos e documentos de script de teste. Para que a fase de execução de teste, seja realizada com sucesso deve(m) ser executado(s):
 
*
*
Atividade
Os casos de uso
Os diagramas de atividade
Os casos de teste
Os testes de Turing
O teste de COMA
*
*
Atividade
Alternativa correta é a C.
*

Continue navegando