Buscar

Garantias da Qualidade de Software

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 31 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 31 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 31 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Garantias da Qualidade de Software
Apresentação
Garantia de qualidade de software é diferente de controle de qualidade de software. A garantia de 
qualidade atua no monitoramento de processos que visem a garantir que as estratégias de controle 
de qualidade sejam executadas adequadamente.
Por exemplo, como saber se os projetos estão estimando tempo suficiente para os testes de 
software? Isso só é possível acompanhando o plano de testes, que é um documento de garantia de 
qualidade de software no contexto de produto.
Nesta Unidade de Aprendizagem você conhecerá o conceito de garantia da qualidade de software, 
tanto aplicado a processos quanto a produtos, verá também métodos de análise das garantias de 
qualidade e sua aplicação, bem como um plano de testes para garantia de qualidade de produto.
Bons estudos.
Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados:
Definir as garantias da qualidade de software.•
Analisar as garantias da qualidade de software.•
Aplicar os métodos das garantias de software.•
Desafio
A garantia de qualidade de software é, juntamente com o controle de qualidade, um importante 
aliado do cliente para que ele possa confiar no produto que está adquirindo. A garantia de 
qualidade assegura que os processos da empresa estão sendo seguidos e ajuda a otimizá-los, 
adequando-os da melhor forma possível ao contexto da empresa.
Você é estagiário da área de garantia de qualidade de uma empresa que desenvolve softwares e 
recebeu a seguinte demanda.
Descreva este processo de forma textual e gráfica. Ele deve conter os seguintes elementos:
- Nome do processo 
- Insumos (materiais necessários) 
- Resultado (o que será entregue ao final da execução do processo) 
- Passos para execução (o que deve ser feito) 
- Fluxos alternativos (desvios que o processo pode ter) 
- Fluxograma do processo (principal e alternativo)
Infográfico
A garantia da qualidade de software envolve diversos processos. O profissional que trabalha com 
garantia da qualidade precisa conhecer, por exemplo, a norma ISO 9000, para saber que ela não é 
aplicada no desenvolvimento de software, mas sim em processos da empresa, e que, por outro lado, 
os modelos de maturidade CMMI e MPS.BR auxiliam na garantia da qualidade de processos 
especificamente de desenvolvimento de sistemas.
Veja no Infográfico conceitos importantes a respeito de garantia da qualidade de software.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
https://statics-marketplace.plataforma.grupoa.education/sagah/24821925-b9f7-42df-a88e-669646b46ba1/9e9dc401-b090-4aef-8667-10f32e88fab8.jpg
Conteúdo do livro
A garantia da qualidade de software envolve atenção a tudo o que acontece no processo de 
desenvolvimento de software, desde os processos iniciais até a forma como é realizada a 
implantação do software no cliente.
Alguns modelos, como, por exemplo, o modelo U, ajudam a entender esse processo de garantia da 
qualidade. Algumas normativas e modelos de maturidade auxiliam também a estruturar os projetos, 
como, por exemplo, CMMI e MPS.BR.
No capítulo Garantias da qualidade de software, do livro Qualidade de software, você conhecerá o 
modelo U de garantia de qualidade de software, a norma ISO 9000 e os modelos de maturidade 
CMMI E MPS.BR.
Bons estudos.
QUALIDADE DE 
SOFTWARE
Aline Zanin 
Garantias da qualidade 
de software
Objetivos de aprendizagem
Ao final deste texto, você deve apresentar os seguintes aprendizados:
  Definir as garantias da qualidade de software.
  Analisar as garantias da qualidade de software.
  Aplicar os métodos das garantias de software.
