Você está na página 1de 39

INSTITUTO MUNICIPAL DE ENSINO SUPERIOR IMES FAFICA CINCIA DA COMPUTAO

PROPOSTA DE DESENVOLVIMENTO DE SISTEMA DINMICO PARA AVALIAO DE DOCENTES

Gabriel Rissatti Miguel

Catanduva

2009 GABRIEL RISSATTI MIGUEL

PROPOSTA DE DESENVOLVIMENTO DE SISTEMA DINMICO PARA AVALIAO DE DOCENTES

Monografia apresentada ao Departamento de Computao do IMES/FAFICA de Catanduva, sob orientao da Professora Ms. Adriana Giusti Crrea.

Catanduva

2009

Este exemplar corresponde Redao final da Monografia apresentada Comisso Julgadora em 11/2009.

Banca Examinadora

______________________ Prof Antonio Marcio Paschoal Instituto Municipal de Ensino Superior IMES/FAFICA ______________________ Prof Antonio Marcos dos Santos Instituto Municipal de Ensino Superior IMES/FAFICA

Novembro

2009

DEDICATRIA
Dedico esse trabalho aos meus pais, Marcia Rissatti Miguel e Jos Miguel Neto, que sempre me apoiaram em meus estudos.

AGRADECIMENTOS
Agradeo em primeiro lugar a Deus. Agradeo aos meus pais e meu irmo, que sempre fizeram o possvel para me proporcionar tudo aquilo que precisava. Agradeo aos meus educadores do projeto escola da Famlia Joo Nelson e Maria Regina, pois se no fosse tal programa educacional no teria ingresso neste curso superior. Agradeo a minha orientadora Prof. Ms. Adriana Giusti Crrea pela dedicao e metodologia aplicada para a realizao desse trabalho. Agradeo tambm a todos os professores que j tive aula um dia e a todos que considero meus amigos.

Sumrio
1.Introduo..............................................................................................................................11 2. Objetivo ...................................................................................................................................................12 ...................................................................................................................................................12 3. Ferramentas utilizadas..........................................................................................................12 3.2 Common Language Runtime.............................................................................................13 3.3 Common Language Specification.......................................................................................13 3.4 Common Type System........................................................................................................14 3.5 Garbage Collection.............................................................................................................14 3.6 Assemblies ...................................................................................................................................................15 3.7 C# ...................................................................................................................................................15 3.8 Visual Studio .NET ...................................................................................................................................................15 3.9 Banco de Dados..................................................................................................................16 3.10 Modelo Relacional............................................................................................................17 3.11 Tabelas ...................................................................................................................................................17 3.12 SQL ...................................................................................................................................................17 3.13 Triggers ...................................................................................................................................................18 3.14 Oracle................................................................................................................................18 3.15 StarUML...........................................................................................................................19 4. Modelagem do sistema utilizando UML...............................................................................20 4.1 O que UML......................................................................................................................20 4.2 Viso geral do sistema........................................................................................................20 4.3 Diagrama de caso de uso.....................................................................................................21

4.3.1 Solicitar cadastro ...................................................................................................................................................21 4.3.2 Calcular............................................................................................................................21 4.3.3 Listar classificao...........................................................................................................22 4.4 Diagrama de seqncia.......................................................................................................22 4.4.1 Solicitar cadastro ...................................................................................................................................................22 ...................................................................................................................................................23 4.4.2 Calcular............................................................................................................................23 4.4.3 Listar classificao ...................................................................................................................................................24 4.5 Caso de uso expandido ...................................................................................................................................................24 4.5.1 Solicitar cadastro ...................................................................................................................................................24 4.5.2 Calcular ...................................................................................................................................................25 4.5.3 Listar classificao ...................................................................................................................................................25 4.6 Diagrama de classe.............................................................................................................26 ...................................................................................................................................................26 4.7 Diagrama de implantao...................................................................................................27 5. Implantao do sistema.........................................................................................................28 5.1 Inserindo informaes ...................................................................................................................................................28 5.2 Criando vinculaes............................................................................................................30 5.3.1 CPF incorreto ...................................................................................................................................................33 5.3.2 CPF duplicado ...................................................................................................................................................34 5.3.3 Idade inferior a dezoito anos ...................................................................................................................................................35 Concluso..................................................................................................................................36

