Você está na página 1de 16

CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA

Faculdade de Tecnologia de Itu


Curso Superior de Tecnologia em Análise e Desenvolvimento de
Sistemas

GREICY APARECIDA FERREIRA DOS SANTOS

Aplicação da Função “Full Text Search” em um


Sistema de Gerenciamento de Banco de Dados:
Um estudo de caso através de um Sistema de
Gerenciamento de Orientações de Trabalhos de
Conclusão de Curso

ITU
2014
GREICY APARECIDA FERREIRA DOS SANTOS

Aplicação da Função “Full Text Search” em um


Sistema de Gerenciamento de Banco de Dados:
Um estudo de caso através de um Sistema de
Gerenciamento de Orientações de Trabalhos de
Conclusão de Curso

Trabalho de Conclusão de Curso


apresentado à Faculdade de
Tecnologia de Itu “Dom Amaury
Castanho, como parte do
requisito parcial para obtenção
do grau de Tecnólogo em Análise
e Desenvolvimento de Sistemas”.

Orientador: Prof. Ricardo Roberto


Leme

ITU
2014
LISTA DE SIGLAS

TCC – Trabalho de Conclusão de Curso


SGBD – Sistema de Gerenciamento de Banco de Dados ou Database Management
System
SQL – Structured Query Language
FTS – Full Text Search
XML – Extensible Markup Language

LISTA DE FIGURAS
Figura 1. Arquitetura do Full Text Search no SQL Server
Figura 2. Resultado da Pesquisa com busca Semântica
1 INTRODUÇÃO

Quando um discente está na reta final do curso é necessário que o mesmo elabore
seu trabalho de conclusão de curso, no qual é regulamentado pela portaria da Fatec
Itu sendo considerada como uma atividade obrigatória, dividida em dois semestres.
A avaliação é feita pelos docentes responsáveis pela disciplina de Trabalho de
Graduação, considerando a média final semestral dos discentes.
Segundo Moro (2012), “Nenhum discente entra na universidade sabendo escrever
uma monografia, seja de graduação ou pós. Nesse contexto, cabe ao docente
orientador “ensinar” o discente a escrever a monografia.”
Qual seria a melhor forma do discente escolher um orientador para o seu TCC?
Para que o discente possa escolher um orientador que possa orientá-lo da melhor
maneira possível, é necessário que o mesmo conheça bem as áreas de
conhecimento do mesmo, e também de já ter um tema previamente estabelecido,
para então fazer um acordo formal entre ambos.
Mas como escolher um tema para o TCC?
Uma das principais dificuldades encontradas pelos discentes da Fatec Itu é a
escolha de um tema para o seu TCC, o que necessita de tempo, afinidade e muita
pesquisa. Muitas vezes o discente não tem tempo para ir até a biblioteca da
Instituição para consultar os temas que já foram desenvolvidos, para que se possa
ter uma base para a escolha do seu tema.
Diante deste contexto, esse trabalho tem como foco aplicar a Função Full Text
Search em um Sistema de Gerenciamento de Banco de Dados, por meio de um
estudo de caso através de um Sistema de Gerenciamento de Orientações de
Trabalho de Conclusão de Cursos, para que possa suprir as necessidades da
Instituição Fatec Itu, durante o desenvolvimento do trabalho.
1.1 JUSTIFICATIVA DO TEMA

O período de desenvolvimento do trabalho de conclusão de curso é um dos mais


