Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Prof. MSc. Claudio Furquim
UNIDADE II
Qualidade de Software
 O gerenciamento de defeitos, também conhecido como gestão de bugs ou falhas, é o 
processo de identificar, registrar, priorizar, corrigir e acompanhar defeitos encontrados em 
um software durante seu ciclo de vida. Defeitos ou bugs podem ser qualquer desvio ou 
inadequação em relação aos requisitos estabelecidos, ou ao comportamento esperado
do software. 
 Por outro lado, a rastreabilidade é a capacidade de documentar e acompanhar a origem, a 
evolução e o destino de cada requisito, componente ou mudança em um sistema de 
software.
Qualidade de Software – Gerenciamento de defeitos e rastreabilidade
 Identificação e registros de defeitos possibilita uma comunicação clara entre as equipes de 
desenvolvimento e testes sobre o problema encontrado.
Qualidade de Software – Gerenciamento de defeitos e rastreabilidade
 Para entender melhor como funciona o registro de defeitos, vamos analisar um documento 
de registro.
Qualidade de Software – Gerenciamento de defeitos e rastreabilidade
Observações adicionais
Observações que o analista de teste pode querer colocar
Resultado
Esperado e o observado
Passos para a reprodução
O que foi feito para o erro acontecer
Classificação
Prioridade e severidade 
Descrição
Uma breve descrição 
Identificação do defeito
Um código para identificar o defeito
 A análise de causa raiz é um processo crítico na engenharia de software, especialmente 
quando se trata de garantir a qualidade e a confiabilidade dos sistemas. Esse processo 
envolve investigar profundamente os defeitos identificados para descobrir as razões 
fundamentais que os causaram. Ao entender essas causas subjacentes, as equipes podem 
implementar soluções duradouras que resolvam o problema atual, bem como previnam sua 
recorrência no futuro.
Qualidade de Software – Análise de causa raiz e resolução 
Qualidade de Software – Análise de causa raiz e resolução 
Fonte: https://www.accept.pt/wp-
content/uploads/2023/07/diagrama
-espinha-de-peixe-1024x447.jpg
CAUSA CAUSA CAUSA
CAUSA CAUSA CAUSA
Diagrama de Ishikawa
Qualidade de Software – Análise de causa raiz e resolução 
Técnica dos
cinco porquês Problema:
Um artigo não foi
entregue no prazo.
1. Por quê?
Porque o responsável
não conseguiu escrever.
2. Por quê?
Porque existiam outras
demandas como prioridade.
3. Por quê?
Porque surgiram
demandas de urgência.
4. Por quê?
Porque o colaborador
era o único que
conseguia resolver.
5. Por quê?
Porque a equipe é
reduzida e surgiram
muitas demandas,
atrasando a entrega
do artigo.
Contramedida:
Contratar um novo
funcionário para auxiliar
com as demandas.
Fonte: Adaptado de: 
https://mereo.com/wp-
content/uploads/2022/02/exemplo_5_p
orques_infografico-01-897x1024.png
 A rastreabilidade de requisitos é uma prática essencial no desenvolvimento de software que 
visa acompanhar e documentar a vida útil dos requisitos desde sua concepção até sua 
implementação e manutenção. Essa prática possibilita compreender como cada requisito 
está relacionado aos outros e como cada um deles influencia o projeto como um todo.
Qualidade de Software – Rastreabilidade de requisitos
Por que precisamos registrar os erros?
a) Para possibilitar uma comunicação clara entre as equipes de testes e desenvolvimento.
b) Para automatizarmos os testes.
c) Para entregar ao usuário com a documentação de requisitos. 
d) Para entregar ao patrocinador do projeto com a documentação de requisitos. 
e) Nenhuma das alternativas está correta.
Interatividade
Por que precisamos registrar os erros?
a) Para possibilitar uma comunicação clara entre as equipes de testes e desenvolvimento.
b) Para automatizarmos os testes.
c) Para entregar ao usuário com a documentação de requisitos. 
d) Para entregar ao patrocinador do projeto com a documentação de requisitos. 
e) Nenhuma das alternativas está correta.
Resposta
 O gerenciamento da qualidade de software é um pilar fundamental para o sucesso de 
