Técnicas de Integração de Sistema – Bottom Up

Continuando a série de posts sobre as técnicas de integração de sistema, aliás, preciso parar de começar e não terminar essas séries de posts (a das resoluções de questões da CTFL terminou, pelo menos por enquanto :)).

No último post sobre técnicas de integração de sistema, tínhamos comentado sobre a Top-down. Agora irei falar sobre a inversa da Top-down a Botton-up.

Na técnica Botton-up, a integração do sistema começa com a partir do nível mais baixo do software, ou seja, o módulo. O módulo é dito como o mais baixo nível se ele não depende de outro módulo. A Bottom-Up assume que todos os módulos foram individualmente testados antes.

Para integrar um conjunto de módulos usando a Bottom-Up, nós precisamos construir driver (controlador) que chamará o módulo a ser integrado. Uma vez que a integração de um grupo de baixo nível de módulos tenha sido considera satisfatória, o driver irá substituir o atual módulo e um ou mais drivers serão usados para integrar mais módulos com um conjunto de módulos já integrados. O processo de integração Botton-Up continua até todos os módulos terem sido integrados.

Segue abaixo um exemplo de uma integração usando a técnica Botton-up:

Integração Bottom-up dos módulos E, F, e G

Integração Bottom-up dos módulos E, F, e G

Integração Bottom-up dos módulos B, C, e D com o E, F, e G

Integração Bottom-up dos módulos B, C, e D com o E, F, e G

Integração Bottom-up do módulo A com todos os outros.

Integração Bottom-up do módulo A com todos os outros.

As vantagens da técnica Botton-up são:

  • Permite verificação antecipada de comportamento de baixo nível;
  • Stubs não são necessários;
  • Mais fácil para formular dados de entrada para algumas sub-árvores;
  • Mais fácil para interpretar dados de saída para outras sub-árvores.

As desvantagens da técnica Botton-up são:

  • Os testadores não podem visualizar as funções em nível de sistema a partir de uma parte do sistema já integrada. Aliás, eles não podem visualizar as funções em nível de sistema até o último driver ser colocado;
  • Geralmente, as decisões principais estão incorporadas nos módulos de alto nível. Desta maneira as principais falhas do sistema não podem ser encontradas até que os módulos de alto nível estejam integrados. Logo a verificação de comportamento de  alto nível é retardada.

Após ter visto a técnica Botton-up e a Top-down (aqui), podemos comparar as duas:

  • Validação das principais decisões: Os módulos de alto nível contêm as principais decisões. As falhas na modelagem dessas decisões são detectadas antecipadamente, se a integração realizada é a Top-down. Na técnica Botton-up, essas falhas são detectadas no final do processo de integração;
  • Dificuldade em elaborar os casos de teste: na abtécnica Top-down, como mais e mais módulos são integrados e stubs são utilizados mais distantes do módulo de alto nível, torna-se cada vez mais difícil a elaboração do comportamento do stub e a entrada do teste. No entanto, na técnica Botton-up, um comportamento é elaborado para um driver, através da simplificação de um comportamento de real do módulo;
  • Reusabilidade de casos de teste: usando a técnica Top-down os casos de teste são elaborados para testar a interface de um novo módulo e pode ser reusado para fazer testes de regressão nas próximas iterações. E futuramente os casos de teste podem ser reusados para o teste de nível de sistema. No entanto, usando a técnica Botton-up, todos os casos de testes incorporados aos drivers, exceto o driver para o teste alto nível, não podem ser reusados.

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

Assine o feed

Fonte:

NAIK, Kshirasagar; TRIPATHY, Priyadarshi. Software Testing and Quality Assurance. Hoboken (New Jersey): John Wiley & Sons, Inc., 2008.

Teste de Integração, Sistema e Aceitação, Alexandre Mota. (link)

Anúncios

2 comentários sobre “Técnicas de Integração de Sistema – Bottom Up

  1. Oi Maryana,

    Não é isso. É uma questão como você vai se aprofundando no sistema e não de planejamento. Numa você vai acomplando as partes, na outra você vai desacoplando.

    Abraços!

    Responder

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s