Sistema de Aprendizado de Linguagem de Acesso à Dados em um Simulador Compacto de Banco de Dados (Ferramenta Tupan)

Documentos relacionados
Banco de Dados. Um momento crucial na organização dos dados é a forma com que cadastramos estes dados, a estrutura de armazenamento que criamos.

Orientação a Objetos

Prof. Marcelo Machado Cunha

PHP INTEGRAÇÃO COM MYSQL PARTE 1

Conceitos de Banco de Dados

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

SQL. Curso Prático. Celso Henrique Poderoso de Oliveira. Novatec

CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA

SQL APOSTILA INTRODUÇÃO A LINGUAGEM SQL

Banco de Dados. Uma coleção de dados relacionados [ELMASRI/NAVATHE]

LINGUAGEM SQL. DML - Linguagem de Manipulação de Dados

Desenvolvendo Websites com PHP

DIRETRIZES DE USO DA MATRIZ DE SISTEMATIZAÇÃO DE INFORMAÇÕES

Microsoft Access XP Módulo Um

Treinamento sobre SQL

Aplicação Prática de Lua para Web

Banco de Dados. Prof. Antonio

Bem- Vindo ao manual de instruções do ECO Editor de COnteúdo.

Noções de. Microsoft SQL Server. Microsoft SQL Server

Introdução a Banco de Dados

Introdução a Java. Hélder Nunes

ÍNDICE 1 INTRODUÇÃO ACESSO AOS SISTEMAS DOCUMENTOS MANUTENÇÃO OCR REGISTRO DE DOCUMENTOS GERANDO DOCUMENTOS

Revisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL

SISTEMA TYR DIAGRAMAS DE CLASSE E SEQUÊNCIA Empresa: Academia Universitária

Introdução Banco de Dados

Junções e Índices em Tabelas

Lógica de Programação

Sistemas Operacionais

Introdução. Banco de dados. Por que usar BD? Por que estudar BD? Exemplo de um BD. Conceitos básicos

Principais Comandos SQL Usados no MySql

Tabela e Gráficos Dinâmicos Como estruturar dinamicamente dados no Excel

Como funcionam os comandos de SQL no Logic Basic Por Alan Oliveira

Prevayler. Perola. André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki

Introdução à Engenharia da Computação. Banco de Dados Professor Machado

Programando em PHP. Conceitos Básicos

SQL Structured Query Language

Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Exercícios de Lógica Exercícios de Fixação 08

Sistemas Operacionais

Software automatizado para controle de consultas da clínica de fisioterapia

Engenharia de Software III

UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN CURSO SUPERIOR DE TECNOLOGIA EM SISTEMAS PARA INTERNET. Programação para Internet I

Operações de Caixa. Versão 2.0. Manual destinado à implantadores, técnicos do suporte e usuários finais

Prof.: Clayton Maciel Costa

Procedimentos para Reinstalação do Sisloc

Disciplina: Unidade V: Prof.: Período:

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0

Sistemas de Banco de Dados

APLICATIVO WEB PARA O SETOR DE EXTENSÃO IFC VIDEIRA

Fundamentos dos Sistemas de Informação Organização de Dados e Informações

Gerenciamento de Transações

LINGUAGEM SQL. SQL Server 2008 Comandos iniciais

Persistência de Dados

Análise de Dados do Financeiro

Padrão ix. Manual de Instalação do Q-Ware Server Versão

Menu Utilitários. Atualização do Banco de Dados Atualização e organização dos arquivos existentes

Sistemas de Banco de Dados Aspectos Gerais de Banco de Dados

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource Rev: 02

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas

Disciplina: Unidade III: Prof.: Período:

Sistema de Controle de Solicitação de Desenvolvimento

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta:

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

Banco de Dados. Microsoft Access

Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional

CURSO DE INFORMÁTICA BÁSICA AULA 2 O AMBIENTE WINDOWS

Introdução à Banco de Dados. Nathalia Sautchuk Patrício

Sistema de Arquivos. Ambientes Operacionais. Prof. Simão Sirineo Toscani

Sistemas Distribuídos

Cadastramento de Computadores. Manual do Usuário

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

Manual Administrador - Mídia System

Persistência e Banco de Dados em Jogos Digitais