Introdução
A garantia da qualidade de software, do inglês quality assurance, pode ser 
definida como as atividades que dão suporte aos processos continua-
mente estabelecidos, visando a fornecer confiabilidade a esses processos. 
Para esse fim, os processos estão em contínua revisão, melhoria e adap-
tação, para produzir produtos que atendam aos requisitos estipulados 
pelo cliente e que sejam adequados para o uso pretendido.
A garantia de qualidade de software está associada com todas as 
atividades que formam o ciclo de desenvolvimento de um software, 
desde o primeiro contato com o cliente até a programação do software 
em si. Dessa forma, a área de garantia da qualidade se preocupa com a 
verificação e a validação do software, a verificação quanto aos processos 
e às definições (garantia da qualidade de processos) e a validação quanto 
ao produto (garantia da qualidade de produto). Para esse fim, diversas são 
as técnicas, os modelos e as atividades empregadas, conforme Campos 
([2019]). 
Neste capítulo, você vai estudar o conceito de garantia da qualidade e 
vai analisar algumas das técnicas que podem ser utilizadas para a garantia 
da qualidade. Por fim, algumas dessas técnicas serão demonstradas por 
meio de exemplos de aplicação.
Garantias da qualidade de software
A garantia da qualidade de software, ou os modelos de garantia da qualidade de 
software, como o próprio nome diz, tem como objetivo garantir que o software 
seja entregue ao cliente fi nal com qualidade e que o processo de verifi cação 
dessa qualidade seja conduzido de forma organizada.
Para que esse processo de garantia de qualidade de software tenha êxito 
em seu objetivo e possa ser executado pela equipe sem causar um consumo 
excessivo de tempo ou uma desmotivação do time, é necessário que esteja 
completamente integrado ao processo de desenvolvimento de software. Um 
bom processo de garantia de qualidade pode ser visto como uma relação de 
um para um com cada fase do processo de desenvolvimento de software; ou 
seja, realiza-se uma etapa de garantia da qualidade de software para cada etapa 
de desenvolvimento. Todo esse processo deve ser feito visando e reforçando 
a colaboração entre as áreas e a ciência por parte dos profissionais de um 
objetivo comum no time, segundo Bartié (2002).
Garantia de qualidade e controle de qualidade são áreas diferentes da engenharia de 
software. A área de controle de qualidade age diretamente sobre o produto e realiza 
a execução dos processos, enquanto a área de garantia da qualidade estrutura tanto 
o controle de processos quanto o controle de produtos e garante que estes estejam 
sendo executados.
Diversos são os modelos que podem ser utilizados para a garantia da 
qualidade. Esses processos incluem garantia da qualidade de processos e 
garantia da qualidade de produtos, verificação e validação. Um dos processos 
é o modelo de qualidade de software em U, que será descrito a seguir.
Modelo de qualidade de software em U
As fases do modelo de qualidade de software podem ser organizadas em um 
formato de U, sendo, nesse caso, o modelo de qualidade de software chamado 
de modelo U. Nesse modelo, as fases são executadas sequencialmente. O 
objetivo é garantir que durante o ciclo de desenvolvimento de software sejam 
Garantias da qualidade de software2
produzidos efetivamente todos os produtos previstos na metodologia empregada 
e que o software entregue esteja de acordo com o requisito esperado.
Esse modelo considera dois tipos de testes de software: testes de verificação 
e testes de validação. Os testes de verificação validam o processo de engenha-
ria de software, e os testes de validação garantem a qualidade do produto de 
software. Analisando a Figura 1, podemos verificar a divisão das etapas do 
modelo U conforme esses dois tipos de testes. As etapas que compreendem 
o modelo U são as seguintes:
Testes de verificação:
  Verificação do modelo de negócios — aqui, os testes verificam se 
foram levantadas informações suficientes sobre o modelo de negócios 
do cliente e como essas informações foram levantadas.
  Verificação da especificação de requisitos — aqui, os testes verificam 
se a partir do modelo de negócio do cliente foram definidos requisitos 
compatíveis, que vão agregar valor ao cliente por meio do produto de 
software.
  Verificação daanálise e da modelagem — nessa etapa é verificado se 
a modelagem do sistema atende ao especificado nos requisitos e como 
essa modelagem é feita.
  Verificação da implementação — aqui se inicia a etapa de implemen-
tação; é verificada a estrutura para realização da implementação do 
sistema e o processo que será seguido para a implementação.
Testes de validação:
  Validação da unidade especificada ou modificada — nessa etapa é 
validada uma pequena unidade ou um componente de software que foi 
desenvolvido ou modificado.
  Validação da integração da unidade especificada ou modificada 
— nessa etapa é validada a integração dessa pequena unidade, ou 
componente de software, que foi desenvolvida ou modificada com o 
restante do sistema ou com sistemas externos, conforme a necessidade.
  Validação do sistema especificado ou modificado — aqui é realizada 
a validação do sistema como um todo, de suas funcionalidades imple-
mentadas e seus requisitos.
  Validação da disponibilização da solução — nessa etapa, o software 
já foi entregue ao cliente por meio de sua implementação; aqui é acom-
panhado se a implementação foi feita de forma correta e se o software 
3Garantias da qualidade de software
apresenta no cliente o mesmo comportamento que apresentou no am-
biente de testes.
Figura 1. Modelo de processo de qualidade de software em U.
Fonte: Adaptada de Bartie (2002).
5
Implementação
Verificação
da 
implementação
3
Análise e
modelagem
Verificação,
análise e
modelagem
5
Unidade
especificada ou
modificada
Validação
da
unidade
6
Integração
especificada
ou modificada
Validação
da
integração
7
Sistema
especificado ou
modificado
Validação
da
integração
8
Disponibilização
da
solução
Validação
do
aceite
1
Modelo
de
negócios
Verificação
de
negócios
2
Especificação
de
requisitos
Verificação
de
requisitos
TESTE DE VERIFICAÇÃO TESTES DE VALIDAÇÃO
Clientes
patrocinadores
usuários
Testes de verificação
O processo de desenvolvimento de software considera duas etapas principais, 
sendo elas: planejamento, em que são coletadas as informações e é planejada a 
arquitetura do software, e desenvolvimento, em que o sistema é de fato desen-
volvido. Os testes de verifi cação são realizados na etapa de planejamento e têm 
como objetivo avaliar se a documentação e o processo utilizado nessa etapa 
estão sendo feitos de forma correta. Nesse momento, não existem componentes 
tecnológicos, mas, sim, documentos que especifi cam o comportamento do 
software a ser construído. 
Os testes de verificação são aplicados de acordo com o estágio de desen-
volvimento. São realizados testes:
  na etapa de levantamento das necessidades do cliente e das caracterís-
