CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE...

23
TURNO: Noturno VERSÃO: 01 N o UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIAS DA COMPUTAÇÃO — BACHARELADO COORDENAÇÃO DE TRABALHO DE CONCLUSÃO DE CURSO PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO TÍTULO: SISTEMA DE GESTÃO ESCOLAR ORIENTADO A OBJETO UTILIZANDO BANCO DE DADOS CACHÉ ÁREA: Sistema de Informação Palavras-chave: Gestão Escolar. Orientação a objetos. Banco de dados Caché. 1 IDENTIFICAÇÃO 1.1 ALUNO Nome: Juliano Walter Brune Código/matrícula: 15457 Endereço residencial: Rua: Rua João Ehrat n°: 71 Complemento: Apto 604 Bairro: Garcia CEP: 89090-020 Cidade: Blumenau UF: SC Telefone fixo: (47) 3035 1249 Celular: (47) 9185 9990 Endereço comercial: Colégio Madre Francisca Lampel Empresa: Colégio Madre Francisca Lampel Rua: Rua São Pedro n°: 125 Bairro: Centro CEP: 89110-000 Cidade: Gaspar UF: SC Telefone: (47) 3332-0935 E-Mail FURB: E-Mail alternativo: [email protected] 1.2 ORIENTADOR Nome: Wilson Pedro Carli E-Mail FURB: [email protected] E-Mail alternativo:

Transcript of CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE...

Page 1: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

TURNO: Noturno VERSÃO: 01 No UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIAS DA COMPUTAÇÃO — BACHARELADO COORDENAÇÃO DE TRABALHO DE CONCLUSÃO DE CURSO

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO

TÍTULO: SISTEMA DE GESTÃO ESCOLAR ORIENTADO A OBJETO UTILIZANDO BANCO DE DADOS CACHÉ

ÁREA: Sistema de Informação

Palavras-chave: Gestão Escolar. Orientação a objetos. Banco de dados Caché.

1 IDENTIFICAÇÃO

1.1 ALUNO

Nome: Juliano Walter Brune Código/matrícula: 15457

Endereço residencial:

Rua: Rua João Ehrat n°: 71 Complemento: Apto 604

Bairro: Garcia CEP: 89090-020 Cidade: Blumenau UF: SC

Telefone fixo: (47) 3035 1249 Celular: (47) 9185 9990

Endereço comercial: Colégio Madre Francisca Lampel

Empresa: Colégio Madre Francisca Lampel

Rua: Rua São Pedro n°: 125 Bairro: Centro

CEP: 89110-000 Cidade: Gaspar UF: SC Telefone: (47) 3332-0935

E-Mail FURB: E-Mail alternativo: [email protected]

1.2 ORIENTADOR

Nome: Wilson Pedro Carli

E-Mail FURB: [email protected] E-Mail alternativo:

Page 2: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

2 DECLARAÇÕES

2.1 DECLARAÇÃO DO ALUNO

Declaro que estou ciente do Regulamento do Trabalho de Conclusão de Curso de

Ciências da Computação e que a proposta em anexo, a qual concordo, foi por mim rubricada

em todas as páginas. Ainda me comprometo pela obtenção de quaisquer recursos necessários

para o desenvolvimento do trabalho, caso esses recursos não sejam disponibilizados pela

Universidade Regional de Blumenau (FURB).

Assinatura: Local/data:

2.2 DECLARAÇÃO DO ORIENTADOR

Declaro que estou ciente do Regulamento do Trabalho de Conclusão do Curso de

Ciências da Computação e que a proposta em anexo, a qual concordo, foi por mim rubricada

em todas as páginas. Ainda me comprometo a orientar o aluno da melhor forma possível de

acordo com o plano de trabalho explícito nessa proposta.

Assinatura: Local/data:

Page 3: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

3 AVALIAÇÃO DA PROPOSTA

3.1 AVALIAÇÃO DO(A) ORIENTADOR(A)

Acadêmico(a):

Orientador(a):

ASPECTOS AVALIADOS

aten

de

aten

de

par

cial

men

te

não

ate

nde

1. INTRODUÇÃO 1.1. O tema de pesquisa está devidamente contextualizado/delimitado?

1.2. O problema está claramente formulado?

2. OBJETIVOS 2.1. O objetivo geral está claramente definido e é passível de ser alcançado?

2.2. São apresentados objetivos específicos (opcionais) coerentes com o objetivo geral? Caso não sejam apresentados objetivos específicos, deixe esse item em branco.

3. RELEVÂNCIA 3.1. A proposta apresenta um grau de relevância em computação que justifique o

desenvolvimento do TCC?

4. METODOLOGIA 4.1. Foram relacionadas todas as etapas necessárias para o desenvolvimento do TCC?

4.2. Os métodos e recursos estão devidamente descritos e são compatíveis com a metodologia proposta?

4.3. A proposta apresenta um cronograma físico (período de realização das etapas) de maneira a permitir a execução do TCC no prazo disponível?

5. REVISÃO BIBLIOGRÁFICA 5.1. As informações apresentadas são suficientes e têm relação com o tema do TCC?

5.2. São apresentados trabalhos correlatos, bem como comentadas as principais características dos mesmos?