qualquer projeto de desenvolvimento. A implementação de métricas específicas possibilita a 
avaliação da eficiência e eficácia dos processos, bem como identificação de áreas que 
necessitam de melhorias.
Qualidade de Software – Métricas e gerenciamento da qualidade 
 O Modelo Construtivo de Custo (COCOMO) é uma métrica amplamente reconhecida e 
utilizada para a estimativa de esforço, tempo e custo necessários para o desenvolvimento
de software.
 Existem três versões principais do modelo COCOMO: básico, intermediário e detalhado. O 
modelo básico oferece, de forma rápida, uma visão geral, utilizando poucas variáveis para 
calcular uma estimativa aproximada. Já o modelo intermediário introduz mais variáveis 
relacionadas às características do software e ao ambiente de desenvolvimento, 
possibilitando uma estimativa mais precisa. Por fim, o modelo detalhado leva em 
consideração aspectos ainda mais granulares, incluindo atributos específicos das fases do 
projeto e tarefas individuais.
Qualidade de Software – Métrica: COCOMO
C
O
C
O
M
O Básico
Intermediário
Detalhado
Para calcular o esforço em pessoa-mês (PM), use a fórmula do COCOMO básico com base 
nos parâmetros fornecidos. A fórmula fundamental é:
Em que: 
 KLOC: Quantidade de linhas necessárias para desenvolver o software.
 A: Está relacionado ao esforço para desenvolver o software.
 B: Está relacionado à sensibilidade do esforço em relação ao tamanho do código. 
 Obs.: Valores menores que 1 indicam que o esforço é menos 
sensível ao tamanho do código enquanto valores maiores que 
1 indicam sensibilidade ao tamanho do código.
Qualidade de Software – Métrica: COCOMO
Exemplo: Suponha que será necessário desenvolver um aplicativo móvel simples, mas que 
contenha 5000 linhas de código, de baixa complexidade e que a equipe possui experiência 
mediana no desenvolvimento desse tipo de aplicativo. Além disso, todas as ferramentas e 
processos que a equipe tem são bons para a construção desse aplicativo e que os parâmetros 
A e B sejam 2,8 e 1,20 para um projeto de software de baixa complexidade.
 PM = 2,8 x (5)1,20
 PM = 2,8 x 7,543, logo, PM≈21,15 hrs de uma pessoa/mês
Qualidade de Software – Métrica: COCOMO
 O tempo médio entre falhas (MTBF, do inglês Mean Time between Failures) é um indicador 
fundamental na área de manutenção e confiabilidade de sistemas, sendo utilizado para 
avaliar a confiabilidade de equipamentos, componentes ou sistemas em geral.
 MTBF = (tempo total de operação – tempo de manutenção) / número de falhas.
Qualidade de Software – Métrica: Tempo médio entre falhas (MTBF)
Exemplo: Um software operou por 525.600 minutos (aproximadamente um ano) e teve 6 falhas 
durante esse tempo com um tempo total de manutenção de 170 minutos, o MTBF seria 
calculado como:
 MTBF = (525.600 - 170) / 6
 MTBF = 87.571,67 min.
 Resultando em aproximadamente 60 dias entre falhas.
Qualidade de Software – Métrica: Tempo médio entre falhas (MTBF)
Qual a sigla em inglês para a métrica tempo médio entre falhas?
a) COCOMO.
b) PF.
c) MTFB.
d) TMF.
e) Nenhuma das alternativas está correta.
Interatividade
Qual a sigla em inglês para a métrica tempo médio entre falhas?
a) COCOMO.
b) PF.
c) MTFB. (Mean Time between Failures).
d) TMF.
e) Nenhuma das alternativas está correta.
Resposta
A usabilidade de software é a medida na qual os usuários podem interagir com um sistema de 
software. Portanto, uma métrica de usabilidade é uma técnica para avaliar e medir essa 
qualidade. Pode-se aplicar uma variedade de métricas de usabilidade a um sistema de 
software, cada uma das quais se concentra em aspectos específicos da experiência do 
usuário. As métricas mais usadas incluem:
Qualidade de Software – Métrica: Usabilidade de sistemas 
Pode-se aplicar uma variedade de métricas de usabilidade a um sistema de software, cada 
uma das quais se concentra em aspectos específicos da experiênciado usuário. As métricas 
mais usadas incluem:
Qualidade de Software – Métrica: Usabilidade de sistemas 
Usabilidade
Facilidade de 
uso
As interfaces 
do usuário de 
alta qualidade
Eficiência
O tempo de 
resposta
Consumo de 
recursos
A manutenibilidade de um software mede a facilidade com que um sistema de software pode 
ser modificado, corrigido e adaptado ao longo do tempo, mantendo sua qualidade e 
desempenho. São algumas delas:
 Índice de manutenibilidade.
 Complexidade ciclomática.
