IEEE 1028 – Padrão para Revisões de Software

Um amigo meu, o Edimilson Estevam, fez o último exame da CTFL, e comentou comigo que caiu algumas questões a respeito desse padrão do IEEE.

Eu particularmente nunca tinha ouvido falar a respeito dele, nem na época que me preparei para a CTFL.

O intuito desse post, é compartilhar esse padrão (enviado pelo Edimilson – obrigado!), e também fazer um resumo a respeito dele.

O que é o IEEE 1028?

Como todo padrão elaborado pelo IEEE (lê-se “I três E”), o 1028 é fruto do trabalho voluntário de alguns membros do IEEE. E sendo um padrão, eles nos traz algumas importantes e relevantes informações a respeito de revisão de software. Mas é sempre bom lembrar, que ele deve ser usado com bom senso, pois o contexto sempre prevalece sob o padrão (ou deveria prevalecer).

O IEEE 1028 nos traz cinco tipos de revisão de software, junto com os procedimento necessários para a execuçaõ de cada tipo. Está fora do escopo do padrão questões como: quando uma revisão se faz necessária? como escolher qual tipo de revisão deve ser usado?

Os 5 tipos de revisão abordados são:

  • Revisões gerenciais;
  • Revisões técnicas;
  • Inspeções;
  • Walk-throughs;
  • Auditórias.

Os cinco tipos de revisão

Segue abaixo, a tradução do anexo B do padrão, que contém uma tabela comparativa entre os tipos de revisão (o texto original está numa linguagem meio chata de entender, e não consegui melhorar muito na tradução – se notarem algum erro ou melhoria, por favor me avisem):

Característica Revisão gerencial Revisão técnica Inspeção Walk-through Auditória
Objetivo Garantir o progresso; recomendar ações corretivas; garantir alocação correta dos recursos Avaliar a conformidade do estado atual com as especificações e planos; garantir integridade da mudança Encontrar anomalias; verificar decisões; verificar a qualidade do produto Encontrar anomalias; examinar alternativas; melhorar o produto; fórum para aprendizado Avaliação independente de cumprimento com os objetivos de padrões e regulamentos
Tomada de decisão A equipe de gerenciamento traça o curso da ação; decisões são feitas na reunião ou como resultado das recomenda-ções A equipe de revisão solicita aos gerentes ou a liderança técnica que atuem nas recomendações A equipe de revisão escolhe as disposições pré-definidas do produto; os defeitos devem ser removidos A equipe concorda com as mudanças para serem feitas pelo autor Organização auditada, iniciador, comprador, cliente ou usuário
Verificação das mudanças O líder verifica que itens são fechados; a verificação das mudanças é deixada para outros controles do projeto O líder verifica que itens são fechados; a verificação das mudanças é deixada para outros controles do projeto O líder verifica que itens são fechados; a verificação das mudanças é deixada para outros controles do projeto O líder verifica que itens são fechados; a verificação das mudanças é deixada para outros controles do projeto Responsabili-dade da organização auditada
Tamanho recomendado do grupo Duas ou mais pessoas Três ou mais pessoas Três a seis pessoas Duas a sete pessoas Uma a sete pessoas
Quem participa Gerentes, liderença técnica e algumas pessoas de outras áreas Liderença técnica e algumas pessoas de outras áreas Pessoas da área com acompanhe-mento documen-tado Liderença técnica e algumas pessoas de outras áreas Auditores, organização auditada, pessoal de gerência e técnico
Grupo da liderança Normalmente o gerente responsável Normalmente o engenheiro líder Um facilitador treinado O facilitador ou o autor O auditor líder
Volume de materiais Moderado para muito, depende dos objetivos da reunião Moderado para muito, depende dos objetivos da reunião Relativa-mente baixo Relativa-mente baixo Moderado para muito, depende dos objetivos da reunião

Abaixo, segue o link para baixar o padrão IEEE 1028:

http://bit.ly/ieee_1028

Anúncios

Simulados Online da CTFL

O Fábio Martinho divulgou na lista do Quality Assurance vários simulados da CTFL. Segue abaixo, os links:

Os simulados estão em inglês e o resultado é apresentado, após você completar ele. Uma boa para quem está se preparando para a CTFL do ISTQB/BSTQB.

Fique por dentro das novidades, assine o feed do QualidadeBR.

Impressões exame CTFL-BSTQB

É pessoal. Hoje das 09:00 às 10:00 fiz o exame da CTFL (Certified Tester – Foundation Level).