complicados e mais importantes, tanto para a instituição quanto para os discentes,
pois é o período no qual o discente vai aplicar todo o conhecimento obtido ao longo
do curso. Durante o desenvolvimento o discente necessita de recursos e materiais
para que seja desenvolvido o seu trabalho, e principalmente de um orientador.
Um dos maiores problemas encontrados na Fatec Itu durante o desenvolvimento do
trabalho é a falta de informações referentes aos docentes, o que dificulta no
momento da escolha do orientador, pois o discente não tem acesso às áreas de
conhecimento do mesmo e da quantidade de orientandos que esse docente tem
naquele determinado semestre.
Outro problema é que muitas vezes o discente chega ao semestre no qual deve
desenvolver o trabalho, e não tem um tema previamente escolhido, ou muitas vezes
tem um tema, porém não sabe se já foi desenvolvido ou está sendo desenvolvido
por algum discente.
Um ponto importante a ser levantado, é sobre o gerenciamento do trabalho, onde
todo o processo de acordo entre orientador e discente, é feito através de um
documento que é preenchido manualmente e assinado pelo orientando e pelo
docente orientador, para posteriormente ser entregue ao docente responsável pela
disciplina de Trabalho de Conclusão de Curso, o que dificulta na identificação de
uma possível duplicidade de temas, pois o discente tem no mínimo dois semestres
para apresentar o seu trabalho.
Este trabalho de Conclusão de curso pretende apresentar um estudo de caso sobre
o processo de gerenciamento de orientações de Tccs, onde será fornecida aos seus
usuários a possibilidade de efetuar o controle via Web de forma organizada, tanto no
momento da escolha do orientador para o seu trabalho, quanto no desenvolvimento
do mesmo, disponibilizando aos discentes os trabalhos de conclusão de curso dos
anos anteriores e atuais temas que estão sendo desenvolvidos. Essa pesquisa
utilizará a função Full Text Search para que o usuário possa fazer pesquisas
avançadas na base de dados do sistema, de forma que através da palavra ou texto
digitado o usuário tenha acesso a todos os registros do sistema.
1.2 PROBLEMA DA PESQUISA

Um dos principais problemas encontrados na Faculdade de Tecnologia de Itu,


durante o desenvolvimento de trabalho de conclusão de curso foi à dificuldade
encontrada pelos discentes para escolher seu tema. Pois para que seja feita essa
escolha, é necessária uma boa pesquisa. O discente geralmente busca referências
em trabalhos que já foram elaborados anteriormente, porém muitas vezes o mesmo
não tem tempo para ir até a biblioteca da faculdade para verificar os TCCs que já
foram elaborados nos anos anteriores.
Outro problema identificado foi que após a escolha do tema, o aluno precisa
escolher um docente orientador, que é um pré-requisito para desenvolvimento do
trabalho acadêmico regulamentado pela portaria da Instituição. Para a escolha do
orientador também deve ser feita uma boa pesquisa, onde o discente deve verificar
quais as áreas de atuação de cada docente para escolher o que melhor se enquadra
no perfil do seu tema. Porém atualmente os alunos não tem acesso direto a essas
informações e também, quantos discentes estão sendo orientados por cada docente
naquele semestre.
Outro ponto levantado foi a respeito do gerenciamento dos trabalhos de conclusão
de curso. Tudo é feito de forma manual, os alunos não tem acesso às informações
dos temas que estão sendo desenvolvidos, o que pode gerar uma possível
duplicidade de temas, pois o aluno tem no mínimo dois semestres para finalizar seu
trabalho.
O desenvolvimento desse trabalho de conclusão de curso tem como objetivo,
auxiliar o discente durante o desenvolvimento do trabalho de conclusão de curso,
proporcionando a ele a possibilidade de fazer pesquisas avançadas na base de
dados do sistema referentes aos problemas citados e efetuar o controle via Web,
para que os discentes possam desenvolver seu trabalho da melhor forma possível.
1.3 HIPÓTESES

 Com o gerenciamento dos trabalhos de conclusão de curso sendo feito


através de um Sistema Web, os discentes poderão consultar os temas que já
foram desenvolvidos, facilitando na escolha do seu tema e prevenindo uma
possível duplicidade de temas;
 As informações referentes à área de atuação do orientador e a quantidades
de orientandos que o mesmo tem no semestre, ao qual o aluno está
desenvolvendo seu trabalho, facilitará no momento da escolha do orientador;
 O fato de o Sistema ser via Web, facilitará o acesso as informações para os
discentes, pois os mesmos poderão ter acesso a essas informações sem
precisar ir até a faculdade, o que resolverá o problema de falta de tempo dos
discentes;
1.4 OBJETIVO PRINCIPAL

O objetivo deste trabalho é aplicar a tecnologia Full Text Search presente nos
principais Sistemas de Gerenciamento de Banco de Dados em um Sistema de
Gerenciamento de Orientações de Trabalho de Conclusão de Curso.

1.2.1 OBJETIVOS ESPECÍFICOS

 Estudar a tecnologia Full Text Search;


 Comparar a tecnologia Full Text search em pelo menos dois diferentes
SGBD’s, para poder comparar a melhor performance de implantação do
recurso;
 Desenvolver o sistema de gerenciamento de TCC’s na plataforma web;
 Implementar a função Full Text Search no sistema de gerenciamento de
orientações de tcc’s;
1.5 METODOLOGIA

Para desenvolvimento do trabalho, foi feito um estudo de caso baseado no


