Buscar

GRA0256 QUALIDADE E TESTE DE SOFTWARE GR2952-212-9 - 202120 ead-17760 01

Prévia do material em texto

25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&PA… 1/37
QUALIDADE EQUALIDADE E 
TESTE DE SOFTWARETESTE DE SOFTWARE
Me. Roque Mait ino Neto
IN IC IAR
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&PA… 2/37
introdução
Introdução
Aqui estamos em nosso primeiro encontro!  Como de costume nestas ocasiões,
na unidade que agora iniciamos, serão desenvolvidos temas introdutórios
relacionados à qualidade de um produto de software, incluindo conceitos e
processos a�ns. Devido o caráter estritamente objetivo da qualidade,
deveremos abordar também seus padrões mais importantes e seus meios de
gerenciamento e manutenção. Por �m trataremos das métricas aplicadas à
qualidade, como meios de avaliar sua efetividade no processo de criação de um
software.
Esperamos que o domínio deste conteúdo funcione como boa base para seu
aprofundamento nos assuntos relacionados ao tema e que lhe sirva como meio
de alcançar seu sucesso pro�ssional. Caro aluno, prezada aluna, aceite nossas
boas-vindas ao curso de Qualidade e Teste de Software!
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&PA… 3/37
É provável que você já tenha ouvido elogios bastante calorosos dirigidos a
produtos mais antigos, construídos há algumas décadas e que, por algum
motivo, ainda estão em operação. Tomemos como exemplo uma máquina de
lavar roupas: seu material de construção resistente, seus comandos mais
simples e a sensação de robustez que se associa à suas formas são motivos
su�cientes para que alguns atribuam a ela maior qualidade do que atribuem às
atuais. Hoje, no entanto, sabemos que fatores como consumo de energia
elétrica, oferta de funções mais convenientes, baixo custo de manutenção e
eletrônica con�ável são bastante importantes na composição daquilo que se
considera uma boa máquina de lavar roupas.
Justamente pela transitoriedade do que se entende como um produto de
qualidade (o que é bom hoje pode não ser bom amanhã) e pela subjetividade
envolvida nas avaliações (minha opinião sobre um produto pode não ser a
mesma que a sua) é que se procura padronizar conceitos, métodos e formas de
tópico 1
tópico 1
Fundamentos da Qualidade deFundamentos da Qualidade de
SoftwareSoftware
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&PA… 4/37
avaliação da qualidade, sempre visando dar feição objetiva àquilo que pode
sofrer tanta in�uência de fatores subjetivos.
Com qualidade de software não é diferente. Pessoas e organizações que se
importam com a excelência dos produtos que fabricam e/ou usam devem se
orientar por parâmetros objetivos em suas comparações e medições de
qualidade, o que certamente mitigará a interferência de fatores meramente
subjetivos na difícil tarefa de imprimir o rótulo de “Produto de Qualidade” em
um software.
Antes de abordarmos algumas das boas de�nições de qualidade de software
que a literatura nos oferece, vale a colocação, desde já, da seguinte questão: o
que é um software de qualidade? Sha�er (2013) considera esta uma pergunta
difícil de ser respondida de uma única maneira. Uma possível medida seria a
adequação do produto ao seu propósito, o que signi�ca que o software funciona
de acordo com o que foi projetado para fazer.
A expressão "adequação ao propósito" pressupõe a existência de um registro da
descrição das funcionalidades do produto. No caso de um software, seu
propósito está re�etido em suas funções, que, por sua vez, estão descritas na
especi�cação de requisitos.
Uma outra medida é a qualidade do processo que gerou o software, item que
abordaremos com mais detalhes adiante. Numa relação direta entre valores,
muitos creem que um bom procedimento de criação é capaz de gerar um bom
produto.  Por �m, pessoas com raciocínio voltado à Engenharia de Software
podem considerar que ter qualidade é simplesmente estar em conformidade
com as especi�cações previamente de�nidas.
Entender qualidade, seus padrões e suas medições são os desa�os centrais
deste nosso encontro e começaremos a superá-los pela abordagem de alguns
conceitos básicos relacionados ao tema.
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&PA… 5/37
1.1 Qualidade do produto de software
De�nir qualidade de um produto de software de forma universal e irretocável e
ainda alcançar unanimidade na comunidade de observadores é tarefa difícil.
 Muitos autores lançaram conceitos que, com o passar do tempo, tornaram-se
superados ou mostraram-se incompletos. De acordo com IEEE (2014), autores e
organizações já de�niram, de formas diferentes, o termo qualidade.
 “Conformidade com os requisitos” e “atingimento de excelentes níveis de