ticas específicas para o software;
Garantias da qualidade de software4
  na etapa de identificação de requisitos funcionais e não funcionais do 
software;
  na etapa de definição do modelo de arquitetura e da solução tecnológica;
  na etapa de construção do software.
Testes de validação
Os testes de validação são um processo formal de avaliação de software e 
podem ser aplicados em componentes isolados, em módulos ou em funciona-
lidades já implementadas no sistema, ou mesmo no sistema como um todo. O 
objetivo desses testes é avaliar a conformidade do software com os requisitos 
especifi cados nas etapas iniciais do projeto. A principal característica desses 
testes é a necessidade de o software já estar em execução para ser testado 
devidamente. Diversas são as categorias de testes que podem ser aplicados 
durante o processo de desenvolvimento de software, sendo que as atividades de 
planejamento, modelagem, execução e conferência dos testes deverão ocorrer 
em paralelo às atividades de construção do software.
As validações serão aplicadas respeitando-se os estágios de desenvolvi-
mento. São realizados:
  testes em componentes executáveis;
  testes de interface entre componentes;
  testes em sistemas ou módulos completos;
  aceite de um sistema ou módulo pelo cliente.
Testes de verificação e testes de validação fazem parte do modelo U de 
qualidade, sendo que cada um desses tipos de teste compreende diversas 
atividades que precisam ser executadas, visando a garantir a qualidade do 
software. Na próxima seção, vamos analisar algumas das técnicas de garantia 
de qualidade de software, tanto de verificação quanto de validação.
Análise das garantias de qualidade de software
O processo de garantia da qualidade considera um olhar detalhado para a qua-
lidade tanto do processo quanto do produto. No processo, podemos quantifi car 
a sua qualidade por meio de métricas e, nos produtos, por meio de técnicas de 
verifi cação e validação. Todo esse processo de garantia da qualidade pode ser 
5Garantias da qualidade de software
avaliado, por exemplo, pela normativa ISO 9000, por auditorias, por inspeções 
formais ou por testes de software, conforme Campos ([2019]).
A área de garantia da qualidade tem alguns papéis fundamentais, conforme 
aponta Bastos et al. (2007):
  ajuda a estabelecer processos;
  determina programas de medida para avaliar processos;
  identifica fraquezas de medida para avaliar processos;
  é uma responsabilidade de gerenciamento;
  está relacionada com todos os produtos que serão gerados por um 
processo;
  avalia se o controle de qualidade está funcionando.
