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

Prévia do material em texto

1
38
1
Profª Rosemari Pavan Rattmann
Métricas e Estimativa de Software
Aula 5
38
2
Conversa Inicial
38
3
Métricas de webapps e aplicativos móveis
Desempenho – segurança – usabilidade
Métricas de código-fonte
Métricas para testes
Cobertura de código – densidade de defeitos
Tempo de teste – rastreamento de requisitos
Aplicações práticas
Análise de métricas
38
4
Métricas para projetos de 
melhoria/manutenção
Padrões de qualidade – ISO
Ferramentas para métricas
Análise de métricas
38
5
Métricas para Webapps e 
Aplicativos Móveis
38
6
Diversidade de plataformas
Webapps x aplicativos móveis
Métricas para aplicativos móveis
Indicativos de qualidade
Métricas para aplicativos móveis
1 2
3 4
5 6
2
38
7
Métricas para aplicativos móveis
ConclusãoAPP CAPP BAPP AIndicador de 
Qualidade
Usuários preferem apps 
com tempos de resposta 
rápidos
0,6s (Excelente)1,2s (Bom)0,8s (Excelente)Tempo de Resposta 
(seg)
Tempo de carregamento 
impacta menos que 
resposta rápida
1,8s (Bom)1,5s (Muito 
Bom)2s (Aceitável)Tempo de Carregamento 
(seg)
Consumo de memória 
moderado é preferido280Mb (Alto)200Mb (Baixo)250Mb (Médio)Consumo de Memória 
(Mb)
Baixo consumo de 
bateria é uma 
preferência significativa
4% (Muito 
Baixo)5% (Baixo)6% (Moderado)Consumo de Bateria 
(%/hora)
Melhoria marginalmente 
notada1,1s (Bom)0,9s (Muito 
Bom)1s (Bom)Eficiência de 
Processamento
Alta escalabilidade 
aumenta preferência
2/1000 sessões 
(Baixo)
1/1000 sessões 
(Baixo)
3/1000 sessões 
(Moderado)
Taxa de Erros/ 
Travamentos
Usabilidade fortemente 
correlacionada com 
preferência
78% (Muito 
Boa)85% (Excelente)75% (Boa)Satisfação com 
Usabilidade F
o
n
te
: 
R
a
tt
m
a
n
n
, 
2
0
2
4
. 38
8
Métricas para aplicativos móveis
F
o
n
te
: 
R
a
tt
m
a
n
n
, 
2
0
2
4
.
38
9
Qualidade das aplicações
Relevância da qualidade
Principais métricas 
Tempo de resposta
Tempo de carregamento
Acessibilidade
Métricas para aplicativos web
38
10
Benefícios da otimização
Melhora da experiência do usuário
Aumento na percepção positiva da 
marca
Melhor posicionamento nas buscas
Métricas para aplicativos web
38
11
Gestão contínua
Monitoramento das métricas
Interconexão entre métricas
Competividade no mercado
Diferencial estratégico
Atendimento das expectativas dos 
usuários
Métricas para aplicativos web
38
12
Práticas recomendadas
Design inclusivo
Otimização de 
código – tempos
Análises regulares 
do ciclo de vida
Métricas para aplicativos web
Lemberg Vector studio /shutterstock
7 8
9 10
11 12
3
38
13
Importância
Tempo de resposta
Taxa de transferência
Escalabilidade
Confiabilidade
Métricas de desempenho
Hamdi Ujeb Addakhil /shutterstock
38
14
Benefícios da análise de desempenho
Eficiência em diferentes dispositivos
Experiência para o usuário
Maior satisfação e retenção
Métricas de desempenho
38
15
Webapp
Maior tempo de carregamento e busca de 
informação
Aplicativo Móvel
Mais rápido 
Métricas de Desempenho
38
16
Métricas de desempenho
Fonte: Rattmann, 2024.
38
17
Definição 
Facilidade de navegação 
Interação com o aplicativo
Principais métricas
Design e arquitetura (navegabilidade)
Eficiência de interação – número de cliques
Usabilidade
Afeta a satisfação, fidelidade e retenção do 
usuário
Métricas de usabilidade
38
18
Métricas de usabilidade
Fonte: Rattmann, 2024.
Taxa de Erro (%)Quantidade de ErrosTarefa
3,015Login
5,025Enviar Mensagem
2,010Carregar Página
4,020Salvar Dados
1,05Buscar Informações
6,030Atualizar Perfil
•Tarefa: Representa as ações que os usuários realizam no aplicativo texto do seu parágrafo.
•Quantidade de Erros: O número total de erros cometidos pelos usuários em cada tarefa.
•Taxa de Erro (%): Percentual que representa a quantidade de erros em relação ao número total de 
tentativas de cada tarefa. 
13 14
15 16
17 18
4
38
19
Métricas para Código-fonte
38
20
Facilidade de manutenção
Complexidade ciclomática
Coesão e acoplamento
Linhas de código
Abordagem proativa
Revisões regulares
Benefícios para o software
Código mais limpo 
Facilidade de evolução
Métricas para código-fonte
38
21
Métricas para código-fonte
Fonte: Rattmann, 2024.
ObservaçõesCoesão 
(Escala de 1-10)
Complexidade 
Ciclomática
Total de Linhas 
de CódigoMódulo
Ideal com alta coesão e 
complexidade moderada: fácil de 
manter e testar.
915320Módulo A
Gerenciável, mas com dependências 
que aumentam a complexidade; 
manutenção viável.
725450Módulo B
Difícil de manter devido à baixa 
coesão e alta complexidade; 
recomenda-se reavaliação.
540500Módulo C
Boa coesão, porém algumas 
dependências aumentam a 
complexidade; manutenção requer 
cautela.
820375Módulo D
Reestruturação necessária devido à 
baixa coesão e alta complexidade; 
complicações na manutenção.
435425Módulo E
Figura 5 - Métrica de linhas de código
38
22
Métricas para Testes
38
23
Tipos de métricas
Cobertura de código
Métricas para testes
Fonte: Rattmann, 2024.
RepresentaçãoDescriçãoNome
Barra de progresso com 
porcentagem de cobertura 
(ex: 80%)
Mede a proporção de linhas de código 
executadas durante os testes, garantindo que 
cada linha seja testada pelo menos uma vez.
Cobertura de instruções
Setas com caminhos 
testados marcados com ✓ e 
não testados com ✗.
Avalia se todos os caminhos de decisão 
(branches) do código foram testados, 
abrangendo diferentes fluxos de execução
Cobertura de Branches
Duplas de caixas para cada 
condição 
(Verdadeiro/Falso)
Garante que cada condição em decisão foi 
avaliada tanto como verdadeira quanto como 
falsa
Cobertura de Condições
Figura 6 - Métricas de teste - tipos de cobertura
38
24
Tipos de métricas
Densidade de 
defeitos
Métricas para testes
Fonte: Rattmann, 2024.
19 20
21 22
23 24
5
38
25
Tipos de métricas
Tempo de teste
Métricas para testes
Rosemari Pavan Rattmann/chatgpt/IA
38
26
Tipos de métricas
Rastreamento de requisitos
Métricas para testes
Fonte: Rattmann, 2024.
ObsStatus do 
Testes
Descrição do 
Teste
ID do TestePrioridadeDescrição do 
Requisito
ID do 
Requisito
Funcionou 
conforme 
esperado
Passou
Testar login 
com 
credenciais 
válidas
TESTE-001Alta
O sistema 
deve permitir 
login de 
usuários
REQ-001
Registro foi 
salvo 
corretamente
Passou
Testar registro 
de ocorrência
TESTE-002Alta
O sistema 
deve registrar 
as ocorrências
REQ-002
O sistema não 
salvou as 
alterações
Falhou
Testar edição 
de dados do 
usuário
TESTE-003Média
O sistema 
deve permitir 
edição de 
dados
REQ-003
38
27
Aplicações em ambientes 
industriais
Estudo de caso da IBM
Estratégia orientada 
por dados
Alinhamento aos 
objetivos do projeto
Métricas para testes
BRKH-STUDIO /shutterstock
38
28
Métricas para Projetos de 
Melhoria/Manutenção
38
29
O que medir?
Métricas – manutenção/melhorias
Fonte: Rattmann, 2024.Figura 6 - Métricas de teste - tipos de cobertura
Valor ExemplarDescriçãoMétrica
5 horas
Tempo necessário para corrigir um defeito após 
sua identificação. Um valor menor indica melhor 
manutenibilidade
Tempo de Resolução de 
Defeitos
20 linhas/código por 
defeito
Densidade de defeitos rem relação ao total de 
linhas de código. Um número menor indica um 
código de melhor qualidade
Número de Linhas de 
Código por Defeito
85%
Porcentagem do código que é coberta por testes 
automatizados. uma alta cobertura sugere maior 
manutenibilidade
Cobertura de Testes
38
30
Complexidade ciclomática
Taxa de reabertura de defeitos
Taxa de mudança
Métricas – manutenção/melhorias
25 26
27 28
29 30
6
38
31
Iso/ies 25010
Analisabilidade
Modificabilidade
Testabilidade
Estabilidade
Substituibilidade
Métricas – manutenção/melhorias
38
32
Métricas – manutenção/melhorias
Fonte: Rattmann, 2024.
AçãoCondição
Você escolhe pizzaSe há pizza
Você escolhe um sanduícheSe não há pizza, mas há sanduíches
Você escolhe frutasSe não há pizza nem sanduíches, mas há frutas
Você não come nadaSe não há nada disse
38
33
Papel vital na melhoriada manutenção e 
evolução
Métricas – manutenção/melhorias
38
34
Métricas – manutenção/melhorias
F
o
n
te
: 
R
a
tt
m
a
n
n
, 
2
0
2
4
.
Projetos de ManutençãoProjetos NovosMétrica
Pode ser alta, especialmente em versões 
legadas
Baixa durante o desenvolvimento 
inicial
Taxa de Defeitos
Pode ser maior devido à complexidade do 
sistema
Geralmente menor devido a tesets 
extensivosTempo de Resolução de Defeitos
Avaliada através de relatórios de usuários e 
revisões contínuas
Avalida através de feedback inicialSatisfação do Cliente
Frequentemente imprevisível devido a 
problemas planejados
Estimativas baseadas em planos de 
projeto
Tempo de Entrega
Medida por alterações ou correções realizadas 
em um período
Medida por linhas de código ou 
funcionalidades entregues
Produtividade da Equipe
Alta, devido a dependências e interações com 
partes existentes
Geralmente baixa, novo códigoComplexidade do Código
A cobertura pode ser menor, dependendo da 
documentação disponível
Alta cobertura é esperadaCobertura de Testes
Pode ser maior e mnos previsivel, devido a 
requisitos não especificados
Planejado de forma detalhadaCusto de Implementação
Muitas vezes incompleta ou desatualizadaCriada durante o desenvolvimentoDocumentação
Monitorado continuamente e ajsutado
conforme necessário
Avaliado após o lançamentoFeedback de Performance
38
35
Repositórios de Métricas e 
Ferramentas
38
36
Onde encontrar?
IEEE – Xplore Digital 
Library
Scopus
Outros
Repositórios de métricas
Alena Divina/shutterstock
31 32
33 34
35 36
7
38
37
SonarQube
Identifica áreas problemáticas do código
JUnit
Identifica código não testado
JMeter
Medição de carga e eficiência
Ferramentas para métricas
38
38
Postman
Testes de APIs
Checkmarx
Detectar vulnerabilidades (segurança)
Ferramentas para métricas
38
39
37 38
39

Mais conteúdos dessa disciplina