Qualidade de Software – Métrica: Manutenabilidade
 O índice de manutenibilidade de um software mede a facilidade de manutenção do software, 
considerando a complexidade, estrutura e quantidade de comentários do código. 
A fórmula para calcular o índice de manutenabilidade é:
 IM = 171- 5.2 * Ln(V) – 0.23 * C -16.2 * Ln(L)
 Quanto mais próximo do 100, melhor é a manutenabilidade, quanto mais vai se afastando do 
100, a manutenabilidade vai piorando.
Em que:
 V: é o número de operadores e operandos no código.
 C: número de chamadas de funções.
 L: número de linhas de código.
Qualidade de Software – Métrica: Manutenabilidade
Exemplo: Após a análise de um software para encontrarmos a sua manutenabilidade, 
chegamos aos seguintes valores: 
 V = 1200 C = 30 L = 5000
Utilizando a fórmula, teremos:
 IM = 171- 5.2 * Ln(1200) – 0.23 * 30 -16.2 * Ln(5000)
 IM = -10,74 -> Com isso, nosso software é considerado de péssima manutenção.
Qualidade de Software – Métrica: Manutenabilidade
 A complexidade ciclomática mede a complexidade do fluxo de controle do software, sendo 
um indicador da dificuldade de compreender e manter o código. 
A fórmula para calcular a complexidade ciclomática é:
 V(G) = P + 1, em que P é o número de nós-predicados.
 Obs.: Nós-predicados são considerados comandos de fluxo como if, else, while, 
switch, for etc. (estruturas condicionais ou de loops).
Qualidade de Software – Métrica: Manutenabilidade
Exemplo: Considere o código python abaixo:
def exemplo(x,y)
if x>y:
return x
else: 
return y
Utilizando a fórmula, teremos:
 V(G) = P + 1
 V(G) = 2 + 1
 V(G) = 3
 Com isso, nosso software é considerado de boa manutenção.
Qualidade de Software – Métrica: Manutenabilidade
Qual métrica de software leva em consideração a quantidade de comentários no cálculo?
a) COCOMO.
b) Complexidade ciclomática.
c) MTFB. (Mean Time between Failures).
d) Índice de manutenabilidade.
e) Nenhuma das alternativas está correta.
Interatividade
Qual métrica de software leva em consideração a quantidade de comentários no cálculo?
a) COCOMO.
b) Complexidade ciclomática.
c) MTFB. (Mean Time between Failures).
d) Índice de manutenabilidade.
e) Nenhuma das alternativas está correta.
Resposta
 A métrica de ponto de função (function point, em inglês) é uma técnica de medição usada na 
engenharia de software para quantificar o tamanho funcional de um sistema de software, 
com base nas funcionalidades fornecidas aos usuários finais. Desenvolvida por Allan 
Albrecht, na IBM, na década de 1970, a métrica de ponto de função se tornou uma 
ferramenta valiosa para estimar o tamanho e a complexidade de um projeto de 
desenvolvimento de software.
Qualidade de Software – Métrica: Ponto de função
 A ideia principal por trás da métrica de ponto de função é medir a funcionalidade entregue 
pelo software, em vez de medir diretamente o tamanho do código, ou o número de linhas de 
código. Isso significa que a métrica de ponto de função se concentra nas características do 
sistema que são visíveis aos usuários finais e que agregam valor ao negócio.
Qualidade de Software – Métrica: Ponto de função
 Para calcular os pontos de função, são identificadas as diferentes funcionalidades do 