Conforme citado, uma das principais formas de garantia da qualidade é 
por meio de auditorias. Vamos analisar algumas das principais auditorias que 
podem ser feitas em processos de desenvolvimento de software, considerando 
os cenários em que cada uma pode ser aplicada.
A normativa ISO 9000 é utilizada para a garantia da qualidade de processos 
nos mais diversos aspectos. Empresas de todos os segmentos utilizam a ISO 
9000, inclusive como estratégia de marketing para seus produtos. Essa norma 
teve origem na norma britânica BS 570, publicada em 1979 pelo SBI (British 
Standards Institute), baseada em padrões militares. Em 1987, a norma foi 
revisada, mudando seu foco de exclusivamente empresas de manufatura para 
outras empresas prestadoras de serviços. No ano seguinte, o documento foi 
aceito pela ISO como padrão mundial.
A ISO 9000 é um conjunto de normas genéricas que serve a qualquer 
organização, de qualquer ramo de atividade, que queira realizar o controle 
de qualidade de seus produtos e serviços. Essa norma é mais conhecida pela 
sua versão 9001. A ISO 9001 descreve exigências para o sistema de gerência 
de qualidade da empresa. A qualidade de produtos e serviços não é estabele-
cida pela norma, mas, sim, pela própria empresa e pelas exigências de seus 
clientes. A norma ISO 9001 define processos que descrevem como a empresa 
deve realizar determinadas atividades (ASSOCIAÇÃO BRASILEIRA DE 
NORMAS TÉCNICAS, 2015). Os documentos que definem os processos são 
chamados pela ISO 9000 de procedimentos.
Garantias da qualidade de software6
Uma empresa que tem ISO 9001 para os seus processos terá, por exemplo, um pro-
cedimento que define como a telefonista deve atender ao telefone, isto é, qual frase 
deve ser dita ao receber uma ligação.
Já o CMM e o CMMI são dois dos principais modelos para melhoria de 
processos especificamente para software, criados pelo Software Engineering 
Institute — SEI. CMM é o acrônimo de capability maturity model ou modelo 
de capacidade de maturidade. Por esse modelo ser focado especificamente em 
software, ele não avalia outras áreas da empresa, como recursos humanos ou 
setor financeiro, conforme lecionam Koscianski e Soares (2007).
O CMM busca que as empresas conheçam e melhorem os seus processos 
de desenvolvimento de software com a implementação de práticas bem de-
finidas. Ele define uma escala para a maturidade da empresa, que se divide 
em cinco passos. Cada nível do CMM define áreas-chave que identificam um 
conjunto de objetivos que a empresa precisa cumprir para atingir esse nível 
de maturidade. Os níveis são:
1. Inicial.
2. Gerenciado.
3. Definido.
4. Gerenciado quantitativamente.5. Otimizado.
No nível 1, nenhum processo está definido, e, no nível 5, todos os processos 
estão definidos, são seguidos e estão apenas sendo otimizados constantemente, 
conforme lecionam Koscianski e Soares (2007).
Com a evolução do CMM, foram criados modelo semelhantes para diversas 
áreas das empresas, por exemplo: P-CMM para gestão de recursos humanos, 
SA-CMM para aquisição de software, SE-CMM para engenharia de sistemas. 
Para integrar todos esses modelos, surgiu o CMMI, ou capability maturity 
model integration. O CMMI mantém os mesmos cinco níveis do CMMI, 
contudo, amplia as áreas de foco de cada nível, exceto o nível 1, que não tem 
objetivos específicos, por ser a ausência de processos. As áreas definidas para 
cada nível do CMMI são mostradas nos Quadro 1.
7Garantias da qualidade de software
 Fonte: Adaptado de Koscianski e Soares (2007). 
Nível de maturidade 2 — gerenciado
  Gerência de requisitos
  Planejamento do projeto
  Gerência e controle do projeto
  Gerência e acordos com fornecedores
  Medição e análise
  Garantia da qualidade do processo e do produto
  Gerencia de configuração
Nível de maturidade 3 — definido
  Desenvolvimento de requisitos
  Solução técnica
  Integração do produto
  Verificação
  Validação
  Foco no processo organizacional
  Treinamento organizacional
  Gerência de projeto integrada
  Gerência de risco
  Análise de decisão e resolução
  Desempenho no processo organizacional
  Definição do processo organizacional
Nível de maturidade 4 — gerenciado quantitativamente
  Desempenho do processo organizacional
  Gerência quantitativa do projeto
Nível de maturidade 5 — otimizado
  Inovação e implementação na organização
  Análise e resolução de causas
 Quadro 1. Níveis de maturidade e processos do modelo MPS.BR 
Garantias da qualidade de software8
Por sua vez, o modelo MPS.BR, um acrônimo de “melhoria de processo de 
software brasileiro”, teve seu desenvolvimento iniciado no ano de 2003 pelas 
instituições SOFTEX, Riosoft, COPPE/UFRG, CESAR, CenPRA e CELE-
PAR. Esse modelo tem foco em empresas de micro, pequeno e médio porte e 
objetiva ser um modelo de qualidade com um custo inferior ao modelo CMMI. 
Esse modelo foi criado para adequar os processos de engenharia de software 
para a realidade brasileira, baseando-se nas abordagens internacionais para 
avaliação e melhoria de processos de software, conforme abordam Koscianski 
e Soares (2007). As bases do modelo MPS.BR são as normas ISO/IEC 12207, 
ISO/IEC 15504 e o CMMI. Esse modelo se divide em três componentes, sendo 
eles: modelo de referência (MR-MPS), método de avaliação (MA-MPS) e 
modelo de negócios (MN-MPS). Ele classifica as empresas de acordo com sete 
níveis de maturidade e, assim como o CMMI, também estabelece objetivos 
para cada nível. Os níveis estipulados para o MPS.BR são os seguintes:
a) Em otimização.
b) Gerenciado quantitativamente.
c) Definido.
d) Largamente definido.
e) Parcialmente definido.
f) Gerenciado.
g) Parcialmente gerenciado.
Nesse modelo, o nível A é o nível mais avançado, que considera os processos 
sendo executados e apenas em etapa de inovação e otimização, e o nível G 
é o início da organização dos processos da empresa, conforme Koscianski e 
Soares (2007). O Quadro 2 demonstra os níveis de maturidade e os processos 
gerenciados por cada nível do modelo MPS.BR.
9Garantias da qualidade de software
 Fonte: Adaptado de Koscianski e Soares (2007). 
