Análise Comparativa de Ferramentas de Teste para Aplicações em

Propaganda
Análise Comparativa de Ferramentas de Teste para
Aplicações em Banco de Dados
Cynthia G. Pierazo¹, Letícia B. M. Rodrigues¹, Hélio R. Soares¹, Sônia P. Santana¹
1
Instituto de Informática – Centro Universitário do Triângulo (UNITRI)
Av. Nicomedes Alves dos Santos, 4545 – Gávea – Caixa Postal 38.411-106 –
Uberlândia – MG - Brasil
{cpierazo, lezinhabmr, sonia.ap.santana}@gmail.com,
[email protected]
Abstract. This article aims a comparative analysis between the tools DB Stress
and JMeter. For purposes of contextualization, it will be presented testing
basic concepts and also, afterward, some testing tools for applications in
databases. The tools presented are designed to help the analysis of databases
performance which provides a better quality of applications for uses.
Resumo. Este artigo tem como objetivo a análise comparativa entre as
ferramentas DB Stress e JMeter. Para fins de contextualização serão
apresentados conceitos básicos de teste, e em seguida algumas ferramentas de
teste para aplicações em bancos de dados. As ferramentas apresentadas têm
por objetivo auxiliar a análise de desempenho dos bancos de dados
possibilitando uma melhor qualidade das aplicações para os usuários.
1. Introdução
Cada vez mais os softwares estão presentes na vida das pessoas, seja em celulares,
bancos, entre outros. Consequentemente os mesmos estão se tornando cada vez mais
complexos devido ao avanço tecnológico. E o quesito qualidade é de extrema
importância para uma maior confiabilidade ao adquirir um software. Isso torna o teste
uma das etapas fundamentais no processo de criação de software.
Com o teste de software têm sido de suma importância para uma maior
qualidade do produto, várias técnicas e ferramentas vêm sendo propostas. As técnicas
utilizadas para o teste de software são as técnicas funcionais e estruturais.
O processo de teste consiste em executar o software de maneira controlada com
a finalidade de avaliar se o mesmo se comporta conforme o especificado.
A divisão deste artigo encontra-se organizada da seguinte forma: a seção 2
apresenta os conceitos básicos de teste com o objetivo de apresentar os tipos de teste e
algumas técnicas utilizadas. Na seção 3 mostra algumas ferramentas utilizadas para
realização de testes em bancos de dados, já na seção 4 encontra-se o estudo de caso das
ferramentas DB Stress e JMeter.
Na seção 5 apresenta a análise comparativa do estudo de caso das ferramentas
escolhidas e na seção 6 é apresentada a contribuição do artigo e a perspectiva de
trabalhos futuros.
2. Conceitos
A atividade de teste possui definições diferentes, isso é devido às diversas
estratégias de teste que podem ser utilizadas. Segue alguns exemplos:
•
Teste é uma das atividades de garantia da qualidade de software e constitui um
dos elementos para aprimorar a produtividade e a confiabilidade do software
(Maldonado, 1991).
•
O teste tem como objetivo encontrar defeitos (Myers, 1979).
•
Qualquer atividade que a partir da avaliação de um atributo ou capacidade de um
programa ou sistema, seja possível determinar se ele alcança os resultados
desejados (Dória, 2001).
•
A qualidade do software pode ser entendida como um conjunto de características
que devem ser satisfeitas, de modo que o software atenda a todas as
necessidades dos usuários (ROCHA, 2001).
Uma das metodologias de teste muito utilizada no mercado é a FURPS
(Functionality, Usability, Reliabity, Performance, Supportability). Esta metodologia é
dividida em categorias que serão descritas a seguir (Rios, 2012):
A categoria de funcionalidade visa verificar se o produto de software construído
esta de acordo com o que foi especificado. Para esta verificação pode-se realizar os
tipos de teste:
•
Teste funcional: concentra-se na verificação das funcionalidades do sistema
especificado. Também conhecido como teste caixa-preta (Gonçalves, 2003).
•
Teste de regressão: tem como objetivo verificar se as alterações realizadas no
sistema não afetaram partes inalteradas (Pinheiro, 2012).
•
Teste de volume: verifica se o sistema funciona com volume de dados definidos
em seus requisitos (Rios, 2012).
•
Teste de segurança: destinado a identificar possíveis falhas de acessos indevidos,
visando garantir a segurança da aplicação (Pressman, 2002).
A categoria de usabilidade tem o objetivo de demonstrar a facilidade de uso do
sistema. Segue os tipos de teste referente a esta categoria (Bernardo, 2011):
•
Teste de interface: é a interação do usuário com o produto de software
garantindo acesso a navegação das funcionalidades de acordo com o que foi
especificado.
•
Teste de usabilidade: verifica a facilidade de uso do sistema e se o mesmo segue
os padrões visuais da empresa.
A categoria de confiabilidade garante a integridade dos dados e da estrutura de
dados. Seguem alguns dos testes que podem ser realizados para garantir a
confiabilidade:
•
Teste de integração: possui o objetivo de avaliar a integração dos módulos para
identificar falhas de lógica do desenvolvimento do software (Emer, 2007).
•
Teste de estrutura: verifica a adequação do sistema com relação ao
desenvolvimento (Leitão, 2005).
•
Teste de estresse: avalia o software sob condições anormais, como: memória
insuficiente, carga de trabalho extrema, etc., ou seja, este teste possibilita uma
visão melhor de como o sistema deve ser dividido para facilitar os planos de
contingência e manutenção (Santana, 2007).
•
Smoke test: é uma passagem única pelo sistema, e geralmente é executado de
forma automática. O ideal é que seja realizado ao final da construção de cada
versão do sistema (Bernardo, 2011).
A categoria de desempenho visa garantir a velocidade de processamento das
informações. Podem ser realizados os tipos de teste a seguir (Rios, 2012):
•
De acordo com Rios (2012) ‘o teste de avaliação desempenho compara o
desempenho de um objetivo de teste a um sistema e uma carga de trabalho de
referência conhecidos’.
•
Teste de contenção: destinado a verificar se o software pode trabalhar de forma
aceitável com vários usuários ao mesmo tempo.
•
Teste de carga: tem como objetivo verificar se o software atende as exigências
do ambiente de produção.
•
Perfil de desempenho: teste que monitora as ações do software para identificar
os pontos de gargalos de desempenho e processos ineficientes (Bruneli, 2006).
A categoria de suportabilidade é a capacidade de o sistema funcionar em
diversos ambientes. A seguir os tipos de teste que contribuem para garantir esta
categoria (Rios, 2012).
•
Teste de configuração: garante que o sistema funcione em diferentes ambiente
de hardware e software.
•
Teste de instalação: garante que o sistema seja instalado conforme o esperado
em diferentes ambientes.
3. Algumas ferramentas do mercado
Para auxiliar o trabalho de teste nas aplicações de banco de dados o mercado de
tecnologia possui ferramentas que realizam os testes de forma automática, estes testes
trouxeram mais agilidade e mais credibilidade a esses produtos.
Das diversas ferramentas de teste em banco de dados, algumas delas são de
código livre, outras são freewares (ferramentas gratuitas) ou sharewares (ferramentas
gratuitas, porém com limitações de acesso a algumas funcionalidades ou de tempo para
utilização) e, por fim, algumas são pagas. A seguir será apresentado um breve resumo
do conceito de cinco ferramentas utilizadas no mercado: DTM DB Stress, DBTester,
JMeter, DBMonster, GS Data Generator. Posteriormente será realizado um estudo de
caso de duas ferramentas.
3.1 DTM DB Stress
O DTM DB Stress é uma ferramenta para fazer testes de estresse em partes de
servidores de sistemas de informação e aplicativos. Esta ferramenta permite a criação e
configuração de um conjunto contínuo de requisições para o servidor dos tipos OLAP
(execução de query) e OLTP (adicionar, modificar e apagar dados no banco de dados).
Ao mesmo tempo, o usuário pode alterar com flexibilidade o número e a prioridade de
ambos ou o tipo de requisições para o banco de dados ou aplicativo.
A ferramenta é útil para quem deseja ter certeza de que o produto está sendo
desenvolvimento pode trabalhar com um grande número de conexões simultâneas,
consultas e transações concorrentes. Esta ferramenta também possibilita que os
administradores de bancos de dados avaliem o desempenho atual do servidor e possam
realizar o planejamento do aumentar o poder de processamento (DTM Database Tools,
2013).
A tabela 1 apresentada às funcionalidades disponíveis para as versões do DTM
DB Stress.
Tabela 1. Funcionalidades por versão do DB Stress (DTM Database Tools, 2013)
Características
Standard
Professional
Enterprise
Número máximo de usuários
64
Ilimitado*
Ilimitado*
Número máximo de parâmetros SQL
10
99
99
Personalizar separador de valores
Funções de importação e exportação
Personalizar intervalos de estatísticas
Opção de conexão no nível de tarefa
Definir execução de script
Unir tarefas em grupo
Modo Console
Gerador de dados
Biblioteca de scripts
Integração visual segura
Comparação de relatórios
Visualizador de relatório
Relatório de dados de desempenho
Apresentar Plano de Execução
*O sistema operacional e o banco de dados podem limitar o número de threads.
3.2 DBTester
Esta ferramenta possibilita a realização de testes de integridade dos dados,
conectividade com bancos heterogêneos, definição de limites para os resultados das
consultas, monitorar o crescimento do banco de dados, criar repositório de casos de
teste, acompanhamento do crescimento de dados, migração de dados, verificação de
replicação entre os bancos de dados e configuração de teste com padrão pré-definido.
Esta ferramenta é um software pago (Imasterdata, 2013).
3.3 JMeter
A ferramenta JMeter é uma aplicação desktop projetada para a realização de
testes de desempenho e estresse em aplicações cliente/servidor. A ferramenta foi se
expandindo, sendo capaz de realizar outros testes, tais como servidor de banco de dados,
servidor FTP, entre outros. Alguns dos requisitos da ferramenta JMeter são (Apache –
Jmeter, 2013):
•
Escalabilidade para assegurar se um SGBD está capacitado para suportar certa
quantidade de usuários simultâneos.
•
Análise do tempo de resposta do sistema.
•
Expandir a capacidade de processamento e armazenamento de registros.
•
Aperfeiçoar o uso de seus recursos.
Os principais elementos ligados à execução de testes de capacitação de banco de
dados são: Grupo de Usuários, JDBC Request e Graph Results.
•
Grupo de Usuários: neste componente é possivel informar a quantidade de
usuarios que irá simular o teste e o comportamento dos usuários quanto à
utilização de requisições ao SGBD, segue os parametros básicos do componente
(Bernardo, 2011):
Número de Usuários: este parâmetro recebe a quantidade de usuários
concorrentes a simular o teste.
Tempo de Inicialização: qual será o tempo em segundos que a ferramenta
tem para colocar todos os usuários em execução.
Contador de Interação: indica o número de vezes que o comando do teste
será repedito. Marcando a opção infinito entende-se que o comando será
repetido muitas vezes até todos usuários concluírem.
•
JDBC Request: nesta funcionalidade é realizada a preparação do comando SQL
que deve ser executado (Apache –Jmeter, 2013).
•
Graph Results: esta funcionalidade exibe gráfico onde é possível visualizar
informações referente ao tempo de resposta dos teste realizados pelos usuários.
(Bernardo, 2011).
3.4 DBMonstrer
Esta ferramenta ajuda os desenvolvedores de bancos de dados, incrementando a
estrutura da base de dados, o uso de índices, e testando o desempenho da aplicação
sobre um grande número de dados. O DBMonster gera tanto testes aleatórios, quanto
testes da maneira que atendam as regras de negócio dentro do banco de dados SQL
(Horário, 2013).
3.5 GS Data Generator
Esta é uma ferramenta paga de testes automatizados que permite a geração de
dados. Essa ferramenta permite a geração de dados aleatórios e a realização de testes de
desempenho, usabilidade e carga de dados. (GSAPPS, 2013).
A tabela 2 apresenta as funcionalidades disponíveis em cada versão do GS Data
Generator.
Tabela 2. Funcionalidades das versões do GS Data Generator (GSAPPS, 2013)
Características
Standard
Professional
Geração de dados aleatórios
Dicionário de dados
Listas Personalizadas
Suporte a Integridade Referencial
Visualização e edição de dados
Operações com arquivos texto
Debug
Execução de lote
Portabilidade
Engenharia reversa de metadados
Inserir e Atualizar Operações
Controle de Pesquisa
Personalizar Funções
Funções pré – construídas
Suporte a Jscript e SQL
4. Estudo de Caso
Foi utilizado uma máquina com 3 GB de memória RAM, sistema operacional
Windows 7 de 32 bits e processador Intel Core i3 onde foi criado um ambiente virtual
com a ferramenta Virtualbox com memória de 1024MB, sistema operacional Windows
XP, a ferramenta Oracle Database 10g XE, a ferramenta de teste DB Stress versão
Enterprise 1.21.01 e a ferramenta JMeter versão 2.9. Foi utilizado o modelo de dados
de uma empresa de Recursos Humanos, este modelo está disponível na versão do Oracle
utilizada para os testes, cujo owner é HR.
O estudo de caso foi baseado nos seguintes critérios:
•
Custo;
•
Plataformas;
•
Conexão com banco de dados;
•
Funcionalidades;
•
Interface Gráfica;
A tabela 3 apresenta as principais funcionalidades das duas ferramentas
analisadas.
Tabela 3. Funcionalidades DB Stress x JMeter
Opções
DB Stress
JMeter
Código Livre
X
Multiplataforma
X
Conexão com vários bancos de dados
X
X
Gráficos
X
X
Execução de script
X
X
Simulador de Usuários
X
X
Gerador de Dados
X
Relatório Comparativo
X
Plano de Execução
X
Modo Console
X
Log
X
Biblioteca de scripts
X
X
X
Analisando a tabela 3 observa-se que o DB Stress é compatível apenas com a
plataforma Windows, enquanto a ferramenta JMeter possui compatibilidade com
qualquer ambiente capaz de suportar a máquina virtual Java versão 1.4 ou superior
(Solaris, Linux, Windows e etc.).
Avaliando as ferramentas com relação a custo identifica-se que a ferramenta
JMeter é de código livre e a ferramenta DB Stress é um software pago, cujo as
informações referente a valores e licenças estão disponível no site da ferramenta.
Ambas as ferramentas podem ser conectadas aos bancos de dados: Microsoft
SQL Server, Oracle, MySQL, Interbase/Firebird, IBM DB2 e PostgreSQL.
Para demonstrar algumas funcionalidades foi simulado o cadastro de dados na
tabela “employees” do modelo de dados do Oracle de owner HR. Será simulado o teste
com 2 usuários simultâneos por um período de 50 segundos. O teste será realizado
primeiramente na ferramenta DB Stress.
Para iniciar o teste é necessário configurar a conexão com banco de dados que
na ferramenta DB Stress é uma conexão ODBC comumente utilizada em banco de
dados relacionais, conforme pode ser visto na figura 1.
Após a conexão com o banco ter sido configurada os scripts de teste podem ser
preparados na funcionalidade "Task Properties” onde deve inserir os scripts SQL
manualmente ou através de arquivos salvos e realizar a definição da quantidade de
usuários que executarão os testes. A figura 2 exibe a preparação dos scripts do teste.
Na funcionalidade “Project Stress” ocorre à execução de todas as tarefas de teste
configuradas. Nesta funcionalidade é permitida a configuração de tempo de execução,
ordem e inicialização da execução dos testes programados. A configuração de execução
do teste pode ser vista na figura 3.
Uma funcionalidade bastante utilizada após a realização dos testes é o resultado
em gráfico exibido na figura 4. Através do gráfico é possível visualizar o desempenho
dos testes realizados por cada usuário durante o período de tempo de execução
configurado.
Esta funcionalidade possui a desvantagem de não ter opção de armazenar o
gráfico gerado. Para obter os resultados dos testes realizados anteriormente é possível
avaliar através de relatórios ou realizar uma nova execução.
Figura 1. Configuração da conexão com banco de dados no DB Stress.
Figura 2. Preparação do teste
Figura 3. Configuração da execução do teste
Figura 4. Resultado por gráfico no DB Stress
Figura 5. Console SQL
O DB Stress ainda possibilita a execução de instruções SQL através da
funcionalidade “Console SQL”. Nesta funcionalidade quando o mouse é colocado sobre
a coluna exibida nos resultados é possível saber que tipo de dado é armazenado na
coluna. Os resultados das instruções SQL podem ser exportados para os formatos: TXT,
SQL, HTML, XML ou Microsoft Excel, como é demonstrada na figura 5.
A seguir será realizado o mesmo cenário de teste da ferramenta DB Stress na
ferramenta JMeter.
A primeira configuração a ser realizada no JMeter para o teste de banco de
dados é a configuração de quantos usuários, quantas vezes e quantos testes devem ser
realizados, isso ocorre na funcionalidade “Thread Group” conforme a figura 6.
Após a configuração de usuário deve ser criada a conexão com banco de dados
que no JMeter é feita uma configuração JDBC na funcionalidade “JDBC Connection
Configuration”. Para cada cenário de teste deve ser criada uma conexão com banco de
dados individual conforme é exibido na figura 7. Uma vantagem desta forma de
configuração é poder realizar testes com banco de dados diferentes.
Os scripts de teste devem ser inseridos manualmente na funcionalidade “JDBC
Request”. A configuração “Variable Name Bound to Pool” indica de qual Configuração
de conexão de banco de dados deve ser usada para a execução do teste. A criação do
script de teste esta exibida na figura 8.
Figura 6. Configuração de usuário
Figura 7. Conexão com banco de dados
Figura 8. Script de teste
Figura 9. Gráfico de resultados
Os resultados do teste realizado no JMeter são exibidos em gráfico de resultados
onde é possível visualizar os tempos de todas as requisições, o desvio padrão, a média e
a taxa de requisições realizadas por segundo. Esta funcionalidade permite que o usuário
escolha quais dados e em quais formatos serão salvos que deve ser configurado antes da
execução do teste na funcionalidade “Graph Results”. O resultado do teste está exibido
no gráfico da figura 9.
O JMeter ainda tem outras formas de apresentação dos resultados através das
funcionalidades "View Results Tree"e "Assertion Results".
5. Análise comparativa
Através do estudo de caso pode-se observar que com relação aos critérios de
custo e plataformas a ferramenta JMeter apresentou-se mais adequada. Com relação ao
critério de conexão com banco de dados, ambas a ferramentas podem se conectar aos
mesmos bancos de dadas.
No critério de funcionalidade as duas ferramentas possuem funcionalidades para
realização de teste de carga e desempenho que facilitam a análise das necessidades dos
ambientes corporativo das aplicações em banco de dados.
Pode se observar que a ferramenta DB Stress possui funcionalidades que
auxiliam nas atividades de instruções SQL e a possui funcionalidades além das
relacionadas à realização de testes para aplicações de banco de dados
Com relação ao critério de interface gráfica de ambas as ferramentas
demonstram usabilidade conforme padrão de ferramentas disponíveis no mercado.
A escolha para utilização do DB Stress ou JMeter está relacionado ao foco que a
empresa necessita para os testes. Se a aplicação em banco de dados for crítica e a
empresa dispõe de capital para investir em ferramenta paga a DB Stress apresentou-se a
mais direcionada para estes casos, porém se a empresa necessitar realizar testes em
aplicações de banco de dados e aplicações Web a ferramenta JMeter poderá atender de
forma satisfatória a essa necessidade.
6. Conclusão
O objetivo deste artigo foi apresentar uma comparação entre as ferramentas DB
Stress e JMeter como alternativa para auxílio nas tarefas diárias no ambiente
corporativo das aplicações de banco de dados.
Neste artigo foi possível observar que a ferramenta DB Stress possui as
desvantagens de pouca documentação disponível, ser um software pago, possuir a
limitação de pode ser utilizado apenas na plataforma Windows e apresentar o gráfico de
desempenho apenas após a execução do teste na própria ferramenta.
DB Stress pode ser indicado para empresas que trabalham com alto volume de
dados e administradores de banco de dados devido às vantagens de possuir vários
mecanismos de configuração, simulação de teste com usuários em diferentes tarefas e
funcionalidades que auxiliam a análise dos resultados dos testes executados.
Já o JMeter é uma aplicação de código aberto, multiplataforma, funcionalidades
para teste de aplicações web. A ferramenta possui a desvantagem de avaliar os
resultados apenas através de gráficos diante disto pode-se indicar esta ferramenta aos
desenvolvedores para realização de teste de carga, desempenho e stress.
Como trabalhos futuros seria a comparação dessas ferramentas com outras
ferramentas do mesmo segmento disponíveis no mercado ou a avaliação das outras
funcionalidades disponíveis na ferramenta JMeter.
7. Referências
DTM - Database Tools. Endereço BBS: sqledit.com, login: . 23 abril 2013.
Apache – Jmeter. Endereço BBS: jmeter.apache.org, login, . 23 abril 2013.
BRUNELI, Marcos Valério de Queiroz. A utilização de uma metodologia de teste no
processo da melhora da qualidade de software Campinas: Universidade Estadual de
Campinas, Instituto de Computação, 2006. 20p. (Tese, Mestrado). Disponível na
internet. http://www.bibliotecadigital.unicamp.br/document/?code=vtls000423676.
04 de maio de 2013.
BERNARDO, Paulo Cheque. Padrões de testes automatizados São Paulo: Universidade
de São Paulo, Instituto de Matemática e Estatística da Universidade de São Paulo,
2011. (Tese, Mestrado). Disponível na internet.
http://www.teses.usp.br/teses/disponiveis/45/45134/tde-02042012-120707/pt-br.php.
04 de maio de 2013.
MYERS, Glenford J., The art of sofware testing. New York: Wiley, 1979.
PRESSMAN, R. S. Engenharia de software. 5ª Ed. Rio de Janeiro: MCGraw-Hill, 2002.
RIOS, Emerson, BASTOS, Aderson, CRISTALLI, Ricardo et al. Base de conhecimento
em teste de software. 3ª Ed. São Paulo: Martins Editora, 2012.
MALDONADO, Jose Carlos. Critérios potenciais usos: Uma contribuição ao teste
estruturado de software. Campinas: Universidade Estadual de Campinas, Faculdade
de Engenharia Elétrica, 1991. (Tese, Doutorado). Disponível na internet.
http://www.bibliotecadigital.unicamp.br/document/?code=vtls000031945&opt=4. 04
de maio de 2013.
GONÇALVES, Klausner Vieira. Teste de software em aplicações de banco de dados
relacional. Campinas: Universidade Estadual de Campinas, Instituto de Computação,
2003.
(Tese,
Mestrado).
Disponível
na
internet.
http://www.bibliotecadigital.unicamp.br/document/?code=vtls000311559&opt=4. 12
de maio de 2013.
DÓRIA, Emerson Silas. Replicação de estudos empíricos em engenharia de software.
São Carlos: Instituto de Ciências matemática e de Computação – ICMC-USP, 2001.
(Tese,
Mestrado).
Disponível
na
internet.
www.teses.usp.br/teses/disponiveis/55/55134/tde-10052002103851/Emerson_Silas_Doria.pdf. 12 de maio de 2013.
EMER, Maria Claudia Figueiredo Pereira. Abordagem de teste baseada em defeitos
para esquemas de dados. Campinas: Universidade Estadual de Campinas, Faculdade
de Engenharia Elétrica e de Computação, 2007. (Teste, Mestrado). Disponível na
internet.
http://www.bibliotecadigital.unicamp.br/document/?code=vtls000426157&opt=4 12
de maio de 2013.
ROCHA, A, MALDONADO, Jose Carlos, WEBER, K. Qualidade de software: teoria e
prática. São Paulo: Prentice-Hall, 2001. 138p.
PINHEIRO, Arineiza Cristina. Subsídios para a aplicação de métodos de geração de
casos de testes baseados em máquinas de estados. São Carlos: Universidade de São
Paulo, Instituto de Ciências matemáticas e de computação, 2012. 6-7p. (Tese,
Mestrado).
Disponível
na
internet.
www.teses.usp.br/teses/.../DissertacaoREVISADA_ArineizaPinheiro.pdf. 12 de maio
de 2013.
LEITÃO, Plínio de Sá Júnior. Teste baseado na interação entre regras ativas escritas em
SQL. Campinas: Universidade Estadual de Campinas, Faculdade de Engenharia
Elétrica e de Computação, 2005. 3p (Tese, Doutorado). Disponível na internet.
http://www.bibliotecadigital.unicamp.br/document/?code=vtls000376468&opt=4. 14
de junho de 2013.
SANTANA, André Aguiar. Metodologia de teste para acelerar o desenvolvimento de
sistemas de processamento paralelo. São Paulo: Escola Politécnica da Universidade
de São Paulo, 2007. 26-32p (Tese, Doutorado). Disponível na internet.
www.teses.usp.br/teses/disponiveis/3/.../TeseAndreSantanaFinalv20OK.pdf. 14 de
junho de 2013.
GSAPPS. Endereço BBS: gsapps.com, login: . 05 maio 2013.
HORÁCIO, Janaina de Souza. GearDB: uma nova ferramenta para geração de dados.
ftp://ftp.inf.puc-rio.br/pub/docs/techreports/11_15_horacio.pdf. 05 maio 2013.
IMASTERDATA. Endereço BBS: imasterdata.com. 18 maio 2013.
Download