6. REQUISITOS DO SISTEMA A SER DESENVOLVIDO 6.1. Os requisitos funcionais e não funcionais do sistema a ser desenvolvido foram

claramente descritos?

AS

PE

CT

OS

T

ÉC

NIC

OS

7. CONSIDERAÇÕES FINAIS 7.1. As considerações finais relacionam os assuntos apresentados na revisão bibliográfica

com a realização do TCC?

8. REFERÊNCIAS BIBLIOGRÁFICAS 8.1. As referências bibliográficas obedecem às normas da ABNT?

8.2. As referências bibliográficas contemplam adequadamente os assuntos abordados na proposta (são usadas obras atualizadas e/ou as mais importantes da área)?

9. CITAÇÕES 9.1. As citações obedecem às normas da ABNT?

9.2. As informações retiradas de outros autores estão devidamente citadas?

10. AVALIAÇÃO GERAL (organização e apresentação gráfica, linguagem usada) 10.1. O texto obedece ao formato estabelecido?

AS

PE

CT

OS

M

ET

OD

OL

ÓG

ICO

S

10.2. A exposição do assunto é ordenada (as idéias estão bem encadeadas e a linguagem utilizada é clara)?

A proposta de TCC deverá ser revisada, isto é, necessita de complementação, se: • qualquer um dos itens tiver resposta NÃO ATENDE; • pelo menos 4 (quatro) itens dos ASPECTOS TÉCNICOS tiverem resposta ATENDE PARCIALMENTE; ou • pelo menos 4 (quatro) itens dos ASPECTOS METODOLÓGICOS tiverem resposta ATENDE PARCIALMENTE.

PARECER: ( ) APROVADA ( ) NECESSITA DE COMPLEMENTAÇÃO

Assinatura do(a) avaliador(a): Local/data:

Page 4: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

CONSIDERAÇÕES DO(A) ORIENTADOR(A):

Caso o(a) orientador(a) tenha assinalado em sua avaliação algum item como “atende parcialmente”, devem ser relatos os problemas/melhorias a serem efetuadas. Na segunda versão, caso as alterações sugeridas pelos avaliadores não sejam efetuadas, deve-se incluir uma justificativa.

Assinatura do(a) avaliador(a): Local/data:

Page 5: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

3.2 AVALIAÇÃO DO(A) COORDENADOR DE TCC

Acadêmico(a):

Avaliador(a): José Roque Voltolini da Silva

ASPECTOS AVALIADOS

aten

de

aten

de

par

cial

men

te

não

ate

nde

1. INTRODUÇÃO 1.1. O tema de pesquisa está devidamente contextualizado/delimitado?

1.2. O problema está claramente formulado?

2. OBJETIVOS 2.1. O objetivo geral está claramente definido e é passível de ser alcançado?

2.2. São apresentados objetivos específicos (opcionais) coerentes com o objetivo geral? Caso não sejam apresentados objetivos específicos, deixe esse item em branco.

3. RELEVÂNCIA 3.1. A proposta apresenta um grau de relevância em computação que justifique o

desenvolvimento do TCC?

4. METODOLOGIA 4.1. Foram relacionadas todas as etapas necessárias para o desenvolvimento do TCC?

4.2. Os métodos e recursos estão devidamente descritos e são compatíveis com a metodologia proposta?

4.3. A proposta apresenta um cronograma físico (período de realização das etapas) de maneira a permitir a execução do TCC no prazo disponível?

5. REVISÃO BIBLIOGRÁFICA 5.1. As informações apresentadas são suficientes e têm relação com o tema do TCC?

5.2. São apresentados trabalhos correlatos, bem como comentadas as principais características dos mesmos?

6. REQUISITOS DO SISTEMA A SER DESENVOLVIDO 6.1. Os requisitos funcionais e não funcionais do sistema a ser desenvolvido foram

claramente descritos?

AS

PE

CT

OS

T

ÉC

NIC

OS

7. CONSIDERAÇÕES FINAIS 7.1. As considerações finais relacionam os assuntos apresentados na revisão bibliográfica

com a realização do TCC?

8. REFERÊNCIAS BIBLIOGRÁFICAS 8.1. As referências bibliográficas obedecem às normas da ABNT?

8.2. As referências bibliográficas contemplam adequadamente os assuntos abordados na proposta (são usadas obras atualizadas e/ou as mais importantes da área)?

9. CITAÇÕES 9.1. As citações obedecem às normas da ABNT?

9.2. As informações retiradas de outros autores estão devidamente citadas?

10. AVALIAÇÃO GERAL (organização e apresentação gráfica, linguagem usada) 10.1. O texto obedece ao formato estabelecido?

AS

PE

CT

OS

M

ET

OD

OL

ÓG

ICO

S

10.2. A exposição do assunto é ordenada (as idéias estão bem encadeadas e a linguagem utilizada é clara)?

A proposta de TCC deverá ser revisada, isto é, necessita de complementação, se: • qualquer um dos itens tiver resposta NÃO ATENDE; • pelo menos 4 (quatro) itens dos ASPECTOS TÉCNICOS tiverem resposta ATENDE PARCIALMENTE; ou • pelo menos 4 (quatro) itens dos ASPECTOS METODOLÓGICOS tiverem resposta ATENDE PARCIALMENTE.