A
  Inovação e implantação na organização
  Análise de causas e resolução
B
  Desempenho do processo organizacional
  Gerência quantitativa do projeto
C
  Análise de decisão e resolução
  Gerência de riscos
D
  Desenvolvimento de requisitos
  Solução técnica
  Integração de produto
  Instalação de produto
  Liberação de produto
  Verificação
  Validação
E
  Treinamento
  Avaliação e melhoria do processo organizacional
  Definição do processo organizacional
  Adaptação do processo para gerência do projeto
F
  Medição
  Gerência de configuração
  Aquisição
  Garantia da qualidade
G
  Gerência de requisitos
  Gerência de projetos
 Quadro 2. Níveis de maturidade e processos do modelo MPS.BR 
Outra técnica de garantia de qualidade de software que tem sua utilização 
recomendada é a organização dos processos de testes de software. Os testes são 
Garantias da qualidade de software10
uma medida de controle de qualidade, e a organização e o acompanhamento 
do processo de testes são garantia da qualidade do software. O principal 
documento que norteia a organização do processo de testes e é utilizado para 
monitorar se os testes estão sendo realizados de acordo com o planejado é 
um documento chamado de plano de testes. De acordo com a International 
Software Testing Qualifications Board (ISTQB), em seu glossário de termos, 
o plano de testes é a “documentação descrevendo os objetivos do teste a serem 
alcançados, os meios para realizá-lo, e o cronograma para atingi-lo, organizados 
para coordenar as atividades de teste” (ISTQB, 2018, p. 22).
O plano de teste não é um documento estático; ele pode ser modificado 
durante todo o ciclo de vida do produto, caso novas necessidades sejam identi-
ficadas. O feedback de cada atividade do ciclo de vida pode ser utilizado como 
parâmetro para incluir ou remover itens do plano de testes. O planejamento 
dos testes de um projeto pode ser feito em um plano de teste principal e em 
planos de teste separados para cada nível de teste.
Por exemplo, cria-se um plano de testes para os testes de sistema, que serão feitos 
logo após a conclusão do desenvolvimento da primeira funcionalidade, e outro plano 
de testes para o teste de aceitação, que será feito juntamente com o cliente ou repre-
sentante dele, conforme exemplifica o ISTQB (2018).
O plano de testes é personalizável conforme as necessidades de cada em-
presa, mas, em geral, conforme aponta o ISTQB (2018), ele deve:
  determinar o escopo, os objetivos e os riscos do teste; 
  definir a abordagem geral do teste;
  integrar e coordenar as atividades de teste nas atividades do ciclo de 
vida do software;
  tomar decisões sobre o que testar, as pessoas e outros recursos necessá-
rios para realizar as várias atividades de teste e como essas atividades 
serão realizadas;
  programar as atividades de análise, projeto, implementação, execução e 
avaliação de testes, em datas específicas (p. ex., desenvolvimento sequen-
cial) ou no contexto de cada iteração (p. ex., desenvolvimento iterativo);
11Garantias da qualidade de software
  selecionar as métricas para monitoramento e controle de testes;
  orçar as atividades de teste;
  determinar o nível de detalhes e a estrutura da documentação de teste 
(p. ex., fornecendo modelos ou exemplos de documentos). 
O conteúdo dos planos de teste varia e pode se estender além dos tópicos 
identificados acima. Uma amostragem de planos de teste pode ser encontrada 
nos documentos do padrão ISO (ISO/IEC/IEEE 29119-3).
Métodos de garantia de qualidade de software
Diversas são as estratégias que podem ser utilizadas para a garantia da qua-
lidade de software; algumas foram descritas na seção anterior. Nesta seção, 
essas estratégias são apresentadas com uma abordagem mais aplicada. Como 
se preparar para uma auditoria? Como estruturar um plano de testes?
Auditoria ISO
A auditoria é o momento de verifi car se os processos que foram defi nidos 
para a empresa estão sendo cumpridos. É por meio da auditoria que as em-
presas recebem o almejado selo ISO 9001, e é também por meio dela que, 
periodicamente, as empresas renovam esse selo. Contudo, para obter êxito nas 
auditorias, é necessário saber como elas funcionam e executar alguns passos 
importantes, os quais serão descritos a seguir, com base em Oliveira (2018).
O primeiro passo para se preparar para uma auditoria ISO é estudar as 
normas, os padrões definidos pela sua empresa. Toda a empresa que almeja 
uma certificação ISO obrigatoriamente tem seus procedimentosdefinidos pelo 
SGQ — Sistema Gerenciador de Qualidade. O profissional que vai acompanhar 
a auditoria precisa conhecer esses processos.
Além do responsável pela qualidade da empresa, os demais colaboradores 
precisam também estar preparados para a auditoria. Dessa forma, é necessário 
preparar a equipe, apresentar a todos os procedimentos, uma vez que o auditor 
poderá conversar com qualquer pessoa para confirmar se os processos são 
executados conforme o determinado.
Além disso, a organização é fundamental para o processo de auditoria. O 
responsável pela qualidade da empresa, que acompanha a auditoria, precisa 
saber onde estão arquivados todos os documentos que são utilizados diaria-
mente e que constam nos procedimentos. É importante que todas as evidências 
Garantias da qualidade de software12
de que os processos definidos são cumpridos sejam apresentadas de forma 
organizada para o auditor.
Para garantir que nenhuma surpresa acontecerá quando a auditoria oficial 
com a certificadora da ISO acontecer, é aconselhável a realização de uma 
auditoria interna. Na auditoria interna, será possível para a empresa identifi-
car pontos fracos que podem ser melhorados para a auditoria externa. Além 
disso, a auditoria interna aumenta a confiança da equipe, o que faz com que, 
na auditoria externa, a equipe esteja tranquila e não cause transtornos apenas 
por nervosismo.
Segundo Oliveira (2018), uma auditoria ISO é constituída basicamente por:
  Reunião de abertura — em que o responsável pela qualidade da empresa 