Referncias Bibliogrficas........................................................................................................37

ndice de Figuras Fig. 1 - Visual Studio com formulrio em edio.....................................................................16 Fig. 2 - Exemplo de comando select.........................................................................................18 Fig. 3 - Solicitar cadastro..........................................................................................................21 Fig. 4 - Calcular........................................................................................................................21 Fig. 5 - Calcular........................................................................................................................22 Fig. 6 - Solicitar cadastro..........................................................................................................23 Fig. 7 - Calcular........................................................................................................................23 Fig. 8 Listar classificao......................................................................................................24 Fig. 9 - Solicitar cadastro..........................................................................................................25 Fig. 10 Algoritmo Calcular....................................................................................................25 Fig. 11 Algoritmo Listar classificao...................................................................................26 Fig. 12 - Diagrama de classe.....................................................................................................26 Fig. 13 - Diagrama de implantao...........................................................................................27 Fig. 14 - Cdigo fonte da funo inserir...................................................................................29 Fig. 15 - Dados para exemplo...................................................................................................29 Fig. 16 - Comando resultante....................................................................................................29 Fig. 17 - Mensagem de confirmao.........................................................................................30 Fig. 18 - Cdigo fonte...............................................................................................................31 Fig. 19 Dados antes de serem vinculados..............................................................................31 Fig. 20 - Interface exibindo dados disponveis.........................................................................32 Fig. 21 - Interface exibindo dados vinculados..........................................................................32 Fig. 22 - Dados aps serem vinculados....................................................................................33 Fig. 23 - Cdigo fonte do trecho que valida CPF.....................................................................34 Fig. 24 - Mensagem exibida ao usurio....................................................................................34 Fig. 25 - Cdigo fonte do trecho que verifica duplicidade de CPF..........................................34 Fig. 26 - Mensagem exibida ao usurio....................................................................................35 Fig. 27 Cdigo fonte do trecho que verifica idade do docente..............................................35

Lista de abreviaturas e siglas


ETECS Escolas tcnicas FATECS Faculdades de tecnologia CLR Common language runtime MSIL Microsoft Intermediate Language JIT Just in time CLS Common language specification C# - C-Sharp SQL Structured query language SGBD Sistema de gerenciamento de banco de dados PL/SQL Procedural language/Structured query language UML Unified Modeling Language OMG Object management group

RESUMO
Atualmente para realizar a avaliao de docentes do Centro Paula Souza utilizado uma planilha eletrnica que recebe as informaes de cada docente individualmente, ou seja, um arquivo diferente para cada professor. Com um sistema totalmente dinmico, o avaliador insere e configura os quesitos de avaliao e seus respectivos pesos.Com isso a banca de avaliao recebe uma quantidade menor de informaes manuais, favorecendo a obteno de um resultado mais rapidamente e com um menor ndice de erros. Para auxlio e\ou documentao de forma externa, possvel a visualizao e impresso de diversos tipos de relatrios a qualquer momento. O software foi desenvolvido em linguagens de ponta, C# (plataforma Dotnet) e PL\SQL utilizando como SGBD Oracle 10g. Palavras chave: Avaliao, Oracle, C#.

ABSTRACT
Actually to conduct the evaluation of teachers in the Paula Souza Center is used a spreadsheet that receives the information from each teacher individually, thus a, different file for each teacher. With a fully dynamic system, the evaluator enters and sets up the questions of evaluation and their weight. Thereby the Board of Assessment receive a smaller amount of information manuals, facilitating the obtaining of a result faster and with less error rate. To aid and \ or documentation of external form, it is possible to view and print various types of reports at any time. The software was developed in languages tip, C # (Dotnet platform) and PL \ SQL using Oracle 10g as a DBMS. Keyword: Evaluation, Oracle, C#.

11