Segue abaixo as minhas impressões sobre o exame:

  • Bom nível de dificuldade: naquela média de: 20 questões fáceis, 15 questões de médio/difícil e 5 questões de nível muito difícil;
  • Bem elaborada: as questões eram bem feitas e claras;
  • Pouco tempo: 60 minutos para 40 questões? Pouco! Muito pouco! O tempo foi o maior vilão da prova. Eu que costumo fazer as provas com calma, comecei e terminei o exame a 100km/h e mesmo assim só fui passar as respostas para o gabarito, faltando 5 minutos para o término da prova. Acabei quase em cima do tempo máximo;
  • Revisar é luxo: se você também tem o hábito de revisar as questões, então esquece! Não dá para revisar as questões, devido ao pouco tempo. Eu até tentei revisar umas de tabela de decisão, mas desisti;
  • Enunciados grandes: várias questões eram bem longas, onde apresentavam alguma situação;
  • Códigos e tabelas de decisões: acho que poucas pessoas conseguiram realmente resolver essas questões, devido ao curto tempo. Eu mesmo só analisei a questão e marquei a alternativa mais próxima do que eu achava, ou seja, quase um Cálculo Hipotético Universal de Tempo e Espaço (C.H.U.T.E.).

Bem agora é esperar até no máximo 20 dias para saber o resultado do exame. Espero que ele seja positivo 🙂

Boa sorte a todos que fizeram o exame!!!

Fique por dentro das novidades, assine o feed do QualidadeBR.

Assine o feed

Resolução de questões CTFL: Q36S3

Mais uma questão sobre classe de equivalência. Bom para treinar mais um pouco.

Questão

Na modelagem de um sistema que trabalha com impostos a serem pagos: Um empregado recebe R$4.000 de salário livre de impostos. Os próximos R$1.500 são tributados em 10%. E os próximos R$28.000 são tributados em 22%. Qualquer outro valor é tributado em 40%. Para o mais próximo valor inteiro, qual desses grupos de números cai na mesma classe de equivalência?

a) R$4.800; R$14.000; R$28.000
b) R$5.200; R$5.500; R$28.000
c) R$28.001; R$32.000; R$35.000
d) R$5.800; R$28.000; R$32.000

Análise

Precisamos saber qual alternativa contém valores que caem na mesma classe de equivalência. Portanto precisamos, antes de mais nada, saber quais classes de equivalências temos.

Resolução

De acordo com o enunciado da questão temos 4 classes de equivalência, que são:

  1. Valores até 4000 = não tributados
  2. Valores entre 4001 e 5500 = tributados em 10%
  3. Valores entre 5501 e 33500 = tributados em 22%
  4. Valores maiores que 33501 = tributados em 40%

Logo os valores da alternativa D R$5.800; R$28.000; R$32.000, pertencem a mesma classe de equivalência que é a 3.

Resposta

Alternativa: d) R$5.800; R$28.000; R$32.000

Até mais!

Fique por dentro das novidades, assine o feed do QualidadeBR.

Assine o feed

Coberturas

100% de cobertura de comando cobre 100% de cobertura de desvio? Ou é o contrário?

100% de cobertura de caminho garante 100% de cobertura de LCSAJ?

Se algumas dessas perguntas já passaram pela sua cabeça, garanto que não foi somente pela sua. Pela minha e de várias outras pessoas também.

Então o que você acha de solucionar de uma vez todas as dúvidas quanto as coberturas?

“Se tá brincando, Fabrício?”

“Sei, sei e eu também vou te mostrar um esquema para acertar todos os números da loteria”

Que isso pessoal, é verdade. Eu agarantiu!!!

Seu Creysson

Eu criei uma representação gráfica de qual cobertura cobre qual, baseada em uma outra que a leitora Renata Eliza (muito obrigado!) me enviou:

Coberturas

Ficou mais fácil não ficou?

Mas se mesmo assim restaram dúvidas, segue abaixo a listagem de quais coberturas cobrem quais, baseado no material da certificação CTFL, cedido pela BSTQB:

  1. 100% da  cobertura de decisão ou desvio garante 100% da cobertura de comando, mas não vice-versa;
  2. 100% de cobertura de decisão implica em 100% de cobertura de desvio, e vice-versa;
  3. 100% de cobertura LCSAJ implica em 100% de cobertura de decisão;
  4. 100% de cobertura de caminho implica em 100% de cobertura LCSAJ.

E isso aí pessoal. Espero que eu tenha ajudado. 🙂

Fique por dentro das novidades, assine o feed do QualidadeBR.
Assine o feed

Fonte:

ISTQB – Glossário de Termos de Teste (Versão 1.3 – Português/Brasil);

Syllabus Foundation Level (em Português/Brasil).

Resolução de questões CTFL: Q15S2

Essa deveria ser uma questão mais fácil de cobertura de sentença e desvio, por usar a nossa linguagem. Porém, aplicada numa questão de Teste de Software, as coisas ficam confusas.