PARECER: ( ) APROVADA ( ) NECESSITA DE COMPLEMENTAÇÃO

OBSERVAÇÕES:

Assinatura do(a) avaliador(a): Local/data:

Page 6: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

3.3 AVALIAÇÃO DO(A) PROFESSOR(A) DA DISCIPLINA DE TCCI

Acadêmico(a):

Avaliador(a): Joyce Martins

ASPECTOS AVALIADOS

aten

de

aten

de

par

cial

men

te

não

ate

nde

1. INTRODUÇÃO 1.1. O tema de pesquisa está devidamente contextualizado/delimitado?

1.2. O problema está claramente formulado?

2. OBJETIVOS 2.1. O objetivo geral está claramente definido e é passível de ser alcançado?

2.2. São apresentados objetivos específicos (opcionais) coerentes com o objetivo geral? Caso não sejam apresentados objetivos específicos, deixe esse item em branco.

3. RELEVÂNCIA 3.1. A proposta apresenta um grau de relevância em computação que justifique o

desenvolvimento do TCC?

4. METODOLOGIA 4.1. Foram relacionadas todas as etapas necessárias para o desenvolvimento do TCC?

4.2. Os métodos e recursos estão devidamente descritos e são compatíveis com a metodologia proposta?

4.3. A proposta apresenta um cronograma físico (período de realização das etapas) de maneira a permitir a execução do TCC no prazo disponível?

5. REVISÃO BIBLIOGRÁFICA 5.1. As informações apresentadas são suficientes e têm relação com o tema do TCC?

5.2. São apresentados trabalhos correlatos, bem como comentadas as principais características dos mesmos?

6. REQUISITOS DO SISTEMA A SER DESENVOLVIDO 6.1. Os requisitos funcionais e não funcionais do sistema a ser desenvolvido foram

claramente descritos?

AS

PE

CT

OS

T

ÉC

NIC

OS

7. CONSIDERAÇÕES FINAIS 7.1. As considerações finais relacionam os assuntos apresentados na revisão bibliográfica

com a realização do TCC?

8. REFERÊNCIAS BIBLIOGRÁFICAS 8.1. As referências bibliográficas obedecem às normas da ABNT?

8.2. As referências bibliográficas contemplam adequadamente os assuntos abordados na proposta (são usadas obras atualizadas e/ou as mais importantes da área)?

9. CITAÇÕES 9.1. As citações obedecem às normas da ABNT?

9.2. As informações retiradas de outros autores estão devidamente citadas?

10. AVALIAÇÃO GERAL (organização e apresentação gráfica, linguagem usada) 10.1. O texto obedece ao formato estabelecido?

AS

PE

CT

OS

M

ET

OD

OL

ÓG

ICO

S

10.2. A exposição do assunto é ordenada (as idéias estão bem encadeadas e a linguagem utilizada é clara)?

PONTUALIDADE NA ENTREGA atraso de

_____ dias

A proposta de TCC deverá ser revisada, isto é, necessita de complementação, se: • qualquer um dos itens tiver resposta NÃO ATENDE; • pelo menos 4 (quatro) itens dos ASPECTOS TÉCNICOS tiverem resposta ATENDE PARCIALMENTE; ou • pelo menos 4 (quatro) itens dos ASPECTOS METODOLÓGICOS tiverem resposta ATENDE PARCIALMENTE.

PARECER: ( ) APROVADA ( ) NECESSITA DE COMPLEMENTAÇÃO

OBSERVAÇÕES:

Assinatura do(a) avaliador(a): Local/data:

Page 7: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

3.4 AVALIAÇÃO DO(A) PROFESSOR(A) ESPECIALISTA NA ÁREA

Acadêmico(a):

Avaliador(a):

ASPECTOS AVALIADOS

aten

de

aten

de

par

cial

men

te

não

ate

nde

1. INTRODUÇÃO 1.1. O tema de pesquisa está devidamente contextualizado/delimitado?

1.2. O problema está claramente formulado?

2. OBJETIVOS 2.1. O objetivo geral está claramente definido e é passível de ser alcançado?

2.2. São apresentados objetivos específicos (opcionais) coerentes com o objetivo geral? Caso não sejam apresentados objetivos específicos, deixe esse item em branco.

3. RELEVÂNCIA 3.1. A proposta apresenta um grau de relevância em computação que justifique o

desenvolvimento do TCC?

4. METODOLOGIA 4.1. Foram relacionadas todas as etapas necessárias para o desenvolvimento do TCC?

4.2. Os métodos e recursos estão devidamente descritos e são compatíveis com a metodologia proposta?

4.3. A proposta apresenta um cronograma físico (período de realização das etapas) de maneira a permitir a execução do TCC no prazo disponível?

5. REVISÃO BIBLIOGRÁFICA 5.1. As informações apresentadas são suficientes e têm relação com o tema do TCC?

5.2. São apresentados trabalhos correlatos, bem como comentadas as principais características dos mesmos?

6. REQUISITOS DO SISTEMA A SER DESENVOLVIDO 6.1. Os requisitos funcionais e não funcionais do sistema a ser desenvolvido foram

claramente descritos?

AS

PE

CT

OS

T

ÉC

NIC

OS

7. CONSIDERAÇÕES FINAIS 7.1. As considerações finais relacionam os assuntos apresentados na revisão bibliográfica