1. Introduo
O Centro Paula Souza administra 157 Escolas Tcnicas (Etecs) e 46 Faculdades de Tecnologia (Fatecs) estaduais em 131 cidades no Estado de So Paulo. As Etecs atendem 142 mil estudantes, aproximadamente, sendo mais de 39 mil no Ensino Mdio. No Ensino Tcnico, para os setores Industrial, Agropecurio e de Servios, em 83 habilitaes, o nmero de alunos matriculados ultrapassa 100 mil. J as Fatecs abrigam cerca de 32 mil alunos nos 45 cursos Superiores de Graduao. O critrio para a atribuio de aulas aos docentes nas Etecs realizada atravs de uma rigorosa avaliao, levando em considerao vrios fatores, como por exemplo: formao, assiduidade, experincia profissional, produo acadmica e outros. Atualmente esta avaliao realizada em uma planilha eletrnica composta por vrias frmulas, mas a insero das informaes ocorre de forma manual, e como conseqncia o tempo gasto e a possibilidade de perda de informaes.

12

2. Objetivo
O objetivo deste trabalho facilitar o processo de avaliao e a recuperao de informaes. O sistema conta com uma interface grfica amigvel e com isso auxiliar no processo de classificao docente, tornando-o mais gil, com informaes pr-processadas armazenadas, e a possibilidade da atualizao das informaes necessrias, sem a necessidade de redigitao.

3. Ferramentas utilizadas

13

Para um maior aproveitamento durante e aps o desenvolvimento do projeto, as ferramentas com maiores aspectos positivos que encontra-se no mercado hoje em dia sero utilizadas.

3.1 Plataforma .NET


Anunciada em junho de 2000, pela Microsoft a plataforma .NET uma nova viso para abranger a Internet, desenvolvimento, engenharia e uso do software. Uma vantagem sua independncia de uma linguagem especfica, pois no obriga desenvolvedores a utilizar uma nica linguagem na programao, podendo criar aplicativos .NET com qualquer linguagem compatvel nesta tecnologia. A tecnologia .NET uma iniciativa que no engloba somente ferramentas ou linguagens de programao, mas tambm um conjunto de tecnologias que representam a prxima gerao da plataforma Microsoft para Windows e Internet. O NET Framework fornece o ambiente onde as aplicaes trabalham, este pode ser divido em bibliotecas de classe base e mltiplas linguagens de programao .NET.

3.2 Common Language Runtime


A principal funo do Common Language Runtime (CLR) o gerenciamento de cdigo, pois quando o cdigo compilado, no imediatamente convertido para linguagem de mquina, o compilador traduz as instrues pelo desenvolvedor em umas das linguagens suportadas pelo Framework ou Microsoft Intermediate Language (MSIL). Essas instrues podem ser eficientemente convertidas para cdigo nativo utilizando o Just-In-Time (JIT) Compiler. (Deitel,2004)

3.3 Common Language Specification

14

A especificao comum de Linguagem (CLS) define as funcionalidades necessrias a muitas aplicaes, onde possvel a integrao entre todas as linguagens que executam sob o gerenciamento da CLR, pois os objetos gerados precisam expor apenas as funcionalidades comuns a todas as linguagens que participam do ambiente. (Deitel,2004)

3.4 Common Type System


O sistema comum de tipos (CTS) define a forma como os tipos so declarados, usados e gerenciados pelo CLR. Eles so usados por duas categorias gerais, onde pode ser classificadas em tipos por valor, que contm diretamente seus dados, tais instncias so alocadas diretamente na pilha ou in-line na estrutura e podem ser classificadas tambm em tipos por referncia, onde armazenam referncia para valores em endereo de memria e so alocados no heap (estrutura de dados em forma de rvore binria). Tipos por referncia podem ser tambm tipos autodescritivos, ponteiros ou interfaces. (Deitel,2004)

3.5 Garbage Collection


O garbage collection o responsvel pelo gerenciamento e pela limpeza da memria para as aplicaes executadas no ambiente .NET. Cada vez que o operador new utilizado para criar um objeto, o CLR aloca memria para o objeto a partir do heap gerenciado. Enquanto o espao do endereo avaliado no heap gerenciado, ele continua a alocar espao para novos objetos. Entretanto, a memria no infinita. Eventualmente, o garbage collector precisa examinar a coleo a fim de verificar se existe memria livre. O mecanismo otimizador do garbage collector determina o melhor momento para realizar a verificao, com base nas ltimas verificaes realizadas. Quando o garbage collector verifica a coleo, ele procura por objetos no heap gerenciado que no mais esto sendo utilizados por aplicaes e efetua as operaes necessrias para recuperar a memria. (Deitel,2004)