Questão

Considere o seguinte:

Pegar e ler o jornal
Olhe o que está passando na televisão
Se tiver um programa que você estiver interesse em assistir, então, veja a TV e
assista o programa
Caso contrário
Continue lendo o jornal
Se existe uma palavra cruzada no jornal, então tente completar

a) CS = 1 e CD = 1
b) CS = 1 e CD = 2
c) CS = 1 e CD = 3
d) CS = 2 e CD = 2
e) CS = 2 e CD = 3

Análise do código

Que código?

Esse daqui:

  1. Pegar jornal
  2. Ler jornal
  3. Olhar televisão
  4. IF tiver um programa que você estiver interesse em assistir THEN
  5. Veja a TV
  6. Assista o programa
  7. ELSE
  8. Continue lendo o jornal
  9. IF existe uma palavra cruzada no jornal THEN
  10. Tente completar
  11. ENDIF
  12. ENDIF

Acredito que uma maneira de resolver essa questão é passando o cenário descrito para um pseudocódigo, embora gaste mais tempo. Mas no momento o importante é compreender a questão, leve o tempo que levar.

Analisando o código temos dois IFs, sendo que o primeiro tem um ELSE, e o segundo está associado ao ELSE, ou seja, é dependente do primeiro IF.

Resolução

Cobertura de sentença

Dois testes são necessários: um para passar pelo primeiro IF e outro para passar pelo segundo IF. E passando pelos dois IFs, iremos executar todas as sentenças.

Cobertura de desvio

Já para a cobertura de desvio é preciso 3 testes:

Teste 1

Está passando um bom filme e o cidadão vai assistir. (primeiro IF – verdadeiro)

Teste 2
Está passando o Faustão e o cidadão vai continuar a leitura do jornal de domingo. (primeiro IF – falso)
O cidadão acaba de encontrar uma palavra cruzada e logo tenta completar. (segundo IF – verdadeiro)

Teste 3
Está passando de Volta a Lagoa Azul e o cidadão vai continuar a leitura do jornal. (primeiro IF – falso)
Não há uma palavra cruzada no jornal. (segundo IF – falso)

Resposta

Alternativa: e)  CS = 2 e CD = 3

Fique por dentro das novidades, assine o feed do QualidadeBR.

Assine o feed

Resolução de questões CTFL: Q14S2

Essa é uma questão casca grossa. E a principal razão para eu dizer isso, é que ela quebra uma regra que eu tinha: o número de testes para garantir a cobertura de desvio será sempre maior que o número de testes para garantir a cobertura de sentença.

Questão

Dado o seguinte código, qual a alternativa verdadeira:

  1. IF A > B  THEN
  2. C = A – B
  3. ELSE
  4. C = A + B
  5. ENDIF
  6. Read D
  7. IF C = D Then
  8. Print “Error”
  9. ENDIF

a) 1 teste de cobertura de sentença (comando), 3 para a cobertura de desvio
b) 2 testes de cobertura de sentença (comando), 2 para a cobertura de desvio
c) 2 testes de cobertura de sentença (comando), 3 para a cobertura de desvio
d) 3 testes de cobertura de sentença (comando), 3 para a cobertura de desvio
e) 3 testes de cobertura de sentença (comando), 2 para a cobertura de desvio

Análise do código

Temos dois IFs independentes, sendo que o primeiro IF tem um ELSE.

Resolução

Cobertura de sentença

Com um único teste poderíamos garantir quase toda a cobertura de sentença, por exemplo:

Teste 1

A = 20
B = 10
C = será 10
D = 10

Com o teste 1 iremos passar pelo primeiro e segundo IF, porém, não iremos passar pelo ELSE. Portanto precisamos de mais um teste:

Teste 2

A = 0
B = 10
C = será 10 (o valor de C nem interessa nesse teste)
D = 9 (o valor de D nem interessa nesse teste)

Com o teste 2 passamos pelo ELSE, porque A é igual a B e nos levará a linha 4, a única pela qual não tínhamos passado.

Cobertura de desvio

Podemos usar os mesmos testes feitos na cobertura de sentença. Mas com uma diferença: no teste 2, os valores de C e D nos interessam, pois irão cobrir o resultado falso (a não passagem) do segundo IF.

Portanto, com apenas dois testes também alcançamos a cobertura de desvio.

Resposta

Alternativa: b)  2 testes de cobertura de sentença (comando), 2 para a cobertura de desvio

Dica

Adaptando a minha regra inicial: o número de testes para garantir a cobertura de desvio, na maioria das vezes, será maior que o número de testes para garantir a cobertura de sentença.

Fique por dentro das novidades, assine o feed do QualidadeBR.

Assine o feed