com a realização do TCC?

8. REFERÊNCIAS BIBLIOGRÁFICAS 8.1. As referências bibliográficas obedecem às normas da ABNT?

8.2. As referências bibliográficas contemplam adequadamente os assuntos abordados na proposta (são usadas obras atualizadas e/ou as mais importantes da área)?

9. CITAÇÕES 9.1. As citações obedecem às normas da ABNT?

9.2. As informações retiradas de outros autores estão devidamente citadas?

10. AVALIAÇÃO GERAL (organização e apresentação gráfica, linguagem usada) 10.1. O texto obedece ao formato estabelecido?

AS

PE

CT

OS

M

ET

OD

OL

ÓG

ICO

S

10.2. A exposição do assunto é ordenada (as idéias estão bem encadeadas e a linguagem utilizada é clara)?

A proposta de TCC deverá ser revisada, isto é, necessita de complementação, se: • qualquer um dos itens tiver resposta NÃO ATENDE; • pelo menos 4 (quatro) itens dos ASPECTOS TÉCNICOS tiverem resposta ATENDE PARCIALMENTE; ou • pelo menos 4 (quatro) itens dos ASPECTOS METODOLÓGICOS tiverem resposta ATENDE PARCIALMENTE.

PARECER: ( ) APROVADA ( ) NECESSITA DE COMPLEMENTAÇÃO

OBSERVAÇÕES:

Assinatura do(a) avaliador(a): Local/data:

Page 8: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

UNIVERSIDADE REGIONAL DE BLUMENAU

CENTRO DE CIÊNCIAS EXATAS E NATURAIS

CURSO DE CIÊNCIAS DA COMPUTAÇÃO – BACHARELADO

SISTEMA DE GESTÃO ESCOLAR ORIENTADA A OBJETO

UTILIZANDO BANCO DE DADOS CACHÉ

JULIANO WALTER BRUNE

BLUMENAU 2006

Page 9: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

JULIANO WALTER BRUNE

SISTEMA DE GESTÃO ESCOLAR ORIENTADO A OBJETO

UTILIZANDO BANCO DE DADOS CACHÉ

Proposta de Trabalho de Conclusão de Curso submetida à Universidade Regional de Blumenau para a obtenção dos créditos na disciplina Trabalho de Conclusão de Curso I do curso de Ciências da Computação — Bacharelado.

Prof. Wilson Carli- Orientador

BLUMENAU 2006

Page 10: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

2

1 INTRODUÇÃO

Segundo Tiobe Software (2006), em 2006 as linguagens de programação mais

utilizadas no mundo foram: Java, C, C++ e Visual Basic. Entre as quatro linguagens de

programação mais utilizadas, três são orientadas a objetos, fazendo com que esse paradigma

de programação assumisse o primeiro plano no cenário de desenvolvimento de aplicações.

Estas linguagens de programação orientadas a objetos são mais utilizadas devido aos seus

ricos modelos de dados e ao suporte a conceitos que melhoram a produtividade, tais como

encapsulamento, herança e polimorfismo.

Entretanto, uma grande parcela dos dados ainda reside em bancos de dados

relacionais, provocando assim um aumento no tempo de desenvolvimento, pois é preciso

mapear os dados para que eles possam ser compreendidos e manipulados pela tecnologia

orientada a objetos. “As vantagens da tecnologia de objetos são diminuídas quando os objetos

de um banco de dados resultantes têm que ser forçados ao modelo relacional bidimensional”

(INTERSYSTEMS, 2005a).

Estima-se que mais de 40% do esforço de desenvolvimento de um componente de negócio seja gasto para resolver problemas de mapeamento Objeto-relacional. Esse tempo é desperdiçado resolvendo problemas de infra-estrutura, ao passo que tudo que o programador quer é uma camada de persistência. Daí a grande vantagem de utilizar Bancos de Dados Orientados a Objetos (INTERSYSTEMS, 2004).

Baseado na citação anterior conclui-se que uma das formas de aumentar a

produtividade de forma ordenada é a utilização de um banco de dados que armazene os dados

de forma orientada a objetos, ou seja, armazene o próprio objeto, sem a necessidade de

mapeamentos para sua construção.

Segundo Intersystems (2005a), “O uso e a complexidade de aplicações de Tecnologia

da Informação (TI) estão explodindo e os sistemas de hoje tem exigências e processos

crescentes que superam as capacidades da tecnologia relacional”.

Armazenar objetos em um banco de dados relacional é uma tarefa complexa. O

modelo relacional não possui os mecanismos necessários para representar características

simples do modelo orientado a objeto como a herança e o polimorfismo. Nesse cenário, um

banco de dados relacional não traz vantagem. “A escolha de um banco de dados orientado a

objeto é a evolução natural” (INTERSYSTEMS, 2002).

Para melhorar a performance de aplicações que seguem o paradigma da orientação a

objetos, tem-se a necessidade de uma estrutura de armazenamento que seja capaz de

armazenar o objeto criado. Surgiu então em 1997, o banco de dados Caché, desenvolvido pela

Page 11: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

3

empresa Intersystems, cujo grande diferencial está na sua arquitetura aberta e a capacidade de

persistência de objetos (SAMARY, 2004).

Tendo em vista a crescente utilização de linguagens de programação orientada a