MANUAL C R M ÍNDICE. Sobre o módulo de CRM Definindo a Campanha... 3

1. CONCEITOS BÁSICOS DE BD, SBD E SGBD

Banco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon

Introdução a Sistemas de Bancos de Dados

Banco de Dados. Aula 1 - Prof. Bruno Moreno 16/08/2011

Manual de Gerenciamento de Conteúdo

Manual do Visualizador NF e KEY BEST

Administração de Banco de Dados

QUESTINAMENTOS AO EDITAL DE CONCORRÊNCIA 01/2013

Manual de Utilização

A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande

Síntese das discussões do fórum Livro-APF: Julho/2010

PROCESSO JUDICIAL ELETRÔNICO PJe

Manual do sistema SMARsa Web

Banco de dados 1. Linguagem DML SQL Select Avançado. Professor: Victor Hugo L. Lopes

Organização do Curso. Instalação e Configuração. Módulo II. Pós Graduação em Projeto e Gerencia de Redes de Computadores

Tarefa Orientada 16 Vistas

Banco de Dados. Maurício Edgar Stivanello

Manual UNICURITIBA VIRTUAL para Professores

Como gerar arquivos para Sphinx Operador

MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET

Manual SAGe Versão 1.2 (a partir da versão )

GEADA. Gerador de Expressões Algébricas em Digrafos Acíclicos. para versão 1.0, de agosto/2008. Autor: Márcio Katsumi Oikawa

Manual do Contribuidor. Portal de Internet. Projeto: Novo Portal de internet

Banco de Dados Microsoft Access: Criar tabelas

Transcrição:

Sistema de Aprendizado de Linguagem de Acesso à Dados em um Simulador Compacto de Banco de Dados (Ferramenta Tupan) Daniel, H. S. Atilio 1, Gabriel, C. Arroyo 1, Luis, A. da Silva 1 1 Curso de Tecnologia em Banco de Dados - Faculdade de Tecnologia de Bauru (FATEC) Rua Manoel Bento da Cruz, nº 30 Quadra 3 - Centro - 17.015-171 - Bauru, SP - Brasil {daniel.atilio, gabriel.arroyo, luis.silva51}@fatec.sp.gov.br Abstract. This study aims to present a tool to assist in learning the manipulation language called Structured Query Language data (SQL). We conclude that the tool presented efficiently and effectively the objectives proposed in this paper. Resumo. Este estudo tem como objetivo apresentar uma ferramenta para auxiliar à aprendizagem da linguagem de manipulação de dados denominada Structured Query Language(SQL). Através da manipulação de uma pseudo linguagem mais simples de ser assimilada e analisada. 1. Introdução Segundo Rodrigues (2002), durante o processo de ensino-aprendizagem de fundamentos de programação nota-se que grande parte dos alunos apresentam dificuldades em assimilar as abstrações envolvidas. Dificuldades também encontradas na aprendizagem de cláusulas SQL. Em virtude dessas dificuldades, justifica-se a criação de uma ferramenta que auxilie no aprendizado da linguagem de manipulação, permitindo o uso de uma pseudo linguagem que facilite o entendimento, possibilitando ver na prática e em tempo real as consultas ao banco de dados. Este trabalho está dividido da seguinte forma: na seção 2 são apresentados conceitos importantes para o desenvolvimento, sendo estes: Classes e Objetos, Ponteiros, Lista Encadeada, Arquitetura do Banco de Dados e Operações de Busca, Java e SQL. Na seção 3, será descrita a metodologia da ferramenta. Na seção 4 são apresentadas as considerações finais. 2. Tecnologias Envolvidas Agora uma análise dos conceitos que utilizamos na criação da ferramenta. Detalhando o caminho seguido para a finalização do projeto. A linguagem utilizada, o conceito de classes e objetos, lista encadeada, ferramentas que nos auxiliaram para ser possível a manipulação e metodologia da ferramenta Tupan.

