Você está na página 1de 88

Trabalho da Disciplina MO410 Bancos de Dados Professor Dr.

Ricardo Torres

Projeto de um Banco de Dados Relacional para Sistema de Controle Acadmico da CPG e

Relatrio Final o 28 de junho de 2006

Alunos Anderson de Rezende Rocha (RA 030014) Neumar Costa Malheiros (RA 030042)

Conte do u
1 Introduo ca 2 Primeira Fase Modelagem Conceitual 2.1 2.2 Levantamento de Requisitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modelo Conceitual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 9 9 10 13 13 15 15 15 17 19 19 19 20 20 38 43 43 43 44 45 49 49 49 49 50 50 50 50 50 51 51 51

3 Segunda Fase Modelagem Relacional 3.1 3.2 Aprimoramento do Modelo Conceitual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modelo Relacional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.1 3.2.2 3.3 Convenes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . co Relaes (3FN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . co

Implementao do Banco de dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca

4 Terceira fase Sistema de Informao ca 4.1 4.2 4.3 Ferramentas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Casos de uso selecionados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Prottipo desenvolvido - SCA-CPG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 4.3.1 4.3.2 Viso geral do prottipo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a o Cdigos SQL relacionados a algumas funcionalidades implementadas . . . . . . . . . . o

5 Metodologia e cronograma 5.1 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.1.1 5.1.2 5.2 Ferramentas utilizadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Estat sticas de desenvolvimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Cronograma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

A Modelo conceitual A.1 Entidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.1 Pessoa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.2 RG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.3 Endereo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . c A.1.4 Aluno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.5 Mestrando . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.6 Doutorando . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.7 Situao de aluno ca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.8 Professor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.9 Professor do IC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.10 Professor Visitante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

CONTEUDO A.1.11 Situao de professor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.1.12 N de professor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vel A.1.13 Area de atuao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.1.14 Departamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.15 Disciplina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.16 Disciplina de Graduao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.1.17 Disciplina de Ps-Graduao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o ca A.1.18 Estgio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a A.1.19 PED-I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.20 PED-II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.21 BIPED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.22 Tese . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.23 Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.24 Requisito . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.25 Requisito de Mestrado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.26 Requisito de Doutorado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.27 Exame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.28 Exame de Ingls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e A.1.29 EQE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.30 EQG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.31 Banca Examinadora de EQG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.32 Publicao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.1.33 Relatrio Tcnico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o e A.1.34 Livro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.35 Cap tulo de Livro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.36 Artigo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.37 Artigo em Conferncia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e A.1.38 Artigo em Peridico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o A.1.39 Laboratrio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o A.1.40 Projeto de Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.41 Agncia de Fomento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e A.1.42 Modalidade de Bolsa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.43 Requerimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.44 Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.45 Requerimento de Inscrio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.1.46 Inscrio em Exame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.1.47 Inscrio em Exame de Ingls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca e A.1.48 Inscrio em EQE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.1.49 Inscrio em EQG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.1.50 Inscrio em Estgio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca a A.1.51 Inscrio em PED-I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.1.52 Inscrio em PED-II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.1.53 Inscrio em BIPED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.1.54 Requerimento de Dispensa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.1.55 Dispensa de Exame de Ingls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e A.1.56 Dispensa de EQG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 51 53 53 53 53 53 53 54 54 54 54 54 54 55 55 55 55 55 55 55 56 56 56 56 57 58 58 58 58 59 59 59 59 60 60 60 60 60 60 60 60 60 60 61 61

CONTEUDO A.1.57 Dispensa de Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2 Relacionamentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.1 Pessoa possui RG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.2 Pessoa possui Endero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . c A.2.3 Professor atua Area de Atuao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.2.4 Pessoa publica Publicao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.2.5 Pessoa participa Laboratrio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o A.2.6 Pessoa participa Projeto de Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.7 Aluno possui situao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.2.8 Aluno cursa Disciplina de Ps-Graduao . . . . . . . . . . . . . . . . . . . . . . . . . o ca A.2.9 Aluno defende Tese . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.10 Aluno realiza EQE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.11 Aluno realiza Exame de Ingls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e A.2.12 Mestrando cumpre Requisito de Mestrado . . . . . . . . . . . . . . . . . . . . . . . . . A.2.13 Mestrando realiza PED-II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.14 Mestrando protocola Inscrio em PED-II . . . . . . . . . . . . . . . . . . . . . . . . . ca A.2.15 Mestrando protocola Inscrio em Exame de Ingls . . . . . . . . . . . . . . . . . . . . ca e A.2.16 Mestrando protocola Inscrio em EQE . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.2.17 Mestrando protocola Dispensa em Exame de Ingls . . . . . . . . . . . . . . . . . . . . e A.2.18 Mestrando protocola Dispensa de Area . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.19 Doutorando cumpre Requisito de Doutorado . . . . . . . . . . . . . . . . . . . . . . . A.2.20 Doutorando realiza Estgio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a A.2.21 Doutorando realiza EQG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.22 Doutorando protocola Requerimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.23 Professor possui situao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.2.24 Professor possui n vel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.25 Professor orienta Aluno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.26 Professor participa Defesa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.27 Professor do IC ministra Disciplina de Ps-Graduao . . . . . . . . . . . . . . . . . . o ca A.2.28 Professor do IC coordena Laboratrio . . . . . . . . . . . . . . . . . . . . . . . . . . . o A.2.29 Professor do IC pertence a Departamento . . . . . . . . . . . . . . . . . . . . . . . . . A.2.30 Professor do IC chea Departamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.31 Professor do IC coordena Projeto de Pesquisa . . . . . . . . . . . . . . . . . . . . . . . A.2.32 Professor do IC coordena Exame de Ingls . . . . . . . . . . . . . . . . . . . . . . . . . e A.2.33 Agncia de Fomento nancia Bolsa para Aluno . . . . . . . . . . . . . . . . . . . . . . e A.2.34 Agncia de Fomento suporta Professor do IC . . . . . . . . . . . . . . . . . . . . . . . e A.2.35 Agncia de Fomento nancia Projeto de Pesquisa . . . . . . . . . . . . . . . . . . . . . e A.2.36 Banca Examinadora pertence Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.37 EQG possui Banca Examinadora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.38 Requerimento possui Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.39 Estgio possui Disciplina de Graduao . . . . . . . . . . . . . . . . . . . . . . . . . . a ca A.2.40 Disciplina de Ps-Graduao pertence Area . . . . . . . . . . . . . . . . . . . . . . . . o ca A.2.41 Inscrio em Estgio seleciona Disciplina de Graduao . . . . . . . . . . . . . . . . . ca a ca A.2.42 Inscrio em Estgio possui Disciplina de Estgio . . . . . . . . . . . . . . . . . . . . . ca a a A.2.43 Inscrio em EQG seleciona Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca A.2.44 Dispensa de EQG seleciona Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5 61 61 61 61 61 61 61 61 61 62 62 62 62 62 62 62 63 63 63 63 63 63 63 63 63 64 64 64 64 64 64 64 65 65 65 65 65 65 65 65 66 66 66 66 66 66

CONTEUDO A.2.45 Dispensa de Area seleciona Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2.46 Professor participa Qualicao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca 66 66 67 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 81 87

B SQL B.1 Criando o Banco de Dados B.2 Populando o Banco de Dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.3 Deletando o Banco de Dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Cap tulo 1

Introduo ca
O Programa de Ps-Graduao do Instituto de Computao (IC) da UNICAMP oferece os cursos de Mestrado o ca ca e Doutorado em Cincia da Computao. A Comisso de Ps-Graduao (CPG) a entidade responsvel e ca a o ca e a pelo Programa. Atualmente, a maior parte das atividades da CPG so realizadas de forma manual, isto , a e qualquer solicitao tem que ser atendida analisando-se arquivos e registros em papel. Como consequncia, ca e a ecincia do seu trabalho comprometida, pois a dependncia de interveno humana faz com que os e e e ca procedimentos sejam lentos e propensos a erros. Portanto, existe a necessidade de automatizar essas atividades, a m de assegurar maior ecincia e e agilidade `s tarefas desempenhadas pela CPG. Em particular, foi identicado que imprescind a e vel para a CPG um sistema de informao para controle acadmico, que possibilite acompanhar o desempenho de alunos ca e regulares de mestrado e doutorado. Neste sentido, o objetivo deste projeto o estudo e a implementao de e ca tal sistema. A nfase do projeto a especicao, modelagem e implementao de um banco de dados para e e ca ca esse Sistema de Controle Acadmico. e Para o desenvolvimento do projeto como um todo, optamos por dividi-lo em trs fases de execuo. Na e ca primeira fase, zemos a especicao de um modelo conceitual do banco de dados. Nesta fase, realizamos duas ca atividades: o levantamento dos requisitos do sistema e a elaborao de um diagrama entidade-relacionamento ca de acordo com esses requisitos. A segunda etapa consistiu no aprimoramento do diagrama entidade relacionamento (DER), no mapeamento do modelo conceitual para o modelo relacional e na implementao do ca banco de dados. Finalmente, a terceira e ultima fase consistiu na implementao do Sistema de Informao ca ca como uma aplicao WEB amigvel desenvolvida em PHP sobre um banco de dados PostgreSQL. ca a Nos Cap tulos 2 e 3, descrevemos as atividades realizadas correspondentes ` primeira e segunda etapas a do projeto. No Cap tulo 4, apresentamos o sistema de informao desenvolvido para validar a proposta apreca sentada. Para isso, selecionamos alguns casos de uso considerados relevantes. No Cap tulo 5, apresentamos a metodologia utilizada para a realizao deste trabalho bem como o cronograma utilizado. No Apndice A, ca e descrevemos as entidades e relacionamentos (devidamente atualizados) bem como seus atributos presentes em nosso diagrama entidade-relacionamento (DER). Finalmente, no Apndice B apresentamos o cdigo em e o linguagem SQL para a criao, deleo e populao das relaes. ca ca ca co

CAP ITULO 1. INTRODUCAO

Cap tulo 2

Primeira Fase Modelagem Conceitual


A primeira etapa deste projeto consistiu na especicao de um modelo conceitual do banco de dados. Nesta ca fase, realizamos duas atividades: o levantamento dos requisitos do sistema e a elaborao de um diagrama ca entidade-relacionamento de acordo com esses requisitos.

2.1

Levantamento de Requisitos

Essa primeira atividade envolveu o estudo das caracter sticas e funcionalidades desejadas para o Sistema de Controle Acadmico da CPG. Foram realizadas duas reunies com a secretaria da CPG para discusso dos e o a requisitos desse sistema: A primeira reunio foi realizada no dia 16 de maro. A discusso permitiu levantar os principais requia c a sitos do sistema e identicar as principais entidades que deviam ser consideradas no modelo conceitual do banco de dados, assim como os relacionamentos necessrios. a A segunda reunio ocorreu em 31 de maro. Nesta reunio foram esclarecidas as dvidas iniciais e a c a u identicados os atributos relacionados `s entidades denidas. a A partir das reunies com a secretaria da CPG e de um estudo sobre o regulamento do Programa de o Ps-Graduao foram denidos os seguintes requisitos para o sistema: o ca 1. Gerenciar as informaes relacionadas aos alunos regulares e professores do Programa; co 2. Gerenciar as informaes referentes aos departamentos (e.g., chefe, vice-chefe), laboratrios (e.g., nome, co o sigla) e projetos de pesquisa do Instituto, assim como quais professores e alunos esto vinculados a esses a projetos; 3. Manter histrico dos Programas de Estgio Docncia (PED) realizados, considerando suas diversas o a e modalidades (PED-I, PED-II e BIPED); 4. Manter histrico de alunos que se matricularam no Programa de Ps-Graduao. Deseja-se manter o o ca informaes tambm de alunos inativos ou dos que no conclu co e a ram o curso com sucesso; 5. Manter uma relao dos requisitos necessrios ao cumprimento dos cursos de ps-graduao e a situao ca a o ca ca importante saber se um de cada aluno matriculado em relao ao cumprimento desses requisitos. E ca aluno j cumpriu os crditos obrigatrios em disciplinas, se ele foi dispensado de alguma rea obrigatria, a e o a o se ele j foi aprovado em exame de qualicao ou de procincia em ingls, entre outros. a ca e e 9

10

CAP ITULO 2. PRIMEIRA FASE MODELAGEM CONCEITUAL 6. Gerenciar as informaes sobre o desempenho acadmico dos alunos em relao `s disciplinas cursadas co e ca a (histrico); o 7. Manter um cadastro das disciplinas oferecidas no programa de Ps-Graduao, dos per o ca odos em que elas foram ministradas e por quais professores; 8. Manter informaes sobre orientao e co-orientao, relacionando cada professor com seus respectivos co ca ca alunos; 9. Manter um histrico das publicaes dos professores e alunos do programa. As publicaes podem ser o co co cap tulos de livro, livros, relatrios tcnicos ou artigos em conferncias ou peridicos; o e e o

10. Permitir o controle de inscries nos mais variados processos tais como exames de ingls, exames de co e qualicao, dispensa de reas, entre outros; ca a 11. Manter histrico dos exames de qualicao e de procincia realizados, assim como os professores o ca e envolvidos na realizao dos mesmos, como participantes da banca ou coordenadores do exame. ca 12. Manter histrico das teses e dissertaes defendidas, incluindo informaes sobre membros da banca; o co co 13. Gerenciar informaes sobre professores externos ao Instituto. Esses professores podem participar de co projetos de pesquisa ou de bancas de defesa de tese ou dissertao; ca 14. Manter registro das agncias de fomento ` pesquisa, que nanciam projetos de pequisa, alunos (com e a bolsas de estudo) ou pesquisadores (com bolsas de produtividade).

2.2

Modelo Conceitual

Elaboramos um diagrama entidade-relacionamento (DER) de acordo com os requisitos levantados. Apresentamos o mesmo na Figura 2.1. No apndice A, descrevemos as entidades e os relacionamentos, assim como e seus atributos.

Figura 2.1: Diagrama Entidade-Relacionamento Etapa 1.

12

CAP ITULO 2. PRIMEIRA FASE MODELAGEM CONCEITUAL

Cap tulo 3

Segunda Fase Modelagem Relacional


A segunda etapa consistiu no aprimoramento do diagrama entidade relacionamento (DER), no mapeamento do modelo conceitual para o modelo relacional e na implementao do banco de dados. ca

3.1

Aprimoramento do Modelo Conceitual

Fizemos aprimoramentos no diagrama entidade-relacionamento (DER) de acordo com os requisitos levantados e novas observaes. Para efeitos comparativos, apresentamos a nova verso do diagrama1 na Figura 3.1. co a Na Seo 3.2, descrevemos as relaes resultantes devidamente normalizadas (em 3FN) do mapeamento do ca co diagrama entidade-relacionamento (DER) para o modelo relacional. Em relao ` primeira etapa, vimos a necessidade de considerar o relacionamento Aluno defende Tese como ca a uma agregao chamada Defesa. Desta forma, um Professor participa de uma Defesa. Da mesma forma, ca consideramos Aluno realiza EQE como uma agregao chamada Qualicao. Por sua vez, um Professor ca ca participa de uma Qualicao. Algumas outras modicaes feitas no modelo so: ca co a Professor possui uma Situao 2 . ca Professor possui um N 3 . vel Pessoa tem Endereo e RG. c Professor participa de uma Banca Examinadora. Agncia de Fomento nancia um Aluno atravs de uma Modalidade de Bolsa. Este um relacionamento e e e ternrio. a Agncia de Fomento nancia um Professor. e Requerimento possui um Status 4 . Vericamos que muitas entidades s existem se alguma outra entidade existe e se relaciona com elas. o Desta forma, mudamos algumas entidades para que se tornassem entidades fracas. Por exemplo, Requerimento e todas as suas especializaes so entidades fracas de Aluno. co a

1 No

nal do relatrio, apresentamos este diagrama em formato A3. o se o professor est atuante, de licena ou mesmo aposentado. a c 3 Reete se o professor tem titulao MS-3, MS-5, MS-6 entre outras. ca 4 Reete se um requerimento j foi processado, se o parecer foi favorvel entre outros. a a
2 Reete

13

Figura 3.1: Diagrama Entidade-Relacionamento Etapas 2 e 3.

3.2. MODELO RELACIONAL

15

3.2

Modelo Relacional

Feitas as devidas atualizaes e aprimoramentos, zemos o mapeamento do diagrama entidade relacionamento co (DER) para o modelo relacional. Em seguida, zemos a normalizao do conjunto de relaes resultantes ca co (em 3FN) e iniciamos a implementao das relaes em um SGBD. A seguir, apresentamos o conjunto de ca co relaes resultantes do processo de normalizao (em 3FN): co ca

3.2.1

Convenes co

Nomes de relaes prexado por T + maisculo. Ex.: T ALUNO. co u Atributos em maisculo. Ex.: NOME. u Chave primria em sublinhado. a Chaves estrangeiras em itlico. a

3.2.2

Relaes (3FN) co

1. T PESSOA(CPF, RG, NOME, DATA NASCIMENTO, NATURALIDADE, NACIONALIDADE, USUARIO, SENHA, PERFIL, E MAIL, URL); 2. T ENDERECO(CPF , TIPO, LOGRADOURO, BAIRRO, CEP, CIDADE, ESTADO, TELEFONE); 3. T RG(RG, ORGAO EXPEDITOR, ESTADO EXPEDITOR); 4. T ALUNO(RA, CPF, COD SITUACAO, INFO COMPLEMENTARES); 5. T SITUACAO ALUNO(COD SITUACAO, DESCRICAO); 6. T MESTRANDO(RA MESTRANDO, SEMESTRE INGRESSO, ANO INGRESSO, DATA EGRESSO); 7. T DOUTORANDO(RA DOUTORANDO, SEMESTRE INGRESSO, ANO INGRESSO, DATA EGRESSO); 8. T PROFESSOR(CPF , INFO COMPLEMENTARES); 9. T AREA ATUACAO(COD AREA ATUACAO, NOME); 10. T PROFESSOR X AREA ATUACAO(CPF , COD AREA ATUACAO); 11. T PROFESSOR IC(MATRICULA, CPF, COD DEPARTAMENTO, TIPO DEDICACAO, COD SITUACAO, COD NIVEL, SALA); 12. T SITUACAO PROFESSOR(COD SITUACAO, DESCRICAO); 13. T DEPARTAMENTO(COD DEPARTAMENTO, NOME DEPARTAMENTO); 14. T NIVEL(COD NIVEL, DESCRICAO); 15. T PROFESSOR VISITANTE(CPF , UNIVERSIDADE, DEPTO); 16. T DISCIPLINA POS(COD DISCIPLINA POS, COD AREA, ELIMINA EQG, NOME, NRO CREDITOS); 17. T AREA(COD AREA, NOME); 18. T DISCIPLINA GRAD(COD DISCIPLINA GRAD, NOME, NRO CREDITOS); 19. T ESTAGIO(COD ESTAGIO, TURMA, SEMESTRE, ANO, COD DISCIPLINA GRAD); 20. T ESTAGIO PED I(COD PED I , RA DOUTORANDO); 21. T ESTAGIO PED II(COD PED II , RA, CURSO); 22. T ESTAGIO BIPED(COD BIPED, RA DOUTORANDO); 23. T TESE(COD TESE, RA, TIPO TESE, TITULO, NRO PAGINAS, ABSTRACT, PALAVRAS CHAVE, DATA DEFESA); 24. T REQUISITO MESTRADO(COD REQUISITO M, DESCRICAO); 25. T REQUISITO DOUTORADO(COD REQUISITO D, DESCRICAO);

16

CAP ITULO 3. SEGUNDA FASE MODELAGEM RELACIONAL

26. T EXAME INGLES(COD EXAME INGLES, DATA, MATRICULA COORDENADOR) 27. T EXAME EQE(COD EQE, DATA, RA, RESULTADO) 28. T EXAME EQG(COD EQG, COD BANCA EXAMINADORA EQG, DATA); 29. T BANCA EXAMINADORA EQG(COD BANCA EXAMINADORA EQG, COD AREA, MATRICULA PRESIDENTE, MATRICULA MEMBRO 1, MATRICULA MEMBRO 2, DATA INICIO, DATA FIM); 30. T PUBLICACAO(COD PUBLICACAO, TITULO, MES, ANO, URL); 31. T RELATORIO TECNICO(NUMERO, COD PUBLICACAO, NRO PAGINAS); 32. T LIVRO(ISBN, COD PUBLICACAO, EDITORA, EDICAO); 33. T CAPITULO LIVRO(COD PUBLICACAO, ISBN LIVRO, TITULO LIVRO, EDITORA LIVRO, EDICAO LIVRO); 34. T ARTIGO(COD PUBLICACAO, VOLUME, PAGINA INICIAL, PAGINA FINAL, CIRCULACAO, QUALIS); 35. T ARTIGO CONFERENCIA(COD PUBLICACAO, TITULO ANAIS, CIDADE, PAIS); 36. T ARTIGO PERIODICO(COD PUBLICACAO, NOME PERIODICO, NRO EDICAO); 37. T LABORATORIO(COD LABORATORIO, SIGLA LAB, NOME, SALA) 38. T PROJETO PESQUISA(COD PROJETO, NOME, SIGLA PROJETO, DESCRICAO, DATA INICIO, DATA TERMINO, MATRICULA COORDENADOR); 39. T AGENCIA FOMENTO(COD AGENCIA, SIGLA AGENCIA, NOME, URL); 40. T REQUERIMENTO(COD REQUERIMENTO, DATA PEDIDO, COD STATUS, JUSTIFICATIVA, DATA DECISAO, DATA NOTIFICACAO ALUNO, DATA NOTIFICACAO ORIENTADOR); 41. T STATUS(COD STATUS, DESCRICAO); 42. T REQ INSCRICAO ESTAGIO( COD INSCRICAO ESTAGIO); 43. T REQ INSCRICAO PED I( COD INSCRICAO ESTAGIO, RA DOUTORANDO); 44. T REQ INSCRICAO PED II( COD INSCRICAO ESTAGIO, RA); 45. T REQ INSCRICAO BIPED( COD INSCRICAO ESTAGIO, RA DOUTORANDO); 46. T REQ INSCRICAO ESTAGIO X DISCIPLINA GRAD( COD INSCRICAO ESTAGIO, COD DISCIPLINA GRAD); 47. T REQ INSCRICAO EQE( COD INSCRICAO EQE , RA); 48. T REQ INSCRICAO EQG( COD INSCRICAO EQG, RA DOUTORANDO); 49. T REQ INSCRICAO INGLES( COD INSCRICAO INGLES , RA); 50. T REQ DISPENSA EQG X AREA( COD INSCRICAO EQG, COD AREA); 51. T REQ DISPENSA EQG( COD DISPENSA EQG, RA DOUTORANDO); 52. T REQ DISPENSA AREA( COD DISPENSA AREA, RA); 53. T REQ DISPENSA INGLES( COD DISPENSA INGLES , RA); 54. T DISPENSA AREA X AREA( COD DISPENSA AREA, COD AREA); 55. T DISPENSA EQG X AREA( COD DISPENSA EQG, COD AREA); 56. T PESSOA X PUBLICACAO(CPF , COD PUBLICACAO); 57. T PESSOA X LABORATORIO(CPF , COD LABORATORIO); 58. T PESSOA X PROJETO PESQUISA(CPF , COD PROJETO); 59. T ALUNO X DISCIPLINA POS(RA, COD DISCIPLINA POS , SEMESTRE, ANO, TURMA, CONCEITO, CURSO); 60. T ALUNO X EXAME INGLES(RA, COD EXAME , RESULTADO); 61. T DOUTORANDO X EXAME EQG(RA DOUTORANDO, COD EQG, RESULTADO);

3.3. IMPLEMENTACAO DO BANCO DE DADOS


62. T MESTRANDO X REQUISITO MESTRADO(RA MESTRANDO, COD REQUISITO M ); 63. T DOUTORANDO X REQUISITO DOUTORADO( RA DOUTORANDO, COD REQUISITO D); 64. T ALUNO X PROFESSOR(RA, MATRICULA, TIPO, DATA INICIO, DATA TERMINO); 65. T PROFESSOR X DEFESA(CPF , COD TESE ); 66. T PROFESSOR X EQE(MATRICULA, COD EQE );

17

67. T PROFESSOR IC X DISCIPLINA POS(MATRICULA, COD DISCIPLINA POS , SEMESTRE, ANO, TURMA); 68. T COORDENADOR X LABORATORIO(MATRICULA, COD LABORATORIO, DATA INICIO, DATA TERMINO); 69. T CHEFE X DEPTO(MATRICULA, COD DEPTO, DATA INICIO, DATA TERMINO, TIPO); 70. T AGENCIA X ALUNO(RA, DATA INICIO, DATA TERMINO, COD AGENCIA, COD MODALIDADE ); 71. T MODALIDADE BOLSA(COD MODALIDADE, NOME); 72. T AGENCIA X PROJETO(COD PROJETO PESQUISA, COD AGENCIA); 73. T AGENCIA X PROFESSOR(COD AGENCIA, MATRICULA);

3.3

Implementao do Banco de dados ca

Implementamos um banco de dados de acordo com as relaes denidas. Apresentamos o cdigo SQL co o correspondente no Apndice B. e Escolhemos o PostgreSQL como o SGBD para validao de nosso projeto. Deixamos claro que o Postca greSQL j estava instalado na mquina que estamos usando para o projeto. O servidor WEB escolhido foi a a o Apache. Este servidor tambm j estava instalado. Criamos um dom e a nio em www.liv.ic.unicamp.br/ ca ~cpg/si onde disponibilizamos o Sistema de Informao desenvolvido na etapa nal do projeto.

18

CAP ITULO 3. SEGUNDA FASE MODELAGEM RELACIONAL

Cap tulo 4

Terceira fase Sistema de Informao ca


A fase nal deste projeto consistiu na elaborao e desenvolvimento de um prottipo de sistema de informao ca o ca para validar o banco de dados proposto.

4.1

Ferramentas

As ferramentas que escolhemos para o desenvolvimento do projeto so: a PostgreSQL: SGBD para gerenciar o Banco de Dados que desenvolvemos. Apache: Servidor Web. PHP, HTML: Linguagens as quais utilizamos para desenvolver o Sistema de Informao que controla o ca Banco de Dados. Dia para modelagem do DER. Emacs e Quanta+ para edio HTML+PHP. ca

4.2

Casos de uso selecionados

Visando uma maior adequabilidade ao cronograma de atividades estabelecido, validamos apenas um subconjunto de funcionalidades no prottipo do Sistema de Controle Acadmico. o e As funcionalidades validadas so: a Gerenciamento de informaes sobre alunos e professores; co Controle das disciplinas ministradas pelos professores; Controle das disciplinas cursadas pelos alunos (histrico e desempenho acadmico); o e Controle dos exames realizados pela CPG (EQE, EQG e exames de Ingls); e Gerenciamento das informaes sobre as teses defendidas (incluindo os professores membros de banca); co Na prxima seo, detalhamos cada uma das funcionalidades implementadas no prottipo desenvolvido. o ca o 19

20

CAP ITULO 4. TERCEIRA FASE SISTEMA DE INFORMACAO

4.3

Prottipo desenvolvido - SCA-CPG o

Neste cap tulo, apresentamos o prottipo que desenvolvemos para validar o banco de dados proposto. Na o Seo 4.3.1, apresentamos algumas funcionalidades implementadas. Na Seo 4.3.2, apresentamos alguns ca ca trechos de cdigo SQL relacionados a algumas funcionalidades do prottipo selecionadas. o o

4.3.1

Viso geral do prottipo a o

A seguir, apresentamos algumas fotograas do prottipo implementado. o Tela inicial e validao de usurios ca a Desenvolvemos o prottipo do sistema de controle acadmico da CPG/IC de modo a controlar usurios e o e a pers de utilizao. O banco de dados implementado prev pers diferentes para usurios do sistema e ca e a para administradores do sistema. No momento de cadastro de um indiv duo, escolhemos seu perl bem como seu nome de usurio para acessar o sistema. No entanto, devido a restries de tempo, no prottipo a co o apresentado, implementamos apenas o perl de administrador do sistema. As Figuras 4.1 e 4.1 apresentam, respectivamente, as telas de validao e apresentao do prottipo implementado. ca ca o

Figura 4.1: Telas de validao. ca

4.3. PROTOTIPO DESENVOLVIDO - SCA-CPG

21

Figura 4.2: Tela de apresentao. ca

22

CAP ITULO 4. TERCEIRA FASE SISTEMA DE INFORMACAO

Insero, edio e consultas de pessoas ca ca Desenvolvemos o prottipo do sistema de controle acadmico da CPG/IC de modo a permitir a insero, o e ca edio e consultas de alunos, professores, professores visitantes. As Figuras 4.3, apresenta a tela de cadastro ca de um aluno no sistema. As Figuras 4.4, 4.5 apresentam, respectivamente, as telas de consulta de aluno por nome e por RA. A Figura 4.6 apresenta a tela de visualizao de um aluno em mais detalhes. Finalmente, ca a Figura 4.7 apresenta a tela de edio de um aluno. As mesmas funcionalidades esto dispon ca a veis para professores do IC e professores visitantes.

Figura 4.3: Telas de cadastro de alunos.

4.3. PROTOTIPO DESENVOLVIDO - SCA-CPG

23

Figura 4.4: Telas de consulta de alunos por nome.

Figura 4.5: Telas de consulta de alunos por RA.

24

CAP ITULO 4. TERCEIRA FASE SISTEMA DE INFORMACAO

Figura 4.6: Tela de visualizao detalhada de alunos. ca

Figura 4.7: Tela de edio de alunos. ca

4.3. PROTOTIPO DESENVOLVIDO - SCA-CPG Controle de orientadores/orientados

25

Desenvolvemos o prottipo do sistema de controle acadmico da CPG/IC de modo a permitir a insero, o e ca edio e consultas dos dados relativos 2 orientaes de um professor. A Figura 4.8 apresenta a tela de ca 1 co consulta de orientadores pelo nome do aluno. A mesma funcionalidade est implementada para a busca pelo a RA do aluno. A Figura 4.9 apresenta a tela de visualizao detalhada sobre os orientadores de um determinado ca aluno. A Figura 4.10 apresenta a tela de denio de um orientador para um determinado aluno. Finalmente, ca a Figura 4.11 apresenta a lista de orientandos de doutorado e mestrado para um determinado professor.

Figura 4.8: Tela de consulta de orientadores pelo nome do aluno.

26

CAP ITULO 4. TERCEIRA FASE SISTEMA DE INFORMACAO

Figura 4.9: Tela de visualizao detalhada sobre os orientadores de um determinado aluno. ca

Figura 4.10: Tela de denio de um orientador para um determinado aluno. ca

4.3. PROTOTIPO DESENVOLVIDO - SCA-CPG

27

Figura 4.11: Tela de orientandos de doutorado e mestrado para um determinado professor.

28

CAP ITULO 4. TERCEIRA FASE SISTEMA DE INFORMACAO

Controle de disciplinas ministradas Desenvolvemos o prottipo do sistema de controle acadmico da CPG/IC de modo a permitir a insero, o e ca edio e consultas das disciplinas de Ps Graduao do Instituto de Computao da Unicamp. A Figura 4.12 ca o ca ca apresenta a tela de cadastro de disciplinas. A Figura 4.13 apresenta a tela de consulta de disciplinas. A Figura 4.14 apresenta a tela de visualizao detalhada de disciplinas. A Figura 4.15 apresenta a tela de ca visualizao das disciplinas oferecidas para a Ps Graduao do IC/Unicamp. ca o ca

Figura 4.12: Tela de cadastro de disciplinas.

4.3. PROTOTIPO DESENVOLVIDO - SCA-CPG

29

Figura 4.13: Tela de consulta de disciplinas.

Figura 4.14: Tela de visualizo detalhada de disciplinas. ca

30

CAP ITULO 4. TERCEIRA FASE SISTEMA DE INFORMACAO

Figura 4.15: Tela de visualizao das disciplinas oferecidas para a Ps Graduao do IC/Unicamp. ca o ca

4.3. PROTOTIPO DESENVOLVIDO - SCA-CPG Controle de teses

31

Desenvolvemos o prottipo do sistema de controle acadmico da CPG/IC de modo a permitir controle das o e teses de mestrado e doutorado defendidas no Instituto de Computao da Unicamp. A Figura 4.16 apresenta a ca tela de consulta por t tulo de teses defendidas no IC/Unicamp. A Figura 4.17 apresenta a tela de visualizao ca detalhada de uma determinada tese defendida. A Figura 4.18 apresenta a tela de consulta por orientador de teses defendidas.

Figura 4.16: Tela de consulta por t tulo de teses defendidas no IC/Unicamp.

32

CAP ITULO 4. TERCEIRA FASE SISTEMA DE INFORMACAO

Figura 4.17: Tela de visualizao detalhada de uma determinada tese defendida. ca

Figura 4.18: Tela de consulta por orientador de teses defendidas.

4.3. PROTOTIPO DESENVOLVIDO - SCA-CPG Histrico de aluno o

33

Desenvolvemos o prottipo do sistema de controle acadmico da CPG/IC de modo a permitir controle do o e histrico dos alunos atualmente matriculado nos cursos de mestrado e doutorado. A Figura 4.19 apresenta o a tela de consulta de histrico. A Figura 4.20 apresenta a tela de visualizao detalhada do histrico de um o ca o aluno.

Figura 4.19: Tela de consulta de histrico. o

34

CAP ITULO 4. TERCEIRA FASE SISTEMA DE INFORMACAO

Figura 4.20: Tela de visualizao detalhada do histrico de um aluno. ca o

4.3. PROTOTIPO DESENVOLVIDO - SCA-CPG Exames de qualicao ca

35

Desenvolvemos o prottipo do sistema de controle acadmico da CPG/IC de modo a permitir controle dos o e exames de qualicao geral e espec ca co bem como exames de procincia em ingls que so requisitos do e e a Instituto de Computao da Unicamp. A Figura 4.21 apresenta a tela de consulta de exames de qualicao ca ca espec cos. A Figura 4.22 apresenta a tela de consulta de exames de qualicao geral. Finalmente, a ca Figura 4.23 apresenta a tela de consulta de exames de procincia em ingls. e e

Figura 4.21: Tela de consulta de exames de qualicao espec ca cos.

36

CAP ITULO 4. TERCEIRA FASE SISTEMA DE INFORMACAO

Figura 4.22: Tela de consulta de exames de qualicao geral. ca

Figura 4.23: Tela de consulta de exames de procincia em ingls. e e

4.3. PROTOTIPO DESENVOLVIDO - SCA-CPG Situao do aluno ca

37

Desenvolvemos o prottipo do sistema de controle acadmico da CPG/IC de modo a permitir controle da o e situao do aluno em relao ao curso de ps graduao em que ele est matriculado. A Figura 4.24 apresenta ca ca o ca a a tela de consulta da situao dos alunos no curso. ca

Figura 4.24: Tela de consulta da situao dos alunos no curso. ca

38

CAP ITULO 4. TERCEIRA FASE SISTEMA DE INFORMACAO

4.3.2

Cdigos SQL relacionados a algumas funcionalidades implementadas o

Nesta seo, apresentamos alguns trechos de cdigo SQL + PHP relacionados a algumas funcionalidades ca o selecionadas do prottipo implementado. o Listing 4.1: Validao de usurio ca a
1 2 3 4 5 6 7 # Entrada : # s e l e c t SENHA, PERFIL , CPF from T PESSOA where USUARIO = u s u a r i o and SENHA = senha ; u s u a r i o e senha

Listing 4.2: Consulta detalhada de um aluno por nome


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 C o n s u l t a s de r 2 e r 3 s e p a r a d a s para v e r i f i c a r o c u r s o do a l u n o . # Dados do a l u n o s e e l e f o r de d o u t o r a d o r3 = select d . from T DOUTORANDO d where d . ra doutorando = r1 . ra ; # Dados do a l u n o s e e l e f o r de mestrado r 2 = s e l e c t m. from T MESTRANDO m where m. r a m e s t r a n d o = r 1 . r a ; # Dados do a l u n o como nome , rg , c p f , e n d e r e c o e n t r e o u t r o s r 1 = s e l e c t p . , r g . , end . , a . from T PESSOA p , T ALUNO a , T ENDERECO end , T RG r g where p . c p f = a . c p f and r g . r g = p . r g and p . nome nome and end . c p f = p . c p f ; # Entrada : nome do a l u n o

Listing 4.3: Consulta detalhada de um professor do IC por nome


1 2 3 4 5 6 7 8 9 10 11 r 1 = s e l e c t p . , r g . , end . , p i c . from T PESSOA p , T PROFESSOR pp , T PROFESSOR IC p i c , T ENDERECO end , T RG r g where p . c p f = pp . c p f and r g . r g = p . r g and end . c p f = p . c p f and p . c p f = p i c . c p f and p . nome nome ; # Entrada : nome de um p r o f e s s o r

Listing 4.4: Consulta detalhada dos orientadores de um aluno por nome do aluno
1 2 # Entrada : nome de um a l u n o

4.3. PROTOTIPO DESENVOLVIDO - SCA-CPG


3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 C o n s u l t a s de r 1 e r 2 s e p a r a d a s para v e r i f i c a r o c u r s o do a l u n o . # Recuperando o s dados r e l a t i v o s a o r i e n t a c a o r 3 = s e l e c t ap . , p . , p i . from T ALUNO X PROFESSOR ap , T PESSOA p , T PROFESSOR IC p i where ap . m a t r i c u l a = p i . m a t r i c u l a and p . c p f = p i . c p f and ap .RA = r . r a order by ap . DATA INICIO desc ; } } else { c u r s o = Mestrado r = r1 ; # D e c i d i n d o o c u r s o do a l u n o i f ( r1 = ) { c u r s o = Doutorado ; r = r2 ; # Dados r e l a t i v o s ao d o u t o r a d o r 2 = s e l e c t d . ra , p . nome from T DOUTORANDO d , T PESSOA p , T ALUNO a where a . c p f = p . c p f and d . r a d o u t o r a n d o = a . r a and p . nome nome ; # Dados r e l a t i v o s ao mestrado r 1 = s e l e c t m. ra , p . nome from T MESTRANDO m, T PESSOA p , T ALUNO a where a . c p f = p . c p f and m. r a m e s t r a n d o = a . r a and p . nome nome ;

39

Listing 4.5: Consulta detalhada dos orientados de um professor do IC


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 # O r i e n t a n d o s de d o u t o r a d o r 3 = s e l e c t ap . , p . , a . from T ALUNO X PROFESSOR ap , T PESSOA p , T ALUNO a , T DOUTORANDO d # O r i e n t a n d o s de mestrado r 2 = s e l e c t ap . , p . , a . from T ALUNO X PROFESSOR ap , T PESSOA p , T ALUNO a , T MESTRANDO m where ap . r a = a . r a and a . r a = m. r a m e s t r a n d o and a . c p f = p . c p f and ap . m a t r i c u l a = mat ; # Dados do p r o f e s s o r r1 = select pic . , p . from T PROFESSOR IC p i c , T PESSOA p where p i c . c p f = p . c p f and p i c .MATRICULA = mat ; # Entrada = M a t r i c u l a mat de um p r o f e s s o r

40
21 22 23 24 25 where ap . r a = a . r a and

CAP ITULO 4. TERCEIRA FASE SISTEMA DE INFORMACAO

a . r a = d . r a d o u t o r a n d o and a . c p f = p . c p f and ap . m a t r i c u l a = mat ;

Listing 4.6: Consulta dos detalhes de uma disciplina de Ps Graduao do IC o ca


1 2 3 4 5 6 7 8 9 r1 = select from T DISCIPLINA POS d , T AREA a where upper (NOME) nome and a . cod area = d . cod area order by NOME asc ; # Entrada : nome da d i s c i p l i n a

Listing 4.7: Consultar detalhes de uma tese por t tulo


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 # Nome dos membros da banca r 3 = s e l e c t nome from T PROFESSOR X DEFESA pd , T PESSOA p where pd . CPF = p . CPF and pd . c o d t e s e = r 1 . c o d t e s e order by nome asc ; # Nome do o r i e n t a d o r da t e s e r 2 = s e l e c t nome from T ALUNO X PROFESSOR ap , T PESSOA p , T PROFESSOR IC p i c where p i c . CPF = p . CPF and ap .MATRICULA = p i c .MATRICULA and ap .RA = r 1 . r a order by ap . d a t a i n i c i o desc ; # Nome do a l u n o e dados de sua t e s e r 1 = s e l e c t t . , a . , p .NOME from T TESE t , T ALUNO a , T PESSOA p where p . CPF = a . CPF and a .RA = t .RA and t . TITULO t i t u l o ; # Entrada : t i t u l o da t e s e

Listing 4.8: Consulta dados de disciplinas da Ps Graduao que eliminam EQG o ca


1 2 3 4 5 6 7 8 r 1 = s e l e c t , p . nome as nomep , d . nome as nomed from T DISCIPLINA POS d , T PROFESSOR IC X DISCIPLINA POS pd , T PROFESSOR IC p i c , T PESSOA p where d . c o d d i s c i p l i n a p o s = pd . c o d d i s c i p l i n a p o s and pd . m a t r i c u l a = p i c . m a t r i c u l a and p i c . c p f = p . c p f and d . e l i m i n a e q g = true order by pd . c o d d i s c i p l i n a p o s asc , pd . ano desc ;

4.3. PROTOTIPO DESENVOLVIDO - SCA-CPG Listing 4.9: Consulta alunos de doutorado cujo CR menor que um determinado valor
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 i f ( $cr < crEntrada ) # Imprime } } # Logo em s e g u i d a , para cada d i s c i p l i n a c a l c u l a # o s r e s p e c t i v o s CRs w h i l e ( $rowR2 = p g f e t c h a s s o c ( $ r 2 ) ) { $coun t++; switch ( strtoupper ( $r2 [ c o n c e i t o ] ) ) { case A : $ c r += 4 . 0 ; break ; case B : $ c r += 3 . 0 ; break ; case C : $ c r += 2 . 0 ; break ; case D : $ c r += 1 . 0 ; break ; # Para cada a l u n o acha as d i s c i p l i n a s que e l e c u r s o u r 2 = s e l e c t from T ALUNO X DISCIPLINA POS where RA = r 1 . r a d o u t o r a n d o and and c u r s o = D ; # Recuperando o s dados dos a l u n o s r 1 = s e l e c t NOME, RA DOUTORANDO from T ALUNO a , T DOUTORANDO d , T PESSOA p where d . r a d o u t o r a n d o = a . r a and a . cpf = p . cpf ; # Entrada : um v a l o r numerico r e p r e s e n t a n d o um c r E n t r a d a

41

Listing 4.10: Visualizar o histrico completo de um aluno o


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 # Disciplinas r3 = select f e i t a s no d o u t o r a d o # Disciplinas r2 = select from T ALUNO X DISCIPLINA POS ad , T DISCIPLINA POS d where ad . c o d d i s c i p l i n a p o s = d . c o d d i s c i p l i n a p o s and RA = r 1 . r a and c u r s o = M ; f e i t a s no mestrado r1 = select a . , ra from T ALUNO a , T PESSOA p where a . c p f = p . c p f and p . nome nome ; # Entrada : nome de algum a l u n o

42
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 # Dados do o r i e n t a d o r r 4 = s e l e c t nome from

CAP ITULO 4. TERCEIRA FASE SISTEMA DE INFORMACAO

T ALUNO X DISCIPLINA POS ad , T DISCIPLINA POS d where ad . c o d d i s c i p l i n a p o s = d . c o d d i s c i p l i n a p o s and RA = r 1 . r a and c u r s o = D ;

from T PROFESSOR IC p i c , T PESSOA p , T ALUNO X PROFESSOR ap where p i c . c p f = p . c p f and p i c . m a t r i c u l a = ap . m a t r i c u l a and ap . r a = r 1 . r a order by ap . d a t a i n i c i o desc ; # C a l c u l a s e o CR como no exemplo a n t e r i o r .

Cap tulo 5

Metodologia e cronograma
5.1 Metodologia

Nesta seo descrevemos a metodologia utilizada durante o desenvolvimento deste projeto. Para um melhor ca desenvolvimento do projeto, ns o dividimos em trs fases com atividades distintas. o e 1. Fase 1 Levantamento de requisitos; Elaborao do diagrama entidade-relacionamento; ca 2. Fase 2 Aprimoramento do diagrama entidade-relacionamento; Mapeamento do modelo conceitual para modelo relacional; Normalizao do modelo relacional; ca Escolha do SGBD e implementa do banco de dados bem como das rotinas de consultas e de co modicao; ca 3. Fase 3 Implementao de um prottipo do sistema de controle acadmico. ca o e

5.1.1

Ferramentas utilizadas

As ferramentas que escolhemos para o desenvolvimento do projeto so: a PostgreSQL: SGBD para gerenciar o Banco de Dados que desenvolvemos. Apache: Servidor Web. PHP, HTML: Linguagens as quais utilizamos para desenvolver o Sistema de Informao que controla o ca Banco de Dados. Dia para modelagem do DER. Emacs e Quanta+ para edio HTML+PHP. ca 43

44

CAP ITULO 5. METODOLOGIA E CRONOGRAMA

5.1.2

Estat sticas de desenvolvimento

As esta sticas gerais de desenvolvimento do sistema de controle acadmico da CPG/IC so: e a 73 relaes. co 3.200 linhas de cdigo SQL para criaao e populao inicial das relaes. o c ca co 87 classes de aplicao em PHP. ca 9.500 linhas de cdigo em PHP para desenvolver o sistema de informao como um todo (at o moo ca e mento).

5.2. CRONOGRAMA

45

5.2

Cronograma

Desenvolvemos este projeto segundo o cronograma apresentado na Tabela 5.2. Atividade 1 1 Levantamento de requisitos 2 Desenvolvimento do DER inicial Tabela 5.1: Cronograma das Atividades Fase 1. Semana 2 3 4 5

Atividade 6 3 Aprimoramento DER 4 Mapeamento 5 Normalizao ca 6 Implementao BD ca 7 Prottipo o 7 8 9

Semana 10 11 12 13 14 15

Tabela 5.2: Cronograma das Atividades Fases 2 e 3.

Bibliograa
[1] Carlos Alberto Heuser. ISBN 8-52410-590-9. [2] Comisso de Ps-Graduao/IC-Unicamp. Regulamentos do Instituto de Computao da Unicamp, SP, a o ca ca Brasil. Online, 2006. http://www.dcc.unicamp.br/~cpg/infocpg/Regulamento.html. [3] Raghu Ramakrishnan and Johannes Gehrke. Database Management Systems. McGraw-Hill, New York, USA, 2003. ISBN 0-07246-563-8. [4] The Apache Project. The Apache documentation. Online, 2006. http://httpd.apache.org/docs/2.0/ invoking.html. [5] The PHP team. The PHP documentation. Online, 2006. http://www.php.net/manual/en/. [6] The PostgreSQL team. PostgreSQL 7.5 documentation. Online, 2006. http://www.postgresql.org/ docs/7.4/interactive/index.html. Projeto de Banco de Dados. Sagra Luzzatto, Porto Alegre, Brasil, 2004.

47

Apndice A e

Modelo conceitual
A.1
A.1.1

Entidades
Pessoa

Descrio: Representa as pessoas envolvidas no Programa de Ps-Graduao, como alunos ou docentes. ca o ca Atributos: Nome Nome CPF Data de Nascimento Naturalidade Nacionalidade Endereo Eletrnico c o URL Usurio a Senha Perl Descrio ca Nome completo da pessoa. Nmero do Cadastro de Pessoa F u sica da pessoa. Data de nascimento da pessoa. Nome da cidade onde a pessoa nasceu. Nacionalidade da pessoa. Endereo eletrnico (Email ) da pessoa. c o Endereo WEB da pessoa. c Nome de usurio (login) da pessoa no sistema. a Senha da pessoa no sistema. Perl da pessoa no sistema, como usurio ou administrador. a

A.1.2

RG

Descrio: Representa documentos de identidade (Registro Geral). ca Atributos: Nome RG a Orgo expeditor Estado expeditor Descrio ca Nmero do RG. u Nome do rgo expeditor do documento. o a Sigla do estado onde foi emitido o documento.

49

A.1.3

Endereo c

Descrio: Representa um endereo, que pode ser principal ou alternativo. ca c Atributos: Nome Tipo Logradouro Bairro CEP Cidade Estado Telefone Descrio ca Identica se o endero principal ou alternativo. c e Nome do logradouro. Nome do bairro. Nmero do CEP. u Nome da cidade. Sigla do estado. Nmero de telefone para contato. u

A.1.4

Aluno

ca Descrio: E uma especializao de entidade Pessoa. Representa os alunos regulares dos cursos de Mestrado ca e Doutorado. Atributos: Nome RA Informaes complementares co Descriao c Registro acadmico do aluno. e Informaes adicionais relativas ao aluno. co

A.1.5

Mestrando

ca Descrio: E uma especializao da entidade Aluno. Representa os alunos regulares do curso de Mestrado. ca Atributos: Nome Semestre de ingresso Ano de ingresso Data de engresso Descrio ca Semestre no qual o aluno ingressou no mestrado. Ano no qual o aluno ingressou no mestrado. Data de trmino do mestrado. e

A.1.6

Doutorando

Descrio: E uma especializao da entidade Aluno. Representa os alunos regulares do curso de Doutorado. ca ca Atributos: Nome Semestre de ingresso Ano de ingresso Data de engresso Descrio ca Semestre no qual o aluno ingressou no doutorado. Ano no qual o aluno ingressou no doutorado. Data de trmino do doutorado. e

A.1.7

Situao de aluno ca

Descrio: Representa a sitiuo de um aluno, por exemplo, ativo, licenciado, desligado, etc. ca ca

Atributos: Nome Cdigo o Descrio ca Descrio ca Cdigo identicador da sitiuo. o ca Descrio da sitiuo. ca ca

A.1.8

Professor

Descrio: E uma especializao de entidade Pessoa. Representa os professores envolvidos nas atividades do ca ca Programa de Ps-Graduao. o ca Atributos: Nome Informaes complementares co Descriao c Informaes adicionais sobre o professor. co

A.1.9

Professor do IC

Descrio: E uma especializao da entidade Professor. Representa os professores vinculados ao Instituto. ca ca Atributos: Nome Matr cula Dedicao ca Sala Descrio ca Nmero de matr u cula do professor. Regime de trabalho do professor (dedicao exclusiva ou parcial). ca Identicao da sala do professor. ca

A.1.10

Professor Visitante

Descrio: E uma especializao da entidade Professor. Representa os professores visitantes que de alguma ca ca forma participaram de atividades do Programa de Ps-Graduao do Instituto. o ca Atributos: Nome Universidade Departamento Descrio ca Nome da universidade de origem do professor. Nome do departamento ao qual o professor pertence na sua universidade.

A.1.11

Situao de professor ca

Descrio: Representa a sitiuo de um professor vinculado ao Instituto, por exemplo, aposentado, ativo, ca ca licenciado, etc. Atributos: Nome Cdigo o Descrio ca Descrio ca Cdigo identicador da sitiuo. o ca Descrio da sitiuo. ca ca

A.1.12

N vel de professor

Descrio: Representa um n ca vel de um professor vinculado ao Instituto, por exemplo, MS-3, MS-5, liverdocente, etc.

Atributos: Nome Cdigo o Descrio ca Descrio ca Cdigo identicador do n o vel. Descrio do n ca vel.

A.1.13

Area de atuao ca

Descrio: Representa as reas de pesquisa em que um professor pode atuar. ca a Atributos: Nome Cdigo o Nome Descrio ca Cdigo identicador da rea. o a Nome da rea. a

A.1.14

Departamento

Descrio: Representa os departamentos existentes no Instituto. ca Atributos: Nome Cdigo o Nome Descrio ca Cdigo identicador do departamento. o Nome do departamento.

A.1.15

Disciplina

Descrio: Representa as disciplinas oferecidas pelo Instituto. ca Atributos: Nome Cdigo o Nome Nmero de Crditos u e Descrio ca Cdigo da disciplina. o Nome da disciplina. Nmero de crdito da disciplina. u e

A.1.16
Instituto.

Disciplina de Graduao ca

Descrio: E uma especializao da entidade Disciplina. Representa disciplinas de graduao oferecidas pelo ca ca ca

A.1.17

Disciplina de Ps-Graduao o ca

Descrio: E uma especializao da entidade Disciplina. Representa disciplinas oferecidas no Programa de ca ca Ps-Graduao do Instituto. o ca Atributos: Nome Elimina Descrio ca Indica se a disciplina elimina ou no exame de qualicao geral na rea correspondente. a ca a

A.1.18

Estgio a

Descrio: Representa os estgios realizados no contexto do Programa de Estgio Docncia. ca a a e Atributos:

Nome Cdigo o Turma Semestre Ano

Descrio ca Cdigo identicador do estgio. o a Turma na qual o estgio foi realizado. a Semestre no qual o aluno realizou o estgio. a Ano no qual o aluno realizou o estgio. a

A.1.19

PED-I

Descrio: E uma especializao da entidade Estgio. Representa os estgios de n I. ca ca a a vel

A.1.20

PED-II

Descrio: E uma especializao da entidade Estgio. Representa os estgios de n II. ca ca a a vel

A.1.21

BIPED

Descrio: E uma especializao da entidade Estgio. Representa os estgios realizados como BIPED. ca ca a a

A.1.22

Tese

Descrio: Representa as teses de mestrado ou doutorado defendidas no Instituto. ca Atributos: Nome Cdigo o Tipo T tulo Pginas a Abstract Palavras-chave Descrio ca Cdigo identicador da tese. o Indica se uma tese de mestrado ou doutorado. e T tulo da tese. Nmero de pginas da tese. u a Resumo da tese. Palavras-chave da tese.

A.1.23

Area

Descrio: Representa as reas de pesquisa do Programa de Ps-Graduao. ca a o ca Atributos: Nome Cdigo o Nome Descrio ca Cdigo identicador da rea. o a Nome da rea. a

A.1.24
pondente. Atributos: Nome

Requisito

Descrio: Representa os requisitos que devem ser cumpridos pelos alunos para obteno do t ca ca tulo corres-

Descrio ca Cdigo identicador do requisito. o Descrio do requisito. ca

Cdigo o Descrio ca

A.1.25

Requisito de Mestrado

ca cos para obteno do ca Descrio: E uma especializao da entidade Requisito. Representa requisitos espec ca t tulo de mestre.

A.1.26

Requisito de Doutorado

Descrio: E uma especializao da entidade Requisito. Representa requisitos espec ca ca cos para obteno do ca t tulo de doutor.

A.1.27

Exame

Descrio: Representa os exames realizados pelos alunos (cada exame realizado corresponde a uma instncia ca a desta entidade). Atributos: Nome Cdigo o Data Descrio ca Cdigo identicador do exame. o Data em que o exame foi realizado.

A.1.28

Exame de Ingls e

ca e e Descrio: E uma especializao da entidade Exame. Representa os exames de procincia em ingls ofereca cidos pelo Instituto.

A.1.29

EQE

Descrio: E uma especializao da entidade Exame. Representa os exames de qualicao espec ca ca ca cos realizados pelos alunos de mestrado ou doutorado.

A.1.30

EQG

Descrio: E uma especializao da entidade Exame. Representa os exames de qualicao geral realizados ca ca ca pelos alunos de doutorado.

A.1.31
per odo. Atributos: Nome

Banca Examinadora de EQG

Descrio: Representa a banca de examinadores responsveis pelo EQG em uma rea durante um determinado ca a a

Descrio ca Cdigo identicador da banca. o Data em que o exame foi realizado. Professor que preside a banca. Primeiro membro da banca. Segundo membro da banca. Data de in de atuao da banca. cio ca Data de trmino de atuao da banca. e ca

Cdigo o Data Presidente Membro 1 Membro 2 Data de in cio Data de trmino e

A.1.32

Publicao ca

Descrio: Representa as publicaes tcnicas e cient ca co e cas dos pesquisadores do Instituto. Atributos: Nome Cdigo o T tulo Ms e Ano URL Descrio ca Cdigo identicador da publicao. o ca T tulo da publicao. ca Ms de publicao. e ca Ano de publicao. ca Endereo WEB da publicao. c ca

A.1.33

Relatrio Tcnico o e

Descrio: E uma especializao da entidade Publicao. Representa os relatrios tcnicos publicados pelo ca ca ca o e Instituto. Atributos: Nome Nmero u Pginas a Descrio ca Nmero identicador do relatrio. u o Nmero de pginas do relatrio. u a o

A.1.34

Livro

ca ca Descrio: E uma especializao da entidade Publicao. Representa os livros publicados por pesquisadores ca do Instituto. Atributos: Nome Editora Edio ca ISBN Descrio ca Nome da editora que publicou o livro. Nmero da edio do livro. u ca Cdigo ISBN do livro. o

A.1.35

Cap tulo de Livro

Descrio: E uma especializao da entidade Publicao. Representa os livros publicados por pesquisadores ca ca ca do Instituto. Atributos: Nome T tulo do Livro Editora Edio ca ISBN Descrio ca T tulo do livro do qual o cap tulo faz parte Nome da editora que publicou o livro. Nmero da edio do livro. u ca Nmero do ISBN do livro. u

A.1.36

Artigo

ca ca cos publicados pelos Descrio: E uma especializao da entidade Publicao. Representa os artigos cient ca pesquisadores do Instituto. Atributos: Nome Pgina inicial a Pgina nal a Circulao ca Qualis Volume Descrio ca Nmero da pgina inicial do artigo. u a Nmero da pgina nal do artigo. u a Indica se uma publicao nacional ou internacional. e ca Nota denida pela CAPES em funo de onde o artigo foi publicado. ca Nmero do volume do per u odico ou do anais da conferncia. e

A.1.37
ferncias. e Atributos: Nome

Artigo em Conferncia e

ca cos publicados em conDescrio: E uma especializao da entidade Artigo. Representa os artigos cient ca

Descrio ca T tulo do anais da conferncia. e Nome da Cidade onde foi realizada a conferncia. e Nome do Pa onde foi realizada a conferncia. s e

T tulo do anais Cidade Pa s

A.1.38
ferncias. e Atributos: Nome

Artigo em Peridico o

ca cos publicados em conDescrio: E uma especializao da entidade Artigo. Representa os artigos cient ca

Descrio ca Nome do peridico. o Nmero da edio do peridico. u ca o

Nome do Peridico o Nmero u

A.1.39

Laboratrio o

Descrio: Representa os laboratrios de pesquisa do Instituto. ca o Atributos: Nome Cdigo o Nome Sigla Sala Descrio ca Cdigo identicador do labortorio. o a Nome do laboratrio. o Sigla do nome do laboratrio. o Nmero da sala do laboratrio. u o

A.1.40

Projeto de Pesquisa

Descrio: Representa os projetos de pesquisa desenvolvidos no Instituto. ca Atributos: Nome Cdigo o Nome Sigla Descrio ca Data de in cio Data de trmino e Descrio ca Cdigo identicador do projeto. o Nome do projeto. Sigla do nome do projeto. Breve descrio sobre o projeto. ca Data de in do projeto. cio Data de trmino do projeto. e

A.1.41

Agncia de Fomento e

Descrio: Representa as agncias que de alguma forma nanciam trabalhos de pesquisa no Instituto. ca e Atributos: Nome Cdigo o Nome Sigla URL Descrio ca Cdigo identicador da agncia. o e Nome da agncia. e Sigla do nome do agncia. e Endereo WEB da agncia. c e

A.1.42

Modalidade de Bolsa

Descrio: Representa as modalidades de bolsa nanciadas para alunos por agncias de fomento, por exemplo, ca e bolsa de doutorado, bolsa de mestrado, etc. Atributos: Nome Cdigo o Nome Descrio ca Cdigo identicador da modalidade. o Nome da modalidade de bolsa.

A.1.43

Requerimento

Descrio: Representa os requerimentos de inscrio ou solicitao de dispensa encaminhados pelos alunos ` ca ca ca a CPG. Atributos: Nome Cdigo o Data Justicativa Data de Deciso a Noticao do Aluno ca Noticao do Orientador ca Descrio ca Cdigo identicador do requerimento. o Data em que o requerimento foi encaminhado. Justicativa para a deciso da CPG. a Data da deciso da CPG. a Data da noticao do resultado ao aluno. ca Data da noticao do resultado ao orientador. ca

A.1.44

Status

Descrio: Representa status poss ca veis para um requerimento, por exemplo, pendente, indeferido, deferido, etc. Atributos: Nome Cdigo o Descrio ca Descrio ca Cdigo identicador do status. o Descrio do status. ca

A.1.45

Requerimento de Inscrio ca

ca ca Descrio: E uma especializao da entidade Requerimento. Representa os requerimentos de inscrio em ca exames ou estgios. a

A.1.46

Inscrio em Exame ca

Descrio: E uma especializao da entidade Requerimento de Inscrio. Representa os requerimentos de ca ca ca inscrio para realizao de exames exigidos pelo Programa. ca ca

A.1.47

Inscrio em Exame de Ingls ca e

ca ca ca Descrio: E uma especializao da entidade Inscrio em Exame. Representa os requerimentos de inscrio ca em exame de ingls. e

A.1.48

Inscrio em EQE ca

Descrio: E uma especializao da entidade Inscrio em Exame. Representa os requerimentos de inscrio ca ca ca ca em exame de qualicao espec ca co.

A.1.49

Inscrio em EQG ca

Descrio: E uma especializao da entidade Inscrio em Exame. Representa os requerimentos de inscrio ca ca ca ca em exames de qualicao geral. ca Atributos:

A.1.50

Inscrio em Estgio ca a

Descrio: E uma especializao da entidade Requerimento de Inscrio. Representa os requerimentos de ca ca ca inscrio para participao em Programa de Estgio Docncia. ca ca a e

A.1.51

Inscrio em PED-I ca

Descrio: E uma especializao da entidade Inscrio em Estgio. Representa os requerimentos de inscrio ca ca ca a ca para participao em Programa de Estgio Docncia no n I. ca a e vel

A.1.52

Inscrio em PED-II ca

Descrio: E uma especializao da entidade Inscrio em Estgio. Representa os requerimentos de inscrio ca ca ca a ca para participao em Programa de Estgio Docncia no n II. ca a e vel

A.1.53

Inscrio em BIPED ca

Descrio: E uma especializao da entidade Inscrio em Estgio. Representa os requerimentos de inscrio ca ca ca a ca para participao como BIPED em Programa de Estgio Docncia. ca a e

A.1.54

Requerimento de Dispensa

Descrio: E uma especializao da entidade Requerimento. Representa os requerimentos de dispensa em ca ca exames ou dispensa de rea. a

A.1.55

Dispensa de Exame de Ingls e

Descrio: E uma especializao da entidade Requerimento de Dispensa. Representa os requerimentos de ca ca dispensa em exame de ingls. e

A.1.56

Dispensa de EQG

ca Descrio: E uma especializao da entidade Requerimento de Dispensa. Representa os requerimentos de ca dispensa em exame de qualicao geral em uma rea. ca a

A.1.57

Dispensa de Area

Descrio: E uma especializao da entidade Requerimento de Dispensa. Representa os requerimentos de ca ca dispensa de cumprimento de rea obrigatria. a o

A.2
A.2.1

Relacionamentos
Pessoa possui RG

Descrio: Identica o ducemento de identidade de uma pessoa. ca No possui atributos. a

A.2.2

Pessoa possui Endero c

Descrio: Identica o ducemento de identidade de uma pessoa. ca No possui atributos. a

A.2.3

Professor atua Area de Atuao ca

a ca Descrio: Identica as reas de atuao de um professor. ca No possui atributos. a

A.2.4

Pessoa publica Publicao ca

Descrio: Identica os autores das publicaes. ca co No possui atributos. a

A.2.5

Pessoa participa Laboratrio o

Descrio: Identica as pessoas que so membros de um laboratrio do Instituto. ca a o No possui atributos. a

A.2.6

Pessoa participa Projeto de Pesquisa

Descrio: Identica as pessoas envolvidas em um projeto de pesquisa no Instituto. ca No possui atributos. a

A.2.7

Aluno possui situao ca

Descrio: Identica a situao de um aluno que se matriculou no programa de ps-graduao. ca ca o ca No possui atributos. a

A.2.8

Aluno cursa Disciplina de Ps-Graduao o ca

Descrio: Identica as disciplinas cursadas pelos alunos. ca Atributos: Nome Semestre Ano Turma Conceito Curso Descrio ca Semestre no qual o aluno cursou a disciplina. Ano no qual o aluno cursou a disciplina. Turma na qual o aluno cursou a disciplina. Conceito que o aluno obteve na disciplina. M: Mestrado, D: Doutorado.

A.2.9

Aluno defende Tese

Descrio: Identica as teses e dissertaes defendidas pelos alunos de doutorado e mestrado, respectivamente. ca co Atributos: Nome Data Descrio ca Data em que foi realizada a defesa.

A.2.10

Aluno realiza EQE

Descrio: Identica o Exame de Qualicao Espec ca ca co realizado por um aluno. Atributos: Nome Resultado Descrio ca Indica se o aluno foi aprovado, aprovado com restries ou reprovado. co

A.2.11

Aluno realiza Exame de Ingls e

Descrio: Identica os alunos que realizaram um Exame de Ingls ca e Atributos: Nome Resultado Descrio ca Indica se o aluno foi aprovado ou no no exame. a

A.2.12

Mestrando cumpre Requisito de Mestrado

Descrio: Identica os requisitos que j foram cumpridos por um aluno de mestrado. ca a No possui atributos. a

A.2.13

Mestrando realiza PED-II

Descrio: Identica os estgios PED-II realizados por um aluno de mestrado. ca a No possui atributos. a

A.2.14

Mestrando protocola Inscrio em PED-II ca

Descrio: Identica os requerimentos de inscrio em estgio PED-II efetuados por um aluno de mestrado. ca ca a No possui atributos. a

A.2.15

Mestrando protocola Inscrio em Exame de Ingls ca e

ca e Descrio: Identica os requerimentos de inscrio em exame de ingls efetuados por um aluno de mestrado. ca No possui atributos. a

A.2.16

Mestrando protocola Inscrio em EQE ca

Descrio: Identica os requerimentos de inscrio em exame de qualicao espec ca ca ca co efetuados por um aluno de mestrado. No possui atributos. a

A.2.17

Mestrando protocola Dispensa em Exame de Ingls e

Descrio: Identica requerimento de dispensa em exame de ingls efetuado por um aluno de mestrado. ca e No possui atributos. a

A.2.18

Mestrando protocola Dispensa de Area

a o Descrio: Identica requerimento de dispensa em rea obrigatria efetuado por um aluno de mestrado. ca No possui atributos. a

A.2.19

Doutorando cumpre Requisito de Doutorado

Descrio: Identica os requisitos que j foram cumpridos por um aluno de doutorado. ca a No possui atributos. a

A.2.20

Doutorando realiza Estgio a

Descrio: Identica as participaes de um aluno de doutorado no programa de estgio docncia em suas ca co a e diversas modalidades. No possui atributos. a

A.2.21

Doutorando realiza EQG

Descrio: Identica os exames de qualicaao geral realizados por um aluno de doutorado. ca c Atributos: Nome Resultado Descrio ca Indica se o aluno foi aprovado ou no no exame. a

A.2.22

Doutorando protocola Requerimento

Descrio: Identica os requerimentos de inscrio ou dispensa efetuados por um aluno de doutorado. ca ca No possui atributos. a

A.2.23

Professor possui situao ca

Descrio: Identica a situao de um professor do Instituto. ca ca No possui atributos. a

A.2.24

Professor possui n vel

Descrio: Identica o n de um professor do Instituto. ca vel No possui atributos. a

A.2.25

Professor orienta Aluno

Descrio: Identica os alunos orientados por um professor. ca Atributos: Nome Tipo Data de in cio Data de trmino e Descrio ca Indica se o professor orientador ou co-orientador do aluno. e Data de in da orientao. cio ca Data de trmino da orientao. e ca

A.2.26

Professor participa Defesa

Descrio: Identica os professores que formam a banca de uma defesa. ca No possui atributos. a

A.2.27

Professor do IC ministra Disciplina de Ps-Graduao o ca

o ca Descrio: Identica as disciplinas que um professor ministrou no programa de ps-graduao. ca Atributos: Nome Semestre Ano Turma Descrio ca Semestre no qual o professor ministrou a disciplina. Ano no qual o professor ministrou a disciplina. Turma para a qual o professor ministrou a disciplina.

A.2.28

Professor do IC coordena Laboratrio o

Descrio: Identica quais professores coordenam os laboratrios de pesquisa. ca o Atributos: Nome Data de in cio Data de trmino e Descrio ca Data do in do per cio odo em que o professor foi coordenador. Data do trmino do per e odo em que o professor foi coordenador.

A.2.29

Professor do IC pertence a Departamento

Descrio: Identica quais professores pertencem a cada departamento. ca No possui atributos. a

A.2.30

Professor do IC chea Departamento

Descrio: Identica quais professores so chefes dos departamentos. ca a

Atributos: Nome Tipo Data de in cio Data de trmino e Descrio ca Indica se o professor chefe ou vice-chefe do departamento. e Data do in do per cio odo em que o professor foi chefe do departamento. Data do trmino do per e odo em que o professor foi chefe do departamento.

A.2.31

Professor do IC coordena Projeto de Pesquisa

Descrio: Identica os alunos orientados por um professor. ca No possui atributos. a

A.2.32

Professor do IC coordena Exame de Ingls e

e Descrio: Identica o professor que coordena um exame de ingls. ca No possui atributos. a

A.2.33

Agncia de Fomento nancia Bolsa para Aluno e

Descrio: Identica as entidades que nanciam bolsas de estudos para os alunos. ca Atributos: Nome Data de in cio Data de trmino e Descrio ca Data do in do nanciamento da bolsa de estudos. cio Data do trmino do nanciamento da bolsa de estudos. e

A.2.34
Instituto.

Agncia de Fomento suporta Professor do IC e

Descrio: Identica as entidades que nanciam bolsas de produtividade em pesquisa para os professores do ca No possui atributos. a

A.2.35

Agncia de Fomento nancia Projeto de Pesquisa e

Descrio: Identica as entidades que nanciam projetos de pesquisa. ca No possui atributos. a

A.2.36

Banca Examinadora pertence Area

Descrio: Identica a rea de responsabilidade de uma banca examinadora de EQG. ca a No possui atributos. a

A.2.37

EQG possui Banca Examinadora

Descrio: Identica a banca responsvel por um EQG. ca a No possui atributos. a

A.2.38

Requerimento possui Status

Descrio: Identica a status de um requerimento. ca No possui atributos. a

A.2.39

Estgio possui Disciplina de Graduao a ca

a e Descrio: Identica a disciplina na qual um estgio docncia foi realizado. ca No possui atributos. a

A.2.40

Disciplina de Ps-Graduao pertence Area o ca

Descrio: Identica a qual rea uma disciplina pertence. ca a No possui atributos. a

A.2.41

Inscrio em Estgio seleciona Disciplina de Graduao ca a ca

Descrio: Identica as opes de displina indicadas no requerimento de inscrio em estgio. ca co ca a No possui atributos. a

A.2.42

Inscrio em Estgio possui Disciplina de Estgio ca a a

Descrio: Identica estgios anteriores realizados pelo aluno em um requerimento de inscrio em estgio. ca a ca a No possui atributos. a

A.2.43

Inscrio em EQG seleciona Area ca

Descrio: Identica as reas indicadas no requerimento de inscrio em EQG. ca a ca No possui atributos. a

A.2.44

Dispensa de EQG seleciona Area

Descrio: Identica as reas para as quais se solicita dispensa de EQG. ca a No possui atributos. a

A.2.45

Dispensa de Area seleciona Area

Descrio: Identica as reas para as quais se solicita dispensa. ca a No possui atributos. a

A.2.46

Professor participa Qualicao ca

Descrio: Identica os professores que foram membros da banca de um exame de qualicao espec ca ca co. No possui atributos. a

Apndice B e

SQL
B.1 Criando o Banco de Dados
Listing B.1: Criando o Banco de Dados
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 create table T REQUISITO DOUTORADO ( COD REQUISITO DOUTORADO s e r i a l , DESCRICAO t e x t not null , ); primary key (COD REQUISITO MESTRADO) create table T REQUISITO MESTRADO ( COD REQUISITO MESTRADO DESCRICAO serial , t e x t not null , ); primary key (COD ESTAGIO) , foreign key (COD DISCIPLINA GRAD) r e f e r e n c e s T DISCIPLINA GRAD (COD DISCIPLINA GRAD) on delete cascade create table T ESTAGIO ( COD ESTAGIO TURMA SEMESTRE ANO serial , character ( 1 ) not null , character ( 1 ) not null , character ( 4 ) not null , character ( 5 ) not null , ); primary key (COD DISCIPLINA GRAD) create table T DISCIPLINA GRAD ( COD DISCIPLINA GRAD NOME NRO CREDITOS character ( 5 ) , t e x t not null , integer not null , ); primary key (COD MODALIDADE) create table T MODALIDADE BOLSA ( COD MODALIDADE NOME serial , t e x t not null ,

COD DISCIPLINA GRAD

67

38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 ); ); ); ); ); ); );

primary key (COD REQUISITO DOUTORADO)

create table T PUBLICACAO ( COD PUBLICACAO TITULO MES ANO URL serial , t e x t not null , character ( 2 ) not null , character ( 4 ) not null , t e x t null ,

primary key (COD PUBLICACAO)

create table T LABORATORIO ( COD LABORATORIO SIGLA NOME SALA serial , t e x t not null , t e x t not null , t e x t not null ,

primary key (COD LABORATORIO)

create table T STATUS ( COD STATUS DESCRICAO serial , t e x t not null , P : Pendente , I : I n d e f e r i d o , D: D e f e r i d o

primary key (COD STATUS)

create table T AGENCIA FOMENTO ( COD AGENCIA NOME URL serial , t e x t not null , t e x t not null , SIGLA AGENCIA t e x t not null ,

primary key (COD AGENCIA)

create table T RG ( RG ORGAO EXPEDITOR text , character ( 3 ) not null ,

ESTADO EXPEDITOR character ( 2 ) not null , primary key (RG)

create table T SITUACAO PROFESSOR ( COD SITUACAO DESCRICAO aposentado primary key (COD SITUACAO) serial , t e x t not null , S i t u a c a o do p r o f e s s o r : a t i v o , i n a t i v o , l i c e n c i a d o ,

create table T NIVEL PROFESSOR ( COD NIVEL DESCRICAO serial , t e x t not null , MS3 , MS5 , L i v r e Docente . . .

95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 ); ); ); ); ); );

primary key (COD NIVEL)

create table T DEPARTAMENTO ( COD DEPARTAMENTO s e r i a l , NOME DEPTO t e x t not null ,

primary key (COD DEPARTAMENTO)

create table T AREA ( COD AREA NOME serial , t e x t not null ,

primary key (COD AREA)

create table T AREA ATUACAO ( COD AREA ATUACAO NOME serial , t e x t not null ,

primary key (COD AREA ATUACAO)

create table T SITUACAO ALUNO ( COD SITUACAO DESCRICAO serial , t e x t not null , S i t u a c a o do a l u n o : a t i v o , i n a t i v o , l i c e n c i a d o , j u b i l a d o

primary key (COD SITUACAO)

create table T PESSOA ( CPF RG NOME DATA NASCIMENTO NATURALIDADE NACIONALIDADE E MAIL URL USUARIO SENHA PERFIL character ( 1 1 ) , t e x t not null , t e x t not null , date not null , t e x t not null , t e x t not null , t e x t not null , t e x t null , t e x t not null , t e x t not null , character ( 1 ) not null , A: A d m i n i s t r a d o r , U: U s u a r i o

primary key (CPF) , foreign key (RG) r e f e r e n c e s T RG (RG) on delete cascade

create table T ENDERECO ( CPF TIPO LOGRADOURO BAIRRO CEP CIDADE ESTADO TELEFONE character ( 1 1 ) , character ( 1 ) , A: A l t e r n a t i v o , P : P r i n c i p a l t e x t not null , t e x t not null , character ( 8 ) not null , t e x t not null , character ( 2 ) not null , t e x t null ,

153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 ); ); ); ); ); );

primary key (TIPO , CPF) , foreign key (CPF) r e f e r e n c e s T PESSOA (CPF) on delete cascade

create table T PROFESSOR ( CPF INFO COMPLEMENTARES primary key (CPF) , foreign key (CPF) r e f e r e n c e s T PESSOA (CPF) on delete cascade character ( 1 1 ) , t e x t null ,

create table T ALUNO ( RA CPF COD SITUACAO INFO COMPLEMENTARES primary key (RA) , foreign key (CPF) r e f e r e n c e s T PESSOA (CPF) on delete cascade , foreign key (COD SITUACAO) r e f e r e n c e s T SITUACAO ALUNO (COD SITUACAO) on delete cascade character ( 6 ) , character ( 1 1 ) not null , integer not null , t e x t null ,

create table T MESTRANDO ( RA MESTRANDO SEMESTRE INGRESSO ANO INGRESSO DATA EGRESSO character ( 6 ) , character ( 1 ) not null , character ( 4 ) not null , date null ,

primary key (RA MESTRANDO) , foreign key (RA MESTRANDO) r e f e r e n c e s T ALUNO (RA) on delete cascade

create table T DOUTORANDO ( RA DOUTORANDO SEMESTRE INGRESSO ANO INGRESSO DATA EGRESSO character ( 6 ) , character ( 1 ) not null , character ( 4 ) not null , date null ,

primary key (RA DOUTORANDO) , foreign key (RA DOUTORANDO) r e f e r e n c e s T ALUNO (RA) on delete cascade

create table T PROFESSOR AREA ATUACAO ( CPF COD AREA ATUACAO character ( 1 1 ) , integer ,

primary key (CPF, COD AREA ATUACAO) , foreign key (CPF) r e f e r e n c e s T PESSOA (CPF) on delete cascade , foreign key (COD AREA ATUACAO) r e f e r e n c e s T AREA ATUACAO (COD AREA ATUACAO) on delete cascade

create table T PROFESSOR IC ( MATRICULA CPF COD DEPARTAMENTO TIPO DEDICACAO character ( 6 ) , character ( 1 1 ) not null , integer not null , character ( 1 ) not null , E : E x c l u s i v a , P : P a r c i a l

210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 ); ); ); ); );

COD SITUACAO COD NIVEL SALA

integer not null , integer not null , t e x t not null ,

primary key (MATRICULA) , foreign key (CPF) r e f e r e n c e s T PESSOA (CPF) on delete cascade , foreign key (COD SITUACAO) r e f e r e n c e s T SITUACAO PROFESSOR (COD SITUACAO) on delete cascade , foreign key (COD NIVEL) r e f e r e n c e s T NIVEL PROFESSOR (COD NIVEL) on delete cascade , foreign key (COD DEPARTAMENTO) r e f e r e n c e s T DEPARTAMENTO (COD DEPARTAMENTO) on delete cascade

create table T PROFESSOR VISITANTE ( CPF UNIVERSIDADE DEPTO character ( 1 1 ) , t e x t not null , t e x t not null ,

primary key (CPF) , foreign key (CPF) r e f e r e n c e s T PESSOA (CPF) on delete cascade

create table T DISCIPLINA POS ( COD DISCIPLINA POS COD AREA ELIMINA EQG NOME NRO CREDITOS character ( 5 ) , integer not null , b o o l e a n not null , t e x t not null , integer not null ,

primary key ( COD DISCIPLINA POS ) , foreign key (COD AREA) r e f e r e n c e s T AREA (COD AREA) on delete cascade

create table T ESTAGIO PED I ( COD PED I RA DOUTORANDO integer , character ( 6 ) not null ,

primary key ( COD PED I ) , foreign key (RA DOUTORANDO) r e f e r e n c e s T DOUTORANDO (RA DOUTORANDO) on delete cascade , foreign key ( COD PED I ) r e f e r e n c e s T ESTAGIO (COD ESTAGIO) on delete cascade

create table T ESTAGIO BIPED ( COD BIPED RA DOUTORANDO integer , character ( 6 ) not null ,

primary key (COD BIPED) , foreign key (RA DOUTORANDO) r e f e r e n c e s T DOUTORANDO (RA DOUTORANDO) on delete cascade , foreign key (COD BIPED) r e f e r e n c e s T ESTAGIO (COD ESTAGIO) on delete cascade

create table T ESTAGIO PED II ( COD PED II RA CURSO integer , character ( 6 ) not null , character ( 1 ) not null , M: Mestrado , D: Doutorado , E : E s p e c i a l

primary key ( COD PED II ) , foreign key (RA) r e f e r e n c e s T ALUNO (RA) on delete cascade ,

266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 ); ); ); ); );

foreign key ( COD PED II ) r e f e r e n c e s T ESTAGIO (COD ESTAGIO) on delete cascade

create table T TESE ( COD TESE RA TIPO TESE TITULO NRO PAGINAS ABSTRACT PALAVRAS CHAVE DATA DEFESA serial , character ( 6 ) not null , character ( 1 ) not null , M: Mestrado , D: Doutorado t e x t not null , integer not null , t e x t not null , t e x t not null , date not null ,

primary key (COD TESE) , foreign key (RA) r e f e r e n c e s T ALUNO (RA) on delete cascade

create table T EXAME INGLES ( COD EXAME INGLES DATA MATRICULA COORDENADOR serial , date not null , character ( 6 ) not null ,

primary key (COD EXAME INGLES) , foreign key (MATRICULA COORDENADOR) r e f e r e n c e s T PROFESSOR IC (MATRICULA) on delete cascade

create table T EXAME EQE ( COD EQE RA DATA RESULTADO Condicionalmente primary key (COD EQE) , foreign key (RA) r e f e r e n c e s T ALUNO (RA) on delete cascade serial , character ( 6 ) not null , date not null , character ( 1 ) not null , A: Aprovado , R: Reprovado , C : Aprovado

create table T BANCA EXAMINADORA EQG ( COD BANCA EXAMINADORA EQG COD AREA MATRICULA PRESIDENTE MATRICULA MEMBRO 1 MATRICULA MEMBRO 2 DATA INICIO DATA TERMINO serial , integer not null , character ( 6 ) not null , character ( 6 ) not null , character ( 6 ) not null , date not null , date not null ,

primary key (COD BANCA EXAMINADORA EQG) , foreign key (COD AREA) r e f e r e n c e s T AREA (COD AREA) on delete cascade , foreign key (MATRICULA PRESIDENTE) r e f e r e n c e s T PROFESSOR IC (MATRICULA) on delete cascade , foreign key (MATRICULA MEMBRO 1) r e f e r e n c e s T PROFESSOR IC (MATRICULA) on delete cascade , foreign key (MATRICULA MEMBRO 2) r e f e r e n c e s T PROFESSOR IC (MATRICULA) on delete cascade , check (DATA TERMINO > DATA INICIO )

create table T EXAME EQG ( COD EQG serial ,

321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 ); ); ); ); );

COD BANCA EXAMINADORA EQG DATA primary key (COD EQG) ,

integer not null , date not null ,

foreign key (COD BANCA EXAMINADORA EQG) r e f e r e n c e s T BANCA EXAMINADORA EQG ( COD BANCA EXAMINADORA EQG) on delete cascade

create table T RELATORIO TECNICO ( NUMERO COD PUBLICACAO NRO PAGINAS character ( 6 ) , integer not null , integer not null ,

primary key (NUMERO) , foreign key (COD PUBLICACAO) r e f e r e n c e s T PUBLICACAO (COD PUBLICACAO) on delete cascade

create table T LIVRO ( ISBN COD PUBLICACAO EDITORA EDICAO character ( 1 0 ) , integer not null , t e x t not null , integer not null ,

primary key ( ISBN ) , foreign key (COD PUBLICACAO) r e f e r e n c e s T PUBLICACAO (COD PUBLICACAO) on delete cascade

create table T CAPITULO LIVRO ( COD PUBLICACAO ISBN LIVRO TITULO LIVRO EDITORA LIVRO EDICAO LIVRO integer , character ( 1 0 ) not null , t e x t not null , t e x t not null , integer not null ,

primary key (COD PUBLICACAO) , foreign key (COD PUBLICACAO) r e f e r e n c e s T PUBLICACAO (COD PUBLICACAO) on delete cascade

create table T ARTIGO ( COD PUBLICACAO VOLUME PAGINA INICIAL PAGINA FINAL CIRCULACAO QUALIS integer , integer null , integer not null , integer not null , character ( 1 ) not null , N: N a c i o n a l , I : I n t e r n a c i o n a l character ( 1 ) not null , Q u a l i s A, B, C, I ( i n d e f i n i d o )

primary key (COD PUBLICACAO) , foreign key (COD PUBLICACAO) r e f e r e n c e s T PUBLICACAO (COD PUBLICACAO) on delete cascade

create table T ARTIGO CONFERENCIA ( COD PUBLICACAO TITULO ANAIS CIDADE PAIS integer , t e x t not null , t e x t not null , t e x t not null ,

primary key (COD PUBLICACAO) , foreign key (COD PUBLICACAO) r e f e r e n c e s T PUBLICACAO (COD PUBLICACAO) on delete cascade

378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432

); create table T ARTIGO PERIODICO ( COD PUBLICACAO NOME PERIODICO NRO EDICAO integer , t e x t not null , integer not null ,

primary key (COD PUBLICACAO) , foreign key (COD PUBLICACAO) r e f e r e n c e s T PUBLICACAO (COD PUBLICACAO) on delete cascade ); create table T PROJETO PESQUISA ( COD PROJETO PESQUISA NOME SIGLA PROJETO DESCRICAO DATA INICIO DATA TERMINO MATRICULA COORDENADOR serial , t e x t not null , t e x t null , t e x t not null , date not null , date null , character ( 6 ) not null ,

primary key (COD PROJETO PESQUISA) , foreign key (MATRICULA COORDENADOR) r e f e r e n c e s T PROFESSOR IC (MATRICULA) on delete cascade ); create table T REQUERIMENTO ( COD REQUERIMENTO DATA PEDIDO COD STATUS DATA DECISAO JUSTIFICATIVA DATA NOTIFICACAO ALUNO serial , date not null , integer not null , date null , t e x t null , date null ,

DATA NOTIFICACAO ORIENTADOR date null , primary key (COD REQUERIMENTO) , foreign key (COD STATUS) r e f e r e n c e s T STATUS (COD STATUS) on delete cascade ); create table T REQ INSCRICAO ESTAGIO ( COD INSCRICAO ESTAGIO integer , primary key (COD INSCRICAO ESTAGIO) , foreign key (COD INSCRICAO ESTAGIO) r e f e r e n c e s T REQUERIMENTO (COD REQUERIMENTO) on delete cascade ); create table T REQ INSCRICAO PED I ( COD INSCRICAO PED I integer , RA DOUTORANDO character ( 6 ) not null ,

primary key ( COD INSCRICAO PED I ) , foreign key ( COD INSCRICAO PED I ) r e f e r e n c e s T REQ INSCRICAO ESTAGIO ( COD INSCRICAO ESTAGIO) on delete cascade , foreign key (RA DOUTORANDO) r e f e r e n c e s T DOUTORANDO (RA DOUTORANDO) on delete cascade ); create table T REQ INSCRICAO PED II ( COD INSCRICAO PED II integer ,

433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 ); ); ); ); ); );

RA

character ( 6 ) not null ,

primary key ( COD INSCRICAO PED II ) , foreign key ( COD INSCRICAO PED II ) r e f e r e n c e s T REQ INSCRICAO ESTAGIO ( COD INSCRICAO ESTAGIO) on delete cascade , foreign key (RA) r e f e r e n c e s T ALUNO (RA) on delete cascade

create table T REQ INSCRICAO BIPED ( COD INSCRICAO BIPED integer , RA DOUTORANDO character ( 6 ) not null ,

primary key (COD INSCRICAO BIPED) , foreign key (COD INSCRICAO BIPED) r e f e r e n c e s T REQ INSCRICAO ESTAGIO ( COD INSCRICAO ESTAGIO) on delete cascade , foreign key (RA DOUTORANDO) r e f e r e n c e s T DOUTORANDO (RA DOUTORANDO) on delete cascade

create table T REQ INSCRICAO ESTAGIO X DISCIPLINA GRAD ( COD INSCRICAO ESTAGIO integer , COD DISCIPLINA GRAD character ( 5 ) ,

primary key (COD INSCRICAO ESTAGIO , COD DISCIPLINA GRAD) , foreign key (COD INSCRICAO ESTAGIO) r e f e r e n c e s T REQ INSCRICAO ESTAGIO ( COD INSCRICAO ESTAGIO) on delete cascade , foreign key (COD DISCIPLINA GRAD) r e f e r e n c e s T DISCIPLINA GRAD (COD DISCIPLINA GRAD) on delete cascade

create table T REQ INSCRICAO EQE ( COD INSCRICAO EQE integer , RA character ( 6 ) not null ,

primary key (COD INSCRICAO EQE) , foreign key (RA) r e f e r e n c e s T ALUNO (RA) on delete cascade , foreign key (COD INSCRICAO EQE) r e f e r e n c e s T REQUERIMENTO (COD REQUERIMENTO) on delete cascade

create table T REQ INSCRICAO EQG ( COD INSCRICAO EQG integer , RA DOUTORANDO character ( 6 ) not null ,

primary key (COD INSCRICAO EQG) , foreign key (RA DOUTORANDO) r e f e r e n c e s T DOUTORANDO (RA DOUTORANDO) on delete cascade , foreign key (COD INSCRICAO EQG) r e f e r e n c e s T REQUERIMENTO (COD REQUERIMENTO) on delete cascade

create table T REQ INSCRICAO EQG X AREA ( COD INSCRICAO EQG integer , COD AREA integer ,

primary key (COD INSCRICAO EQG, COD AREA) , foreign key (COD INSCRICAO EQG) r e f e r e n c e s T REQ INSCRICAO EQG (COD INSCRICAO EQG) on delete cascade , foreign key (COD AREA) r e f e r e n c e s T AREA (COD AREA) on delete cascade

484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 primary key (COD DISPENSA AREA, COD AREA) , foreign key (COD DISPENSA AREA) r e f e r e n c e s T REQ DISPENSA AREA (COD DISPENSA AREA) on delete cascade , create table T REQ DISPENSA AREA X AREA ( COD DISPENSA AREA integer , COD AREA integer not null , ); primary key (COD DISPENSA INGLES) , foreign key (RA) r e f e r e n c e s T ALUNO (RA) on delete cascade , foreign key (COD DISPENSA INGLES) r e f e r e n c e s T REQUERIMENTO (COD REQUERIMENTO) on delete cascade create table T REQ DISPENSA INGLES ( COD DISPENSA INGLES integer , RA character ( 6 ) not null , ); primary key (COD DISPENSA AREA) , foreign key (RA) r e f e r e n c e s T ALUNO (RA) on delete cascade , foreign key (COD DISPENSA AREA) r e f e r e n c e s T REQUERIMENTO (COD REQUERIMENTO) on delete cascade create table T REQ DISPENSA AREA ( COD DISPENSA AREA RA integer , character ( 6 ) not null , ); primary key (COD DISPENSA EQG, COD AREA) , foreign key (COD DISPENSA EQG) r e f e r e n c e s T REQ DISPENSA EQG (COD DISPENSA EQG) on delete cascade , foreign key (COD AREA) r e f e r e n c e s T AREA (COD AREA) on delete cascade create table T REQ DISPENSA EQG X AREA ( COD DISPENSA EQG COD AREA integer , integer , ); primary key (COD DISPENSA EQG) , foreign key (RA DOUTORANDO) r e f e r e n c e s T DOUTORANDO (RA DOUTORANDO) on delete cascade , foreign key (COD DISPENSA EQG) r e f e r e n c e s T REQUERIMENTO (COD REQUERIMENTO) on delete cascade create table T REQ DISPENSA EQG ( COD DISPENSA EQG RA DOUTORANDO integer , character ( 6 ) not null , ); primary key (COD INSCRICAO INGLES) , foreign key (RA) r e f e r e n c e s T ALUNO (RA) on delete cascade , foreign key (COD INSCRICAO INGLES) r e f e r e n c e s T REQUERIMENTO (COD REQUERIMENTO) on delete cascade create table T REQ INSCRICAO INGLES ( COD INSCRICAO INGLES integer , RA character ( 6 ) not null ,

536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 ); ); ); ); ); );

foreign key (COD AREA) r e f e r e n c e s T AREA (COD AREA) on delete cascade

create table T PESSOA X PUBLICACAO ( CPF COD PUBLICACAO character ( 1 1 ) , integer ,

primary key (CPF, COD PUBLICACAO) , foreign key (CPF) r e f e r e n c e s T PESSOA (CPF) on delete cascade , foreign key (COD PUBLICACAO) r e f e r e n c e s T PUBLICACAO (COD PUBLICACAO) on delete cascade

create table T PESSOA X LABORATORIO ( CPF COD LABORATORIO character ( 1 1 ) , integer ,

primary key (CPF, COD LABORATORIO) , foreign key (CPF) r e f e r e n c e s T PESSOA (CPF) on delete cascade , foreign key (COD LABORATORIO) r e f e r e n c e s T LABORATORIO (COD LABORATORIO) on delete cascade

create table T PESSOA X PROJETO PESQUISA ( CPF COD PROJETO PESQUISA character ( 1 1 ) , integer ,

primary key (CPF, COD PROJETO PESQUISA) , foreign key (CPF) r e f e r e n c e s T PESSOA (CPF) on delete cascade , foreign key (COD PROJETO PESQUISA) r e f e r e n c e s T PROJETO PESQUISA (COD PROJETO PESQUISA) on delete cascade

create table T ALUNO X DISCIPLINA POS ( RA COD DISCIPLINA POS SEMESTRE ANO TURMA CONCEITO CURSO character ( 6 ) , character ( 5 ) , character ( 1 ) not null , character ( 4 ) not null , character ( 1 ) not null , character ( 1 ) not null , character ( 1 ) not null , M: Mestrado , D: Doutorado , E : E s p e c i a l

primary key (RA, COD DISCIPLINA POS ) , foreign key (RA) r e f e r e n c e s T ALUNO (RA) on delete cascade , foreign key ( COD DISCIPLINA POS ) r e f e r e n c e s T DISCIPLINA POS ( COD DISCIPLINA POS ) on delete cascade

create table T ALUNO X EXAME INGLES ( RA COD EXAME INGLES RESULTADO character ( 6 ) , integer , character ( 1 ) , A: Aprovado ; R: Reprovado

primary key (RA, COD EXAME INGLES) , foreign key (RA) r e f e r e n c e s T ALUNO (RA) on delete cascade , foreign key (COD EXAME INGLES) r e f e r e n c e s T EXAME INGLES (COD EXAME INGLES) on delete cascade

create table T DOUTORANDO X EXAME EQG (

591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 ); ); ); ); ); );

RA DOUTORANDO character ( 6 ) , COD EQG RESULTADO integer , character ( 1 ) , A: Aprovado ; R: Reprovado ; D: D i s p e n s a d o

primary key (RA DOUTORANDO, COD EQG) , foreign key (RA DOUTORANDO) r e f e r e n c e s T DOUTORANDO (RA DOUTORANDO) on delete cascade , foreign key (COD EQG) r e f e r e n c e s T EXAME EQG (COD EQG) on delete cascade

create table T MESTRANDO X REQUISITO MESTRADO ( RA MESTRANDO COD REQUISITO MESTRADO character ( 6 ) , integer ,

primary key (RA MESTRANDO, COD REQUISITO MESTRADO) , foreign key (RA MESTRANDO) r e f e r e n c e s T MESTRANDO (RA MESTRANDO) on delete cascade , foreign key (COD REQUISITO MESTRADO) r e f e r e n c e s T REQUISITO MESTRADO ( COD REQUISITO MESTRADO) on delete cascade

create table T DOUTORANDO X REQUISITO DOUTORADO ( RA DOUTORANDO COD REQUISITO DOUTORADO character ( 6 ) , integer ,

primary key (RA DOUTORANDO, COD REQUISITO DOUTORADO) , foreign key (RA DOUTORANDO) r e f e r e n c e s T DOUTORANDO (RA DOUTORANDO) on delete cascade , foreign key (COD REQUISITO DOUTORADO) r e f e r e n c e s T REQUISITO DOUTORADO ( COD REQUISITO DOUTORADO) on delete cascade

create table T ALUNO X PROFESSOR ( RA MATRICULA TIPO DATA INICIO character ( 6 ) , character ( 6 ) , character ( 1 ) not null , O: O r i e n t a d o r ; C : Coo r i e n t a d o r date not null ,

DATA TERMINO date null , primary key (RA, MATRICULA) , foreign key (RA) r e f e r e n c e s T ALUNO (RA) on delete cascade , foreign key (MATRICULA) r e f e r e n c e s T PROFESSOR IC (MATRICULA) on delete cascade

create table T PROFESSOR X DEFESA ( CPF COD TESE character ( 1 1 ) , integer ,

primary key (CPF, COD TESE) , foreign key (CPF) r e f e r e n c e s T PROFESSOR (CPF) on delete cascade , foreign key (COD TESE) r e f e r e n c e s T TESE (COD TESE) on delete cascade

create table T PROFESSOR X EQE ( MATRICULA character ( 6 ) , COD EQE integer ,

primary key (MATRICULA, COD EQE) , foreign key (MATRICULA) r e f e r e n c e s T PROFESSOR IC (MATRICULA) on delete cascade , foreign key (COD EQE) r e f e r e n c e s T EXAME EQE (COD EQE) on delete cascade

647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 create table T AGENCIA X PROJETO ( COD PROJETO PESQUISA integer , COD AGENCIA integer , ); primary key (RA, DATA INICIO , DATA TERMINO) , foreign key (RA) r e f e r e n c e s T ALUNO (RA) on delete cascade , foreign key (COD AGENCIA) r e f e r e n c e s T AGENCIA FOMENTO (COD AGENCIA) on delete cascade , foreign key (COD MODALIDADE) r e f e r e n c e s T MODALIDADE BOLSA (COD MODALIDADE) on delete cascade create table T AGENCIA X ALUNO ( COD AGENCIA RA DATA INICIO DATA TERMINO COD MODALIDADE integer , character ( 6 ) not null , date , date , integer not null , ); primary key (MATRICULA, COD DEPARTAMENTO, DATA INICIO ) , foreign key (MATRICULA) r e f e r e n c e s T PROFESSOR IC (MATRICULA) on delete cascade , foreign key (COD DEPARTAMENTO) r e f e r e n c e s T DEPARTAMENTO (COD DEPARTAMENTO) on delete cascade , check (DATA TERMINO > DATA INICIO ) create table T CHEFE X DEPARTAMENTO ( MATRICULA COD DEPARTAMENTO DATA INICIO DATA TERMINO TIPO character ( 6 ) , integer , date , date null , character ( 1 ) not null , C : Chefe ; S : Subc h e f e ); primary key (MATRICULA, COD LABORATORIO, DATA INICIO ) , foreign key (MATRICULA) r e f e r e n c e s T PROFESSOR IC (MATRICULA) on delete cascade , foreign key (COD LABORATORIO) r e f e r e n c e s T LABORATORIO (COD LABORATORIO) on delete cascade , check (DATA TERMINO > DATA INICIO ) create table T COORDENADOR X LABORATORIO ( MATRICULA DATA INICIO DATA TERMINO character ( 6 ) , date , date null , COD LABORATORIO integer , ); primary key (MATRICULA, COD DISCIPLINA POS , SEMESTRE, ANO) , foreign key (MATRICULA) r e f e r e n c e s T PROFESSOR IC (MATRICULA) on delete cascade , foreign key ( COD DISCIPLINA POS ) r e f e r e n c e s T DISCIPLINA POS ( COD DISCIPLINA POS ) on delete cascade create table T PROFESSOR IC X DISCIPLINA POS ( MATRICULA COD DISCIPLINA POS SEMESTRE ANO TURMA character ( 6 ) , character ( 5 ) , character ( 1 ) , character ( 4 ) , character ( 1 ) not null ,

701 702 703 704 705 706 707 708 709 710 711 712 713 714 ); primary key (MATRICULA, COD AGENCIA) , foreign key (MATRICULA) r e f e r e n c e s T PROFESSOR IC (MATRICULA) on delete cascade , foreign key (COD AGENCIA) r e f e r e n c e s T AGENCIA FOMENTO (COD AGENCIA) on delete cascade create table T AGENCIA X PROFESSOR ( COD AGENCIA MATRICULA integer , character ( 6 ) , ); primary key (COD PROJETO PESQUISA, COD AGENCIA) , foreign key (COD PROJETO PESQUISA) r e f e r e n c e s T PROJETO PESQUISA (COD PROJETO PESQUISA) on delete cascade , foreign key (COD AGENCIA) r e f e r e n c e s T AGENCIA FOMENTO (COD AGENCIA) on delete cascade

B.2

Populando o Banco de Dados


Listing B.2: Populando do Banco de Dados

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37

I n s e r e dados nas t a b e l a s do banco para e f e i t o de t e s t e Convencoes : ( i ) Formato de e n t r a d a de data => 19990108 ( i i ) v a l u e s ( ISO 8 6 0 1 ; January 8 i n any mode v a l u e s ( recommended f o r m a t ) ) i n s e r t into T RG values ( 10123123 , SSP , SP ) ; i n s e r t into T RG values ( 10456789 , SSP , MG ) ; i n s e r t into T RG values ( 10987312 , SSP , SP ) ; i n s e r t into T RG values ( 74852963 , SSP , PR ) ; i n s e r t into T RG values ( 14258369 , SSP , BA ) ; i n s e r t into T RG values ( 12456789 , SSP , GO ) ; i n s e r t into T RG values ( 95874123 , SSP , CE ) ; i n s e r t into T RG values ( 84759632 , SSP , CE ) ; i n s e r t into T RG values ( 96387412 , SSP , BA ) ; i n s e r t into T PESSOA values ( 12345678910 , 10123123 , Fulano de Tal , 19801201 , B r a s i l i a , B r a s i l e i r a , e m a i l @ e m a i l . com , h t t p : / / dominio . com , f u l a n o , f u l a n o , U ) ; i n s e r t into T PESSOA values ( 12951753684 , 10456789 , J o s e S i l v a , 19800430 , Rio de J a n e i r o , B r a s i l e i r a , e m a i l @ e m a i l . com , h t t p : / / dominio . com , j s i l v a , j s i l v a , U ) ; i n s e r t into T PESSOA values ( 74852963214 , 10987312 , B i l l Gates , 19600105 , Redmond , E s t a d u n i d e n s e , gates@ms . com , h t t p : / / ms . com , g a t e s , g a t e s , U ) ; i n s e r t into T PESSOA values ( 98765432185 , 74852963 , S i l v i o S a n t o s , 18400709 , Sao Paulo , B r a s i l e i r a , s i l v i o @ s b t . com , null , s i l v i o , s i l v i o , U ) ; i n s e r t into T PESSOA values ( 95175368421 , 14258369 , Vera , 19780606 , Campinas , B r a s i l e i r a , v e r a @ i c . com , h t t p : / / i c . com , v e r a , v e r a , A ) ; i n s e r t into T PESSOA values ( 98763214587 , 12456789 , Chuck N o r r i s , 10000101 , Belem , B r a s i l e i r a , chuck@email . com , h t t p : / / chuck . com , chuck , chuck , U ) ; i n s e r t into T PESSOA values ( 95175368429 , 95874123 , Knuth , 19100606 , Campinas , B r a s i l e i r a , k@ic . com , h t t p : / / k . com , k , k , U ) ; i n s e r t into T PESSOA values ( 98632541754 , 84759632 , T o r v a l d s , 19910606 , Campinas , B r a s i l e i r a , l i n u s @ i c . com , h t t p : / / l i n u s . com , l i n u s , l i n u x , A ) ; i n s e r t into T PESSOA values ( 99958741111 , 96387412 , Turing , 19910606 , Campinas , B r a s i l e i r a , t @ i c . com , h t t p : / / t u r i n g . com , t u r i n g , t t t , U ) ; i n s e r t into T ENDERECO values ( 12345678910 , P , Rua R , BAIRRO B , 1234567 , R e c i f e , PE , v a l u e s ( 1 9 ) 1919 1919 ) ; i n s e r t into T ENDERECO values ( 12951753684 , P , Rua F , BAIRRO B , 1234567 , Campinas , SP , v a l u e s ( 1 9 ) 5555 1919 ) ; i n s e r t into T ENDERECO values ( 74852963214 , P , Rua V , BAIRRO B , 1234567 , Redmond , SP , v a l u e s ( 1 9 ) 4444 1919 ) ; i n s e r t into T ENDERECO values ( 98765432185 , P , Rua R , BAIRRO B , 1234567 , Porto A l e g r e , RS , v a l u e s ( 1 9 ) 1919 1919 ) ; i n s e r t into T ENDERECO values ( 95175368421 , P , Rua R , BAIRRO B , 1234567 , Campinas , SP , v a l u e s ( 1 9 ) 1919 6666 ) ; i n s e r t into T ENDERECO values ( 98763214587 , P , Rua T , BAIRRO B , 1234567 , Redmond , SP , v a l u e s ( 1 9 ) 8888 1919 ) ; i n s e r t into T ENDERECO values ( 98763214587 , A , Rua A l f a , BAIRRO OMEGA , 9999999 , B e lo H o r i z o n t e , MG , v a l u e s ( 1 9 ) 1919 1919 ) ; i n s e r t into T ENDERECO values ( 95175368429 , P , Rua C , BAIRRO J , 9876543 , B e l o H o r i z o n t e , MG , v a l u e s ( 1 9 ) 7777 1919 ) ; i n s e r t into T SITUACAO ALUNO values ( default , Ativo ) ; i n s e r t into T SITUACAO ALUNO values ( default , I n a t i v o ) ; i n s e r t into T SITUACAO ALUNO values ( default , L i c e n c i a d o ) ;

38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95

i n s e r t into T SITUACAO ALUNO values ( default , J u b i l a d o ) ; i n s e r t into T ALUNO values ( 030099 , 12345678910 , 1 , Aluno exemplar . ) ; i n s e r t into T ALUNO values ( 790099 , 74852963214 , 4 , Coa u t o r de 19 a r t i g o s . ) ; i n s e r t into T ALUNO values ( 020099 , 98763214587 , 3 , n u l l ) ; i n s e r t into T ALUNO values ( 030098 , 98765432185 , 1 , n u l l ) ; i n s e r t into T MESTRANDO values ( 790099 , 1 , 1981 , 19810319 ) ; i n s e r t into T MESTRANDO values ( 030099 , 2 , 2005 , n u l l ) ; i n s e r t into T DOUTORANDO values ( 020099 , 1 , 1900 , 19000302 ) ; i n s e r t into T DOUTORANDO values ( 030098 , 2 , 2005 , n u l l ) ; i n s e r t into T PROFESSOR values ( 98763214587 , P r o f e s s o r Emerito ) ; i n s e r t into T PROFESSOR values ( 95175368429 , n u l l ) ; i n s e r t into T PROFESSOR values ( 98632541754 , Boas h a b i l i d a d e s de programacao ) ; i n s e r t into T PROFESSOR values ( 99958741111 , n u l l ) ; i n s e r t into T AREA ATUACAO values ( default , A r q u i t e t u r a de Computadores ) ; i n s e r t into T AREA ATUACAO values ( default , Bancos de dados ) ; i n s e r t into T AREA ATUACAO values ( default , B i o l o g i a c o m p u t a c i o n a l ) ; i n s e r t into T AREA ATUACAO values ( default , Computacao g r a f i c a ) ; i n s e r t into T AREA ATUACAO values ( default , Computacao numerica ) ; i n s e r t into T AREA ATUACAO values ( default , C r i p t o g r a f i a c o m p u t a c i o n a l ) ; i n s e r t into T AREA ATUACAO values ( default , E n g e n h a r i a de s o f t w a r e ) ; i n s e r t into T AREA ATUACAO values ( default , Geometria c o m p u t a c i o n a l ) ; i n s e r t into T AREA ATUACAO values ( default , Groupware ) ; i n s e r t into T AREA ATUACAO values ( default , I n f o r m a t i c a na e d u c a c a o ) ; i n s e r t into T AREA ATUACAO values ( default , I n t e l i g A a n c i a a r t i f i c i a l ) ; i n s e r t into T AREA ATUACAO values ( default , I n t e r f a c e s humanocomputador ) ; i n s e r t into T AREA ATUACAO values ( default , L i n g u a g e n s de programacao e compiladores ) ; i n s e r t into T AREA ATUACAO values ( default , L i n g u a g e n s f o r m a i s e automatos ) ; i n s e r t into T AREA ATUACAO values ( default , O t i m i z a c a o c o m b i n a t o r i a ) ; i n s e r t into T AREA ATUACAO values ( default , P e s q u i s a o p e r a c i o n a l ) ; i n s e r t into T AREA ATUACAO values ( default , Pr o c e s s a m e n t o de imagens ) ; i n s e r t into T AREA ATUACAO values ( default , Pr o c e s s a m e n t o de l i n g u a s n a t u r a i s ) ; i n s e r t into T AREA ATUACAO values ( default , P r o j e t o I n t e g r a d o de Hardware e Software ) ; i n s e r t into T AREA ATUACAO values ( default , P r o j e t o e t e s t e de s i s t e m a s VLSI ) ; i n s e r t into T AREA ATUACAO values ( default , Redes de computadores ) ; i n s e r t into T AREA ATUACAO values ( default , S e g u r a n c a Computacional ) ; i n s e r t into T AREA ATUACAO values ( default , S i s t e m a s de i n f o r m a c o e s geograficas ) ; i n s e r t into T AREA ATUACAO values ( default , S i s t e m a s d i s t r i b u i d o s ) ; i n s e r t into T AREA ATUACAO values ( default , S i s t e m a s o p e r a c i o n a i s ) ; i n s e r t into T AREA ATUACAO values ( default , T e c n o l o g i a s de i n f o r m a c a o e comunicacao ) ; i n s e r t into T AREA ATUACAO values ( default , T o l e r a n c i a a f a l h a s ) ; i n s e r t into T AREA ATUACAO values ( default , T e o r i a dos g r a f o s ) ; i n s e r t into T AREA ATUACAO values ( default , V i s a o Computacional ) ; i n s e r t into T PROFESSOR AREA ATUACAO values ( 98763214587 , 1 ) ; i n s e r t into T PROFESSOR AREA ATUACAO values ( 98763214587 , 2 ) ; i n s e r t into T PROFESSOR AREA ATUACAO values ( 95175368429 , 1 0 ) ; i n s e r t into T PROFESSOR AREA ATUACAO values ( 95175368429 , 1 1 ) ; i n s e r t into T PROFESSOR AREA ATUACAO values ( 95175368429 , 1 2 ) ;

96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153

i n s e r t into T PROFESSOR AREA ATUACAO values ( 98632541754 , 3 ) ; i n s e r t into T PROFESSOR AREA ATUACAO values ( 98632541754 , 4 ) ; i n s e r t into T PROFESSOR AREA ATUACAO values ( 99958741111 , 1 5 ) ; i n s e r t into T PROFESSOR AREA ATUACAO values ( 99958741111 , 6 ) ; i n s e r t into T PROFESSOR AREA ATUACAO values ( 99958741111 , 9 ) ; i n s e r t into T DEPARTAMENTO values ( default , Departamento de S i s t e m a s de Computacao ) ; i n s e r t into T DEPARTAMENTO values ( default , Departamento de S i s t e m a s de Informacao ) ; i n s e r t into T DEPARTAMENTO values ( default , Departamento de T e o r i a da Computacao ) ; i n s e r t into T SITUACAO PROFESSOR values ( default , Ativo ) ; i n s e r t into T SITUACAO PROFESSOR values ( default , I n a t i v o ) ; i n s e r t into T SITUACAO PROFESSOR values ( default , L i c e n c i a d o ) ; i n s e r t into T SITUACAO PROFESSOR values ( default , Aposentado ) ; i n s e r t into T NIVEL PROFESSOR values ( default , MS3 ) ; i n s e r t into T NIVEL PROFESSOR values ( default , MS5 ) ; i n s e r t into T NIVEL PROFESSOR values ( default , L i v r e Docente ) ; i n s e r t into T PROFESSOR IC values ( 123456 , 98763214587 , 3 , P , 1 , 3 , IC1 01 ) ; i n s e r t into T PROFESSOR IC values ( 444444 , 98632541754 , 3 , D , 1 , 3 , IC1 02 ) ; i n s e r t into T PROFESSOR IC values ( 111111 , 99958741111 , 3 , D , 1 , 3 , IC1 03 ) ; i n s e r t into T PROFESSOR VISITANTE values ( 95175368429 , U n i v e r s i t y o f B e i j i m , I n s t i t u t e o f Computing ) ; i n s e r t into T AREA values ( default , T e o r i a da Computacao ) ; i n s e r t into T AREA values ( default , S i s t e m a s de Computacao ) ; i n s e r t into T AREA values ( default , S i s t e m a s de I n f o r m a c a o ) ; i n s e r t into T AREA values ( default , S i s t e m a s de Programacao ) ; i n s e r t into T DISCIPLINA POS values ( MO410 , 3 , true , Banco de Dados , 1 2 ) ; i n s e r t into T DISCIPLINA POS values ( MO405 , 1 , true , T e o r i a dos G r a f o s , 1 2 ) ; i n s e r t into T DISCIPLINA POS values ( MO401 , 2 , true , A r q u i t e t u r a de Computadores I ,12) ; i n s e r t into T DISCIPLINA GRAD values ( MC102 , I n t r o d u c a o A progrmacao , 4 ) ;

i n s e r t into T DISCIPLINA GRAD values ( MC202 , E s t r u t u r a de dados , 4 ) ; i n s e r t into T ESTAGIO values ( default , A , 1 , 2003 , MC102 ) ; i n s e r t into T ESTAGIO values ( default , H , 1 , 2004 , MC102 ) ; i n s e r t into T ESTAGIO values ( default , B , 2 , 2003 , MC202 ) ; i n s e r t into T ESTAGIO PED I values ( 1 , 030098 ) ; i n s e r t into T ESTAGIO BIPED values ( 3 , 020099 ) ; i n s e r t into T ESTAGIO PED II values ( 2 , 030099 , M ) ; i n s e r t into T TESE values ( default , 020099 , D , E i m p o s s i v e l d e m o n s t r a r P=NP , 3 , I m p o s s i v e l ! , P , NP , 19000302 ) ; i n s e r t into T REQUISITO MESTRADO values ( default , Exame de I n l g e s ) ; i n s e r t into T REQUISITO MESTRADO values ( default , 72 c r e d i t o s em d i s c i p l i n a s ) ; i n s e r t into T REQUISITO DOUTORADO values ( default , V i r a r a n o i t e no l a b ) ; i n s e r t into T REQUISITO DOUTORADO values ( default , P u b l i c a r a r t i g o na S c i e n c e ) ;

154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 i n s e r t into T REQUERIMENTO values ( default , 20010425 , 1 , null , null , null , n u l l ) ; i n s e r t into T REQUERIMENTO values ( default , 20010515 , 2 , 20010517 , Por f o r c a de r a z a o maior , 20010517 , 20010517 ) ; i n s e r t into T REQUERIMENTO values ( default , 20010605 , 3 , 20010607 , Requerimento i n t e r e s s a n t e , 20010607 , 20010607 ) ; i n s e r t into T REQUERIMENTO values ( default , 20010725 , 1 , null , null , null , n u l l ) ; i n s e r t into T REQUERIMENTO values ( default , 20011019 , 1 , null , null , null , n u l l ) ; i n s e r t into T STATUS values ( default , Pendente ) ; i n s e r t into T STATUS values ( default , I n d e f e r i d o ) ; i n s e r t into T STATUS values ( default , D e f e r i d o ) ; i n s e r t into T AGENCIA FOMENTO values ( default , FAPESP , Fundacao de amparo a p e s q u i s a SP , h t t p : / /www. f a p e s p . br ) ; i n s e r t into T AGENCIA FOMENTO values ( default , CNPQ , C o n s e l h o N a c i o n a l de P e s q u i s a , h t t p : / /www. cnpq . br ) ; i n s e r t into T PROJETO PESQUISA values ( default , T e c n o l o g i a para i n t e r n e t avancada , TIDIA , P e s q u i s a de t e c n o l o g i a s para i n t e r n e t do f u t u r o , 20010425 , null , 1 1 1 1 1 1 ) ; i n s e r t into T LABORATORIO values ( default , v i s u a l , IC280 ) ; i n s e r t into T LABORATORIO values ( default , d i s t r i b u i d o s , IC291 ) ; LSD , L a b o r a t o r i o de s i s t e m a s LIV , L a b o r a t o r i o de i n f o r m a t i c a i n s e r t into T ARTIGO PERIODICO values ( 5 , A l g o r i t m o s , 5 ) ; i n s e r t into T ARTIGO CONFERENCIA values ( 1 , I n t e r n a t i o n C o n f e r e n c e on Database S y s s t e m s , B e r l i m , Alemanha ) ; i n s e r t into T ARTIGO values ( 1 , 1 , 3 0 , 3 8 , I , A ) ; i n s e r t into T ARTIGO values ( 5 , 3 , 5 0 , 5 7 , N , A ) ; i n s e r t into T CAPITULO LIVRO values ( 4 , 1234569870 , Fundamentos de banco de dados , S p r i n g e r , 2 ) ; i n s e r t into T LIVRO values ( 1234569870 , 3 , S p r i n g e r , 2 ) ; i n s e r t into T RELATORIO TECNICO values ( TRIC09 , 2 , 3 0 ) ; i n s e r t into T PUBLICACAO values ( default , O b j e c t Database s y s t e m s : a s u r v e y , 02 , 2002 , n u l l ) ; i n s e r t into T PUBLICACAO values ( default , P r o t o c o l o s de r o t e a m e n t o para r e d e s ad hoc , 05 , 2000 , n u l l ) ; i n s e r t into T PUBLICACAO values ( default , Fundamentos de banco de dados , 09 , 2003 , n u l l ) ; i n s e r t into T PUBLICACAO values ( default , A r q u i t e t u r a de SGBD , 09 , 2003 , n u l l ) ; i n s e r t into T PUBLICACAO values ( default , A l g o r i t m o de o r d e n a c a o l o g n , 02 , 2002 , n u l l ) ; i n s e r t into T EXAME INGLES values ( default , i n s e r t into T EXAME EQE values ( default , 20060425 , 1 2 3 4 5 6 ) ; 030098 , 20030425 , A ) ;

i n s e r t into T BANCA EXAMINADORA EQG values ( default , 1 , 123456 , 444444 , 111111 , 20010425 , 20070425 ) ; i n s e r t into T EXAME EQG values ( default , 1 , 20070425 ) ;

211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267

i n s e r t into T REQUERIMENTO values ( default , 20011225 , 1 , null , null , null , n u l l ) ; i n s e r t into T REQUERIMENTO values ( default , 20011225 , 1 , null , null , null , n u l l ) ; i n s e r t into T REQUERIMENTO values ( default , 20011220 , 1 , null , null , null , n u l l ) ; i n s e r t into T REQUERIMENTO values ( default , 20010520 , 1 , null , null , null , n u l l ) ; i n s e r t into T REQUERIMENTO values ( default , 20010520 , 1 , 20010607 , T e s t e , 20010607 , 20010607 ) ; i n s e r t into T REQ INSCRICAO ESTAGIO values ( 1 ) ; i n s e r t into T REQ INSCRICAO ESTAGIO values ( 2 ) ; i n s e r t into T REQ INSCRICAO ESTAGIO values ( 3 ) ; i n s e r t into T REQ INSCRICAO PED I values ( 1 , 030098 ) ; i n s e r t into T REQ INSCRICAO PED II values ( 2 , 790099 ) ; i n s e r t into T REQ INSCRICAO BIPED values ( 3 , 030098 ) ; i n s e r t into T REQ INSCRICAO ESTAGIO X DISCIPLINA GRAD values ( 1 , MC102 ) ; i n s e r t into T REQ INSCRICAO ESTAGIO X DISCIPLINA GRAD values ( 2 , MC202 ) ; i n s e r t into T REQ INSCRICAO ESTAGIO X DISCIPLINA GRAD values ( 3 , MC102 ) ; i n s e r t into T REQ INSCRICAO ESTAGIO X DISCIPLINA GRAD values ( 3 , MC202 ) ; i n s e r t into T REQ INSCRICAO EQE values ( 4 , 790099 ) ; i n s e r t into T REQ INSCRICAO EQG values ( 5 , 030098 ) ; i n s e r t into T REQ INSCRICAO EQG X AREA values ( 5 , 1 ) ; i n s e r t into T REQ INSCRICAO INGLES values ( 6 , 790099 ) ; i n s e r t into T REQ INSCRICAO INGLES values ( 7 , 020099 ) ; i n s e r t into T REQ DISPENSA EQG values ( 8 , 020099 ) ; i n s e r t into T REQ DISPENSA EQG X AREA values ( 8 , 1 ) ; i n s e r t into T REQ DISPENSA AREA values ( 9 , 790099 ) ; i n s e r t into T REQ DISPENSA AREA X AREA values ( 9 , 2 ) ; i n s e r t into T REQ DISPENSA INGLES values ( 1 0 , 030099 ) ; i n s e r t into T PESSOA X PUBLICACAO values ( 12345678910 , 1 ) ; i n s e r t into T PESSOA X PUBLICACAO values ( 12951753684 , 2 ) ; i n s e r t into T PESSOA X PUBLICACAO values ( 74852963214 , 3 ) ; i n s e r t into T PESSOA X PUBLICACAO values ( 98632541754 , 4 ) ; i n s e r t into T PESSOA X PUBLICACAO values ( 99958741111 , 4 ) ; i n s e r t into T PESSOA X PUBLICACAO values ( 98632541754 , 5 ) ; i n s e r t into T PESSOA X PUBLICACAO values ( 95175368429 , 5 ) ; i n s e r t into T PESSOA X PUBLICACAO values ( 98765432185 , 5 ) ; i n s e r t into T PESSOA X LABORATORIO values ( 12345678910 , 1 ) ; i n s e r t into T PESSOA X LABORATORIO values ( 12951753684 , 1 ) ; i n s e r t into T PESSOA X LABORATORIO values ( 74852963214 , 2 ) ; i n s e r t into T PESSOA X LABORATORIO values ( 98632541754 , 2 ) ; i n s e r t into T PESSOA X LABORATORIO values ( 99958741111 , 2 ) ; i n s e r t into T PESSOA X PROJETO PESQUISA values ( 99958741111 , 1 ) ; i n s e r t into T PESSOA X PROJETO PESQUISA values ( 12345678910 , 1 ) ; i n s e r t into T PESSOA X PROJETO PESQUISA values ( 74852963214 , 1 ) ;

i n s e r t into T ALUNO X DISCIPLINA POS values ( 020099 , MO410 , 1 , 2006 , A , A , D ) ; i n s e r t into T ALUNO X DISCIPLINA POS values ( 020099 , MO401 , 2 , 2005 , A , B , D ) ; i n s e r t into T ALUNO X DISCIPLINA POS values ( 030098 , MO405 , 2 , 2005 , A , B , D ) ; i n s e r t into T ALUNO X EXAME INGLES values ( 020099 , 1 , A ) ; i n s e r t into T ALUNO X EXAME INGLES values ( 030098 , 1 , A ) ;

268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316

i n s e r t into T DOUTORANDO X EXAME EQG values ( 030098 , 1 , A ) ; i n s e r t into T DOUTORANDO X EXAME EQG values ( 020099 , 1 , R ) ;

i n s e r t into T MESTRANDO X REQUISITO MESTRADO values ( 790099 , 1 ) ; i n s e r t into T MESTRANDO X REQUISITO MESTRADO values ( 030099 , 1 ) ; i n s e r t into T MESTRANDO X REQUISITO MESTRADO values ( 030099 , 2 ) ; i n s e r t into T DOUTORANDO X REQUISITO DOUTORADO values ( 020099 , 1 ) ; i n s e r t into T DOUTORANDO X REQUISITO DOUTORADO values ( 020099 , 2 ) ; i n s e r t into T ALUNO X PROFESSOR values ( 030099 , 111111 , O , 20011008 , n u l l ) ; i n s e r t into T ALUNO X PROFESSOR values ( 030099 , 123456 , C , 20011209 , n u l l ) ; i n s e r t into T ALUNO X PROFESSOR values ( 790099 , 444444 , O , 20010628 , n u l l ) ; i n s e r t into T ALUNO X PROFESSOR values ( 020099 , 111111 , O , 20010630 , n u l l ) ; i n s e r t into T ALUNO X PROFESSOR values ( 030098 , 123456 , O , 20010717 , n u l l ) ; i n s e r t into T PROFESSOR X DEFESA values ( 95175368429 , 1 ) ; i n s e r t into T PROFESSOR X DEFESA values ( 99958741111 , 1 ) ; i n s e r t into T PROFESSOR X DEFESA values ( 98763214587 , 1 ) ;

i n s e r t into T PROFESSOR X EQE values ( 111111 , 1 ) ; i n s e r t into T PROFESSOR X EQE values ( 123456 , 1 ) ; i n s e r t into T PROFESSOR X EQE values ( 444444 , 1 ) ;

i n s e r t into T PROFESSOR IC X DISCIPLINA POS values ( 111111 , MO410 , 1 , 2003 , A ) ; i n s e r t into T PROFESSOR IC X DISCIPLINA POS values ( 111111 , MO405 , 2 , 2003 , A ) ; i n s e r t into T PROFESSOR IC X DISCIPLINA POS values ( 123456 , MO401 , 1 , 2004 , B ) ; i n s e r t into T PROFESSOR IC X DISCIPLINA POS values ( 444444 , MO410 , 1 , 2002 , A ) ; i n s e r t into T COORDENADOR X LABORATORIO values ( 444444 , 1 , 20010717 , n u l l ) ; i n s e r t into T COORDENADOR X LABORATORIO values ( 444444 , 2 , 20010717 , 20030717 ) ; i n s e r t into T COORDENADOR X LABORATORIO values ( 123456 , 1 , 20011018 , n u l l ) ;

i n s e r t into T CHEFE X DEPARTAMENTO values ( 444444 , 1 , 20030717 , 20040717 , C ) ; i n s e r t into T CHEFE X DEPARTAMENTO values ( 444444 , 2 , 20030717 , null , S ) ; i n s e r t into T CHEFE X DEPARTAMENTO values ( 111111 , 2 , 20030717 , 20040717 , C ) ; i n s e r t into T MODALIDADE BOLSA values ( default , B o l s a de Doutorado ) ; i n s e r t into T MODALIDADE BOLSA values ( default , B o l s a de Mestrado ) ; i n s e r t into T AGENCIA X ALUNO values ( 1 , 030098 , 20060301 , 20090228 , 1 ) ; i n s e r t into T AGENCIA X PROJETO values ( 1 , 1 ) ; i n s e r t into T AGENCIA X PROFESSOR values ( 1 , 123456 ) ;

B.3

Deletando o Banco de Dados

Poder amos usar o comando dropdb da interface do PostgreSQL para apagar o banco de dados de uma unica vez. No entanto, este comando exige privilgios de super-usurio. Desta forma, preferimos eliminar uma e a relao de cada vez. ca Listing B.3: Deletando o Banco de Dados
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 Eliminando t o d a s a s t a b e l a s e x i s t e n t e s para r e c r i a c a o a p a r t i r do z e r o drop table T MODALIDADE BOLSA cascade ; drop table T ESTAGIO cascade ; drop table T REQUISITO MESTRADO cascade ; drop table T REQUISITO DOUTORADO cascade ; drop table T PUBLICACAO cascade ; drop table T LABORATORIO cascade ; drop table T STATUS cascade ; drop table T DISCIPLINA GRAD cascade ; drop table T AGENCIA FOMENTO cascade ; drop table T RG cascade ; drop table T SITUACAO PROFESSOR cascade ; drop table T NIVEL PROFESSOR cascade ; drop table T PROFESSOR VISITANTE cascade ; drop table T DEPARTAMENTO cascade ; drop table T AREA cascade ; drop table T AREA ATUACAO cascade ; drop table T SITUACAO ALUNO cascade ; drop table T PESSOA cascade ; drop table T ENDERECO cascade ; drop table T PROFESSOR cascade ; drop table T ALUNO cascade ; drop table T MESTRANDO cascade ; drop table T DOUTORANDO cascade ; drop table T PROFESSOR AREA ATUACAO cascade ; drop table T PROFESSOR IC cascade ; drop table T DISCIPLINA POS cascade ; drop table T ESTAGIO PED I cascade ; drop table T ESTAGIO BIPED cascade ; drop table T ESTAGIO PED II cascade ; drop table T TESE cascade ; drop table T EXAME INGLES cascade ; drop table T EXAME EQE cascade ; drop table T BANCA EXAMINADORA EQG cascade ; drop table T EXAME EQG cascade ; drop table T RELATORIO TECNICO cascade ; drop table T LIVRO cascade ; drop table T CAPITULO LIVRO cascade ; drop table T ARTIGO cascade ; drop table T ARTIGO CONFERENCIA cascade ; drop table T ARTIGO PERIODICO cascade ; drop table T PROJETO PESQUISA cascade ; drop table T REQUERIMENTO cascade ; drop table T REQ INSCRICAO ESTAGIO cascade ; drop table T REQ INSCRICAO PED I cascade ; drop table T REQ INSCRICAO PED II cascade ; drop table T REQ INSCRICAO BIPED cascade ; drop table T REQ INSCRICAO ESTAGIO X DISCIPLINA GRAD cascade ; drop table T REQ INSCRICAO EQE cascade ;

51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75

drop table T REQ INSCRICAO EQG cascade ; drop table T REQ INSCRICAO EQG X AREA cascade ; drop table T REQ INSCRICAO INGLES cascade ; drop table T REQ DISPENSA EQG cascade ; drop table T REQ DISPENSA EQG X AREA cascade ; drop table T REQ DISPENSA AREA cascade ; drop table T REQ DISPENSA INGLES cascade ; drop table T REQ DISPENSA AREA X AREA cascade ; drop table T PESSOA X PUBLICACAO cascade ; drop table T PESSOA X LABORATORIO cascade ; drop table T PESSOA X PROJETO PESQUISA cascade ; drop table T ALUNO X DISCIPLINA POS cascade ; drop table T ALUNO X EXAME INGLES cascade ; drop table T DOUTORANDO X EXAME EQG cascade ; drop table T MESTRANDO X REQUISITO MESTRADO cascade ; drop table T DOUTORANDO X REQUISITO DOUTORADO cascade ; drop table T ALUNO X PROFESSOR cascade ; drop table T PROFESSOR X DEFESA cascade ; drop table T PROFESSOR X EQE cascade ; drop table T PROFESSOR IC X DISCIPLINA POS cascade ; drop table T COORDENADOR X LABORATORIO cascade ; drop table T CHEFE X DEPARTAMENTO cascade ; drop table T AGENCIA X ALUNO cascade ; drop table T AGENCIA X PROJETO cascade ; drop table T AGENCIA X PROFESSOR cascade ;

Você também pode gostar