e o auditor se reúnem pela primeira vez e é definido o cronograma da 
auditoria.
  Auditoria dos processos — nessa etapa, é feita a análise dos procedi-
mentos, dos documentos que comprovam a sua execução e, quando 
necessário, ocorre uma conversa com os profissionais da empresa, para 
garantir que o processo está sendo executado corretamente. 
  Reunião de conclusão — é o momento em que o auditor analisa a 
auditoria junto com todos os gestores da empresa envolvida e faz re-
comendações com base no resultado da auditoria.
Preparando seu plano de testes
Agora, vamos analisar cada parte do plano de testes e discutir como preencher 
esse plano e como identifi car as informações que devem constar em cada parte.
  Determinar o escopo, os objetivos e os riscos do teste: o escopo e os 
objetivos do teste dizem respeito a quais funcionalidades do sistema 
serão testadas. Os riscos dizem respeito a situações que podem impedir 
a realização dos testes. Por exemplo: para testar o sistema de uma ope-
radora telefônica, podem ser necessários dados de números de telefones 
válidos para entrada de dados no sistema; entretanto, a operadora pode 
atrasar a disponibilidade desses dados, e o teste pode atrasar; ou então 
a equipe pode ter um limite mínimo de colaboradores, e alguém pode 
pedir demissão durante o projeto, e, por isso, as demandas da equipe 
acabam atrasando.
  Definir a abordagem geral do teste: quais tipos e níveis de testes serão 
empregados no projeto? Os testes serão manuais ou automatizados? 
13Garantias da qualidade de software
Essas perguntas precisam ser definidas no plano de testes; é necessário 
especificar se a equipe vai realizar teste unitário, teste funcional, teste 
de performance, teste de segurança, entre outros. Essas definições são 
de extrema importância para a organização do ambiente de desenvol-
vimento e do cronograma.
  Integrar e coordenar as atividades de teste nas atividades do ciclo de 
vida do software: em que momento do ciclo de desenvolvimento os 
testes serão iniciados? Será possível iniciar a análise de testes junto 
com a análise do sistema? 
  Tomar decisões sobre o que testar, as pessoas e outros recursos neces-
sários para realizar as várias atividades de teste e como essas atividades 
serão realizadas: de acordo com o escopo que foi definido para o pro-
jeto, toda a funcionalidade será testada ou apenas a parte fundamental 
dela? O projeto dispõe de recursos humanos e financeiros para testar 
a funcionalidade por completo?
  Programar as atividades de análise, projeto, implementação, execução 
e avaliação de testes, em datas específicas (p. ex., em desenvolvimento 
sequencial) ou no contexto de cada iteração (p. ex., no desenvolvimento 
iterativo): nessa etapa, define-se como o projeto de testes será estrutu-
rado, em que momento será feita a análise de testes e de quanto tempo 
se dispõe para isso? Em que momento será feita a implementação dos 
testes e quanto tempo se dispõe para isso?
  Selecionar as métricas para monitoramento e controle de testes: qual é 
o parâmetro para que um projeto de testes seja considerado concluído 
com êxito? 
  Orçar as atividades de teste: qual será o custo do projeto para cumprir 
com o cronograma estabelecido e atingir todo o escopo de testes?
  Determinar o nível de detalhes e a estrutura da documentação de teste 