15

3.6 Assemblies
So colees de tipos e recursos que trabalham unidos e formam uma unidade lgica e funcional fornecendo ao CLR informaes necessrias sobre os tipos implementados. (Deitel,2004)

3.7 C#
A linguagem de programao C# foi desenvolvida na Microsoft por uma

equipe liderada por Anders Hejlsberg e Scot Wiltamuth, foi projetada especialmente para a plataforma .NET como uma linguagem que permite aos programadores migrarem facilmente para o .NET. O C# uma linguagem de programao visual dirigida por eventos e totalmente orientada a objetos. Presente no .NET Framework SDK, C# distribuda junto com o Microsoft Visual Studio .NET, o qual fornece acesso a toda biblioteca de classes do .NET Framework SDK, trabalhando sobre um mecanismo de execuo comum.

3.8 Visual Studio .NET


O Microsoft Visual Studio .NET uma ferramenta de desenvolvimento completa que atende em vrios critrios os mais rigorosos desenvolvedores.(Fig. 1)

16

Fig. 1 - Visual Studio com formulrio em edio

Como a filosofia do .NET o desenvolvimento orientado a objetos, o Visual Studio .NET traz ferramentas para auxiliar o desenvolvedor, como visualizaes de diagramas de classes de projetos, integrao com o Microsoft Vision e ainda outros mecanismos esto disponveis para facilitar o desenvolvimento orientado a objetos. importante citar a integrao do Visual Studio .NET com o sistema de banco de dados.Possui uma janela chamada Server Explorer, onde possvel acessar a quase todos recursos de servidor de banco de dados a qual tenha acesso. O design visual dos componentes utiliza o recurso famoso de arrastar e soltar, permitindo uma criao de interfaces de usurios durante o desenvolvimento dos aplicativos. O uso do depurador intuitivo, garantindo a localizao de erros de programao.

3.9 Banco de Dados


Um banco de dados uma coleo de dados em disco em um ou mais arquivos em um servidor de banco de dados que coleta e mantm informaes relacionadas. O banco de dados consiste em vrias estruturas fsicas e lgicas, sendo a tabela a estrutura mais importante do banco de dados.

17

A definio de uma base de dados uma coleo estruturada de registros ou dados que so armazenados em um sistema de computador. Para que um banco de dados para ser realmente funcional, no deve apenas armazenar grandes quantidades de registros bem, mas ser acessada facilmente. Alm disso, novas informaes e mudanas devem ser tambm bastante fcil de entrada. A fim de ter um sistema de base de dados altamente eficiente, necessrio incorporar um programa que gere as consultas e as informaes armazenadas no sistema.

3.10 Modelo Relacional


O modelo relacional o mais popular tipo de banco de dados e uma ferramenta extremamente poderosa, no s para armazenar informaes, mas, para acess-lo tambm. Bancos de dados relacionais so organizados em tabelas. Uma tabela pode ter muitos registros e cada registro pode ter muitos domnios.

3.11 Tabelas
Uma tabela a unidade bsica de armazenamento em um banco de dados.Sem tabelas, um banco de dados no tem nenhum valor para uma empresa. Independente do tipo de tabela, os dados em uma tabela so armazenados em linhas e colunas, de maneira semelhante a como os dados so armazenados em uma planilha. Mas as semelhanas terminam aqui. A robustez de uma tabela de banco de dados, que se deve confiabilidade, integridade e escalabilidade em torno do banco de dados.

3.12 SQL
Structured Query Language uma linguagem usada para consultar e processar dados em um banco de dados relacional. Os comandos SQL podem ser usados para trabalharem interativamente com um banco de dados ou podem ser embutidos em uma linguagem de programao para interfacear um banco de dados.

18

A linguagem SQL um padro entre os bancos de dados relacionais, porm apresenta particularidades entre os produtos que h no mercado. Os comandos mais conhecidos e utilizados so o select/seleciona, insert/ insere, update/altera e delete/exclui. A Fig. 2 mostra um exemplo de um comando select .

Fig. 2 - Exemplo de comando select