objetos, propõe-se neste trabalho o desenvolvimento de um sistema de gestão escolar,

utilizando para seu desenvolvimento a linguagem de programação Visual Basic e a ferramenta

Caché Studio, que é uma IDE para desenvolver rapidamente e depurar aplicações com Caché.

Esta ferramenta é disponibilizada pelo próprio servidor de aplicações do Caché. O banco de

dados Caché será utilizado para a persistência de todos os objetos do sistema.

Todas as classes, atributos e métodos do sistema serão desenvolvidas no Caché Studio

e exportadas para o Visual Basic para a criação do sistema em desktop. O sistema terá um

módulo para acesso via web. Este módulo será disponibilizado para consultas de notas,

horários, materiais didáticos e será desenvolvido no Caché Studio, gerando páginas em Caché

Server Pages (CSP), similares às páginas de script Java Server Pages (JSP). O servidor de

aplicações do Caché dá suporte à linguagem Visual Basic, portanto podemos manipular as

classes e métodos criados no Caché Studio de dentro de uma aplicação no Visual Basic. Com

isso, pode-se criar rapidamente aplicações desktop.

1.1 OBJETIVOS DO TRABALHO

O objetivo deste trabalho é desenvolver um sistema de gestão escolar baseado em

ambiente híbrido (desktop e web) que possibilite o controle de alunos, professores,

coordenação e administração escolar, utilizando recursos de orientação a objetos tanto na

implementação das classes, atributos e métodos como na persistência dos objetos.

Os objetivos específicos do trabalho são:

a) utilizar-se da tecnologia da ferramenta Caché Studio para geração dos módulos do

sistema (cadastramento e consultas);

b) utilizar-se da linguagem Visual Basic para geração de telas e relatórios;

c) possibilitar a pais, alunos, professores e administração acesso à informações em

tempo real e via web.

Page 12: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

4

1.2 RELEVÂNCIA DO TRABALHO

A relevância deste trabalho está no desenvolvimento de um sistema completo de

gestão escolar, totalmente orientado a objetos. Considera-se que com o uso do banco de dados

Caché, será possível obter uma abordagem direta aos objetos criados pelo sistema, pois seu

armazenamento se dá de forma multidimensional. A linguagem escolhida para o

desenvolvimento da aplicação será o Visual Basic, juntamente com a ferramenta Caché

Studio.

Tendo em vista o cenário de crescimento da programação orientada a objeto e suas

técnicas, a crescente migração de sistemas desenvolvidos em tecnologias ultrapassadas para

sistemas mais robustos e confiáveis, tem-se a necessidade da utilização de Sistemas

Gerenciadores de Banco de Dados que possuam alto grau de sincronia com a aplicação

orientada a objeto.

Atualmente existe o banco de dados Caché, desenvolvido pela empresa Intersystems,

que tem na sua estrutura multidimensional sua principal característica. Os bancos de dados

relacionais acabam forçando os dados em duas tabelas dimensionais, já o Caché armazena os

dados em tabelas multidimensionais. O termo “multidimensional” significa que podemos

indexar os dados por quantos parâmetros forem necessários, pois eles não estão limitados a

em linhas e colunas. É justamente a estrutura multidimensional do Caché que dá suporte à

persistência de objetos e conseqüentemente caracteriza o banco como sendo orientado a

objetos (INTERSYSTEMS, 2005b).

O desenvolvimento de um sistema de gestão escolar utilizando duas tecnologias

orientadas a objetos (Caché Studio e Visual Basic), tanto na implementação de classes,

atributos e métodos, bem como na persistência dos objetos traz uma vantagem no tempo de

desenvolvimento, pois não haverá necessidade de mapeamentos entre as diversas tecnologias

citadas anteriormente.

1.3 METODOLOGIA

O trabalho será desenvolvido observando as seguintes etapas:

a) levantamento bibliográfico: realizar levantamento bibliográfico sobre conceitos de

Page 13: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

5

orientação a objetos, banco de dados Caché e inovações tecnológicas a serviço da

educação;

b) análise de requisitos: serão analisados e relatados os requisitos funcionais e não

funcionais que o sistema deverá ter;

c) especificação do sistema: a especificação será com análise orientada á objetos

utilizando a Unified Modelling Language (UML) . Será utilizada a ferramenta

Rational Rose para desenvolvimento dos diagramas de caso de uso, de seqüência e

de classe;

d) implementação: as regras de negócio serão implementadas na ferramenta Caché

Studio, bem como, as interfaces para web. As interfaces para desktop serão

desenvolvidas em Visual Basic;

e) testes: os testes e validações serão efetuados utilizando dados reais de uma

instituição de ensino fundamental e médio. Será disponibilizada uma versão de

teste a ser utilizada na secretaria da instituição;

f) redação do volume final.

As etapas serão realizadas nos períodos relacionados no quadro 01.

2007 Fev. mar. abr. maio jun.

Etapas / quinzenas 1 2 1 2 1 2 1 2 1 2 levantamento bibliográfico análise de requisitos especificação do sistema implementação testes redação do volume final

Quadro 01 – Cronograma

Page 14: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

6

2 REVISÃO BIBLIOGRÁFICA

Neste capítulo são apresentados alguns aspectos teóricos relacionados ao trabalho, tais

