Baixe o app para aproveitar ainda mais
Prévia do material em texto
Unidade II – Testes de Verificação 9 - Métodos Estruturados de Verificação Unidade II Avaliação de Software Prof. Ulisses Sperle Graça Março/2013 2 Os testes de verificação devem garantir a qualidade de todas as etapas do desenvolvimento de sistemas. A qualidade será obtida através da correta construção de documentos e a adequada realização de atividades previstas no processo de engenharia de software. Os testes devem concentrar-se em dois aspectos: as atividades de verificação que focalizam as documentações, as chamadas revisões, e as que avaliam as atividades, as chamadas auditorias. (Bartié) Introdução 3 Introdução Qualidade do Processo de Software Revisões Auditorias Foco nas Documentações Foco nas Atividades 4 Impacto das Revisões Revisões de Requisitos detectam 15% dos erros; Revisões na Análise e Design detectam 30% dos erros; Revisões na Implementação detectam 20% dos erros. 5 Revisões A revisão é um processo “humano” de análise de determinado documento (ou artefato), que requer pessoas adequadamente treinadas para desempenhar seus papéis durante a condução das atividades de verificação. 6 Revisões Para cada fase do processo de criação de documentos podemos aplicar um tipo diferente de revisão: Criação revisão isolada, cujo objetivo é fazer validações parciais do documento. Validação revisão formal, cujo objetivo é validar o documento finalizado com todos os grupos interessados. Divulgação reuniões de acompanhamento, cujo objetivo é garantir a leitura do documento por todas pessoas-chave envolvidas. 7 Tipos de Revisões Criação Validação Divulgação Autor Irtoprçlh khg ][gfg~fçl kçj Documento Revisor Autor Irtoprçlh khg ][gfg~fçl kçj Documento Moderador Grupo de Revisão Grupo de Acompanhamento Irtoprçlh khg ][gfg~fçl kçj Documento Autor Reunião Acompanhamento Revisão Formal Revisão Isolada Fases de criação do documento e respectivos tipos de revisão 8 Revisão Isolada É um método pouco explorado mas muito eficiente na detecção precoce de erros. Trata-se de uma verificação individual do material produzido, porém executada por alguém diferente do autor, que tem como objetivo revisar e identificar o maior número possível de problemas. A ideia é antecipar a revisão dos documentos com entrega de versões ainda não acabadas, possibilitando correções nos documentos durante sua fase de concepção. Permitem o contato antecipado dos revisores com as documentações geradas, auxiliando na familiaridade com o formato de como determinadas regras estão sendo organizadas e registradas. 9 Revisão Isolada Como a ação do revisor será isolada, poderá propor mudanças que prejudiquem uma visão integrada do problema. Neste caso o autor deverá sugerir uma reunião para decidir qual caminho trilhar. Se isso se tornar recorrente, as ações isoladas podem prejudicar o trabalho, indicando que as áreas envolvidas não estão compreendendo a extensão dos problemas que estão sendo abordadas. Outro grande problema é a chamada “revisão superficial”. Isto ocorre quando o revisor não está preparado para interpretar o documento ou tem pouca iniciativa para realizar sugestões ou críticas, se tornando pouco eficientes. 10 Revisões Formais São as mais efetivas, pois baseiam-se em reuniões com um grupo de profissionais responsáveis em identificar falhas em documentos gerados nas diversas etapas do desenvolvimento. As revisões têm regras próprias que devem ser respeitadas, objetivando o maior sucesso da condução, que é a maior identificação possível de erros. O autor estará presente somente para responder às duvidas e questões levantadas pelos revisores, não podendo conduzir a reunião, permitindo assim uma maior isenção na condução dos trabalhos. 11 Revisões Formais Todos os participantes devem ter estudado antecipadamente o documento e ter alguma afinidade com os assuntos tratados por este. Desta forma, cada participante deve, individualmente, preparar-se para coletar o maior número possível de informações antes da reunião. Os participantes devem ter experiências e conhecimento diferentes, mas complementares, para que todas as decisões sejam analisadas por diferentes ângulos. Durante a reunião, é fundamental documentar tudo o que for discutido (problemas, sugestões, melhorias etc.). O autor realizará as mudanças e irá produzir uma nova versão da documentação que será submetida a nova revisão*. 12 Executando Revisões Um tópico é definido e será escopo das discussões; Uma questão é levantada por um revisor; A questão é discutida e avaliada; Os revisores confirmam a existência do defeito; O defeito é registrado e detalhado para que seja corrigido pelos autores; Outras questões são levantadas até que todas tenham sido analisadas; Um novo tópico é identificado até que todos tenham sido discutidos; 13 Executando Revisões Profundidade das Análises e Discussões; Uniformidade das Atividades; Continuidade e Frequência; Revisores Experientes; Presença de um Moderador nas Reuniões; Revisões Curtas e Bem Focadas; Identificar Problemas, e Não Resolvê-los; Concluir as Revisões; 14 Reuniões de Acompanhamento É a forma de verificação menos formal, já que não necessita de uma adequada preparação dos participantes. Somente o autor, que é o apresentador, se prepara para a reunião. Seu objetivo maior é tornar o documento e o discurso familiar a todos os participantes, enquanto a detecção dos erros torna-se uma preocupação secundária. Elas são interessantes pois permitem envolver um maior número de pessoas no processo, mas por outro lado são menos eficientes na detecção de problemas, devido ao despreparo dos participantes e pela condução da reunião pelo próprio autor. Substituem com vantagens as “coletas de assinaturas”, que não incentivam os profissionais a debaterem as decisões registradas nos documentos. 15 Reuniões de Acompanhamento Uma forma mais eficiente seria a distribuição do material a todos os participantes. Seria então agendada uma reunião na qual todos poderiam debater dúvidas e divergências e, no final, caso exista consenso, é que seria realizada a coleta de assinaturas. Isto evitaria o efeito retardado: mudar as coisas depois que determinados assuntos já foram encerrados simplesmente porque alguns participantes não interpretaram adequadamente as decisões registradas nos documentos e mesmo assim assinaram. Na “coleta de assinaturas” é muito comum as pessoas não lerem adequadamente o material distribuído. 16 Auditoria Concentram-se nas atividades críticas de um processo de engenharia e software. Seu principal objetivo é o de avaliar se em um determinado projeto as diversas equipes estão respeitando o processo de desenvolvimento. Os auditores são os guardiões do processo, pois devem estar atentos às chamadas quebras de processo, que são muito comuns em organizações que não possuem etapas bem definidas e ainda estão criando um processo de desenvolvimento de software corporativo. Isto é sempre justificado com a argumentação de que estes são diferentes dos demais e que determinados controles são desnecessários. 17 Auditoria É verdade que as atuais metodologias pregam que os processos de software devem adequar-se a determinadas categorias de sistemas, exigindo uma flexibilidade dos processos. Devemos ter cuidado, pois cada equipe tenderá a definir o que é importanteestabelecendo quais documentos e procedimentos devem ser utilizados, criando uma confusão. Somente um grupo que represente o modelo corporativo poderá estabelecer as regras do processo de engenharia de software. Caso isto não aconteça, os auditores de qualidade não terão parâmetros para conduzir os trabalhos. 18 Aplicando o processo de verificação Como foi visto, existem várias abordagens que podemos aplicar para a realização efetiva de um processo de verificação de documentos ou de atividades executadas em determinadas etapas do ciclo de desenvolvimento. Veremos agora um conjunto de procedimentos que auxiliarão na prática e condução destas revisões. 19 Planejamento das reuniões de verificação Uma das primeiras decisões é estabelecer o alvo dos trabalhos é definir o grupo que participará das atividades a serem realizadas. Todos devem ser orientados em relação às regras e objetivos a serem alcançados com as atividades de verificação. É recomendável que este grupo seja heterogêneo e multidisciplinar, permitindo que as análise sejam aplicadas sobre perspectivas diferentes, garantindo uma revisão sob várias dimensões do problema. Deverá ser considerado o número de profissionais que desempenharão os papéis de revisores dos documentos, que será em função da complexidade e criticidade dos mesmos. 20 Planejamento das reuniões de verificação Poucos revisores deixam o processo menos eficiente, pois teremos pouca diversidade de opiniões levando a poucos elementos que subsidiarão a equipe para decidir se determinado documento está adequado ou não. Por outro lado, muitos revisores poderão deixar as reuniões longas e improdutivas, reduzindo sua eficiência. Muitos profissionais geram um excesso de divergência que resultam em muitas discussões e poucas conclusões. Um número ideal seria de quatro a sete profissionais. 21 Preparando os Profissionais É necessário prepara os participantes para que recebam o máximo de informações sobre o tema a ser discutido. Cabe aos profissionais que estão organizando as reuniões estruturar uma fonte de informações que possibilite agregar conhecimento a todos que estarão participando do processo. O acesso á documentação que será alvo das revisões também é estratégico para seu sucesso. Devemos distribuir os documentos a todos os participantes antes de executarmos as revisões, dando a oportunidade a todos de lerem o material, assimilar todos os tópicos a serem discutidos e indicarem os pontos essenciais à revisão. 22 Preparando os Profissionais Durante este período de distribuição, os revisores devem estudar os documentos e realizar diversos questionamentos referentes à falta de entendimento, ausência de exemplos ou comentários, à falta de estudos comprobatórios etc. Uma semana é um prazo adequado para um conveniente estudo das documentações, sendo possível estender por algumas semanas, dependendo da carga de serviços e do volume do material. 23 Executando a verificação de documentos Durante as revisões, o profissional que está conduzindo a reunião deverá garantir que todos os pontos do documento foram questionados e avaliados. A reunião deve ser orientada pela estrutura de tópicos do documento, de forma a evitar o risco de dispersão dos assuntos, dificultando o controle de cobertura final do documento. 24 Executando a verificação de documentos A condução da verificação segue uma sequência lógica. As principais atividades são: Um tópico será definido e será escopo de discussões; Uma questão é levantada por um revisor; A questão é discutida e avaliada; Os revisores confirmam a existência do defeito; O defeito é registrado e detalhado para que seja corrigido pelo autor; Outras questões são levantadas até que todas tenham sido analisadas; Um novo tópico é identificado até que todos tenham sido discutidos. 25 Executando a verificação de documentos Revisões são, muitas vezes, encaradas como críticas aos autores, o que torna esta tarefa mais difícil, porém, devemos entender que nosso propósito está em fazer melhor o nosso trabalho, e as revisões estão aperfeiçoando o documento. Todos nós temos a ganhar com esse processo, inclusive o autor, que poderá contar com o apoio de outros profissionais, dividindo assim a responsabilidade pelo trabalho. 26 Aplicando o Checklist na Verificação Checklist é um poderoso instrumento a ser aplicado nas revisões de documentos e auditorias de processo de trabalho, pois possibilita direcionar todas as atividades dos testes de verificação, criando uma abordagem única de como avaliar a qualidade de um documento. Esse direcionamento é realizado através de “guias” que orientam as auditorias e inspeções de documentos, reduzindo o grau de subjetividade em relação ao que deve ser avaliado ou não. A checklist deve ser utilizada como um acessório, pois orienta na investigação de diversos aspectos em relação ao documento ou atividade. É apenas um “guia” que disciplina a atividade. 27 Aplicando o Checklist na Verificação Verificação de Negócios Verificação de Requisitos Verificação Análise e Modelagem Verificação da Implementação Check-List Verificação de Negócios Check-List Verificação Análise e Modelagem Check-List Verificação de Requisitos Check-List Verificação da Implementação Checklist aplicada nas diversas fases do teste de verificação. A checklist deve ser utilizada como um acessório, pois orienta na investigação de diversos aspectos em relação ao documento ou atividade. É apenas um “guia” que disciplina a atividade. 28 Aplicando o Checklist na Verificação Check-List do Diagramas UML q Diagramas de Classes - Todas as classes possuem nome e descrição adequados. OK Não OK - Todos os atributos da classe possuem nome e descrição adequados. OK Não OK - Todos os serviços da classe possuem nome e descrição adequados. OK Não OK q Diagrama de Estado - Todas as transições de estado possuem um serviço ou evento associado. OK Não OK - Todos os estados possuem nome e descrição adequados. OK Não OK - Todas as transições de estado refletem o real ciclo de vida da classe. OK Não OK q Diagramas de Componentes - As “Packages” agrupam componentes com mesmas características. OK Não OK - Cada componente agrupa classes de única camada: user, business, data OK Não OK - Todas as dependências dos Componentes foram estabelecidas. OK Não OK 29 Aplicando o Checklist na Verificação Modelo de Negócios Implementação Análise e Modelagem Revisar Contexto do Mercado e Necessidades Cliente; Revisar Riscos do Projeto; Auditar Alternativas de Execução do Projeto; Revisar Estudo de Viabilidade do Projeto; Revisar Arquitetura da Aplicação; Revisar o Modelo Estático do Projeto de Software; Revisar o Modelo Dinâmico do Projeto de Software; Revisar Nível de Componentização; Revisar Nível de Reutilização; Modelo de Negócios; Análise de Riscos; Arvore de Decisão; Estudo de Viabilidade; Arquitetura da Aplicação; Modelos Estáticos; Modelos Dinâmicos; Modelos Distribuição; Código-Fonte; Componentes; Manual do Usuário; Revisar o Código-Fonte; Avaliar Complexidade do Código-Fonte; Auditar Rastreabilidade entre Componentes;. Revisar Manual do Usuário; Especificação Requisitos; Rastreabilidade; Revisar Especificação de Requisitos Funcionais; Revisar Especificação de Requisitos Não-Funcionais; Revisar Priorização de Requisitos; Auditar Rastreabilidade de Requisitos; Especificação de Requisitos Fase da Verificação Principais Produtos Principais Atividades da Fase de Verificação
Compartilhar