Buscar

Teste de Software Aula 11



Continue navegando


Prévia do material em texto

TESTES DE SOFTWARE – AULA 11
Prof. Ulisses Sperle Graça
TESTE NA
IMPLANTAÇÃO DO SISTEMA
TESTE DE MIGRAÇÃO
1. Compreender as técnicas de teste na migração de dados
e na substituição de um sistema;
2. Definir estratégia de testes na migração de dados e na
substituição de um sistema;
3. Implementar e avaliar testes na migração de dados e na
substituição de um sistema.
3
OBJETIVOS DESTA AULA
Vivemos em um mundo que muda rapidamente. As deman-
das por funções de negócio e a TIC que as suporta estão
mudando em um ritmo que impõe enorme pressão
competitiva em todas as organizações. É por essa razão que
o software deve ser mantido continuamente para atender a
um ambiente em mutação.
4
INTRODUÇÃO
Nesta aula iremos estudar o conceito do teste de migração
e a sua importância para a continuidade das atividades que
eram tratadas pelo sistema anterior (sistema que estará
sendo substituído) e agora serão processadas por este
novo sistema.
5
INTRODUÇÃO
A migração de dados é o processo de transferência de
dados entre diferentes tipos de armazenamento, formatos,
e/ou sistemas de informação.
É necessário quando as organizações realizam mudança
em seus sistemas de informação ou upgrade para novos
sistemas.
6
INTRODUÇÃO
É importante percebermos a necessidade da adequada
sintonia entre os dados tratados pelo sistema anterior e os
dados sob novo formato, com tecnologia atualizada,
tratados pelo novo sistema, pois podem aumentar muito a
probabilidade de uma integração de software bem
sucedida.
7
INTRODUÇÃO
Desta forma iremos estudar as etapas executadas durante
o projeto de migração e que devem considerar:
 A verificação dos procedimentos operacionais e
legais para a migração.
 A validação do novo formato de dados.
 O teste de migração dos dados.
 E a simulação do novo sistema em substituição ao
sistema antigo.
8
INTRODUÇÃO
Independentemente do domínio da aplicação, tamanho ou
complexidade, o software continuará a evoluir com o tempo.
Após seu desenvolvimento um sistema pode ficar
operacional, ou seja, em produção por anos ou até mesmo
décadas.
Porém durante este período o próprio sistema ou seu
ambiente operacional podem ser corrigidos, modificados ou
completados.
9
TESTE DE MIGRAÇÃO
Desta forma os caso de teste de migração de uma
plataforma a outra, podem incluir testes operacionais do
novo ambiente tanto quanto a mudança de software. Já os
testes de migração para retirada de um sistema pode incluir
testes de migração de dados.
O processo de migração pode fracassar se não for bem
planejado e orquestrado !
10
TESTE DE MIGRAÇÃO
É o processo de transferência de dados entre diferentes
tipos ou formato de armazenamento, ou ainda de diferentes
sistemas computacionais. É normalmente realizada através
de um processo de migração automatizado, consequência
de uma troca de sistemas computacionais ou upgrade para
novos sistemas.
11
MIGRAÇÃO DE DADOS
A maioria dos projetos de migração são demorados,
requerem o envolvimento de muitos recursos e tem um
custo muito elevado.
Além de necessitar de recursos eficientes e de um ótimo
planejamento é muito importante o uso inteligente de
ferramentas de apoio ao projeto e acima de tudo a adoção
de um conjunto de testes completo e complexos para
garantir o que o projeto seja bem sucedido.
12
MIGRAÇÃO DE DADOS
Os dados são armazenados em diferentes mídias,
normalmente através de arquivos ou bases de dados. Estes
dados são gerados ou consumidos por aplicações de
software, que por sua vez apoiam os processos de negócio
da organização.
13
MIGRAÇÃO DE DADOS
A necessidade de transferir e/ou converter os dados
normalmente é impulsionado por um requisito de negócio
ou uma evolução tecnológica. Existem basicamente quatro
tipos possíveis de migração:
 Migração de mídias de armazenamento;
 Migração de base de dados;
 Migração de aplicação;
 Migração de processo de negócio.