como: programação orientada a objetos, banco de dados Caché e tecnologias e avanços na

área escolar. Na última seção serão descritos alguns trabalhos correlatos.

2.1 PROGRAMAÇÃO ORIENTADA A OBJETOS

A origem da programação orientada a objetos data da década de 60 com a criação de

uma linguagem de simulação denominada Simula Language, porém a primeira linguagem a

implementar conceitos de orientação a objetos foi a linguagem Simula-68 (LEITE; RAHAL

JÚNIOR, 2002).

O grande propósito da programação orientada a objetos é a criação rápida de

protótipos, códigos reutilizáveis e de um desenvolvimento interativo e incremental

(ALMEIDA; AMORIN, 2005).

Segundo Behling e Gomes (2001), “O ponto-chave da tecnologia de objetos é a

habilidade de construir grandes programas a partir de outros pequenos pré-fabricados”.

“O enfoque da orientação a objetos vê o mundo como uma coletânea de objetos que

interagem entre si, apresentam características próprias que são representadas pelos seus

atributos e operações.” (FURLAN, 1998, p. 11). “Objetos se comunicam através de

mensagem, isto é, um sinal enviado de um objeto a outro requisitando um serviço através da

execução de uma operação.” (FURLAN, 1998, p. 17).

2.2 BANCO DE DADOS CACHÉ

O banco de dados Caché foi lançado em 1997 pela empresa Intersystems. Antes desta

data era um banco de dados embarcado que foi por muito tempo utilizado nos mercados de

healthcare e governos de vários países (SAMARY, 2004).

Hoje com a crescente utilização da programação orientada a objetos e seus conceitos,

Page 15: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

7

algumas empresas estão optando cada vez mais pela utilização de bancos de dados orientados

a objetos para persistência de seus objetos. O banco de dados Caché tem na sua estrutura de

armazenamento a grande diferença com relação a outros bancos de dados relacionais, pois

armazena os dados em forma de objeto e não em forma de tabelas.

Em um banco de dados relacional, as amarrações entre campos de uma tabela se da

pela sua chave estrangeira, fazendo com que o desenvolvedor deva se preocupar com esta

criação, já no banco de dados Caché, o próprio banco se responsabiliza por estas amarrações,

criando o seu próprio índice. Para que exista um banco de dados orientado a objetos, no

entanto, não basta gravar objetos, é preciso um conjunto de técnicas de gerenciadores dos

objetos persistentes (NUNES, 1995).

No exemplo que se segue, pode-se observar de uma forma transparente como o banco

de dados Caché armazena e apresenta os objetos das classes implementadas no sistema. Tem-

se a classe País , formada pelos atributos nomePais e siglaPais e a classe Estado , formada

pelos atributos nomeEstado , siglaEstado e paisEstado . Os atributos nomePais ,

siglaPais , nomeEstado e siglaEstado são do tipo String, já o atributo paisEstado é do

tipo objeto de País , que é estendido da classe País . Quando da persistência de um novo

objeto de Estado no banco de dados, o Caché se responsabiliza por indexar automaticamente

o atributo paisEstado com o índice a qual ele pertence na classe País . Nas Figuras 01 e 02

apresentadas a seguir, são mostrados os objetos das classes após uma consulta Struct Query

Language (SQL).

Figura 01 – Consulta à classe País

Page 16: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

8

Figura 02 – Consulta à classe Estado

Na figura 02, são listados os dois objetos de Estado , porém, observa-se que na coluna

paísEstado tem-se guardado o número 1 apenas. Na Figura 01, observa-se que na coluna ID

(índice criado automaticamente pelo Caché) que possui o valor 1 é do objeto País cujo nome

é Brasil. Os objetos de Estado com nome de Santa Catarina e Paraná tem como país o Brasil,

logo, eles armazenam no atributo paisEstado o índice do objeto ao qual pertencem. A seguir

são mostradas duas formas de consulta SQL de forma a abstrair o índice. Na figura 03 é

listado o nome do país no lugar do índice e na figura 04, são listados os dois atributos do

objeto País no lugar do índice.

00

Figura 03 – Consulta à classe Estado , abstraindo o índice

Page 17: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

9

Figura 04 – Consulta à classe Estado , mostrando dois atributos da classe País

A seguir, no quadro 02, são mostradas as estruturas das classes País e Estado criadas

no Caché Studio:

Class User.País Extends %Persistent [ ClassType = p ersistent, ProcedureBlock ] { Property nomePaís As %String; Property siglaPaís As %String; } Class User.Estado Extends %Persistent [ ClassType = persistent, ProcedureBlock ] { Property nomeEstado As %String; Property nomePaís As País; Property siglaEstado As %String; }

Quadro 02 – Estruturas das classes País e Estado

2.3 TECNOLOGIAS E AVANÇOS NA ÁREA ESCOLAR

Segundo Alecrim (2005), o avanço da biometria já é realidade e dificilmente alguma

outra tecnologia a substitua. O maior parte de seu emprego está voltado ao setor de finanças.

O governo brasileiro está apostando nesta tecnologia a serviço da educação. Espera-se que até

o final de 2006, 50% das escolas públicas terão controle de acesso através da biometria. Esta

implantação faz parte do projeto Presença do Sistema Nacional de Acompanhamento da