3.13 Triggers
Triggers ou gatilhos so processos automticos que podem ser configurados antes ou aps que alguma operao (inserir, apagar, alterar) seja realizada em um tabela. Atravs destes gatilhos podem ser realizados validaes, chamadas de outros processos e executar comandos em demais tabelas.

3.14 Oracle
Oracle o SGBD mais utilizado no mundo, teve origem no final da dcada de 70, desenvolvido a partir de uma parceria entre Larry Ellison e Robert Miner, onde utilizaram um conceito de bases de dados compatvel entre centrais de computadores e diversos terminais que a IBM no quis explorar.

19

Para desenvolver em Oracle utilizado a linguagem PL/SQL que potente para tratar e gerenciar a base de dados, esta linguagem uma extenso da linguagem SQL.

3.15 StarUML
StarUML um software que modela vrios tipos de diagramas. um projeto elaborado para trabalhar no Windows de maneira flexvel e com ferramentas prticas. Atualmente uma das ferramentas mais utilizadas no mundo para modelagem em UML devido a ser grtis e possuir poderosos componentes.

20

4. Modelagem do sistema utilizando UML


4.1 O que UML
UML a sigla que vem do termo em ingls Unified Modeling Language (Linguagem de modelagem unificada) que uma linguagem para especificao, documentao, visualizao e desenvolvimento de sistemas orientados a objetos. uma rea que vem se expandindo continuamente e um padro controlado pelo OMG (Grupo de Gerncia de Objeto). Ou seja o UML uma linguagem visualmente facilitada para a compreenso dos mais diversos tipos de processos em sistemas orientados a objetos.

4.2 Viso geral do sistema

Este projeto pretende suprir a necessidade de realizar avaliaes do corpo docente em planilhas eletrnicas. A principal funcionalidade deste sistema ser realizar avaliaes efetuando clculos que busca os parmetros cadastrados para cada docente, estes parmetros sero pr-configurados de acordo com o perodo selecionado. Nos tpicos abaixo possvel contar com um ator, que o funcionrio, pois somente o mesmo ter acesso ao mdulos deste sistema. possvel este ator: Cadastrar docente; Cadastrar perodos; Cadastrar fatores; Cadastrar grupos; Realizar vinculaes; Efetuar clculos; Emitir relatrios.

21

4.3 Diagrama de caso de uso


Um caso de uso uma tcnica de modelagem usada para descrever o que um sistema faz, tem como objetivo auxiliar a comunicao entre analista e cliente, alm de ser uma ferramenta de documentao de processos. Logo ser exibido alguns casos de uso com base neste projeto.

4.3.1 Solicitar cadastro


O funcionrio ir inserir os dados do docente para que o mesmo seja cadastrado no sistema, caso houver alguma divergncia durante o processo, o sistema ir emitir mensagens alertando. (Fig. 3)

Fig. 3 - Solicitar cadastro

4.3.2 Calcular
Para realizar o clculo e na seqncia obter os resultados, o funcionrio deve informar qual perodo que obter estas informaes. (Fig. 4)

Fig. 4 - Calcular

22

4.3.3 Listar classificao


Para obter a listagem de classificao, necessrio que o funcionrio informe o ano ou perodo que deseja visualizar. (Fig. 5)

Fig. 5 - Calcular

4.4 Diagrama de seqncia


O diagrama de seqencia uma ferramenta UML que representa de forma simples e lgica a ordem global de comportamentos dos mtodos das classes.Este diagrama d nfase a seqncia em que os servios so solicitados de um objeto a outro.

4.4.1 Solicitar cadastro


O funcionrio entra com os dados do docente para realizar o cadastro, realizada primeiramente a verificao do campo CPF, caso no seja encontrado divergncia (informaes vlidas e no utilizado por outro docente), o sistema aceita normalmente as informaes restantes e concluir o cadastro. Ao final do processo exibido uma mensagem informando se o procedimento foi concludo com sucesso ou no. (Fig. 6)

23

Fig. 6 - Solicitar cadastro

4.4.2 Calcular
Aps o funcionrio ter preenchido todas as informaes dos docentes, poder efetuar o clculo, para isso informa o perodo desejado. Aps concludo poder via relatrios visualizar a classificao dos docentes inscritos. (Fig. 7)