(p. ex., fornecendo modelos ou exemplos de documentos): serão criados 
casos de testes? As falhas serão reportadas em alguma ferramenta?
Cada uma dessas etapas é fundamental para o projeto e pode ser adaptada, 
dependendo das necessidades da equipe. Em síntese, um plano de testes 
precisa conter, obrigatoriamente, o escopo do projeto, os tipos de testes que 
serão executados, o cronograma, o orçamento disponível, as ferramentas que 
serão utilizadas e a definição dos documentos entregáveis que serão gerados 
ao final do projeto.
Garantias da qualidade de software14
ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS (ABNT). NBR ISO 9001: sistemas de 
gestão da qualidade: requisitos. Rio de Janeiro, 2015. 
BARTIE, A. Garantia da qualidade de software. Rio de Janeiro: Elsevier, 2002. 
BASTOS, A. et al. Base de conhecimento em testes de software. 2. ed. São Paulo: Martins 
Fontes, 2007. 
CAMPOS, F. M. Qualidade, qualidade de software e garantia da qualidade de software são 
mesma coisa? [2019]. Disponível em: <http://www.linhadecodigo.com.br/artigo/1712/
qualidade-qualidade-de-software-e-garantia-da-qualidade-de-software-sao-as-mes-
mas-coisas.aspx#ixzz5bar4W0yD>. Acesso em: 23 jan. 2019. 
INTERNATIONAL SOFTWARE TESTING QUALIFICATIONS BOARD (ISTQB). Glossário de 
termos de teste: CTFL foundation level: versão 3.2br. 2018. Disponível em: <https://www.
bstqb.org.br/uploads/glossario/glossario_ctfl_3.2br.pdf>. Acesso em: 23 jan. 2019.
KOSCIANSKI, A.; SOARES, M. S. Qualidade de software: aprenda as metodologias e técnicas 
mais modernas para desenvolvimento de software. 2. ed. São Paulo: Novatec, 2007.
OLIVEIRA, G. Como se preparar para uma auditoria ISO e o que esperar dela. 2018. Dispo-
nível em: <https://blog.softexpert.com/como-se-preparar-para-uma-auditoria-iso/>. 
Acesso em: 23 jan. 2019.
Leitura recomendada
INTERNATIONAL SOFTWARE TESTING QUALIFICATIONS BOARD (ISTQB). Certified tester: 
CTFL foundation level syllabus: 3.2. 2018. Disponível em: <https://www.bstqb.org.br/
uploads/syllabus/syllabus_ctfl_2018br.pdf>. Acesso em: 23 jan. 2019.
15Garantias da qualidade de software
Conteúdo:
Dica do professor
Diversas são as estratégias de garantia da qualidade de software. Todas elas têm um papel 
fundamental e devem ser usadas com sabedoria.
Veja na Dica do Professor, o modelo U e quando aplicar ISO, CMMI e MPS.BR.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
https://fast.player.liquidplatform.com/pApiv2/embed/cee29914fad5b594d8f5918df1e801fd/197195fa4a801b04d3da5f80b556a86d
Exercícios
1) Júnior é um profissional que atua com garantia da qualidade de software em uma empresa 
multinacional. Ao entrar na empresa, precisou aprender diversas coisas, uma vez que um 
profissional de garantia da qualidade interage com todos os demais profissionais da equipe, 
visando a garantir a qualidade do processo de ponta a ponta. Analise as alternativas a seguir 
e assinale qual delas representa atividades que são feitas pelo profissional de garantia de 
qualidade.
A) Realizar a reunião de requisitos, garantindo que o software será implementadode acordo com 
o que o cliente solicitou.
B) Realizar diariamente a inspeção de código-fonte para garantir que os padrões de projetos 
estão sendo seguidos pela equipe de desenvolvimento.
C) Realizar a certificação ISO 9001 da empresa por meio de critérios predefinidos.
D) Avaliar o processo utilizado pela empresa e propor melhorias.
E) Definir o processo de desenvolvimento de sistemas que será utilizado pela empresa.
2) Carlos trabalha com garantia da qualidade em uma empresa desenvolvedora de software e 
tem uma preocupação. Recorrentemente os clientes estão recebendo softwares com 
problemas, isto é, com situações em que o sistema para de funcionar ou tem um 
funcionamento inesperado. Dessa forma, Carlos precisa reforçar as atividades de garantia da 
qualidade. Assinale a alternativa que representa a medida que Carlos deveria adotar.
A) Realizar mais testes de validação, porque é neles que são encontrados os erros.
B) Revisitar o processo de testes de validação para analisar se está sendo feito o tipo de teste 
correto e na quantidade correta.
C) Corrigir os testes de verificação para localizar os defeitos antes que eles cheguem até o 
cliente.
D) Aplicar a norma ISO 9001 nos processos de desenvolvimento de software da empresa.
E) Aplicar o modelo CMMI nos processos de desenvolvimento de software da empresa.
3) A empresa Xpto soluções em tecnologia está participando de um edital público que exige 
que tenha todos os seus processos documentados por algum modelo ou normativa. Sobre 
este cenário, assinale a alternativa que representa a solução para as necessidades desta 
empresa.
A) A ISO 9000 não pode ser utilizada porque a Xpto é uma empresa de desenvolvimento de 
software.
B) Aplicar a normativa ISO 9000 nos processos de desenvolvimento de sistemas da Xpto.
C) Aplicar a norma ISO 9000 nos processos gerenciais da empresa, e os modelos CMMI ou 
MPS.BR no processo de desenvolvimento de sistemas.
D) Aplicar um processo definido de controle de qualidade de software, como, por exemplo, 
métodos ágeis e então buscar uma certificação CMMI.
E) Por ser uma empresa do segmento de desenvolvimento de sistemas e não ter sido 
especificada como uma empresa multinacional ou com obrigatoriedade de CMMI, utilizar 
MPS.BR.
4) O CMMI é um modelo de maturidade mundialmente reconhecido, que por vezes é utilizado 
como requisito em licitações de projetos de software. Para uma empresa, ter uma 
certificação CMMI aumenta a confiança dos seus clientes e pode trazer benefícios a curto e 
longo prazo. Sobre o modelo CMMI, analise as afirmações a seguir e assinale a alternativa 
correta.
A) Foi proposto inicialmente sob o nome de CMM e descrevia apenas processos de 
desenvolvimento do software.
B) Pode ser aplicado a empresas dos mais diversos segmentos.
C) Não é reconhecido no Brasil, por isso utiliza-se aqui o modelo MPS.BR.
D) Considera os níveis de maturidade inicial, gerenciado, definido gerencialmente, gerenciado 
quantitativamente, em otimização.
E) No nível 1, a empresa precisa ter gerência de requisitos e planejamento de projeto bem 
definidos.
A empresa AZTech está bastante preocupada com os seus processos, e por isso busca uma 
certificação de maturidade por meio do modelo CMMI. Esta empresa tem os seus requisitos 
5) 
completamente gerenciados, realiza verificação e validação nos seus produtos de forma 
organizacional, treina seus colaboradores, realiza gerência de riscos, entre outras 
características às quais dispensa muita atenção, entretanto ainda não consegue avaliar de 
forma estatística os seus processos. Por essa descrição, em qual nível do CMMI a empresa 
poderia ser encaixada?
A) Nível 1.
B) Nível 2.
C) Nível 3.
D) Nível 4.
E) Nível 5.
Na prática
Garantir a qualidade do software entregue para os clientes é uma tarefa muito complexa, que 
envolve diversos processos. A área de garantia da qualidade de software abrange todo o segmento 
de qualidade, processos e produtos, e tem por objetivo principal verificar se o que foi definido em 
termos de processos, tanto para verificação quanto para validação, está sendo cumprido.
Pedro, como profissional que atua com garantia da qualidade de software, sabe que um dos 
documentos que é aliado do profissional de garantia da qualidade é o plano de testes, uma vez que 
com ele se torna possível monitorar, por exemplo, se está sendo destinado o tempo correto para o 
desenvolvimento dos testes.
Veja Na Prática o plano desenvolvido pela equipe de Pedro.
Aponte a câmera para o 
código e acesse o link do 
conteúdo ou clique no 
código para acessar.
https://statics-marketplace.plataforma.grupoa.education/sagah/5117b796-c5e3-4a70-84e1-e7628644206d/08ea0fb1-79d4-4ca0-95b7-6fc94a442a33.jpg
Saiba +
Para ampliar o seu conhecimento a respeito desse assunto, veja abaixo as sugestões do professor:
Qualidade, qualidade de software e garantia da qualidade de 
software são as mesmas coisas?
Neste link , você acessa um artigo que apresenta a diferenciação entre garantia e controle da 
qualidade.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
CMMI e MPS.BR: um estudo comparativo
Este artigo relata a importância da qualidade em processos de desenvolvimento de Software, e 
descreve a respeito de dois modelos de maturidade de processo de software: o CMMI (Capability 
Maturity Model Integration) e o MPS (Melhoria de Processo de Software).
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
Entenda CMMI e CMM em menos de 10min
Neste vídeo, você verá um resumo dos modelos de maturidade CMM e CMMI.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
http://www.linhadecodigo.com.br/artigo/1712/qualidade-qualidade-de-software-e-garantia-da-qualidade-de-software-sao-as-mesmas-coisas.aspx
https://docplayer.com.br/56422799-Cmmi-e-mps-br-um-estudo-comparativo-juliana-de-fatima-franciscani-1-ligia-cristina-pestili-2.html
https://www.youtube.com/embed/lFrsy6sPVic
MPS.BR
Neste vídeo, você verá o modelo MPS.BR e algumas questões respondidas sobre este modelo.
Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
https://www.youtube.com/embed/U5VHH1bbUb0

Continue navegando