2.1. Classes e Objetos Um programa é visto como um conjunto de objetos que se comunicam. Na Figura 1, cada objeto mantém informações internamente, o que chamamos de atributos. Dessa forma, um sistema desenvolvido utilizando a Programação Orientada a Objetos (POO) possui objetos que colaboram entre si, executando tarefas específicas em busca de um objetivo comum. Esses Objetos são usados para representar entidades do mundo real, ou seja, eles são usados para representar abstrações que fazem parte da solução do programa. (Bezerra et al, 2012). Figura 1. Interação entre objetos 2.2. Ponteiros A melhor forma de manipular dados em memória é utilizando Ponteiros, pois ao invés de criar várias variáveis e manipulá-las, se torna mais simples ter uma variável do tipo ponteiro, onde se pode obter o endereço na memória Random Access Memory (RAM), e assim deixar o programa mais flexível, Langsam e Augenstein (1995), o valor de um ponteiro é uma posição de memória e os valores dos ponteiros podem ser atribuídos como quaisquer outros valores. Um exemplo seria a manipulação de arquivos texto. Ao abrir um arquivo, ele fica em um endereço de memória, e para pegar seu conteúdo ele é manipulado através desse endereço. Em um cenário onde não há ponteiros para manipulação do arquivo texto, fica inviável seu processamento, pois o arquivo pode ser alterado, ou o programa pode ter substituído a variável. [Tenenbaum, Langsam e Augenstein 1995]. Porém essa prática pode ser perigosa, apesar de flexível, conforme Tenenbaum, Langsam e Augenstein (1995), se dois ponteiros X e Y tiverem o mesmo valor, as variáveis X e Y são idênticas e se referem ao mesmo objeto, portanto uma alteração na variável X acarreta na alteração da Y e vice-versa. Portanto, cada tipo de variável, seja numérica, texto, arquivo, dentre outros tipos, possui um tamanho reservado na memória,

e o caminho inicial que denomina-se de ponteiro. É ele que contém o endereço do dado na memória RAM. De acordo com a Figura 2, nota-se uma tabela representando as variáveis, e respectivamente seu endereço de memória. Como a variável com conteúdo numérico denominada nvalor possui o endereço de memória 1984, assim como a variável com conteúdo texto denominada ctexto possui o endereço de memória 1993 e a variável com conteúdo matriz denominada de aarquivo possui o endereço de memória 2000. Figura 2. Exemplificação de Ponteiros na memória A variável nvalor (com conteúdo numérico) possui o endereço de memória 1289, independente de seu conteúdo. 2.3. Lista Encadeada Quando se pretende carregar vários dados na memória, sem ter um limite conhecido, geralmente é utilizado o conceito de Lista Encadeada, que diferentemente de vetores e matrizes, tem sua alocação de dados dinâmica e sempre variável. Por exemplo, ao fazer um cadastro de funcionários, não é viável colocar um tamanho fixo de funcionários cadastrados para aquele setor, pois o número pode variar. A manipulação de dados funciona carregando os dados na memória (através de ponteiros, onde apesar de ter um valor para uma variável, ela também tem um endereço) e acessando eles conforme termos de pesquisa ou busca. Dessa forma, um Sistema gerenciador de Banco de Dados (SGBD) consegue fazer uma pré-indexação de dados para a pesquisa, além de uma indexação de arquivos para leitura. Segundo Saliba Junior (2007), há benefícios e malefícios ao utilizar ponteiros para manipulação de dados, por exemplo, manipular facilmente os dados sem precisar da estrutura de uma matriz, porém a complexidade do código aumenta exponencialmente.

Há dois métodos de manipulação de arquivos com lista encadeada, o primeiro é o Alocação por Lista Encadeada e o segundo é o Alocação por Lista Encadeada utilizando uma tabela na memória. O primeiro caso basicamente é alocação de dados através de uma Lista, porém, o método de acesso pode se tornar lento, já que será preciso percorrer cada posição, para encontrar o dado buscado. O segundo é semelhante ao primeiro, porém a alocação fica diretamente na memória RAM, fazendo com que, ao buscar um dado, ao invés de abrir o conteúdo dos arquivos e ler novamente os dados, basta procurar em uma Tabela temporária na memória RAM, e através disso manipular a informação. Nesse método, o único empecilho é o consumo de memória, já que, ao abrir vários arquivos e carregar os conteúdos necessários em memória, a RAM pode ficar comprometida. Abaixo, um diagrama explicando o funcionamento de uma lista encadeada na manipulação de dados focando no Sistema Compacto de Banco de Dados Cartagena (2008). A Figura 3 representa a manipulação de dados de uma Lista Encadeada, onde há um início e um fim, e é possível passar por todos os itens através de um laço, por exemplo, abaixo há 4 Dados, sendo que o primeiro aponta para o segundo que aponta para o terceiro que aponta para o quarto que aponta para o quinto. Figura 3. Representação de funcionamento de Lista Encadeada 2.4. Arquitetura do Banco de Dados A Arquitetura de um Banco se baseia em integração dos dados, por exemplo, para Heuser (2008), Banco de Dados é um conjunto de dados integrados que tem por objetivo atender a uma comunidade de usuários. Já para Damas (2007), um banco de dados consiste em uma coleção de dados estruturados, organizados e armazenados de forma persistente. Esse persistente seria pela durabilidade, já que os dados salvos ficam armazenados no disco rígido e não na memória volátil (memória RAM).