adequação para o uso” foram de�nições comuns no passado. Uma grande
desenvolvedora relacionou qualidade como um valor de mercado, em que “o
cliente é o árbitro �nal”.
Mais recentemente a qualidade foi de�nida como a capacidade do produto de
satisfazer requisitos explícitos e implícitos, mediante condições especí�cas e
como o grau em que um produto de software atende aos requisitos
estabelecidos, desde que tais requisitos representem com precisão as
necessidades, desejos e expectativas das partes interessadas (IEEE, 2014).
De qualquer forma, já podemos extrair dois fatos deste contexto: (i) as
de�nições de qualidade baseiam-se na premissa da conformidade com os
requisitos.  Em outras palavras, a qualidade é dependente das necessidades que
um software deve atender a �m de resolver algum problema no mundo real e (ii)
qualidade não signi�ca perfeição, pois sempre será possível observar itens a
serem melhorados em algo que se reconhece como de boa qualidade.
Já que a perfeição em nossos produtos não é, via de regra, um estado atingível,
uma boa ideia para se atingir boa qualidade é o estabelecimento de níveis
aceitáveis de excelência em características do nosso software.  Embora possam
ser desdobradas em outros tantos, quesitos como a corretude, a e�ciência e a
usabilidade são tidos como indicadores amplamente aceitos da qualidade do
produto. Vejamos alguns deles (MAITINO NETO, 2016):
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&PA… 6/37
#PraCegoVer: Apresenta quatro setas. Cada seta é composta por uma imagem
à sua esquerda, um texto centralizado e um número à sua direita. Estão
dispostas de cima para baixo: a primeira seta possui como cor de fundo o
vermelho, na sua extremidade esquerda temos a imagem de um celular, no
centro temos a palavra corretude e à direita o número um. A segunda seta
possui tom alaranjado como cor de fundo, na sua extremidade esquerda a
imagem de uma lâmpada, no centro a palavra e�ciência e à direita o número
dois. A terceira seta tem tom verde água, na sua extremidade esquerda a
imagem de um grá�co, no centro a palavra usabilidade e à sua direita o número
três. A quarta e última seta tem tom azul escuro, na sua extremidade esquerda
a imagem de uma seta acertando o centro de um alvo, no centro a palavra
Portabilidade e à sua direita o número quatro. 
Conforme a �gura 1.1 observa-se os seguintes indicadores: Corretude, trata-se
da capacidade do software em executar suas funcionalidades conforme elas
foram de�nidas. Se pudéssemos resumir este item em uma pergunta, ela seria
próxima de: “o software faz aquilo que eu quero?”; E�ciência, relaciona-se com
o grau de adequação do programa aos recursos de hardware, tais como
processador e memória.  Com a queda no custo do hardware, este quesito tem
merecido menos atenção do que no passado,já que as máquinas podem ser
Figura 1.1 - Indicadores da qualidade do produto
Fonte: Adaptada de vectorcreator / 123RF.
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&PA… 7/37
dimensionadas com mais recursos sem a necessidade de grandes investimentos
�nanceiros. Usabilidade, este fator está relacionado com a facilidade de uso do
produto. Em outras palavras, trata-se da medida da capacidade do público-alvo
em obter valor do software por meio da sua interface; e Portabilidade, é
possível usar o produto em outra plataforma? Trata-se da medida de facilidade
em mudar o software de uma plataforma para outra. A portabilidade entre
Windows e Mac pode ser usada como exemplo.
Para que nossa noção de qualidade de um produto de software esteja
consolidada, falta-nos contato com alguns conceitos mais objetivos. Observe o
primeiro: “Qualidade é a totalidade das características de um produto de
software que lhe confere a capacidade de satisfazer necessidades implícitas e
explícitas” (ISO/IEC 9126-1, 2003, p. 17).
Observe que o autor relaciona qualidade às características do produto e à sua
capacidade de desempenhar o que se espera dele. Necessidades explícitas são
aquelas objetivamente expostas por quem demandou o produto. Por exemplo,
reflitare�ita
Qual é o real interesse de um usuário em relação a um produto de software? Quando ele
pensa em qualidade do software, em geral, ele se lembra da con�abilidade. No caso de o
produto já ser relativamente con�ável, a usabilidade é que, de fato, fará diferença. Além
disso, um produto sempre nos apresentará características visíveis e pelas quais
esperamos. Haverá também certas particularidades intrínsecas, transparentes para o
usuário, mas que comporão igualmente qualidade do produto.
Fonte: Elaborado pelo autor.
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&PA… 8/37
o cliente determina que o sistema deverá ser capaz de emitir relatório de
vendas por região e por cliente. Já as necessidades implícitas são aquelas não
ditas e que devem ser previstas pelo pro�ssional responsável pelo
processamento dos requisitos. A compatibilidade do sistema ao hardware
disponível pode ser um exemplo neste caso.
Outra de�nição importante sobre qualidade de Software “é um processo
sistemático que focaliza todas as etapas e artefatos produzidos com o objetivo
de garantir a conformidade de processos e produtos, prevenindo e eliminando
defeitos” (BARTIÉ, 2002, p. 16). Nesta de�nição o autor relaciona qualidade a um
processo e não a uma providência ou ação isolada. Esta particularidade prepara
nosso caminho para a abordagem do processo de desenvolvimento de software.
Sigamos adiante.
1.2 Qualidade do Processo de
Desenvolvimento de Software
Relacionar diretamente a qualidade do produto à qualidade do processo que o
criou é prática constante no contexto da qualidade de software. Não é
exagerada a a�rmação de que apenas um bom processo de desenvolvimento irá
gerar bons produtos, tampouco é a ideia de que assegurar a qualidade de todas
as etapas da construção de um produto irá garantir sua qualidade global.
Neste sentido, a divisão da Engenharia de Software voltada à qualidade do
produto criou uma série de providências tomadas pela equipe durante o
processo de desenvolvimento para assegurar a qualidade do seu produto, de
maneira vinculada ao processo que o cria. A estas providências foi dado o nome
de SQA (Garantia da Qualidade do Software, ou do inglês Software Quality
Assurance) e uma das suas de�nições mais objetivas é expressa como "padrão
planejado e sistemático de ações que são exigidas para garantir a qualidade do
software” (PRESSMAN, 1995, p. 733).
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&PA… 9/37
A garantia da qualidade não elege um único momento no processo de
desenvolvimento para atuar. Ao contrário, as atividades de SQA começam nas
 fases iniciais do projeto e seguem até a �nalização do software, o que nos faz