Gerenciamento de Trabalhos de Conclusão de Curso da Fatec Itu.
Segundo Yin (1994) o estudo de caso é uma abordagem que se adapta à
investigação em educação, quando o investigador é confrontado com
situações complexas, de tal forma que dificulta a identificação das
variáveis consideradas importantes, quando o investigador procura
respostas para o “como?” e o “porquê?”, e quando o investigador pretende
aprender a dinâmica do fenômeno, do programa ou do processo.
Para que o trabalho pudesse ser desenvolvido, foi necessário utilizar uma
metodologia que atendesse as necessidades do trabalho quanto ao
desenvolvimento da pesquisa.
A metodologia utilizada foi a Scrum, que segundo Pressman (2006) é um
modelo ágil de processo que é usado para guiar as atividades de
desenvolvimento que incorpora as seguintes atividades de arcabouço:
requisitos, análise, projeto, evolução e entrega.
Durante o desenvolvimento do trabalho foram realizadas reuniões
semanais para discutir possíveis funcionalidades e melhorias para o
trabalho e para o sistema. Foi elaborado um cronograma do qual foram
feitas atividades referentes ao trabalho semanalmente.
Foram efetuadas pesquisas referentes à Função Full Text Search, quanto
a sua aplicabilidade e desempenho nos principais sistemas de
gerenciamento de banco de dados, para assim, poder escolher o
gerenciador que melhor se encaixava com o perfil do projeto.
O Sistema Gerenciador de Banco de Dados utilizado foi o MySql, pois é
um servidor que trabalha com aplicações de pequeno e médio porte, que
é o caso do Sistema desenvolvido, e é um Banco de Dados Open Source.
A Linguagem de programação utilizada foi PHP, que segundo VIVAS
(2014), “é uma linguagem que permite criar sites WEB dinâmicos,
possibilitando interação com o usuário através de formulários, parâmetros
da URL e links”.
2 BANCO DE DADOS

Segundo Elmasari e Navathe (2005) “Um banco de dados e sua tecnologia têm
um impacto importante sobre o uso crescente de computadores. Um banco de
dados é uma coleção de dados relacionados. Com dados, queremos dizer fatos
conhecidos que podem ser registrados e possuem significado implícito.”
“Um banco de dados tem alguma fonte da qual o dado é derivado, algum grau
de interação com eventos no mundo real e um público que está ativamente
interessado em seu conteúdo. Um banco de dados pode ser gerado e mantido
manualmente, ou pode ser computadorizado.”

2.1 SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS

Para Elmasari e Navathe (2011) um Sistema Gerenciador de Banco de Dados


(SGBD – Database Management System) é uma coleção de programas que
permite aos usuários criar e manter um bando de dados. O SGBD é, portanto,
um software de propósito geral que facilita os processos de definição,
construção, manipulação e compartilhamento de banco de dados entre vários
usuários e aplicações.

2.2 PRINCIPAIS SISTEMAS DE GERENCIAMENTO DE BANCO DE


DADOS

2.2.1 SQL

SQL (Structured Query Language) é um conjunto de comandos de


manipulação de banco e daos utilizado para criar e manter a estrutura desse
banco de dados, além de incluir, excluir, modificar e pesquisar informações nas
tabelas dele. A linguagem SQL não é uma linguagem de programação
autônoma; poderia ser chamada de “sublinguagem”. Quando se escrevem
aplicações para banco de dados, é necessário utilizar uma linguagem de
programação tradicional (C, Java, Pascal, COBOL, etc) e embutir comandos
SQL para manipular os dados. (OLIVEIRA, CELSO HENRIQUE PODEROSO,
SQL CURSO PRATICO, 2010, p. 18).

2.2.2 POSTGRESQL

O PostgreSql é um Sistema Gerenciador de Banco de Dados (SGBD)


Relacional, utilizado para armazenar informações de soluções de informática
em todas as áreas de negócio existentes, bem como administrar o acesso a
estas informações. (MILANI, ANDRÉ, POSTGRESQL GUIA DO
PROGRAMADOR, 2008, p. 25).

2.2.3 ORACLE

O Oracle é um SGBD (sistema Gerenciador de Banco de Dados) que surgiu no