Porém o mais interessante na arquitetura de um banco, está na otimização e flexibilidade no controle das informações, por exemplo, em instruções SQL. Segundo Heuser (2008), na instrução SQL, o programador não faz referência a algum tipo de caminho de acesso, o próprio SGBD decide quais caminhos de acesso serão eventualmente usados para execução da instrução. Ou seja, ao fazer clausulas de seleção de dados, ou até mesmo atualização ou inserção, o próprio sistema identifica caminhos apropriados para colher os dados ou para manipulá-los, sem que o programador se preocupe com essas definições. Conforme Damas (2007), antes do aparecimento dos SGBD, os dados eram armazenados em arquivos, onde existem dois tipos de arquivos de dados, os arquivos delimitados e os arquivos de registros com comprimento fixo. Portanto, é possível manipular um banco com arquivos texto, mesmo que para exemplificação aos usuários, como clausulas de seleção de dados. Conforme representação, na Figura 4, é possível verificar a manipulação de dados de um arquivo texto, onde o conteúdo após a leitura é tabulado para manipulações. Figura 4. Exemplificação de tratamento de conteúdo de arquivos de texto 2.5. Operações de Busca As buscas de dados se baseiam em Tabelas, para Tenenbaum, Langsam e Augenstein (1995), uma tabela é um grupo de elementos, cada um dos quais chamado registro, sendo que a tabela pode ficar totalmente na memória, totalmente em armazenamento auxiliar ou pode ser dividida em ambos. Portanto, uma busca de informações, depende da estrutura da tabela em memória. Segundo Tenenbaum, Langsam e Augenstein (1995), as pesquisas na memória principal (memória RAM) são chamadas de buscas internas, enquanto as de maior parte mantidas em tabelas auxiliares são chamadas de buscas externas. Em ambos os casos, a tabela inteira será percorrida para procura dos dados.

Existem vários tipos de busca de dados, porém o algoritmo mais simples, é a busca de argumentos, conforme Tenenbaum, Langsam e Augenstein (1995), onde explicam que um algoritmo de busca é o que aceita um argumento X e tenta encontrar um registro que tenha essa chave igual a X, onde a busca pode retornar o registro ou um ponteiro. Dessa forma, a pesquisa irá receber argumento(s) e através desse, irá percorrer as tabelas e dados em memória RAM, e os que satisfazerem a condição, serão mostrados, armazenados ou manipulados. Na representação da Figura 5, foi feito um filtro simples, onde a idade de cada pessoa seria 13, de 8 registros, foram encontrados 3, com isso é possível através de operações de busca a filtragem e comparação dos dados. 2.6 Linguagem Java Figura 5. Representação de filtragem de dados A linguagem de programação Java foi criada em 1995 pela antiga Sun Microsystems, hoje incorporada pela empresa Oracle. Para Braz (2006), apesar de relativamente nova, a linguagem obteve uma espetacular aceitação por programadores do mundo inteiro. Dentre vários fatores que colaboraram com isso, o fato da linguagem possuir orientação a objetos e independência de plataforma foi determinante para seu sucesso. Com o advento da Internet, à comunicação entre plataformas heterogêneas se tornou fundamental, fazendo com que o Java fosse à tecnologia perfeita para este novo cenário. Assim como outras linguagens: C++, Python, Ruby, Smalltalk, Javascript, C#. Java também é orientado a objetos. 2.7 Structured Query Language (SQL)