supor que a responsabilidade das equipes do projeto e demais stakeholders
 também seja extensa.
A de�nição de SQA inclui a expressão “padrão planejado e sistemático de ações”,
não é mesmo? Pois bem, vamos então às ações (MAITINO NETO, 2016).
Assegurar a qualidade de um software envolve algumas tarefas e as três das
mais importantes estão descritas na sequência (PRESSMAN, 1995):
Aplicação de métodos técnicos: as providências associadas à SQA
começam a ser aplicadas a partir da especi�cação e do projeto do
sistema. Uma especi�cação de requisitos imprecisa certamente irá
comprometer a qualidade do produto �nal. Tão logo uma especi�cação,
um protótipo ou um lançamento preliminar de um sistema tiver sido
criado, será necessário avaliar sua qualidade.
Realização de revisões técnicas formais: esta é a atividade central da
avaliação da qualidade de um produto. Uma revisão técnica formal é
um encontro previsto na SQA no qual uma equipe (de 3 a 5 pessoas,
normalmente) destacada para o trabalho concentra-se na busca por
problemas de qualidade no produto ou, mais comumente, numa parte
especí�ca dele. Elas são aplicadas em vários momentos do processo e
são também, usualmente, referenciadas como walkthrough (passo a
passo) (MAITINO NETO, 2016).
Atividades de teste de software: embora seja tema a ser abordado
adiante, vale registrar, desde já, a criticidade da atividade de teste no
contexto da qualidade. A técnica de criação de software apurada, o
talento da equipe e a precisão do método não são capazes de garantir
a ausência total de defeitos no código.
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 10/37
O teste é uma atividade desempenhada para avaliar a qualidade do produto e
para sua melhoria, por meio da identi�cação de defeitos e problemas. O teste
de software consiste na veri�cação dinâmica do comportamento de um
programa em um conjunto �nito de casos de teste, adequadamente selecionado
a partir de um número geralmente in�nito de execuções do programa (IEEE,
2014).
Nas próximas unidades trataremos de teste de software de modo mais bem
detalhado. Por ora, abordaremos padrões de qualidade.
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 11/37
atividades
atividades
Embora possa não haver aceitação universal de uma única de�nição de software de
qualidade, existem algumas medidas que são geralmente aceitas. A exatidão é uma
delas; se um programa não conseguir adicionar uma coluna de números
corretamente, por exemplo, geralmente não é considerado de alta qualidade. Em
relação às atividades que compõem a garantia da qualidade de software (SQA), analise
as a�rmações que seguem:
I – Para justi�car sua aplicação, as atividades de SQA devem focar o sistema a partir do
momento em que ele for declarado implementado.
II – O teste de software integra as atividades de SQA e só pode ser aplicado se o
programa (ou parte dele) puder ser executado.
III - Uma revisão técnica formal integra as atividades de SQA e ocorre quando uma
equipe busca não-conformidades na qualidade do produto.
É verdadeiro o que se a�rma apenas em:
a) A�rmativas I e II.
b) A�rmativas II e III.
c) A�rmativa III.
d) A�rmativa I.
e) A�rmativas II.
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 12/37
Em quais parâmetros podemos con�ar na hora de escolhermos um modelo de
qualidade? Existem instituições que criam padrões de qualidade e os atualizam
com regularidade? Há um padrão melhor que o outro? Este segundo tópico da
primeiraunidade aborda essas questões e alguns dos mais bem-conceituados
modelos de qualidade, com destaque para seus pontos fortes e aplicações.
Antes de nos debruçarmos sobre eles, vale a pena sabermos um pouco mais
sobre a organização que os cria e mantém.
A cidade de Genebra, na Suíça, abriga a sede da ISO, sigla da International
Organization for Standardization, órgão não vinculado ao governo e que, desde
1947, já publicou mais de 20.000 normas internacionais que servem como
padrão para atividades relacionadas à tecnologia, manufatura, agricultura,
saúde e outras tantas atividades humanas.
Devido a proliferação de diferentes siglas em línguas diferentes para o órgão, os
fundadores resolveram adotar ISO mundialmente, por se tratar de palavra
tópico 2
tópico 2
Padrões Relacionados comPadrões Relacionados com
Qualidade de SoftwareQualidade de Software
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 13/37
derivada do grego isos, que signi�ca igual (ISO, s.d.)
Dois dos principais padrões de qualidade utilizados mundo afora são:
2.1 ISO 9001 – Sistema de Gestão da
Qualidade
Certamente que você já conhecia a norma 9001 da ISO por nome. Trata-se de
um dos mais utilizados padrões de qualidade do mundo. Ele fornece
especi�cação para sistemas de gestão de qualidade, com vistas às demandas do
cliente em relação ao produto (SEAR, 2015).
Por ser tão conhecido e bem referenciado, sua implantação sinaliza que a
organização é capaz de fornecer produtos em consonância com os requisitos do
cliente. Embora seja aplicável no processo de software, este padrão pode ser
implantado em qualquer organização, a despeito de seu tamanho e �nalidade.
A ISO 9001:2015 (2015 indica o ano em que foi atualizada) adota uma
abordagem de processo para desenvolvimento, implementação e melhoria da
e�cácia de um sistema de gestão da qualidade, com o objetivo de aumentar a
satisfação do cliente com o produto. Ela se baseia em 7 princípios de
gerenciamento de qualidade: Foco no Cliente, Liderança, Engajamento de
Pessoas, Abordagem de Processo, Melhoria, Tomada de Decisão Baseada em
Evidências, Gestão de Relacionamento (MAITINO NETO, 2016).
2.2 ISO/IEC 90003 – Orientações para
Qualidade de Processo de Software
Se a ISO 9001 aborda aspectos gerais da qualidade, falta-nos uma norma que
forneça parâmetros para as atividades relacionadas à qualidade de software.
 Esta norma existe e é conhecida por ISO/IEC 90003:2014. Ela endereça
