Gerência e Qualidade de Software - Aula 05 - Verificação e Validação

Gerência e Qualidade de Software - Aula 05 - Verificação e Validação

Processos de Verificação e Validação no Desenvolvimento de Software

Introdução aos Processos VV

  • A aula aborda os processos de verificação e validação (VV), essenciais para o desenvolvimento de software, com exemplos práticos em uma empresa real.

Diferença entre Teste, Verificação e Validação

  • O teste é apenas uma parte dos processos VV; a verificação e validação são métodos disciplinares para avaliar a qualidade do software.
  • Além do software, outros artefatos como manuais e modelos também podem ser analisados pelos processos VV.

Tipos de Análise

  • A análise pode ser estática (sem execução do software) ou dinâmica (com execução). Revisões são um exemplo de análise estática.
  • A verificação assegura que os produtos atendem aos requisitos especificados, enquanto a validação verifica se o produto atende às necessidades reais dos usuários.

Técnicas de Verificação

  • Técnicas como "mode checking" podem ser usadas na definição e análise de requisitos para garantir sua viabilidade.
  • Durante a implementação, práticas como integração contínua ajudam na verificação da qualidade do código.

Validação no Processo de Desenvolvimento

  • A validação envolve demonstrar que o produto atende às necessidades quando colocado em seu ambiente desejado. Isso requer participação ativa dos stakeholders.
  • Prototipagem e simulações são métodos eficazes para validar produtos durante as fases iniciais do desenvolvimento.

Importância da Verificação e Validação

  • Realizar testes de aceitação permite que clientes validem o software antes da entrega final.
  • Quanto mais verificações e validações forem feitas, maior será a chance de atender tanto à especificação quanto às necessidades dos stakeholders.

Conclusão sobre Processos VV

  • Os processos VV têm objetivos distintos: verificar se o software foi construído corretamente versus validar se ele atende ao propósito desejado.

Como Funciona o Processo de Verificação Legal em Desenvolvimento de Software

Revisão de Código e Colaboração

  • O processo de verificação legal envolve a revisão do código, onde desenvolvedores submetem suas funcionalidades para que outros membros da equipe revisem. Essa prática promove a colaboração e garante que todos no time estejam familiarizados com o código.
  • A revisão não é feita por uma única pessoa, mas sim por vários membros da equipe, acreditando-se que isso agrega valor ao projeto como um todo.

Testes Automatizados

  • É importante utilizar testes automatizados em diferentes níveis, desde testes unitários até testes de integração. Isso assegura que cada parte do código funcione conforme esperado.
  • Além dos testes manuais, existe a análise tática do código, onde ferramentas automatizadas verificam se o código segue os padrões definidos pela equipe.

Padrões e Qualidade do Código

  • Cada equipe deve definir seus próprios padrões de codificação, incluindo estilo e nomenclatura. Ferramentas ajudam a identificar "code smells", ou partes problemáticas no código.
  • A prática ágil sugere que os desenvolvedores dediquem tempo à reflexão sobre suas funções antes da implementação para melhorar a qualidade do software.

Validação e Feedback Contínuo

  • O processo de validação é crucial para garantir que o software atenda às necessidades do cliente. Isso começa na fase de especificação com desenhos e protótipos.
  • Durante o desenvolvimento, as funcionalidades são testadas em um ambiente interno acessível a todos os membros da equipe para feedback contínuo.

Homologação e Entrega Final

  • Após finalizar as interações, um pacote com todas as funcionalidades é enviado para um ambiente de homologação onde o cliente pode verificar se tudo está conforme desejado.
Video description

Engenharia de Computação - 16º Bimestre Disciplina: Gerência e Qualidade de Software – EES - 201 Univesp - Universidade Virtual do Estado de São Paulo Professor responsável pela disciplina: Fábio Levy Siqueira Playlist da disciplina: https://www.youtube.com/playlist?playnext=1&list=PLxI8Can9yAHcmjsfjFdo_xJ3xhLiczzLC