14
MIGRAÇÃO DE DADOS
Migração de mídias de armazenamento
Normalmente é motivada pela racionalização dos meios
físicos e pela possibilidade de maior vantagem e eficiência
da utilização de modernas tecnologias de armazenamento.
O que irá resultar no deslocamento blocos físicos de dados
de uma fita ou disco para outra, muitas vezes usando
técnicas de virtualização.
15
MIGRAÇÃO DE DADOS
Migração de mídias de armazenamento (cont.)
O formato de dados e conteúdo geralmente não são
alterados neste processo e pode, normalmente, ser
alcançado com um mínimo ou nenhum impacto para a
camadas acima.
16
MIGRAÇÃO DE DADOS
Migração de base de dados
Em alguns casos pode ser necessário adotar uma nova
versão ou atualização do SGBD utilizado e até mesmo a
mudança de fornecedor de software.
Normalmente na atualização do software praticamente não
existe migração de dados, porém podendo ocorrer em
grandes atualizações (quando o software está em uma
versão muito antiga e troca-se para uma atual).
17
MIGRAÇÃO DE DADOS
Migração de base de dados (cont.)
No caso de adoção de uma nova plataforma de banco de
dados pode ser necessária a migração física dos dados
uma vez que o formato da base de dados podem mudar
significativamente.
Esta migração pode ou não afetar o comportamento da
camada de aplicação, dependendo em grande parte se
ocorrerá mudança na linguagem ou protocolo de
manipulação de dados.
18
MIGRAÇÃO DE DADOS
Migração de base de dados (cont.)
Vale ressaltar que as aplicações modernas normalmente
são desenvolvidas de formas a serem agnósticas à
tecnologia de banco de dados (Sybase, Mysql, DB2, SQL
Server, Oracle, etc.) para que a mudança de bases de
dados, só exijam um ciclo de teste para validar o aspecto
de desempenho dos requisitos funcionais e não funcionais.
Não saber, ignorar (fonte: Dicionário Houaiss da Língua Portuguesa)
19
MIGRAÇÃO DE DADOS
Migração de aplicação
Ocorre quando a organização decide implementar uma
nova aplicação ou mesmo alterar de fornecedor uma
aplicação já existente, como por exemplo, uma nova
plataforma CRM ou ERP implica necessariamente em uma
transformação substancial de toda aplicação ou conjunto de
operações no modelo de dados do software do novo
fornecedor.
20
MIGRAÇÃO DE DADOS
Migração de aplicação (cont.)
Com o objetivo de permitir a utilização de seus produtos por
um número maior de empresas, normalmente estes pacotes
de produtos são configurados para cada cliente utilizando
metadados.
Customer Relationship Management
Enterprise Resource Planning
21
MIGRAÇÃO DE DADOS
Migração de aplicação (cont.)
Amigração vai importar dados. Logo, você precisa saber:
 Onde buscar qual dado (banco, tabela, atributo)
 Como transformar o dado original (converter formatos)
 Como lidar com ausência de dados (valor default)
 Nome e apelido (Ex: pCod1  Código do Produto)
 Dentre outras informações
Metadados são informações estruturadas que descrevem,
explanam, localizam, ou facilitam recuperar, usar ou
gerenciar um recurso de informação (HODGE, 2001).
22
MIGRAÇÃO DE DADOS
Migração de processos de negócio
Processos de Negócios operam através de uma combinação
de ações humanas e de sistemas de aplicação, sendo
normalmente orquestrada por ferramentas de gestão de
processos de negócios.
Neste caso as alterações podem exigir a transferência de
dados de um meio de armazenamento, base de dados ou
aplicação a fim de refletir as alterações da organização e
informações sobre os clientes, produtos e as operações.
23
MIGRAÇÃO DE DADOS
Migração de processos de negócio(cont.)
São exemplos deste tipo de migração:
 fusões e aquisições de empresas,
 otimização dos processos de negócio
 a reorganização dos processos como forma de