orientações para aplicação da ISO 9001 nos processos de aquisição,
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 14/37
fornecimento, desenvolvimento, operação e manutenção de um programa de
computador e serviços de suporte relacionados.
Sua aplicação é indicada em sentido amplo para transações de produtos de
software entre organizações. Especi�camente é usada em processos de
aquisição de produtos que darão suporte a um processo em uma empresa,
produtos relacionados à um equipamento especí�co de hardware ou produtos
relacionados à um serviço de software.
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 15/37
atividades
atividades
Em quais parâmetros podemos con�ar na hora de escolhermos um modelo de
qualidade? Existem instituições que criam padrões de qualidade e os atualizam com
regularidade? Há um padrão melhor que o outro? Considerando as características
gerais dos padrões de qualidade de software, analise as a�rmativas a seguir:
I – Um padrão de qualidade sempre deve ser criado e mantido pela desenvolvedora do
software.
II – A adoção de um padrão de qualidade pode contribuir para que a desenvolvedora
que o adotou seja reconhecida como organização preocupada com a qualidade.
III – Os padrões de qualidade disponíveis referem-se apenas à qualidade do processo,
já que a qualidade do produto pode ser padronizada apenas pela sua desenvolvedora.
É verdadeiro o que se a�rma apenas em:
a) A�rmativas I e II.
b) A�rmativas II e III.
c) A�rmativa III.
d) A�rmativa I.
e) A�rmativa II.
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 16/37
A gerência da qualidade de um software pode e deve ser entendida como um
procedimento sistêmico, idealmente, já incorporado na organização e que inclua
processos, pessoas e ferramentas dirigidas à obtenção da qualidade do
produto.
Quando tomamos como exemplos ferramentas computacionais de
gerenciamento �nanceiro ou de gerenciamento de pessoas, espera-se que tais
sistemas sejam partes integrantes da organização, alinhados com necessidades
particulares de �nanças ou de gestão de pessoas.
De acordo com Moorthy (2013), um sistema de gestão de qualidade de software
deve possuir 4 níveis: o nível 1 é composto pelo manual de qualidade da
empresa; o nível 2 refere-se aos métodos e processos usados pela equipe para
entregar suas tarefas; o nível 3 contém as linhas principais, os checklists e os
modelos, usados com bastante frequência no dia a dia e importantes na
manutenção da consistência das informações e, por �m, o nível 4 refere-se aos
tópico 3
tópico 3
Gerência de Qualidade deGerência de Qualidade de
SoftwareSoftware
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 17/37
registros e documentos usados para �ns de validação de um produto, usados
como evidências de uma atividade e úteis para referência futura. A �gura a
seguir mostra a organização dos níveis de um sistema de gestão de qualidade.
#PraCegoVer: Apresenta uma pirâmide, dividida em quatro partes, cada uma
com uma cor e uma descrição. A base da pirâmide possui cor verde com a
descrição: Registros e documentos que servem para validar que os requisitos
foram atendidos. O segundo nível da pirâmide, de baixo para cima possui a cor
azul claro com a descrição: Linhas principais, checklists e modelos. O terceiro
nível da pirâmide, de baixo para cima possui a cor azul escuro com a descrição:
Métodos e processos. O topo da pirâmide, possui a cor vermelha e a descrição:
Manual de qualidade.
Nunca é demais ressaltar que, se quisermos conferir à qualidade o lugar que lhe
é devido no processo de criação de um produto de software, então também
devemos tratá-la como a um processo, que deve permear a criação. A busca
pela qualidade deve de�nir os requisitos, os responsáveis por cada etapa, as
medições incluídas e o feedback. Em poucas linhas, o planejamento da
qualidade envolve a de�nição do produto no que se refere às suas
Figura 1.2 - Níveis de um sistema de gestão de qualidade de software
Fonte: MOORTHY (2013, p. 184).
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 18/37
características de qualidade e o planejamento dos recursos e atividades para se
obter o produto desejado.
Pois bem, um processo especí�co de gestão de software é de�nido no padrão
IEEE 12207.0-96 e inclui o processo de garantia da qualidade, mais conhecido
pela abreviatura SQA (Software Quality Assurance ou Garantia da Qualidade do
Software). Como você bem se lembra, este processo foi abordado em nosso
item 1.
Outro processo que visa conferir qualidade ao produto é o que chamamos de
Veri�cação e Validação. Para facilitar as referências ao tema, os termos
veri�cação e validação são tratados como apenas um. De acordo com IEEE
(2014), trata-se de um processo bem estruturado para avaliar os produtos de
software em todo o seu ciclo de vida, do planejamento até sua efetiva entrega.
Em resumo, retrata o esforço da equipe para garantir que a qualidade está
embutida no softwaree que ele re�ete o desejo do usuário. A Veri�cação e
Validação (V&V), como também é conhecido esse processo, está interessada
diretamente na qualidade do produto.
O grupo revisões e auditorias inclui dois principais procedimentos (MAITINO
NETO, 2016):
Revisões técnicas: o objetivo de uma revisão (ou análise) técnica é o de
avaliar um produto de software para determinar a sua adequação para
a sua utilização pretendida. O objetivo é o de identi�car discrepâncias a
partir das especi�cações e dos padrões aprovados. Os resultados
devem fornecer evidências que con�rmem (ou não) que o produto
atende às especi�cações;
Inspeções: o propósito de uma inspeção é detectar e identi�car
anomalias no software. Esta prática se diferencia das revisões em dois
aspectos: alguém que exerça cargo de gestão sobre qualquer membro
da equipe de inspeção não deverá participar desse processo, e uma
inspeção deve ser conduzida por um facilitador imparcial, treinado em
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 19/37
técnicas de inspeção. As inspeções incluem também um líder, um
responsável pelos registros da seção e um número reduzido de
inspetores, comumente de 2 a 5 pessoas.
Abordados itens fundamentais da gestão da qualidade de um software,
avançamos agora rumo aos meios de se medir o produto.
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 20/37
atividades
atividades
A Inspeção de Software é um processo formal de veri�cação do software, que pode ser
aplicado para, praticamente, todos os artefatos gerados durante o ciclo de
desenvolvimento e que tem o custo mais alto de aplicar, mas também é o que produz
o melhor resultado. Considerando conteúdo relacionado à inspeção de software,
assinale a alternativa que contém a correta caracterização deste procedimento.
a) As inspeções não preveem a escolha de um líder para o procedimento.
b) Inspeções e revisões técnicas diferenciam-se apenas pela fase do processo
em que são executadas.
c) Numa inspeção não se admite a participação de alguém que exerça cargo de
gestão sobre qualquer membro da equipe de inspeção.
d) Nas inspeções, a quantidade de participantes varia de acordo com a
quantidade de defeitos que aqui imagina que o produto tenha.
e) É durante o processo de inspeção que a quantidade de participantes da
equipe de qualidade é discutida e revista.
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 21/37
É muito difícil concebermos uma atividade desempenhada pro�ssionalmente
que não inclua maneiras de se medir o que é produzido. Essas medidas, sejam
relacionadas ao tamanho físico, à complexidade funcional ou ao desempenho,
visam assegurar algo indispensável em um ambiente produtivo: o controle.
Neste tópico você terá contato com o conceito de métrica e medição, com
algumas formas de medições de um produto de software, além de revisões e
inspeções. Com essas providências a equipe deverá garantir e manter a
qualidade de um software. Em frente!
4.1 Métrica e Medição
A medição é o processo pelo qual os números são atribuídos aos atributos de
entidades do mundo real. Na medição, atribui-se um valor numérico a uma
grandeza física. Por exemplo, quando medimos a distância entre dois pontos e
obtemos 5 metros, estamos atribuindo o valor 5 à grandeza física chamada
tópico 4
tópico 4
Métricas de Qualidade de SoftwareMétricas de Qualidade de Software
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 22/37
distância. Usaremos o termo medição tanto para descrever um processo quanto
um valor de atributo. A medição é tipicamente uma quanti�cação direta, que
envolve um único valor, ao passo que métrica é uma quanti�cação indireta, que
envolve o cálculo e o uso de mais de uma medida. Vamos a um exemplo de
métrica: considerando a medida de número de linhas de código de um
programa e a medida de número de defeitos encontrados em todo o programa,
podemos estabelecer a métrica de quantidade de defeitos por linha de código.
É desejável que as métricas sejam capazes de fornecer informação relevante
para a tomada de decisão e para a comparação de desempenhos. É necessário
que você tenha em mente um fato importante: existem métricas referenciais,
usadas normalmente de forma padronizada pelos desenvolvedores. No entanto,
uma métrica pode ser baseada no objetivo da organização e na sua necessidade
de informação para a tomada de uma decisão.
Devemos considerar também que uma métrica deve ser calculada com
facilidade, que ela tenha condições de ser repetida quantas vezes forem
necessárias, que sua unidade seja compreensível e universal e que, por �m, seu
processamento possa ser automatizado.
Imagine que dois projetos de software – com alguma similaridade funcional
entre eles – estejam em construção. Se você quiser saber qual dos dois projetos
está sendo mais produtivo, você deve realizar a medição do tamanho do projeto
e do esforço para produzi-lo. Contudo, sem uma métrica, a comparação não
seria viável, tampouco útil (MOORTHY, 2013).
Já sabemos que, feitas as medições, podemos (e devemos) utilizá-las para gerar
as métricas. Para �ns de classi�cação, algumas métricas são geradas a partir de
medidas obtidas diretamente, geralmente, por contagem do atributo observado.
Às métricas geradas damos o nome de métricas diretas. Outras métricas,
porém, são obtidas indiretamente. A elas damos o nome de métricas indiretas.
Para �ns de averiguação da qualidade de um software é comum a aplicação de
medidas em fatores que caracterizam este software. Para isso, nada mais
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 23/37
apropriado do que a busca por um modelo de qualidade consagrado para
de�nirmos as características desejáveis em um programa. O modelo de
qualidade ISO/IEC 25010:2011 estabelece um conjunto de oito características
internas e externas de um software, divididas em outras tantas
subcaracterísticas. Para facilitar a compreensão global da norma e facilitar sua
síntese, o quadro 1.1 apresenta tais características de qualidade, separadas
entre próprias do produto e próprias do uso, conforme será́ explicado na
sequência.
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 24/37
Tipo Características Subcaracterísticas
Características
do produto
Adequação
funcional
Completude funcional,
corretude funcional (acurácia)
e funcionalidade apropriada.
Usabilidade
Maturidade, disponibilidade,
tolerância à falhas e
recuperabilidade.
Usabilidade
Apropriação reconhecível,
inteligibilidade, operabilidade,
proteção contra erro do
usuário, estética de interface
com o usuário e acessibilidade.
E�ciência de
desempenho
Comportamento em relação ao
tempo, utilização de recursos,
capacidade.
Segurança
Con�dencialidade, integridade,
não repúdio, rastreabilidade de
uso e autenticidade.
Compatibilidade
Coexistência e
Interoperabilidade.
Capacidade de
Manutenção
Modularidade, reusabilidade,
analisabilidade,
modi�cabilidade, testabilidade.
Portabilidade Adaptabilidade, instalabilidade
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 25/37
Quadro 1.1 - Modelo de qualidade da ISO 25010:2011.
Fonte: WAZLAWICK (2013, p. 233).
#PraCegoVer: Apresenta um quadro com fundo na cor cinza com três colunas,
onde a primeira linha está na cor azul-escuro contendo o título de cada coluna.
As demais linhas alternam em tons de cinza-claro e cinza-escuro.A primeira coluna representa o tipo de característica de qualidade, sendo
listados os seguintes tipos: Características de Produto e Característica de Uso.
Na segunda coluna são apresentadas as características de cada tipo
apresentado e na terceira coluna são apresentadas as subcaracterísticas de
cada característica. 
No tipo características do produto, na primeira linha, temos como característica
Adequação funcional e como subcaracterística: Completude funcional, corretude
e substituibilidade.
Características
de uso
Efetividade Efetividade.
E�ciência E�ciência.
Satisfação
Utilidade, prazer, conforto e
con�ança.
Uso sem riscos
Mitigação de risco econômico,
mitigação de risco à saúde e
segurança e mitigação de risco
ambiental.
Cobertura de
contexto
Completude de contexto e
�exibilidade.
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 26/37
funcional (acurácia) e funcionalidade apropriada. 
Na segunda linha temos como característica Usabilidade e como
subcaracterísticas: Maturidade, disponibilidade, tolerância à falhas e
recuperabilidade. 
Na terceira linha temos como característica Usabilidade e como
subcaracterísticas: Apropriação reconhecível, inteligibilidade, operabilidade,
proteção contra erro do usuário, estética de interface com o usuário e
acessibilidade.
Na quarta linha temos como característica E�ciência de desempenho e como
subcaracterísticas: Comportamento em relação ao tempo, utilização de
recursos, capacidade.
Na quinta linha temos como característica Segurança e como subcaracterísticas:
Con�dencialidade, integridade, não repúdio, rastreabilidade de uso e
autenticidade.
Na sexta linha temos como característica Compatibilidade e como
subcaracterísticas: Coexistência e Interoperabilidade.
Na sétima linha temos como característica Capacidade de Manutenção e como
subcaracterísticas: Modularidade, reusabilidade, analisabilidade,
modi�cabilidade, testabilidade.
Na oitava linha temos como característica Portabilidade e como
subcaracterísticas: Adaptabilidade, instalabilidade e substituibilidade.
Na nona linha temos como característica Efetividade e como subcaracterística:
Efetividade.
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 27/37
Na décima linha temos como característica E�ciência como subcaracterística:
E�ciência.
No tipo características de uso, na primeira linha temos como característica
Satisfação e como subcaracterísticas Utilidade, prazer, conforto e con�ança.
Na segunda linha temos como característica Uso sem riscos e como
subcaracterísticas: Mitigação de risco econômico, mitigação de risco à saúde e
segurança e mitigação de risco ambiental.
Na terceira linha temos como característica Cobertura de contexto e como
subcaracterísticas: Completude de contexto e �exibilidade. 
Os parâmetros de qualidade, normalmente, são segmentados entre os que
possuem mais a�nidade com o processo, com o produto percebido pelo usuário
ou com o produto sob o ponto de vista da equipe. As medidas de qualidade
internas, por exemplo, servem para avaliar aspectos que usualmente são
percebidos apenas pelos desenvolvedores. A capacidade de manutenção e a
facilidade em se aplicar testes são bons exemplos dessas medidas.
As medidas de qualidade externa alcançam características avaliadas pela equipe
do ponto de vista do usuário. Por exemplo, a e�ciência e capacidade de
operação de um programa.
O modelo ISO/IEC 25010:2011, cujas características foram resumidas na tabela
acima, agregou as características internas e externas num único grupo e o
chamou de características do produto. Elas podem ser avaliadas no ambiente de
desenvolvimento, ao passo que as características do software em uso podem
apenas ser avaliadas durante o efetivo uso do sistema.
Parece-nos bastante desa�ador construir um produto que tenha boa adequação
à todas essas características e, por isso, vale conhecer melhor algumas das
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 28/37
características de qualidade mencionadas no quadro 1.1.
4.1.1 Adequação funcional
Antes conhecida como funcionalidade apenas; ela se refere à existência de um
conjunto de funções que satisfazem às necessidades previamente estabelecidas,
quando o produto é usado sob condições especi�cas. Duas de suas
subcaracterísticas são a Completude Funcional (o software apresenta todas as
funções necessárias ao usuário?) e a Corretude Funcional ou Acurácia (o
software gera dados e consultas corretos segundo o que foi de�nido?)
(WAZLAWICK, 2013).
4.1.2 Con�iabilidade
Se um software é capaz de manter comportamento consistente com o que se
espera dele ao longo do tempo, então ele pode ser considerado con�ável. A
con�abilidade tem a ver com o funcionamento do programa em situações
incomuns. Ela pode ser medida diretamente e estimada usando-se dados
históricos e de desenvolvimento, ou seja, um computador poderá́ ser
considerado livre de falhas quando não tiver alguma incidência em um
determinado ambiente e num determinado período (PRESSMAN, 1995). Desta
de�nição, o que ainda não temos claro é o que signi�ca falha. Quando tratarmos
de teste de software com mais detalhes, esse conceito será abordado.
Vale aqui também destacar duas de suas subcaracterísticas: a Disponibilidade
(avalia o quanto o software está operacional e livre para uso quando necessário)
e a Tolerância à Falhas (avalia a forma como o software reage em situação
anormal).
4.1.3 Usabilidade
De forma simpli�cada, podemos entender essa característica como a facilidade
em se usar um programa, do ponto de vista do usuário. Em linhas gerais, o
programa é fácil de usar se ele é (REISS, 2012): Funcional – ele realmente
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 29/37
funciona?; Responsivo – ele me fornece respostas adequadas?; Ergonômico – eu
posso facilmente ver, clicar, arrastar e girar as coisas?; Conveniente – tudo está
bem onde eu preciso que esteja? “À prova de tolos” – o projetista me ajuda a não
cometer erros ou quebrar coisas?
A usabilidade também apresenta subcaracterísticas, incluindo (WAZLAWICK,
2005): Operabilidade – o produto é fácil de usar e controlar?; Proteção contra
erro do usuário – o programa consegue evitar que o usuário cometa erros?; e
Acessibilidade – avalia o grau em que o produto foi projetado para atender
usuários com necessidades especiais.
4.1.4 Segurança
Se um programa consegue proteger os dados e as funções de acessos não
autorizados, então ele tem um bom nível de segurança. Algumas de suas
subcaracterísticas devem ser destacadas. Entre elas: Con�dencialidade – mede o
grau em que os dados e funções �cam disponíveis para quem, de fato, tem
autorização para acessá-los; Rastreabilidade de uso – mede o grau em que as
ações realizadas por uma pessoa ou por um sistema podem ser rastreadas de
forma a ser efetivamente comprovado que, de fato, foi essa pessoa ou sistema
que realizou tais ações.
4.1.5 Capacidade de manutenção
Trata de uma característica que atrai interesse direto apenas da equipe de
desenvolvimento, já que não afeta a percepção do usuário em relação ao
sistema. Como você certamente já inferiu, trata-se da capacidade do sistema em
passar por manutenção. Assim como todas as outras características
apresentadas, essa também conta com divisões. Vamos a elas: Modularidade – o
sistema é bem dividido em módulos? Mudanças em um dos módulos devem
causar mínimo impacto nos outros; Reusabilidade – há partes do sistema que
podem ser usadas na construção de outro sistema?; Analisabilidade – o sistema
permite que se faça depuração com facilidade?
25/09/2021 13:13 Ead.brhttps://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 30/37
No âmbito das características de qualidade do software em uso, vale destacar
(WAZLAWICK, 2013):
4.1.6 Efetividade
Capacidade que o produto tem de proporcionar ao cliente o atingimento de
seus objetivos de negócio.
4.1.7 Satisfação
Capacidade que o produto tem de satisfazer o cliente em ambiente de uso. Pode
ser dividida em Utilidade, Prazer, Conforto e Con�ança.
4.1.8 Uso sem riscos
O uso do software não pode implicar riscos para pessoas, negócios ou
ambiente. Divide-se em mitigação do risco econômico, mitigação do risco
ambiental e mitigação do risco à saúde e segurança.
Outros parâmetros têm sua descrição disponível na literatura e podem ser
usados como medidas para a qualidade de um software. Como marco
introdutório trataremos neste tópico apenas da ISO/IEC 25010:2011.
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 31/37
saiba mais
Saiba mais
Com linguagem simples e objetiva, o autor do artigo indicado defende a importância
do teste no processo de qualidade, promovendo comparações com outras áreas e
mencionando as dimensões da qualidade.
ACESSAR
https://www.devmedia.com.br/a-importancia-dos-testes-para-a-qualidade-do-software/28439
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 32/37
atividades
atividades
O modelo ISO/IEC 25010:2011, cujas características foram resumidas no Quadro 1.1 -
Modelo de qualidade da ISO 25010:2011, agregou as características internas e
externas num único grupo e o chamou de características do produto. Elas podem ser
avaliadas no ambiente de desenvolvimento, ao passo que as características do
software em uso podem apenas ser avaliadas durante o efetivo uso do sistema. Tendo
como base os parâmetros de qualidade considerados na avaliação de um produto,
analise as a�rmações que seguem:
I) A con�abilidade de um software está relacionada ao grau de adequação da
metodologia que o criou às habilidades da equipe de qualidade.
II) A rastreabilidade de uso é uma subcaracterística da usabilidade e refere-se ao grau
em que as ações realizadas por uma pessoa ou por um sistema podem ser rastreadas.
III) A adequação funcional está relacionada ao grau em que as funções do sistema
satisfazem os requisitos previamente especi�cados.
É correto apenas o que se a�rma em:
a) A�rmativa III.
b) A�rmativas II e III.
c) A�rmativas I e III.
d) A�rmativas I, II e III.
e) A�rmativa II.
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 33/37
indicações
Material Complementar
LIVRO
Engenharia de Software: Conceitos e Práticas
Raul Sidnei Wazlawick
Editora: Campus
ISBN: 978-85-352-6120-2
Comentário: O livro indicado trata a Engenharia da
Qualidade sob a ótica da qualidade, mesmo quando
aborda questões meramente procedimentais. Embora
tenha caráter genérico, o livro dedica três capítulos
exclusivamente para processos de qualidade, incluindo
ótimo tratamento para testes de software.
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 34/37
FILME
O Jogo da Imitação
Ano: 2014
Comentário: O �lme está ambientado na Segunda
Guerra Mundial e trata da atuação de Alan Turing na
criação de um artefato eletromecânico capaz de decifrar
o código dos nazistas para troca de mensagens entre o
comando de guerra e seus homens de campo.
TRA ILER
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 35/37
conclusão
Conclusão
Chegamos ao �nal da primeira unidade do nosso curso e a diversidade de
assuntos tratados, certamente, foi uma das suas marcas. Analisamos diversas
feições do que se entende por qualidade sob a ótica da possibilidade de
aprimoramento constante dos produtos e processos inseridos no contexto.
 Registramos alguns conceitos formais sobre o tema para, então, tratarmos da