Segundo Damas (2007) SQL é uma sigla inglesa de Structured Query Language que significa, em Português, Linguagem de Consulta Estruturada, uma linguagem padrão de gerenciamento de dados que interage com os principais bancos de dados baseados no modelo relacional. A SQL foi projetada e implementada pela IBM, como uma interface para o sistema de banco de dados relacional SYSTEM R, tendo sido chamada inicialmente de Structured English Querry Language (SEQUEL). Alguns dos principais sistemas que utilizam SQL são: MySQL, Oracle, Firebird, Microsoft Access, PostgreSQL (código aberto), HSQLDB (código aberto e escrito em Java). Alguns dos principais sistemas que utilizam SQL são: MySQL, Oracle, Firebird, Microsoft Access, PostgreSQL (código aberto), HSQLDB (código aberto e escrito em Java). Macoratti (2010) destaca as seguintes características em SQL: a) Criação de bases de dados; b) Segurança de acesso aos dados; c) Integridade de transações; d) Manipulação e controle de dados; e) DDL (Uma linguagem de definição de dados); f) DML (Uma linguagem de manipulação de dados); g) DCL (Uma linguagem de segurança de dados). Alguns dos principais comandos SQL para manipulação de dados são: INSERT (inserção), SELECT (consulta), UPDATE (atualização), DELETE (exclusão). Ela possibilita ainda a criação de relações entre tabelas e o controle do acesso aos dados. 3. Ferramenta TUPAN A ferramenta foi desenvolvida utilizando a linguagem Java com classes e objetos, manipulando arquivos texto. O programa ao iniciar, carrega em listas encadeadas (ponteiros) de objetos valores que representam chaves primárias, chaves estrangeiras, registros e definições de campos e tabelas. Esses dados estão dentro de arquivos texto, com a extensão.bdt, préformatados para o carregamento correto das informações, quando o início das linhas é o caracter '>' que identifica uma linha com registros e dados, já quando começa com '*' identifica se é alguma chave primária ou estrangeira, se começar com '[' identifica o

início ou o fim de uma tabela. Além desses arquivos, é carregado também um arquivo de conversões entre a pseudo linguagem TUPAN e a linguagem SQL. Como a ferramenta foi desenvolvida utilizando a linguagem Java, ela possui flexibilidade para ser executada tanto em sistemas Windows como distribuições Linux como demonstra a Figura 6. Figura 6. Tela principal da ferramenta O programa contém algumas ferramentas que auxiliam no entendimento do tema Banco de Dados e na manipulação e configuração de registros no programa TUPAN (como janela de Log, explanação sobre SQL, conversão de consultas TUPAN de/para SQL). Porém, 3 ferramentas se destacam: 3.1 - Interpretação SQL A ferramenta de Interpretação SQL tem como foco, mostrar ao usuário, como fazer uma operação de seleção (SELECT), com validações simples como campos existentes, tabelas existentes e relacionamentos simples. Alertando ao usuário caso tenha algum erro na consulta elaborada.

Uma limitação atual da ferramenta é a não interpretação do conteúdo do where, group by e joins compostos (com mais de um teste ou mais de um relacionamento) como demonstra a Figura 7. 3.2 - Cláusula Gráfica Figura 7. Tela de Interpretação de Consultas Na ferramenta de Cláusula Gráfica, é possível selecionar um tipo de consulta, como Inserção, Seleção, Atualização ou Exclusão, além de ter outros recursos, como pegar automaticamente o relacionamento entre duas tabelas, manipulação de campos, filtragem gráfica dos dados e a geração da consulta na pseudo-linguagem TUPAN ou via SQL como é demonstrado na Figura 8. O foco dessa ferramenta é o auxílio na montagem das consultas, pois muitas vezes, podem ser confusas as cláusulas.

3.3 - Pesquisa Trechos Figura 8. Tela de montagem de Cláusulas graficamente A ferramenta de pesquisa de trechos utiliza o conceito de Busca em Arquivos, onde através de um caracter ou uma palavra qualquer, é pesquisado o conteúdo das 4 listas encadeadas, a de Chaves Primárias, a de Chaves Estrangeiras, a de Registros e a de Tabelas e Campos. Através de trechos que são coincididos, são montados os dados em tela como demonstra a Figura 9. Figura 9. Tela de filtragem de conteúdo das listas encadeadas Havendo a necessidade de manipular diversos dados simultaneamente, e sem prejudicar o desempenho, sendo viável então, utilizar o conceito de Lista Encadeada, ao