atacar novos mercados ou responder a alguma ameaça
competitiva.
24
MIGRAÇÃO DE DADOS
Migração de Dados é geralmente o termo utilizado para
descrever um projeto em que os dados serão transferidos ou
copiados de um ambiente para outro, e removidos ou
desativados na origem.
Durante a migração (que podem realizar-se ao longo de
meses ou mesmo anos), os dados podem ser migrados em
múltipla direções e lugares simultaneamente.
25
FASES DA MIGRAÇÃO DE DADOS
O projeto de migração é normalmente dividido nas seguintes
etapas ou fases:
26
FASES DA MIGRAÇÃO DE DADOS
PROJETO 
DESIGN
EXTRAÇÃO LIMPEZA CARGA VERIFICAÇÃO
Projeto (design)
Nesta etapa são levantadas as funcionalidades de software
e hardware, e se for o caso, identificados os dados que
serão migrados. Neste momento podemos ter duas
situações de mapeamento dos dados:
 o layout da origem e do destino são os mesmos,
 o layout da origem e do destino são diferentes.
27
FASES DA MIGRAÇÃO DE DADOS
Projeto (design) (cont.)
Embora o mapeamento de mesmo layout na origem e
destino apresente uma migração mais simples, é muito
comum as equipes responsáveis enxergarem este momento
como uma ótima oportunidade para consolidar e/ou otimizar
o desempenho e/ou a capacidade de utilização dos dados.
Quando o mapeamento é realizado com layouts diferentes
está cenário já é o comum.
28
FASES DA MIGRAÇÃO DE DADOS
Extração
Esta fase envolve a extração dos dados dos diferentes
sistemas de origem.
Cada sistema separadamente pode utilizar um formato e
organização diferente de dados. O objetivo desta fase é
converter os dados em um formato único adequado para o
processo de transformação.
29
FASES DA MIGRAÇÃO DE DADOS
Extração (cont.)
Uma parte intrínseca na envolve a análise de dados
extraídos, resultando na verificação se os dados satisfazem
um padrão esperado ou estrutura.
Caso não satisfaçam devem ser rejeitado totalmente ou em
parte.
30
FASES DA MIGRAÇÃO DE DADOS
Limpeza
Um processo de limpeza de dados manual ou automatizada
é comumente realizada na migração para melhorar a
qualidade dos dados, eliminar informações redundantes ou
obsoletas, e a adaptação as exigências do novo sistema.
31
FASES DA MIGRAÇÃO DE DADOS
Carga
A fase de carga carrega os dados para um destino
específico. Em função dos requisitos da organização, este
processo varia muito.
Em alguns casos os dados podem sobrepor os dados
existentes com informações acumulativas, frequentemente a
atualização de extração de dados é realizada diariamente,
semanal ou mensal.
32
FASES DA MIGRAÇÃO DE DADOS
Carga (cont.)
Em outros caso poderá ser necessário acrescentar novos
dados. O escopo e a periodicidade para substituí-la ou
inclusão dependem do tempo disponível e da necessidade
do negócio.
Outra opção é a utilização de uma fase de pré-carga,
através do estabelecimento de um conjunto mínimo de
dados com os requisitos necessários para a carga no
sistema novo.
33
FASES DA MIGRAÇÃO DE DADOS
Carga (cont.)
Este processo de validação é aplicado quando deseja-se
garantir que o destino realmente possui os critérios de
ambiente e as especificações de arquivo pré-definidos e
antes do processo de carga total.
Uma estratégia alternativa pode ser também a utilização de
uma validação denominada de on-the-fly, utilizada com o
objetivo de reportar os erros de rejeição enquanto a carga
avança.
34
FASES DA MIGRAÇÃO DE DADOS
Verificação
Após o carregamento para o novo sistema, os resultados
são submetidos a uma etapa de verificação dos dados para
determinar se os dados foram corretamente migrados, se
ocorreu de forma está completa.
Durante a verificação pode ser necessário um execução de
processo de execução em paralelo de ambos os sistemas
para identificar áreas de disparidade e evitar erros de perda
de dados.
35
FASES DA MIGRAÇÃO DE DADOS
Verificação dos procedimentos operacionais e legais
Uma importante etapa no processo de migração é a
preparação prévia dos procedimentos operacionais a serem
adotados.
Esta etapa deve considerar a simulação e a verificação dos
procedimentos operacionais, financeiros e legais usados no
sistema antigo e seu rebatimento no novo sistema.
36
FASES DA MIGRAÇÃO DE DADOS
Verificação dos procedimentos operacionais e legais
Um outro aspecto importante a considerarmos nesta etapa é
a concordância do usuário gestor, face a questão básica da
manutenção do negócio, ou seja, mudar para melhor dentro
dos requisitos de negócio estabelecido.
37
FASES DA MIGRAÇÃO DE DADOS
Validação do novo formato dos dados
Para alcançar uma efetiva migração, os dados do sistema
antigo devem ser mapeados para o novo sistema através do
levantamento dos requisitos e formatos dos dados do novo
sistema, sendo realizado através de dois momentos:
 da extração de dados, onde os dados são lidos a