qualidade do produto e da qualidade do processo. Como a objetividade deve ser
buscada nas avaliações de qualidade, propusemos visão geral de duas
importantes normas de qualidade. Na sequência, buscamos de�nir meio de se
praticar a gerência da qualidade e, por �m, abordamos algumas características
de um software que podem ser usadas como parâmetro de medição para sua
qualidade.
Em nosso próximo encontro daremos mais um passo em busca da qualidade ao
tratarmos de teste de software. Bom estudo e até a próxima!
referências
Referências Bibliográ�ca
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 36/37
ALL About ISO. International Organization of Standardization. Disponível em:
<http://www.iso.org/iso/home/about.htm>. Acesso em: 14 mar. 2018.
ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS. NBR ISO/IEC 9126-1:
engenharia de software – qualidade de produto – parte 1: modelo de qualidade.
Rio de Janeiro: ABNT, 2003.
BARTIÉ, A. Garantia da qualidade de software: as melhores práticas de
Engenharia de Software aplicadas à sua empresa. 5. ed. São Paulo: Elsiever,
2002.
IEEE – INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS. SWEBOK:
Guide to the Software Engineering Body of Knowledge. 3. ed. Piscataway: IEEE,
2014. Disponível em: <https://ieeecs-
media.computer.org/media/education/swebok/swebok-v3.pdf>. Acesso em: 03
abr. 2019.
MAITINO NETO, R. Engenharia de software. Londrina: Editora e Distribuidora
Educacional S.A., 2016. 224 p.
MOORTHY, V. Jumpstart to software quality assurance. [S.I. : s.n.], 2013.
PRESSMAN, R. S. Engenharia de Software. São Paulo: Makron Books, 1995.
______. São Paulo: Pearson Prentice Hall, 2009. 1056 p.
REISS, E. Usable usability: simple steps for making stu� better. Indianapolis:
John Wiley & Sons, 2012.
SEEAR, D. J. ISO 9001: 2015 Back to the future. A review of the new ISO Annex
SL structure for Certi�cation Standards using the draft ISSO 9001: 2015 to
explain the changes. USA: AuthorHouse, 2015.
SHAFFER, S. C. A brief introduction to software development and quality
assurance management. [S.l.: s.n.], 2013.
http://www.iso.org/iso/home/about.htm
https://ieeecs-media.computer.org/media/education/swebok/swebok-v3.pdf
25/09/2021 13:13 Ead.br
https://anhembi.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_736561_1&P… 37/37
WAZLAWICK, R.S. Engenharia de Software: conceitos e práticas. Rio de Janeiro:
Elsevier, 2013.
IMPRIMIR

Continue navegando