fim dos anos 70, e hoje é líder de mercado. A Oracle é a primeira empresa a
desenvolver e implantar 100% de seus softwares para internet, como produtos
de banco de dados, aplicações de negócios e desenvolvimento de aplicações.
O banco de dados Oracle é um dos mais cogitados devido à segurança,
proteção de dados, capacidade de auditoria e recuperação de dados completo.
(SACCO, LUIZ ANTONIO, O ESTUDO DOS PONTOS FORTES DA
SEGURANÇA DO BANCO DE DADOS ORACLE 11G RELEASE 2, p. 1).

2.2.4 MYSQL

O MySql é um servidor e gerenciador de banco de dados (SGBD) relacional, e


licença dupla (sendo uma delas de software livre), projetado inicialmente para
trabalhar com aplicações de pequeno e médio portes, mas hoje atendendo
aplicações e grande porte e com mais vantagens do que seus concorrentes.
Possui todas as características que um banco de dados de grande porte
precisa, sendo reconhecido por algumas entidades como o banco de dados
Open Source com maior capacidade para concorrer com programas similares e
código fechado, tais como SQL Server (a Microsoft) e Oracle.(MILANI ,ANDRE,
MYSQL – GUIA DO PROGRAMADOR ,2007, p.22).
2.3 Função Full Text Search

O Full Text Search (ou simplesmente FTS) permite que sejam feitas pesquisas
de palavras em campos do tipo texto, XML ou binário, com flexibilizações
semânticas. Segundo Date (2003), os modelos semânticos são uma
classificação apropriada para a atividade de representar o sentido.
O Full Text Search tem a possibilidade também de efetuar uma pesquisa
indexada a estes campos, de forma muito simples, obtendo como resultado
não apenas os registros que contenham a palavra pesquisada, mas também
registros que contenham diferentes formas semânticas da mesma palavra, ou
até mesmo outras palavras que estejam relacionadas aos termos pesquisados.
O índice full-text (full text index), é um tipo especial de índice que armazena
informações sobre as palavras e suas respectivas localizações dentro de uma
coluna. Estas informações são posteriormente utilizadas pelo full-text search
para otimizar as consultas full-text que buscam por uma palavra específica ou
uma combinação delas. Estes índices são armazenados em estruturas
conhecidas como catálogo (full text search catologs) e juntos são mantidos
como uma coleção de pastas e arquivos no disco local do seu servidor. Os
catálogos podem armazenar índices full-text para uma ou mais tabela desde
que estas tabelas pertençam a um único banco de dados, ou seja, um catálogo
não pode pertencer a múltiplos bancos de dados.
Figura 1. Arquitetura do Full Text Search no SQL Server

Exemplo de Utilização do Full Text Search com busca por Semântica

SELECT Descricao FROM Comentarios


WHERE CONTAINS(Descricao, ‘FORMSOF(INFLECTIONAL, “colocamos”)’)

Figura 2. Resultado da Pesquisa com busca Semântica


3 BIBLIOGRAFIA

MORO, Mirella Moura. Como Organizar sua tese ou dissertação. 2012. 34 f.


TCC (Graduação) - Curso de Ciência da Computação, Universidade Federal de
Minas Gerais, Belo Horizonte, 2012.

YIN, Robert. Case Study Research: Design and Methods. 2. ed. Ca: Sage
Publications, 1994.

PRESSMAN, Roger S. Engenharia de Software.  Mcgraw-hill, 2006

VIVAS, Mauricio. Curso de Aplicações Web em PHP. Disponível em:


<http://pt.slideshare.net/alvarogomes/curso-php-14529507>. Acesso em: 28
out. 2014

ELMASRI, Ramez; NAVATHE, Shamkant B.. Sistema de Banco de Dados. 4.


ed. São Paulo: Pearson Addison Wesley, 2005.

ELMASRI, Ramez; NAVATHE, Shamkant B.. Sistema de Banco de


Dados. 6ºEdição. ed. São Paulo: Pearson Addison Wesley, 2011.

http://blogs.msdn.com/b/procha/archive/2008/05/15/consultas-full-text-em-
portugu-s-no-sql-server-2005.aspx, 2008

http://www.devmedia.com.br/artigo-da-sql-magazine-43-sql-server-2005-full-
text-search-parte-1/7043

DATE, C. J.. Introdução a Sistemas de Bancos de Dados. Tradução de Daniel


Vieira. Rio de Janeiro: Elsevier, 2003.

PRESSMAN, Roger S. Engenharia de Software, 2006


4 CRONOGRAMA DE AÇÕES
5 ESTIMATIVA DE RECURSOS

Você também pode gostar