Fig. 7 - Calcular

24

4.4.3 Listar classificao


Este diagrama de seqncia conta novamente com apenas um ator, que informa o perodo (que deve estar previamente cadastrado e calculado) obtendo em seguida a classificao dos docentes. (Fig. 8)

Fig. 8 Listar classificao

4.5 Caso de uso expandido


O mtodo de caso de uso expandido, descreve os processos de uma maneira onde h a solicitao do usurio obtendo em seguida a resposta do sistema.Este mtodo no grfico como os demais, exige que seja informado a finalidade do processo e seu tipo. Veja abaixo os trs exemplos demonstrados em outros mtodos agora exemplificados da maneira caso de uso expandido.

4.5.1 Solicitar cadastro


O processo que solicita o cadastro do docente ter apenas um ator, que o funcionrio, pois este o responsvel por imputar todas as informaes cadastrais no sistema. Este um processo do tipo obrigatrio, pois sem o cadastro do docente

25

efetuado, nenhum clculo poder ser realizado e conseqentemente no obter nenhum resultado. (Fig. 9)

Fig. 9 - Solicitar cadastro

4.5.2 Calcular
Este processo tambm ter apenas um ator, neste caso de uso fica claro que s ser possvel realizar o clculo caso tenha informaes cadastradas para o mesmo. (Fig. 10)

Fig. 10 Algoritmo Calcular

4.5.3 Listar classificao


Assim como os demais casos de uso expandido apresentados neste trabalho, este processo ser primrio, pois a ao de listar a classificao totalmente

26

indispensvel para o conhecimento do resultado da avaliao dos docentes. (Fig. 11)

Fig. 11 Algoritmo Listar classificao

4.6 Diagrama de classe


O diagrama de classe a representao estrutural das classes. (Fig 12)

Fig. 12 - Diagrama de classe

27

4.7 Diagrama de implantao

O diagrama de implantao mostra como feita a distribuio do sistema via hardware. (Fig 13)

Servidor

PC

Impressora

Fig. 13 - Diagrama de implantao

Este captulo apresentou brevemente o que UML e trs de suas principais ferramentas: diagrama de caso de uso , diagrama de sequncia e diagrama de caso de uso expandido, que demonstram de maneira clara ao analista tanto ao cliente o fluxo dos processos.A prxima etapa ser demonstrar alguns testes realizados tanto nestes processos que foram apresentados pelo UML como em outros, seja no banco de dados ou na ferramenta Visual Studio.

28

5. Implantao do sistema
5.1 Inserindo informaes
Todas as interfaces disponveis nos sistemas desfrutam de apenas uma funo para inserir informaes no banco, esta funo dinmica pois solicita como parmetros obrigatrios a tabela de destino e o formulrio em que o usurio est trabalhando. Para obter um resultado desejvel, os formulrios que sero vinculados as colunas das tabelas, devem possuir 3 caracteres que distinguem o tipo de componente que seguido pelo nome da coluna, a partir destes campos a instruo SQL dinamicamente montada. (Fig. 14)

29

Fig. 14 - Cdigo fonte da funo inserir

Veremos agora um exemplo desta funo em execuo com informaes simuladas. (Fig. 15)

Fig. 15 - Dados para exemplo

A partir destes dados da figura anterior, a instruo resultante foi gerada seguindo o a ordem objeto - coluna banco, valor objeto valor coluna banco. (Fig. 16)

Fig. 16 - Comando resultante

30

Aps a execuo do comando na figura 16, exibida a mensagem de confirmao ou de erro, neste caso como os campos foram nomeados corretamente a operao foi executada com sucesso. (Fig. 17)

Fig. 17 - Mensagem de confirmao

5.2 Criando vinculaes


Em alguns momentos, necessrio de vinculaes para que os clculos considerem ou no o que foi cadastrado. As vinculaes seguem o mesmo critrio e sistemtica em todos os casos, onde duas tabelas de parmetros so vinculadas em uma terceira de N para N registros. Para salvar a vinculao, a funo desenvolvida em C# realiza a leitura em um dataGridView com as informaes. (Fig. 18)

31

Fig. 18 - Cdigo fonte