contrário de Vetores e Matrizes, a Lista Encadeada não tem um limite fixo de dados, ou seja, podendo inserir e remover dados facilmente. 3.4 Exemplo prático Quando um usuário vai realizar uma consulta SQL entre as tabelas de professores e notas da base de dados escola, primeiramente ele pode usar o recurso de Cláusula Gráfica (conforme Figura 10), selecionando a opção de SELECT, assim é possível escolher as duas tabelas que serão relacionadas e o tipo de relacionamento, no caso foi selecionado para privilegiar o relacionamento a esquerda (LEFT JOIN), e não foi feito nenhuma filtragem, por último clicando no botão Gerar. Figura 10. Tela de Recurso da Cláusula Gráfica

Com a cláusula gerada, o usuário irá testar utilizando o recurso de Interpretação (Figura 11), se houver algum erro de sintaxe nos relacionamentos, ou na seleção de dados, será mostrado ao usuário uma breve descrição do problema. Sendo que todas as opções disponíveis pode utilizar tanto SQL como a pseudo linguagem TUPAN feita totalmente em português. Figura 11. Tela de filtragem de conteúdo das listas encadeadas

Sendo possível fazer a conversão das consultas entre SQL e a pseudo linguagem TUPAN, através do recurso Conversão SQL <-> TUPAN (Figura 12). Dessa forma a ferramenta auxilia os testes em consultas, além da montagem, aprimorando o conhecimento do usuário. Figura 12. Tela de Conversão SQL para Tupan 4. Conclusão A pesquisa do trabalho foi qualitativa, sendo que a intenção é que, outros alunos em um futuro possam melhorar a ferramenta e aperfeiçoar sua experiência de uso. Para demonstrar o interesse dos usuários, foi aplicado o questionário em dois colégios técnicos de Bauru, onde as respostas foram favoráveis para o desenvolvimento da ferramenta. Baseado no levantamento dos resultados da pesquisa aplicada em dois colégios técnicos de Bauru foi detectado como maior dificuldade dos alunos o aprendizado sobre a linguagem SQL no ponto da aplicação dos comandos de consulta (Select) com Join

(junções). Devido a esses resultados a ferramenta foi construída para cobrir essa dificuldade tendo como técnica a possibilidade da utilização de uma pseudo-linguagem que tem o intuito de facilitar os primeiros contatos dos alunos com essa linguagem de consulta aos dados. Para a construção da ferramenta foram utilizados os conceitos de um SGBD para construir as bases de dados para aplicação dos estudos e exercitações da ferramenta, bem como técnicas de orientação a objetos e estrutura de dados para a sua construção. O intuito da ferramenta é ser um primeiro ponto de contato do aluno com a linguagem de consulta aos dados, dando a possibilidade do aprendizado através de uma pseudo-linguagem de mais fácil entendimento, já que se baseia na linguagem escrita. Facilitando assim, a continuidade do aluno no aprendizado dessa linguagem pelos métodos tradicionais. A ferramenta pode ser parte de um framework de estudo da linguagem de consulta e manipulação de dados, ficando como indicativo para trabalhos futuros a continuidade do desenvolvimento de outros módulos da ferramenta para compor esse framework. 7. Referências Bezerra, A.; Gomes, M.; Kulesza, U. Programação Orientada a Objetos. 2012. Braz, C. C. M.; Introdução à linguagem Java. 2006. Cartagena, Miguel Leonardo C.; Survey sobre Sistema de Arquivos. 2008. Damas, L.; Structured Query Language. Editora Gen Ltc, ed. 6, 2007. Heuser, C. A.; Projeto de Banco de Dados. Editora Bookman, v. 4, 2008. Macoratti, J. C.; SQL - Conceitos, aplicações e algo mais. 2010. Oracle Java. O que é java?. Rodrigues, M. C. Como Ensinar Programação?. Informática - Boletim Informativo Ano I n 01, ULBRA. Canoas, RS, Brasil. 2002. Saliba Jr., Edwar. Estruturas de dados. 2007. Tenenbaum, A. M.; Langsam, Y.; Augenstein, M. J; Estrutura de Dados Usando C. Pearson Makron Books, 1995.