Freqüência Escolar (SAFE) (FELITTI, 2006).

Outro exemplo de avanço tecnológico a serviço da educação é a utilização de quadros

interativos em salas de aulas. Os quadros interativos inauguram uma nova forma de interação

com a classe utilizando novas ferramentas de manipulação visual (INFOSOFT, 2006).

Os dois exemplos citados não serão implementados no sistema proposto, apenas foram

descritos para demonstrar algumas tecnologias e avanços que poderão ser implementados em

Page 18: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

10

um ambiente escolar.

2.4 TRABALHOS CORRELATOS

Em Obenaus (2000) é proposto um protótipo de uma aplicação comercial utilizando

banco de dados Caché com interface web. Desenvolvido na Universidade Regional de

Blumenau. O trabalho explora características do banco de dados para desenvolvimento de

aplicações voltadas à internet, como por exemplo, o Caché Studio.

Em Correia (2002) é proposto um sistema de gestão acadêmica específico para o

Instituto Catarinense de Pós-Graduação (ICPG), que gerencia cursos de pós-graduação no

estado de Santa Catarina. O sistema é implementado totalmente voltado à web e tem como

principais metas, estabelecer uma comunidade virtual e manter o relacionamento com o

cliente, apoiar a gestão de cursos fora de sede, agilizar a comunicação com entidades

conveniadas e aumentar a eficiência de seus processos administrativos. Na especificação do

sistema foi utilizado a UML, na implementação foi utilizado a linguagem de script PHP e

para o armazenamento dos dados foi utilizado o banco de dados Interbase. Alguns dos

requisitos do sistema que temos para aluno são as consultas ao horário de aulas, suas notas e

situação financeira, já para professores temos a consulta ao calendário de aulas bem como o

lançamento de notas e conteúdo ministrado. O sistema possui inúmeros requisitos, porém não

foram listados todos.

Page 19: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

11

3 REQUISITOS DO SISTEMA A SER DESENVOLVIDO

Para o desenvolvimento do sistema foram mapeados os seguintes requisitos:

a) permitir ao usuário incluir, excluir e alterar dados referentes a alunos, professores,

funcionários, disciplinas, turmas, notas, bancos, pagamentos, contas a pagar e

receber, clientes, fornecedores e relação patrimonial (requisito funcional – RF);

b) controlar o estoque (Almoxarifados e requisições) (RF);

c) controlar as compras (RF);

d) controlar o acervo da biblioteca (RF);

e) efetuar matrículas (RF);

f) emitir análises de inadimplência (RF);

g) gerenciar gastos (RF);

h) emitir boletins (RF);

i) emitir relação do acervo da biblioteca (RF);

j) emitir relação de pendências na biblioteca (RF);

k) emitir histórico escolar (RF);

l) emitir diário de classe (RF);

m) permitir acesso das notas pela web mediante de senha (RF);

n) utilizar interface de documentos múltiplos (MDI) (requisito não funcional – RNF);

o) ser desenvolvido utilizando técnicas de orientação a objetos (RNF);

p) ser implementado utilizando a linguagem Visual Basic e a ferramenta Caché

Studio (RNF);

Page 20: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

12

4 CONSIDERAÇÕES FINAIS

O cenário de desenvolvimento de aplicações está mudando e a programação orientada

a objetos está avançando cada dia mais em diversas áreas e sua utilização não é mais

meramente acadêmica. Grandes empresas de softwares estão migrando para esta tecnologia e

desenvolvendo novas aplicações ou mesmo migrando outras.

O sistema de gestão escolar irá usar esta tecnologia no seu desenvolvimento e utilizará

o banco de dados orientado a objetos Caché, que vem de encontro com as necessidades e os

conceitos da orientação a objeto, tais como encapsulamento, herança e polimorfismo.

Analisando o cenário de crescimento de instituições de ensino, e conseqüentemente a

forte concorrência gerada, tem-se uma grande necessidade de se buscar qualidade e melhor

prestação de serviço ao cliente, tornando-as grandes consumidoras de tecnologia, dentre a

qual se encaixa o sistema proposto.

Foram apresentados alguns trabalhos correlatos. A relação entre eles e o trabalho

proposto são:

a) em Obenaus (2000), o trabalho proposto apenas dá enfoque na construção de um

sistema simples de compra pela internet. Seu modelo de dados é bastante pequeno

e sua aplicação bem limitada. No sistema que será desenvolvido, procura-se criar

um ambiente totalmente informatizado e interligado. Todos os requisitos que

foram apresentados e os que surgirão no decorrer do trabalho, fazem com que o

sistema seja completo e não apenas um módulo, como é descrito acima;

b) em Correia (2002) é proposto um sistema de gestão acadêmica apenas voltado para

web. O uso de UML para a especificação juntamente com PHP fez com que

houvesse a necessidade da criação de estratégias de mapeamento, pois o PHP não

oferece suporte a orientação a objetos, bem como o banco de dados Interbase.

Neste trabalho não foi desenvolvido um sistema híbrido com uma parte em

desktop usando o ambiente windows como interface gráfica, pois segundo o autor,

foram encontradas complicações operacionais de como manter dois ambientes de

desenvolvimento e dois códigos-fontes, entre outros. Já no sistema proposto, não