Como exemplo para esta funo, utilizamos a tabela grupoperiodo, a figura 19 exibe que atualmente no h informao do perodo 1 nas vinculaes.

Fig. 19 Dados antes de serem vinculados

Todos os grupos esto disponveis para serem vinculados ao perodo 1. (Fig. 20)

32

Fig. 20 - Interface exibindo dados disponveis

Para ser exibido a funcionalidade desta funo, todos os grupos sero vinculados neste perodo. A figura 21 mostra que todos os dados foram vinculados, assim que confirmar esta vinculao ser exibido como est nossa base de dados agora.

Fig. 21 - Interface exibindo dados vinculados

A figura 22 confirma que todos os grupos selecionados foram vinculados ao perodo 1.

33

Fig. 22 - Dados aps serem vinculados

5.3 Inserindo docentes


Esta etapa de teste ser realizada totalmente na base de dados, pois disparada via trigger. Este gatilho disparado sempre antes da insero de um novo registro ou de uma alterao, durante sua execuo realizado trs consistncias: CPF incorreto; CPF duplicado; Idade inferior a dezoito anos.

5.3.1 CPF incorreto


Antes das informaes fornecidas pelo usurio serem salvas na base de dados, a trigger ir realizar todas as validaes. O funcionrio ir informar os dados do docente para que o mesmo seja cadastrado no sistema, caso haja alguma divergncia durante o processo, o sistema ir emitir mensagens alertando. Nota-se que a trigger realizada a chamada de uma funo, onde se a mesma retornar falso, identifica que o CPF cadastrado foi incorreto. (Fig. 23)

34

Fig. 23 - Cdigo fonte do trecho que valida CPF

Na figura 24, exibida a mensagem contida na trigger, porm exibido pela interface.

Fig. 24 - Mensagem exibida ao usurio

5.3.2 CPF duplicado


Para realizar a verificao necessrio uma varivel do tipo pragma, esta se torna necessria, pois a validao realiza uma consulta na tabela proprietria da trigger, se esta varivel no fosse declarada, ocorreria o erro mutating. (Fig. 25)

Fig. 25 - Cdigo fonte do trecho que verifica duplicidade de CPF

35

A figura 26, mostra um alerta caso a validao na trigger encontre outro CPF semelhante cadastrado.

Fig. 26 - Mensagem exibida ao usurio

5.3.3 Idade inferior a dezoito anos


Outra validao importante realizada dentro da base de dados verificar se o docente cadastrado possui idade inferior a dezoito anos. Para isso a verificao realizada nos momentos de incluso e alterao de informaes dos docentes. A figura 27 mostra que para calcular a idade do docente, utiliza-se a varivel padro do Oracle sysdate, que retorna a data atual do banco de dados. Com o valor desta varivel, subtraiu-se a idade informada no cadastro do docente, o Oracle por sua vez retorna a diferena de dias quando realizamos um clculo entre datas, devido a este motivo o resultado foi divido por 360. O uso da funo floor foi necessrio para formatar as casas decimais.

Fig. 27 Cdigo fonte do trecho que verifica idade do docente

36

Concluso

Neste trabalho foi apresentada uma soluo para a avaliao de docentes do Centro Paula, que at ento feita atravs de planilhas separadas. Foram demonstradas as ferramentas utilizadas e algumas das tcnicas empenhadas durante os processos. Atravs da modelagem UML foi exposto uma viso geral do sistema exibindo o ator e suas principais atividades. Cada uma das principais rotinas foi demonstrada pelas tcnicas UML mais utilizadas. Durante a apresentao de testes e resultados, outras tarefas importantes no sistema tiveram seu cdigo fonte comentado e os respectivos resultados aps a execuo. Com toda esta tecnologia empenhada nestes mdulos, o sistema de Avaliao de Docentes tornar o processo de avaliao mais prtico e seguro.

37

Referncias Bibliogrficas.
LONEY, Kevin. BRYLA, Bob. O manual do DBA. Campus, 2005.

GALUPPO, Fabio. MATHEUS, Vanclei. SANTOS, Wallace. Desenvolvendo em C#. Bookman, 2005.
DEITEL, Harvey. DEITEL, Paul. C# como programar. Makron Books, 2004.