Escolar Documentos
Profissional Documentos
Cultura Documentos
Especificação
• Objetivo da aula
– Conceituar garantia da qualidade
– Discutir, de um ponto de vista macroscópico, as atividades e
técnicas relacionadas com o controle da qualidade
• Justificativa
– uma visão abrangente das técnicas de controle da qualidade
facilita a compreensão da interdependência entre elas e com os
processos de desenvolvimento
1
Garantia da qualidade
http://www.softex.br/wp-content/uploads/2016/04/MPS.BR_Guia_Geral_Software_2016-com-ISBN.pdf
2
Processo (bem simplificado)
Manutenção Solicitações
Repositório exógenas
de versões
Melhorias,
Falhas
Teste simples Falhas
ou contínuo Novas
Avaliação necessidades
ao usar
Scripts de
integração
e teste
Solicitações exógenas
3
Especificação de software
• Consequência:
– um grande número dos defeitos encontrados (70%?) em
sistemas em operação são decorrentes de defeitos em
especificações
Propriedades
Suspiro
Aberto
Fechando
Fechado
Admissão
TANQUE Saída
Abrindo
Esgoto
4
Propriedades básicas de representações
Derivação de artefatos
Critérios e
padrões de
qualidade
Artefatos Artefatos
antecedentes consequentes
Criar
Artefato C1
Artefato A1
Artefato C2
Artefato A2
Alterar
Artefato C3
5
Derivação, terminologia
6
Objetivo do controle da qualidade
Um conjunto é coeso se todos os elementos se relacionam direta ou indiretamente entre si. No grafo de inter-
relacionamentos não existem casos de poucas (usualmente 1 a 3) arestas de corte.
Um conjunto de elementos é coerente se nenhum elemento contradiz o que está em qualquer outro elemento.
Derivação, exemplo
Folha Pai
Ligação imagem
Instância de
imagem de ligação
Instância de
objeto de ligação
Folha Filho
Fev 2018 Arndt von Staa © LES/DI/PUC-Rio 14
7
Passo de desenvolvimento com controle da qualidade
Critérios e pa-
drões de controle
Histórico de da qualidade Histórico de
alterações alterações
Artefato Artefato
antecedente conseqüente
Criar
Especifi-
Artefato
cação
Alterar
Gerenciar
FAP a evolução FAP
Outro
artefato
FAP Avaliação
FAP : ficha de acompanhamento
externa
de problema
8
Exemplo de adição de conhecimento
Especificação inicial
9
Um processo para a especificação inicial
Existem muitas propostas de
processo de especificação Elicitar
requisitos
Revisar:
inicial. Esse é um deles.
Objetivo / finalidade
Contexto
Versão inicial Dicionário de termos
especificação Sintaxe
Revisar pelos Revisar pelos Semântica
interessados desenvolvedores Completeza
Corretude
Qualidade requerida
Laudo revisão ...
Laudo revisão
interessados desenvolvedores
Corrigir e
consolidar
especificação
Especificação
revista
Corrigir e Especificação
Revisar por OK
consolidar aceita
todos
especificação
Laudo revisão Não OK
Especificação inicial
10
Especificação através de exemplos
Exemplo
• Incompleto?
– qual o conteúdo do formulário?
– que caracteres são permitidos em cada um dos campos?
– o que é um captcha?
– como sei que meu registro está no cadastro?
Fev 2018 Arndt von Staa © LES/DI/PUC-Rio 22
11
Exemplo: dicionário de dados / termos
• Nome do usuário
– valem letras maiúsculas, minúsculas e diacríticos
– valem os caracteres ‘-’ ‘.’ e branco
• Identificação do usuário
– cada identificação contida no cadastro deve se referenciar a um
único usuário autorizado
– valem letras maiúsculas e minúsculas
• não valem diacríticos
– valem os caracteres ‘-’ e ‘.’
• não valem brancos
• Senha
– valem letras maiúsculas e minúsculas
– valem os caracteres especiais: !@#$%&*()_+-={}[],.:;
– deve ser forte segundo regras informadas ao usuário
– ao defini-la deve ser digitada, não pode usar cortar e colar
12
Processo visando qualidade e economia
IHC <= IHS – interface humano-sistema é mais amplo, pois engloba também as interações que não são
estritamente dirigidas a computadores
Fev 2018 Arndt von Staa © LES/DI/PUC-Rio 26
13
Propriedades do controle: perfeição?
• O controle da qualidade é
– um filtro imperfeito
• identifica somente uma parte dos problemas existentes
– defeitos, deficiências e vulnerabilidades observadas
• os demais problemas permanecem e são desconhecidos
– defeitos, deficiências e vulnerabilidades remanescentes
• Weinberg, G.M.; The Psychology of Computer Programming; 2nd edition; Dorset House; 1998
Obs. a primeira versão foi publicada há mais de 30 anos…
Fev 2018 Arndt von Staa © LES/DI/PUC-Rio 28
14
Propriedades do controle: resultado
Aguardando Em
Início análise solução
aprovada esboço
inicial emergencial
não aprovada
Aguardando Aguardando
solução informação
Aguardando
protelada emergencial
análise
falha dados
grave insuficientes
suspensa Sendo concluída Aguradando
Em autorizada Aguardando
análise solução resolvida aprovação
Informação
adicional
recebida
dados
insuficientes não aprovada
Sendo
Aguardando recusada controlada
informação
15
Propriedades do controle: planejamento?
Propriedades do controle
16
Propriedades do controle
?
• arquitetura
• projeto
• modelos
• ...
17
Tarefas do controle da qualidade
Construto é um conjunto de um ou mais artefatos que permite verificar se está coerente com um
conjunto parcial dos interesses especificados.
18
Tarefas do controle da qualidade
19
Tarefas do controle da qualidade
Apêndice
20
Garantia da qualidade: atividades 1/4
21
Garantia da qualidade: atividades 3/4
22
Técnicas de controle da qualidade
– Medição estática
• obtenção de medidas estruturais relativas ao artefato
– as medidas indicam a probabilidade da presença de problemas
bad smells
» ex. complexidade (número) ciclomática (McCabe) correlaciona
(supostamente) com a densidade de defeitos
23
Técnicas de controle da qualidade
Yelowitz, L.; Gerhart, S.L.; “Observations of fallibility in applications of modern programming methodologies”; IEEE
Transactions on Software Engineering 2(9); 1976; pags 195-207
Fev 2018 Arndt von Staa © LES/DI/PUC-Rio 47
24
Técnicas de controle da qualidade
• Artefato (construto)
– nome
– versão
– data
– quem
– como:
• revisão, inspeção
• caso de teste
• uso
• outros, ex. desenvolvimento de outro artefato
25
Laudo, registro de problemas
• Severidade
– Possíveis danos provocados pelo problema
– É possível continuar a usar?
• não, provoca danos sérios
• não, é impossível utilizar os resultados
• sim, se evitar a região problemática
• sim, usando outra sequência de trabalho
• sim, se desprezar alguns resultados
• sim, pois somente incomoda
• É reprodutível?
– identificação do problema
– descrição do problema e como reproduzi-lo
• Sugestão de solução
– isso nem sempre é desejável
• Solução
– estado da solução
• datas de mudança de estado
• responsáveis pelo trabalho nos estados de execução (ver a seguir)
– descrição da solução
– artefatos criados, alterados, eliminados
• versões resultantes
– possíveis causas das faltas identificadas
26
Referências
FIM
27