há necessidade de estratégias de mapeamento, pois a tecnologia utilizada é

orientada a objetos, bem como o banco de dados Caché. Outro ponto importante se

dá ao fato de não haver necessidade de dois códigos fontes para a criação do

sistema em desktop, a mesma implementação de classes, atributos e métodos será

Page 21: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

13

compartilhada pela interface web e pela interface desktop. Os requisitos são

semelhantes, pois as necessidades das instituições de ensino são as mesmas, salvo

algumas exceções. O que mais diferencia os dois sistemas é a tecnologia utilizada

e a forma como o trabalho proposto será desenvolvido, respeitando os conceitos da

orientação a objetos sem a necessidade de mapeamentos entre as diversas

tecnologias utilizadas como: UML, Caché Studio e Visual Basic.

Page 22: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

14

REFERÊNCIAS BIBLIOGRÁFICAS

ALECRIM, Emerson. Introdução à biometria. [S.l.], 2005. Disponível em: <http://www.infowester.com/biometria.php>. Acesso em: 15 de nov. 2006.

ALMEIDA, Cristian de; AMORIM, Rubens. Programação orientada a objetos. [S.l.], 2005. Disponível em: <http://www.conceitosinfo.hpg.ig.com.br/orient_objetos.htm>. Acesso em: 10 set. 2006.

BEHLING, Paulo; GOMES, Paulo Eduardo da Rosa. Banco de dados objeto-relacional Postgres. Pelotas, 2001. Disponível em: <http://atlas.ucpel.tche.br/~behling/artig01.htm>. Acesso em: 26 out. 2006.

CORREIA, Carlos Henrique. Sistema de gestão acadêmica baseado em ambiente web. 2002. 65 f. Trabalho de Estágio Supervisionado (Bacharelado em Ciências da Computação) – Centro de Ciências Exatas e Naturais, Universidade Regional de Blumenau, Blumenau.

FELITTI, Guilherme. Biometria será usada em salas de aula e em urnas eletrônicas. [S.l.], 2006. Disponível em: <http://idgnow.uol.com.br/seguranca/2006/08/30/idgnoticia.2006-08-29.2323285944/IDGNoticia_view?pageNumber:int=1>. Acesso em: 13 de nov. 2006.

FURLAN, José Davi. Modelagem de objetos através da UML: the Unified Modeling Language. São Paulo: Makron Books, 1998.

INFOSOFT. Quando interativo. [S.l.], 2006. Disponível em: <http://www.infosoftrn.com.br/quadro.php>. Acesso em 15 nov. 2006.

INTERSYSTEMS. Orientação a objetos, a mola impulsora da Intersystems. [S.l.], 2004. Disponível em: <http://www.intersystems.com.br/isc/comunicnewsletter.csp?NewsletterID=135&NoticiaID=386&CSPCHD=00410000000132ipaRdh003462664653>. Acesso em: 15 ago. 2006.

______. Uma nova era na tecnologia dos bancos de dados. [S.l.], 2002. Disponível em: <http://www.intersystems.com.br/isc/downloads/vantagensbeneficios/WhitepaperUmanovaeradeBD.pdf>. Acesso em: 26 out. 2006.

______. Guia da tecnologia Caché. [S.l.], 2005a. Disponível em: <http://www.intersystems.com.br/isc/downloads/guiatecnologia/Cap1.pdf>. Acesso em: 23 ago. 2006.

______. Objetos e SQL: a fusão de duas tecnologias atuais em um banco de dados multidimensional. [S.l.], 2005b. Disponível em: <http://www.intersystems.com.br/downloads/Fusion.pdf>. Acesso em: 03 set. 2006.

Page 23: CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE ...campeche.inf.furb.br/tccs/2007-I/2007-1-PR-JulianoWBrune... · 2008-03-11 · universidade

15

LEITE, Mario; RAHAL JÚNIOR, Nelson Abu Sanra. Programação orientada ao objeto: uma abordagem didática. Revista de Informação e Tecnologia, [Campinas], ago. 2002 Disponível em: <http://www.ccuec.unicamp.br/revista/infotec/artigos/leite_rahal.html>. Acesso em: 08 nov. 2006.

NUNES, Alberi Salgado de Jesus. Aspectos relacionados a migração de modelo de dados relacionais para modelos de dados orientado a objetos. 1995, 90 f. Trabalho de Conclusão de Curso (Bacharelado em Ciências da Computação) – Centro de Ciências Exatas e Naturais, Universidade Regional de Blumenau, Blumenau..

OBENAUS, Maurício Rogério. Protótipo de uma aplicação comercial utilizando banco de dados Caché com interface web. 2000. 85 f. Trabalho de Conclusão de Curso (Bacharelado em Ciências da Computação) – Centro de Ciências Exatas e Naturais, Universidade Regional de Blumenau, Blumenau.

SAMARY, Amir. Conhecendo o Caché. [S.l.], 2004. Disponível em: <http://br.groups.yahoo.com/group/cache-br/files/Tutoriais/>. Acesso em: 12 nov. 2006.

TIOBE SOFTWARE. November headline: Ruby is rocketing skywards. [S.l.], 2006. Disponível em: <www.tiobe.com/tpci.htm>. Acesso em: 14 nov. 2006.