partir do sistema antigo e
 da carga dos dados, onde os dados são escritos no
novo sistema.
38
FASES DA MIGRAÇÃO DE DADOS
Validação do novo formato dos dados (cont.)
Nesta fase procedimentos de controle devem ser definidos
para garantir que todos os dados de entrada sejam
completa e precisamente convertidos.
Esses procedimentos podem consistir em uma verificação
manual de todos ou de uma amostra dos dados antes e
depois da conversão ou ainda através da verificação manual
dos relatórios criados a partir dos dados.
39
FASES DA MIGRAÇÃO DE DADOS
Exatidão dos Dados
Após a migração dos dados, os dados resultantes podem
nem sempre precisar ser completamente exatos, uma vez
que a exatidão completa pode ser pouco econômica ou
impossível.
Desta forma é necessário definir o nível de exatidão
aceitável no contexto organizacional.
40
FASES DA MIGRAÇÃO DE DADOS
Exatidão dos Dados (cont.)
Para aplicações de moderada ou alta complexidade as
fase de migração de Dados: (design, extração, limpeza,
carga, e verificação) são normalmente repetidas várias
vezes antes do novo sistema ser implantado.
41
FASES DA MIGRAÇÃO DE DADOS
É importante observarmos a importância de se elaborar o
novo formato do banco de dados para o novo sistema com
base no formato do banco de dados do antigo sistema de
forma a facilitar a migração dos dados.
Para os novos campos de dados no sistema novo que não
existem no banco de dados antigo, deverá ser elaborada
uma estratégia de povoamento desses campos.
42
TESTE DE MIGRAÇÃO DE DADOS
É recomendável a utilização de equipes de teste com perfis
distintos para elaboração, execução e validação das etapas
de migração:
 Equipe de teste de aceitação;
 Equipe de teste operacional;
 Equipe de teste de legado.