sistema, como entradas de dados, consultas ao banco de dados, interfaces com o usuário e 
relatórios gerados pelo sistema. Cada funcionalidade é classificada com base em sua 
complexidade, e a ela é atribuída uma pontuação em pontos de função. Essas pontuações 
são então somadas para obter o tamanho total do sistema em pontos de função.
 Cada função identificada é classificada com base em sua complexidade. Desse modo, 
existem três tipos de funções: Entradas Externas (EE), Saídas Externas (SE) e Consultas 
Externas (CE).
Qualidade de Software – Métrica: Ponto de função
 Para calcular os pontos de função, são identificadas as diferentes funcionalidades
do sistema.
Qualidade de Software – Métrica: Ponto de função
Fonte: Adaptado de: https://app.bnb.gov.br/documents/45078/8409425/11+-+Anexo+XI+-
+Guia+de+Contagem+em+Pontos+de+Fun%C3%A7%C3%A3o.pdf/b71dbb14-2230-c23f-466a-c86ee6d49a86
Documentação
do software
Pontos de função
(números)
Abstração orientada a dados
Usuários
Aplicação
Outras
Aplicações
Transações
(EEs, CEs,
SEs)
Dados
Internos (ALIs)
Dados
Externos
(AIEs)
Mapeando em números
Identificação dos itens da APF
Exemplo: Considere a construção do seguinte sistema:
Suponha que você está estimando o tamanho funcional de um sistema de gerenciamento de 
biblioteca com as seguintes funcionalidades:
 Cadastro de livros, cadastro de usuários, empréstimo de livros, devolução de livros, geração 
de relatórios de empréstimos, busca de livros no catálogo.
Qualidade de Software – Métrica: Ponto de função
Passo 1: Identificar os tipos e contar as ocorrências.
Qualidade de Software – Métrica: Ponto de função
Funções de entrada Funções de saída Funções de consulta
Cadastro de livro
Cadastro de usuário
Empréstimo de livro
Devolução de livro
Geração de relatório
Busca de livros no 
catálogo
Passo 2: Atribuir os pontos segundo a tabela.
Sendo assim, temos: 
 PF = (2 x 4) + (3 x 5) + (1x 4) = 27
 Obs.: Não existe uma tabela padrão de pontos a serem 
atribuídos, cada empresa, com base na experiência de 
desenvolvimento, vai desenvolvendo a sua.
Qualidade de Software – Métrica: Ponto de função
Funções de entrada Funções de saída Funções de consulta
4 5 4
Passo 3: Transformando pontos de função em horas trabalhadas.
Se para cada ponto de função temos 8 horas de trabalho, logo, teremos: 
 HTF = 27 x 8 = 216 horas
 Obs.: Não existe uma tabela padrão de horas de trabalho x PFs a serem atribuídos, cada 
empresa, com base na experiência de desenvolvimento, vai desenvolvendo a sua.
Qualidade de Software – Métrica: Ponto de função
 “Se não consegue medir, não conseguirá gerenciar” (Peter Drucker).
Qualidade de Software – Métrica: Ponto de função
Fonte: https://neilpatel.com/wp-
content/uploads/2023/03/peter-drucker.jpg
O que mede a métrica de ponto de função? 
a) Contagem de linhas.
b) Complexidade das funções do sistema.
c) Quantidade de ciclos.
d) Tempo sem problemas em produção.
e) Nenhuma das alternativas está correta.
Interatividade
O que mede a métrica de ponto de função? 
a) Contagem de linhas.
b) Complexidade das funções do sistema.
c) Quantidade de ciclos.
d) Tempo sem problemas em produção.
e) Nenhuma das alternativas está correta.
Resposta
 BARTIÉ, Alexandre. Garantia da qualidade de software – adquirindo maturidade 
organizacional. Rio de Janeiro: Ed. Campus, 2002.
 DEMING, W. Edwards. Saia da crise. São Paulo: Ed. Marques Saraiva, 1990.
 ENGHOLM, Hélio Jr. Engenharia de software na prática. São Paulo: Ed. Novatec, 2010.
 PROJECT MANAGEMENT INSTITUTE. Um Guia do Conhecimento em Gerenciamento de 
Projetos (Guia PMBOK®). 5. ed. [S.l.]: Project Management Institute, 2013.
Referências
ATÉ A PRÓXIMA!

Mais conteúdos dessa disciplina