43
TESTE DE MIGRAÇÃO DE DADOS
As equipes de teste de aceitação e operacional irão
realizar o teste de concepção e execução em paralelo em
duas plataformas completamente diferentes (ideal) e com
objetivos e propósitos diferentes.
Já a equipe de teste de legado irá trabalhar com cada um
dos outros grupos separadamente.
44
TESTE DE MIGRAÇÃO DE DADOS
Equipe de teste de aceitação
A principal tarefa deste grupo é a definição, execução e
análise dos resultados de todos os casos de teste de
negócio possíveis.
Embora pareça uma tarefa trivial, ela não é, pois existe um
grande desafio na elaboração dos testes de migração, já
que os cenários de negócio são novos para os testadores e
será a primeira vez que irão utilizá-los.
45
TESTEDE MIGRAÇÃO DE DADOS
Equipe de teste de aceitação (cont.)
Uma vez que os resultados dos cenários de negócio são
muito importantes e devem ser exatos, quase não existe
tolerância a ocorrência de um erro.
A equipe de teste de legado deverá trabalhar em estreita
colaboração com a equipe de aceitação.
46
TESTE DE MIGRAÇÃO DE DADOS
Equipe de teste de aceitação (cont.)
Na prática a equipe de legado deverá aprovar ou não cada
resultado de caso de teste que a equipe de aceitação irá
executar e produzir.
Sem estas aprovações o sistema será considerado como
não migrado.
47
TESTE DE MIGRAÇÃO DE DADOS
Equipe de teste de aceitação (cont.)
As equipes de aceitação e legado irão verificar os
resultados dos cenários de negócios a nível de bits e bytes,
ou seja no detalhe, quanto a exatidão dos valores, dados,
relatórios, cálculos, estruturas de arquivos, botões de
trabalho, arquivos de entrada e etc.
48
TESTE DE MIGRAÇÃO DE DADOS
Equipe de teste operacional
É composta de usuários que irão utilizar o sistema. O grupo
operacional irá realizar testes em paralelo com a equipe de
aceitação mas com um objetivo completamente diferente.
Este grupo irá trabalhar na futura plataforma e no ambiente
sob todos os aspectos que não sejam sob o ponto de vista
do negócio, ou seja, de conectividade e interoperabilidade.
Irá testar interfaces, desempenho, sistema de back-ups e
demais elementos da nova plataforma.
49
TESTE DE MIGRAÇÃO DE DADOS
Equipe de teste operacional (cont.)
Uma vez que a equipe de legado tem o conhecimento das
características internas e externas e o comportamento geral
do sistema antigo, eles poderão comparar e aprovar os
resultados produzidos pela equipe operacional.
50
TESTE DE MIGRAÇÃO DE DADOS
Equipe de teste de legado
É composta por pessoas da área de negócio que estão
familiarizadas com o sistema antigo.
Esta equipe irá trabalhar com cada um dos outros grupos
separadamente, ou seja, 50% com a equipe de teste de
aceitação e 50% com a equipe Operacional.
51
TESTE DE MIGRAÇÃO DE DADOS
Nesta etapa a equipe de testes dependendo da situação
deverá escolher e aplicar os tipos de testes já estudados
nas aulas anteriores.
O grau de validação requerido depende do quão críticos
sejam os dados a serem convertidos.
Teste de migração de uma plataforma a outra pode incluir
testes operacionais do novo ambiente tanto quanto a
mudança de software.
52
TESTE DE MIGRAÇÃO DE DADOS
Simulação do novo sistema em substituição ao antigo
Nesta etapa do processo, deverá ser realizada um simulado
do novo sistema em condições reais de funcionamento em
paralelo ao antigo sistema, para que o usuário gestor possa
avaliar possíveis necessidades de ajustes do fluxo
operacional e computacional de forma a trazer benefícios
com a instalação do novo sistema.
53
TESTE DE MIGRAÇÃO DE DADOS
Simulação do novo sistema em substituição ao antigo (cont.)
Deve ser dada uma atenção especial aos dados migrados
automaticamente para garantir que não haja erros no
software de migração.
Os dados migrados devem ser verificados para garantir que
um nível de exatidão apropriado tenha sido alcançado.
54
TESTE DE MIGRAÇÃO DE DADOS
Simulação do novo sistema em substituição ao antigo (cont.)
Quando os resultados ultrapassarem o limite de exatidão
aceitável, devem ser identificadas as causas e aplicado
procedimentos corretivos, como por exemplo:
 As correções requeridas nos dados de origem e a
execução novamente da conversão.
55
TESTE DE MIGRAÇÃO DE DADOS
Simulação do novo sistema em substituição ao antigo (cont.)
 Identificação das correções para o software de
conversão de dados automatizado (normalmente através
da criação de um Controle de Mudança), e a execução
novamente da conversão, tendo em vista a correção do
software.
 A observação dos erros de dados para a correção
manual no novo sistema.
56
TESTE DE MIGRAÇÃO DE DADOS