Sei sulla pagina 1di 69

INSTITUTO FEDERAL DO PARAN

CAMILA VIRGINIA DE FARIA


DEBORAH VIEIRA PETERS
LUIS GUSTAVO DOS SANTOS







JOODLE: ferramenta de apoio s atividades educacionais














CURITIBA
2012

CAMILA VIRGINIA DE FARIA
DEBORAH VIEIRA PETERS
LUIS GUSTAVO DOS SANTOS









JOODLE: ferramenta de apoio s atividades educacionais


Proposta de Trabalho de Concluso de
Curso apresentado disciplina de Projetos
como requisito parcial concluso do Curso
Tcnico em Informtica Integrado ao Ensino
Mdio do Instituto Federal do Paran.

Orientador: Paulo Vieira Junior
Co-orientadora: Elaini Simoni Angelotti




CURITIBA
2012

LISTA DE ILUSTRAES

Figura 1 - Diagrama de Classes (PARTE1 - Relacionamentos) ................................ 20
Figura 2 - Diagrama de Classes (PARTE2 Relacionamento Daos e GenericDao) 21
Figura 3 - Diagrama de Classes (PARTE3 - Daos) ................................................... 22
Figura 4 - Diagrama de Classes (PARTE4 - MBs) .................................................... 23
Figura 5 - Diagrama de Classes (PARTE5 Entidades) ........................................... 24
Figura 6 - Diagrama de Entidade e Relacionamento ................................................. 25
Figura 7 - Diagrama do Modelo Relacional ............................................................... 26
Figura 8 - Diagrama de Caso de Uso ........................................................................ 27
Figura 9 - Pgina de login ......................................................................................... 46
Figura 10 - Modal cadastro ........................................................................................ 47
Figura 11 - Home do administrador ........................................................................... 48
Figura 12 - Home do Professor ................................................................................. 49
Figura 13 - Home do aluno ........................................................................................ 50
Figura 14 - Pgina gerenciar usurios....................................................................... 51
Figura 15 - Modal criar usurio .................................................................................. 52
Figura 16 - Pgina gerenciar turmas ......................................................................... 53
Figura 17 Pgina cadastrar turmas ........................................................................ 54
Figura 18 - Pgina disciplina ..................................................................................... 55
Figura 19 - Modal novo item ...................................................................................... 56
Figura 20 - Modal novo item - avaliao.................................................................... 57
Figura 21 - Pgina responder avaliao .................................................................... 58
Figura 22 - Pgina resultado da avaliao ................................................................ 59

LISTA DE TABELAS

Tabela 1 - <<CRUD>> Gerenciar Cursos.................................................................. 29
Tabela 2 - <<CRUD>> Gerenciar Disciplinas ............................................................ 30
Tabela 3 - <<CRUD>> Gerenciar Turmas ................................................................. 32
Tabela 4 - <<CRUD>> Gerenciar Professores .......................................................... 33
Tabela 5 - <<CRUD>> Gerenciar Atividades ............................................................ 34
Tabela 6 - Listar Professores .................................................................................... 35
Tabela 7 - <<CRUD>> Gerenciar Avaliaes ............................................................ 36
Tabela 8 - <<CRUD>> Gerenciar Alertas .................................................................. 37
Tabela 9 - Download de Arquivos ............................................................................. 38
Tabela 10 - Efetuar Login .......................................................................................... 38
Tabela 11 - Atualizar Professor ................................................................................. 38
Tabela 12 - <<CRUD>> Gerenciar Alunos ................................................................ 40
Tabela 13 - <<CRUD>> Gerenciar Arquivos ............................................................. 41
Tabela 14 - <<CRUD>> Gerenciar Tpicos .............................................................. 42
Tabela 15 - Listar Turmas ......................................................................................... 42
Tabela 16 - Listar Alunos........................................................................................... 43
Tabela 17 - Visualizar Material .................................................................................. 43
Tabela 18 - Visualizar Atividades .............................................................................. 43
Tabela 19 - Consultar Calendrio .............................................................................. 44
Tabela 20 - Avaliar e Comentar Atividades ............................................................... 44
Tabela 21 - Enviar Arquivo ........................................................................................ 45
Tabela 22 - Relacionar Aluno com Turma ................................................................. 45


SUMRIO
1. INTRODUO ..................................................................................................... 1
1.1. DIAGNSTICO ATUAL ........................................................................................ 1
1.2. OBJETIVO GERAL E OBJETIVOS ESPECFICOS ............................................ 2
1.3. JUSTIFICATIVA.................................................................................................... 3
2. SOLUO PROPOSTA ...................................................................................... 5
2.1. DELIMITAO ..................................................................................................... 6
2.2. RECURSOS E TECNOLOGIAS .......................................................................... 6
2.3. FUNDAMENTAO TERICA ........................................................................... 8
2.3.1. Plataforma Java .................................................................................................... 8
2.3.2. Padres de Projeto ............................................................................................... 9
2.3.2.1. MVC Model, View and Controller .................................................................... 10
2.3.2.2. Inversion of Control ............................................................................................ 11
2.3.2.3. DAO Data Access Object ................................................................................ 11
2.3.3. Java Server Faces .............................................................................................. 12
2.3.4. Mapeamento Objeto-Relacional (Object-Relation Mapping) ............................ 13
2.3.5. Hibernate ............................................................................................................ 14
2.3.6. JBoss Seam ........................................................................................................ 14
2.3.7. SGBD - Sistema Gerenciador de Banco de Dados ........................................... 15
2.3.8. AVA Ambientes Virtuais de Aprendizagem .................................................... 16
2.3.9. Trabalhos Relacionados ..................................................................................... 18
2.3.9.1. Moodle ................................................................................................................ 18
2.3.9.2. Edmodo ............................................................................................................... 18
2.3.9.3. Eureka ................................................................................................................. 19
2.3.9.4. AVA-IFPR ........................................................................................................... 19
3. ESPECIFICAO TCNICA ............................................................................. 20
3.1. DIAGRAMA DE CLASSE ................................................................................... 20
3.2. DIAGRAMA DE ENTIDADE E RELACIONAMENTO ........................................ 25
3.3. DIAGRAMA DO MODELO RELACIONAL ......................................................... 26
3.4. DIAGRAMA DE CASO DE USO ........................................................................ 27
3.4.1. DESCRIES DE CASO DE USO ................................................................... 28
4. IMPLEMENTAO DO SISTEMA E SUAS FUNCIONALIDADES................. 46
5. CONSIDERAES FINAIS ............................................................................... 60
5.1. RESULTADOS E TRABALHOS FUTUROS ...................................................... 60
REFERNCIAS .................................................................................................................. 62
1
1. INTRODUO

No meio educacional, softwares de apoio aprendizagem se
manifestam como uma til ferramenta para integrao on-line entre alunos e
professores. Existem atualmente alguns aplicativos que permi tem essa
integrao, porm, no atendem algumas necessidades, como: (1) a falta de
um agendamento para a disponibilizao de arquivos e avaliaes; (2) a falta
de um quadro de avisos; (3) a ausncia de comentrios das atividades
enviadas pelos alunos; (4) a indisponibilidade de reordenar os tpicos; (5) a
indisponibilidade de excluir mais de um item e tpico de uma s vez; (6) e a
impossibilidade de definir datas iniciais e finais para uma turma.
O projeto Joodle pretende disponibilizar rea da educao uma
ferramenta que possa sanar essas necessidades. Esta ferramenta est
classificada como um Ambiente Virtual de Aprendizagem (AVA).
Esse tipo de plataforma de aprendizagem proporciona uma maior
interao entre alunos e professores e permite disponibilizar aos alunos
materiais necessrios ao contedo das disciplinas, sem a necessidade de
recorrer a um servidor de downloads online ou passar por unidades de
memria. Ademais, um ambiente que permite a criao de atividades
avaliativas aos alunos, onde os mesmos podem fazer a entrega dos seus
trabalhos atravs desses ambientes.

1.1. DIAGNSTICO ATUAL

Atualmente, a demanda por uma maior integrao entre alunos e
professores muito grande e isso pode ser feito por meio de ambientes de
aprendizado on-line, como o Moodle (MOODLE, 2012) (especializado em
educao distncia) e o Edmodo (EDMODO, 2012).
Aplicativos como esses oferecem a oportunidade de uma interao
digital, disponibilizando arquivos e tarefas necessrias para a proposta daquela
disciplina. Evitando o uso de quaisquer discos removveis para a distribuio do
material, tanto de porte avaliativo quanto de contedo, sendo possvel fornecer
2

um local para avaliar essas atividades, ficando possvel acess-los na conta do
usurio.
Todavia, a forma como essas ferramentas so implementadas no
atendem a necessidades importantes, como as especificadas na introduo.
A ferramenta proposta nesse projeto de concluso de curso pretende
estabelecer um vnculo entre o aluno e professor, alm de proporcionar um
local de fcil acesso aos contedos e atividades disponibilizados pelo
professor.
Este local de acesso no Moodle apresenta algumas dificuldades como a
distribuio de arquivos acadmicos e bibliotecas para desenvolvimento das
disciplinas. A disponibilizao desses arquivos se torna difcil sem uma
ferramenta que os aloque permitindo o download dos mesmos. No projeto
Joodle, ser disponibilizado aos usurios este ambiente para o download das
atividades e para que o professor avalie e corrija os arquivos enviados.

1.2. OBJETIVO GERAL E OBJETIVOS ESPECFICOS

O objetivo geral desenvolver uma ferramenta web de apoio as
atividades educacionais e que possa ser utilizada por professores e alunos.
Como objetivos especficos, o Joodle apresenta:
a) Permitir o cadastro de perfis de professores, alunos e administrador;
b) Permitir o cadastro de cursos, disciplinas e turmas;
c) Permitir que o professor disponibilize os arquivos referentes s
disciplinas para o pblico alvo;
d) Permitir que o professor disponibilize tarefas e avaliaes para as
turmas;
e) Permitir o agendamento da disponibilidade destes arquivos, tarefas e
avaliaes;
f) Permitir que o professor estabelea datas iniciais e finais para cada
disciplina, dando a este a opo de aprovar ou reprovar os alunos;
3

g) Exibir uma agenda para professores e alunos que mostre as
atualizaes feitas, como disponibilizao de arquivos e data inicial e final de
tarefas, avaliaes, eventos e palestras.
h) Permitir o cadastro de eventos relevantes do aluno sua prpria
agenda;
i) Solicitar senha para a incluso dos usurios nos cursos, disciplinas e
turmas;
j) Permitir que o professor faa comentrios e avalie as atividades dos
alunos;
k) Disponibilizar um quadro de avisos para todos os usurios e um para
cada turma.

1.3. JUSTIFICATIVA

Nos dias atuais, os projetos de iniciativa AVA tm sido muito utilizados
para prticas de ensino, principalmente distncia.
O projeto Joodle busca aprimorar as ferramentas com defeitos e manter
as que j se encontram em perfeito estado, tomando como base o software
Moodle.
O motivo pelo qual est sendo criado esse AVA que, o Moodle no
possui algumas funcionalidades, citadas na introduo, as quais atendem a
necessidade dos usurios do sistema (alunos e professores), logo, a criao de
um mdulo dentro desse sistema se torna uma alternativa ineficaz.
Uma das contribuies do projeto melhorar a agilidade das aulas, j
que o mesmo disponibiliza uma maneira mais prtica de alocar arquivos dos
professores aos alunos e vice-versa, sem ser necessrio o uso de pendrives ou
qualquer forma de discos removveis, aumentando a flexibilidade do sistema
para o professor, tendo um espao pronto para a disponibilizao de arquivos e
atividades; proporcionar um local particular para cada usurio, mantendo a
privacidade das tarefas executadas pelo aluno e de informaes sigilosas;
manter um perfil pblico para uma melhor socializao; apresentar uma
4

alternativa ecolgica e prtica para a correo e visualizao de trabalhos,
evitando imprimi-los (porm, os professores tero a opo de faz-lo).






























5

2. SOLUO PROPOSTA

O projeto Joodle implementado, tomando como base o Moodle,
apresentando uma melhor alternativa de AVA para professores e alunos.
Deve-se estar ciente que o Joodle um projeto para que o mesmo seja
utilizado em instituies de ensino, o que deve abranger professores e alunos
que utilizaro o sistema.
Ele permitir o cadastro de perfis de professores, alunos e tambm do
administrador; deixando que eles possam, assim, disponibilizar quaisquer
informaes pessoais que quiserem aos olhos dos outros usurios; incluindo
fotos, interesses e formas de contato.
Tambm permitir o cadastro de cursos, disciplinas e turmas; de forma
que os professores possam gerenci-los e incluir ou excluir alunos dos
mesmos.
Alm disso, o sistema ainda permitir a disponibilizao de materiais,
tarefas e avaliaes para as disciplinas por parte dos professores, de forma
que estes possam alterar os arquivos com facilidade e com grande visibilidade
para que os alunos possam acess-los. Um adicional que os professores
podem determinar uma data para que estes arquivos fiquem visveis,
agendando, assim, sua disponibilidade no sistema.
Aos professores tambm ser permitido colocar datas iniciais e finais
para as disciplinas, podendo aprovar ou reprovar alunos de acordo com seus
respectivos desempenho nas disciplinas. Portanto, os alunos que so
reprovados permanecero nas mesmas disciplinas, tendo que curs-las
novamente.
O sistema exibir uma agenda que mostre tarefas, atividades,
avaliaes, eventos, palestras e arquivos disponveis; tanto alunos quanto para
professores. Os alunos podero inclusive marcar datas importantes em suas
prprias agendas, com a relevncia que desejarem.
A solicitao de login e senha para cada um dos usurios a fim de que
os mesmos possam utilizar o sistema e/ou participar de cursos, disciplinas e
turmas, o Joodle garante a segurana, tanto do sistema como dos usurios.
6


2.1. DELIMITAO

O Joodle ser um aplicativo WEB disponvel apenas para o campus
Curitiba do Instituto Federal do Paran, e no garante uma cobertura to
grande quanto a do Moodle.
Alm dessa delimitao, no projeto Joodle, no ser implementada a
ferramenta de frum de discusses, visto que, no momento, o mesmo no
relevante para este AVA.

2.2. RECURSOS E TECNOLOGIAS

A implementao ser baseada, vista j na inicial do nome do projeto,
em Java, sustentado por um servidor WEB, permitindo o acesso ao sistema
Joodle por um navegador.
Um das vantagens da utilizao da linguagem Java que ela uma
linguagem prtica e bem aceita no atual universo WEB. Alm disso, a
linguagem Java possui vrios frameworks que facilitam o desenvolvimento
web, mapeamento objeto/relacional e a linguagem utilizada nas aulas
(significando maior domnio por parte dos desenvolvedores).
Para o armazenamento de dados ser utilizado o MySQL, um Sistema
de Gerenciador de Banco de Dados que permite inserir, atualizar, remover e ler
registros na base de dados utilizando a linguagem SQL Structured Query
Language.
O uso do JavaServer Faces (JSF) um framework com recursos para o
desenvolvimento de Programas web, cujas ferramentas so utilizadas para, de
acordo com o site da Oracle (2012), estabelecer o bsico. Com um conjunto de
APIs projetadas, o Java ServerFaces pode aumentar o desempenho de certas
ferramentas, o que deixa o desenvolvimento da aplicao ainda mais fcil.
Para fazer a persistncia dos objetos do programa em registros na base
de dados, deve-se haver uma unidade de persistncia. O projeto Joodle
7

utilizar o Hibernate, mas antes, um conhecimento sobre Mapeamento Objeto-
Relacional imprescindvel.
O Object-Relation Mapping_- Mapeamento Objeto-Relacional uma
tcnica de programao que surgiu para facilitar a manipulao de objetos e
bancos de dados relacionais, de modo a permitir que um reconhea o outro,
sem a necessidade de escrever manualmente comandos do SGBD utilizado,
porque possui uma interface de persistncia automtica. Pode-se entender que
o Hibernate uma unidade de persistncia para o Mapeamento Objeto-
Relacional. Com efeito, ele persiste os objetos instanciados em suas referentes
tabelas no banco de dados.
Para uma padronizao e melhor estruturao da implementao do
Joodle, alguns padres de projeto so utilizados. Dentre os aproveitados, o
MVC Model, View, Controller sugere um modo de arquitetar as classes do
projeto, havendo a separao das classes de acordo com suas funes, como
as de entidade que assumem atributos e caractersticas (Model), a interface do
usurio (View) e a classe de comunicao entre as duas (Controller).
O Inversion of Control (Inverso de Controle) tambm um padro de
projeto utilizado, onde a responsabilidade de chamar os mtodos para o
usurio fica por conta do Sistema. Isso permite uma maior independncia dos
componentes de alto nvel, sem depender dos componentes de baixo nvel.
O padro DAO, ou Data Access Object, ser utilizado para dar suporte
s classes utilizarem uma maneira padronizada para o acesso suas
respectivas bases de dados. Isso sugere classes que faro a ligao e
operaes relacionadas ao banco de dados.
Para definir uma interface de alto nvel e mais fazer o programa de uso
mais fcil, utilizado o padro Faade, ajudando, segundo Vogel (2009), a
deixar um sistema mais limpo, estruturado e menos complexo. aqui que
devem ficar todas as regras de negcio, ligando a Interface com as classes de
comunicao com o banco, que, nesse caso, a DAO.
Outra tecnologia utilizada o JBoss Seam, uma plataforma de
construo e implementao de aplicativos Java para a Internet (JEE). De
acordo com Lemos e Senger (2008), o objetivo do uso desse framework
8

eliminar certas complexidades em nvel de arquitetura e API, ou seja,
implementaes de baixo nvel.

2.3. FUNDAMENTAO TERICA

Neste tpico levantam-se as teorias e ferramentas que fundamentam o
trabalho e so utilizadas para o desenvolvimento do sistema.

2.3.1. Plataforma Java

A plataforma Java composta por vrias ferramentas sendo uma delas
a linguagem Java, sendo esta orientada a objetos e baseada em atributos,
mtodos e objetos com envio constante de mensagens e parmetros aos
objetos instanciados.
Criada em 1992 por James Gosling (Sun Microsystems), a linguagem
de programao utilizada para a implementao deste projeto. Segundo
Campione (1996), Java uma linguagem de programao adaptada para o
desenvolvimento de Sistemas, tanto WEB quanto stand-alone, executado por
um software chamado Mquina Virtual, prpria do Java Java Virtual Machine,
auxiliando na execuo de aplicaes Java e permitindo a elas um carter
multiplataforma.
Uma aplicao Java multiplataforma possui a caracterstica de funcionar
em qualquer sistema operacional, pois esta executada diretamente na JVM,
responsvel pela traduo dos cdigos ByteCode em cdigos prprios do
Sistema Operacional. Essa funcionalidade tratada por Cadenhead e Lemay
(2003) como Neutralidade de Plataforma, sendo assim mais aconselhvel para
aplicaes WEB, onde necessria a execuo em diferentes plataformas.
De acordo com Furgeri (2010), as plataformas podem ser definidas
como um local onde se situam o hardware e o software interligados. nesse
ambiente que a aplicao roda. Isso pode ser traduzido na interligao entre o
Sistema Operacional e o Hardware.
9

Ainda segundo Furgeri (2010), pode-se tratar de trs principais
plataformas Java:
a) JME Java Mobile Edition: a plataforma utilizada em dispositivos
mveis, com baixa capacidade de memria e processamento, de acordo com o
artigo do JavaFree.org (2012), sobre Tutorial Java.
b) JSE Java Standard Edition: ainda de acordo com o Tutorial Java,
disponvel nos artigos do domnio JavaFree.org, essa plataforma a usada em
computadores pessoais e dispositivos com alta capacidade de processamento
e memria. Nessa plataforma, o uso de APIs tambm utilizado, tendo
algumas opcionais que podem ser encontradas no site da Oracle. com elas
que as aplicaes so desenvolvidas e executadas. Essa plataforma pode ser
dividida em duas subdivises:
o JDK Java Development Kit ou SDK Standard Development Kit:
um conjunto de utilitrios que auxiliam a criao de softwares para a plataforma
Java.
o JRE Java RunTime Environment: permite a execuo dos
aplicativos que utilizam o JDK.
c) JEE Java Enterprise Edition: segundo o artigo Tutorial Java,
encontrado no domnio JavaFree.org, essa plataforma vastamente utilizada
por empresas, a qual pode estar numa rede ou no. Sua maior prioridade a
segurana, onde o uso de API Application Programming Interface
amplamente utilizado, permitindo a comunicao dos diversos componentes do
software.
Portanto, para o desenvolvimento do projeto ser utilizado a plataforma
JEE, que, segundo Cattell e Inscore (2001), concebida como uma forma de
padronizar o desenvolvimento e as aplicaes, alm de distribu-las, onde se
possvel tirar proveito no alcance em rede.

2.3.2. Padres de Projeto

Os padres de projeto - design patterns - podem ser definidos, segundo
Fowler (1997), como maneiras semelhantes de se desenvolver um projeto. Ou
10

seja, os padres de projetos podem ser catalogados e utilizados novamente de
forma efetiva, gerando, consequentemente, uma padronizao dos modos de
implementao de softwares. Alm disso, para Johnson (1997), um software
bem uniforme e padronizado reduz o tempo de manuteno do mesmo, pois os
desenvolvedores podem migrar mais facilmente entre as partes das aplicaes
sem conhec-las como um todo.
Primeiramente, os padres foram arquitetados por Alexander (1977),
que os descreveu como:
Qualificadores de um problema que ocorre frequentemente em seu
ambiente, descrevendo, portanto, o cerne da soluo para aquele
problema, de tal modo que se a usa milhares de vezes sem fazer a
mesma coisa repetidamente.
Ou seja, so conceitos e no linguagens ou tecnologias, resolvendo
problemas especficos, que j foram uma vez solucionados, possibilitando,
assim, a outras pessoas, utilizar essa mesma lgica para resolver problemas
semelhantes.
Ento, os padres de projeto so utilizados para sanar problemas
comuns que outros programadores j tiveram e solucionaram, alm de
propiciar uma melhor arquitetura e padronizar os diversos componentes deste
projeto.

2.3.2.1. MVC Model, View and Controller

Atualmente, uma maior complexidade por partes dos programas sugeriu
uma separao das devidas partes das camadas de interface (View), controle
(Controller) e dados (Model), o que conhecido como o padro MVC, que gera
uma maior independncia dos componentes da aplicao. Sendo assim,
segundo Neto (2007), por consequncia, as alteraes inferidas em uma
dessas camadas no afetaro as demais diretamente, ou sua influncia ser
muito menor, gerando um maior encapsulamento e acoplamento da aplicao.
As principais camadas do MVC, segundo UNJP (2012), so:
11

a) Model: Nessa parte esto localizadas as entidades, assim como seus
devidos dados (mtodos e atributos), as lgicas de negcios e as devidas
classes de conexo com o banco;
b) View: Interface para o usurio;
c) Control: classes de comunicao que agem entre a camada Model e
View, transformando eventos gerados pela interface em alteraes nos dados
da aplicao.

2.3.2.2. Inversion of Control

Inversion of Control, ou Inverso de Controle, um padro de projeto
que, quando utilizado, atribui ao computador a responsabilidade de chamar os
mtodos para o usurio. Segundo Fowler (2005), tambm associado "Lei de
Hollywood": "No nos chame, ns o chamamos", ele melhora o desempenho
do programa, pois ao utiliz-lo cada mtodo fica independente dos outros e
foca em suas prprias funes. Sendo assim, quando algum mtodo
substitudo, os outros no sofrem nada.
Ainda de acordo com Fowler (2005), o termo Inverso de Controle foi
citado pela primeira vez em 1988 por Johnson e Foote, que acreditam ter
ouvido a expresso em algum lugar, mas no se lembram de onde.

2.3.2.3. DAO Data Access Object

Segundo o artigo Core J2EE Patterns - Data Access Object, do
domnio da Oracle, esse padro garante a manipulao e gerenciamento da
base de dados de um Sistema, implementando as formas e mecanismos
necessrios para gerar a ligao com a base de dados, assim como facilitar as
diversas formas de acesso a esse componente de comunicao. Para tal, o
DAO encapsula a implementao dessa ligao, ocultando essa parte aos seus
clientes. Alm do mais, nessa classe que se encontrar a definio da
unidade de persistncia.
12

Ainda de acordo com o mesmo artigo, uma das vantagens para
utilizao desse projeto que, quando h uma mudana na base de dados
utilizada pelo Sistema, as nicas alteraes sero executadas na DAO, sem
afetar as classes que a utilizam.

2.3.3. Java Server Faces

Java Server Faces, por Geary e Horstamnn (2007), um framework que
permite elaborar interfaces de interao com usurio WEB, inserindo
componentes em formulrios e ligando-os a objetos Java. Numa abordagem
mais ampla, segundo o site da Oracle, o JavaServer Faces - JSF utiliza
conceitos j existentes, padres de interface de usurio - UI e camadas de
desenvolvimento WEB, sem prender um desenvolvedor em uma linguagem
especfica especial. As interfaces que incluem o JavaServer Faces encapsulam
as diversas funcionalidades, permitindo, assim, ser direcionado a vrios
clientes.
Com a utilizao desse projeto, fica mais estruturado o uso do padro de
projeto MVC, j que, pela Oracle, o JSF claramente define a separao entre a
lgica da aplicao e a sua devida interface, fazendo uma comunicao entre
as duas. Com efeito, o JSF estabelece o padro para a construo e
implementao das interfaces de usurios do lado do servidor.
Esse framework se tornou padro simplesmente por serem de fcil uso e
open-source - cdigo aberto, gratuito para distribuio e modificao. Ele faz
toda a parte de implementao do JSP
1
- JavaServer Pages, sendo esse,
segundo documentos da Oracle, uma tecnologia que permite o fcil
desenvolvimento de componentes WEB, tanto dinmicos quanto estticos,
disponibilizando a utilizao do sistema WEB com a tecnologia Java Servlet,
necessria para aplicaes Java-WEB. Ainda por Godoy (2011), o JSF se
comporta como um modelo de programao orientado a eventos.


1
JSP, segundo Cadenhead e Lemay (2003), disponibiliza o uso e interpretao de cdigos
Java em um documento HTML.
13

Por fim, a Oracle (2012) inclui nas funcionalidades do JSF a
disponibilizao de um conjunto de APIs - Application Programming Interface
para representar componentes da UI e gerenciar seu estado, manipulando e
validando eventos e entradas, navegao da pgina, alm de padronizar os
desenvolvimentos de aplicaes WEB. Segundo Vieira Junior (2012), o JSF
constitui uma especificao Java, que uma explicao detalhada de como um
framework Java deve ser e fazer. Ou seja, ainda segundo Vieira Junior (2012),
uma especificao, que o caso do JSF, um conjunto de regras que devem
ser seguidas.

2.3.4. Mapeamento Objeto-Relacional (Object-Relation Mapping)

O Mapeamento Objeto-Relacional (ORM) uma tcnica que ajuda
desenvolvedores a trabalhar objetos junto com bancos de dados relacionais,
indicando as tabelas do banco como as classes do programa e os registros das
tabelas como as instncias dessas classes (os objetos). Assim, minimiza-se a
preocupao com os comandos SQL, pois se usa uma interface para a
persistncia dos dados.
Segundo o site hibernate.org (2011), o ORM surgiu para diminuir os
problemas encontrados quando se tenta gravar os dados de um programa
orientado a objetos em um banco de dados relacional, tais como:
a) Granularidade - quando existem mais classes do que tabelas;
b) Herana - esse pode ser um conceito bem firmado em orientao a
objetos, mas simplesmente no existe em bancos de dados relacionais;
c) Identidade - um banco de dados reconhece igualdade pela chave
primria apenas, enquanto na orientao a objetos existem duas noes de
igualdade;
d) Associaes - em bancos de dados relacionais, referncias so feitas
por meio de chaves estrangeiras, mas em orientao a objetos necessrio
criar duas associaes para que seja um relacionamento bidirecional (por
exemplo), no se podendo determinar a multiplicidade de um relacionamento
ao olhar para a classe;
14

e) Navegao de dados - usando Java (uma linguagem orientada a
objetos), para se encontrar uma informao simplesmente procura-se pelo
objeto no programa. Porm, com bancos de dados relacionais, geralmente se
quer minimizar ao mximo nmero de queries (usam-se JOINs), selecionando
a entidade procurada antes de procurar pelo programa.
Utilizar uma interface de persistncia para o mapeamento objeto-
relacional ajuda a reduzir estes problemas. Um exemplo desse tipo de i nterface
o Hibernate.

2.3.5. Hibernate

O Hibernate teve incio em 2001 por Gavin King, o qual teve por motivo
de criao oferecer uma melhor capacidade de persistncia. Segundo o site
oficial do Hibernate hibernate.org (2011) , o mesmo se trata de um
framework gratuito que facilita o armazenamento e a recuperao de objetos
atravs do mapeamento objeto-relacional. Esse mapeamento utilizado para
que o software tenha comunicao com seu banco de dados, ou seja, faz
conexo entre as classes Java de um sistema com as entidades do banco.
Segundo Lohbauer e King (2005), voc pode utilizar o Hibernate para
substituir a escrita de cdigo SQL dentro do seu cdigo Java, preocupando-se
somente com os objetos da aplicao. Alm de ser uma maneira mais simples
do que usar o cdigo do JDBC puro, j que o Hibernate possui uma linguagem
query prpria.

2.3.6. JBoss Seam

JBoss, segundo Kantek e Takahashi (2007), existe desde 1999,
desenvolvido por uma equipe chamada JBoss Group, liderada por Marc Fleury.
JBoss Seam se define como uma plataforma para a construo e
implementao de aplicaes Java para Internet, desenvolvido para a
plataforma JEE, ligando as diversas camadas da aplicao. Segundo o prprio
site do Seam, seus componentes integram vrias tecnologias, como AJAX,
15

JavaServer Faces, Java Persistence (JPA), Enterprise Java Beans e o
Business Process Management. De acordo com Lemos e Senger, o JBoss "
um framework que promove uma arquitetura de integrao destas tecnologias
do Java EE numa aplicao Web ou Enterprise", e foi concebido para eliminar
as diferentes dificuldades e complexidades em nvel de arquitetura e API.
Utilizando classes Java com annotations, conjunto de APIs para a UI e
XML, ele permite a implementao de complexas aplicaes WEB. Segundo a
desenvolvedora, JBoss, cuja definio sobre esse framework se encontra no
domnio do SeamFramework, o JBoss Seam garante um componente uniforme
para a lgica da aplicao, padronizando seu uso e utilizao de annotations.
Para Allen (2008), o Seam elimina camadas e configuraes desnecessrias e
soluciona pontos negativos do JSF.
Seu uso atual altamente difundido, pelo fato de ser bem integrado,
uma til ferramenta de ligao, alm de diminuir ou eliminar interdependncias
entre os diversos componentes da aplicao, alm de possuir um controle do
estado da aplicao e o acesso de pedidos sobre a mesma. Segundo Dan
Allen (2008), JBoss Seam est rapidamente ganhando o interesse dos
desenvolvedores do Java Enterprise pelo seu foco na simplicidade e por ser
Open-Source, alm de abrir novas portas para novas tecnologias, sem precisar
aprend-las antes.

2.3.7. SGBD - Sistema Gerenciador de Banco de Dados

Os bancos de dados, tipicamente, exigem um grande espao para o
armazenamento dos mesmos. Segundo Silberschatz, Korth e Sudarshan
(2006), os SGBDs corporativos so medidos, geralmente, em gigabytes e
terabytes.
A fim de facilitar e simplificar o acesso a esses bancos de dados, tem-se
o Sistema Gerenciador de Banco de Dados (SGBD), que uma evoluo do
Sistema de Banco de Dados (SBD).
Ainda de acordo com Korth e Silberschatz (2006), os SGBDs so
responsveis pelas seguintes tarefas:
16

a) Cumprimento da integridade permite que sejam criadas regras para
que se garanta a integridade da base. A partir dessa ferramenta, as regras
criadas podero ser utilizadas por todas as aplicaes que acessarem a base
de dados;
b) Permisso de criao e aplicao de regras de segurana Uma das
mais importantes ferramentas a criao de regras de segurana, pois com
elas o acesso aos dados ser privativo aos usurios desejados;
c) Controle de concorrncia com o controle de acessos concorrentes o
SGBD permite que, se mais de uma pessoa acessar uma mesma base de
dados, ao mesmo tempo, um acesso no interferir o outro;
d) Realizao da gerncia de transaes segundo Angelotti (2010), as
transaes consistem um conjunto de operaes que so denominadas como
uma unidade lgica indivisvel, ou seja, quando uma transao iniciada, todas
as operaes que esto dentro dela devem ser executadas. Um sistema
computacional est sujeito a falhas, assim como qualquer outro produto
mecnico ou eltrico. Se essa falha vir a ocorrer durante uma transao, o
SGBD dever cancelar as operaes executadas e desfazer as que j haviam
sido executadas. Isso ocorre para que se garanta a integridade da base.
O SGBD que ser utilizado pelo projeto Joodle o MySQL, criado em
1995 por David Axmark, Allan Larsson e Michael Widenius, na poca
desenvolvedores da Sun Microsystems. Segundo o prprio site mysql.com
(2012), o MySQL o software de base de dados com cdigo aberto mais
popular do mundo, posio que conseguiu graas a sua velocidade e facilidade
em usar; tornando-se assim uma boa opo para desenvolvimento WEB.

2.3.8. AVA Ambientes Virtuais de Aprendizagem

Os Ambientes Virtuais de Aprendizagem, surgidos tm tido um
crescimento notvel no Brasil, principalmente para auxlio ao ensino distncia
que foi o motivo para que se criasse um software. Segundo Barbosa (2005), o
AVA se trata de um software online que permite aos alunos e professores uma
interao por meio da Internet.
17

Almeida (2003) conceituou que os AVAs so sistemas computacionais
disponveis na Internet, destinados ao suporte de atividades mediadas pelas
tecnologias de informao e comunicao. Eles permitem a integrao de
mltiplas mdias, linguagens e recursos.
J Santos (2006) diz que AVA um sistema informatizado, projetado
para promover interao entre professores, alunos e quaisquer outros
participantes em processos colaborativos que envolvam ensino e
aprendizagem via Internet.
De acordo com Pereira (2007), para a gesto do aprendizado e a
disponibilizao de materiais, um AVA deve apresentar determinadas
ferramentas:
a) Controle de tempo: feito atravs de algum meio explcito de
disponibilizar materiais e atividades em determinados momentos do
curso, por exemplo, o recurso calendrio;
b) Avaliao: usualmente formativa (como por exemplo, a auto-avaliao);
c) Comunicao: promovida de forma sncrona e assncrona;
d) Espao privativo: disponibilizado para os participantes trocarem e
armazenarem arquivos;
e) Gerenciamento de uma base de recursos: como forma de administrar
recursos menos formais que os materiais didticos, tais como FAQ
(Perguntas frequentes) e sistema de busca;
f) Apoio: como por exemplo, a ajuda on-line sobre o ambiente;
g) Manuteno: relativo criao e atualizao de matrias de
aprendizagem.
Sendo assim, um AVA uma boa alternativa educacional, por abranger
informao (material didtico), comunicao, gerncia administrativa e
pedaggica dos cursos e a oferta de atividades e avaliaes, tudo num s
lugar.




18

2.3.9. Trabalhos Relacionados

Para maior compreenso e conhecimento, sero apresentados sites de
AVA j existentes. E em comparao aos mesmos est este projeto que busca
atender algumas necessidades que esses sites no atendem.

2.3.9.1. Moodle

O Modular Object-Oriented Dynamic Learning Environment (MOODLE,
2012) um aplicativo web gratuito que tem como foco o apoio aprendizagem.
Foi criado em 2001 pelo programador e educador Martin Dougiamas.
Voltado para o Ensino Distncia (EAD), possui um sistema de
administrao de atividades publicadas online para os alunos cadastrados em
determinados cursos. Esse sistema muito bom, porm, possui algumas
limitaes como j citadas na introduo.

2.3.9.2. Edmodo

O aplicativo Edmodo (EDMODO, 2012) fornece aos professores e
alunos um ambiente seguro para se conectar e compartilhar documentos
educacionais, notas e discusses sobre diversos assuntos.
um site pouco conhecido no Brasil, tendo como objetivo a incluso
digital dos alunos e professores. Por ser um aplicativo mais voltado a essa
interao entre docentes e discentes, o Edmodo no possui algumas
ferramentas que seriam interessantes existirem em um ambiente para
avaliao estudantil.
Basicamente, o Edmodo tem mais funcionalidades para interao
social dos usurios do que ferramentas para a avaliao dos alunos
propriamente dita, que foi citada como objetivo do site.



19

2.3.9.3. Eureka

O Eureka (EUREKA, 2012) um aplicativo web da PUCPR (Pontifcia
Universidade Catlica do Paran) de interao extra sala de aula entre alunos
e professores, bem como o aplicativo Moodle.
Este AVA possui algumas funcionalidades que esto presentes no
projeto Joodle como agenda pessoal, avaliaes e download e upload de
arquivos, porm, o mesmo apresenta o problema de ser disponibilizado apenas
aos alunos e funcionrios da PUCPR ou para instituies de ensino que
estejam dispostos a comprar este sistema, como o Expoente.

2.3.9.4. AVA-IFPR

O AVA-IFPR (EAD, 2012) foi projetado e desenvolvido pelo Instituto
Federal do Paran para o suporte dos cursos de ensino distncia da
instituio.
Assim como o Eureka, o AVA-IFPR tambm possui algumas
funcionalidades que esto presentes no projeto Joodle, como download e
upload de arquivos e a disponibilizao de atividades. Esse sistema tambm
possui ferramentas de interao entre os usurios como chat, fruns, recados,
enquetes e o mensageiro (ferramenta parecida com o Messenger). Outro
diferencial que as ferramentas de avaliao dos alunos so customizadas de
acordo com a necessidade de cada curso.
O AVA-IFPR disponibilizado apenas aos alunos matriculados nos
cursos de ensino a distncia do IFPR.







20

3. ESPECIFICAO TCNICA

3.1. DIAGRAMA DE CLASSE

Figura 1 - Diagrama de Classes (PARTE1 - Relacionamentos)
21


Figura 2 - Diagrama de Classes (PARTE2 Relacionamento Daos e GenericDao)

22


Figura 3 - Diagrama de Classes (PARTE3 - Daos)
23


Figura 4 - Diagrama de Classes (PARTE4 - MBs)
24


Figura 5 - Diagrama de Classes (PARTE5 Entidades)

25


3.2. DIAGRAMA DE ENTIDADE E RELACIONAMENTO

Figura 6 - Diagrama de Entidade e Relacionamento













26


3.3. DIAGRAMA DO MODELO RELACIONAL

Figura 7 - Diagrama do Modelo Relacional


27

3.4. DIAGRAMA DE CASO DE USO











Figura 8 - Diagrama de Caso de Uso
28

3.4.1. DESCRIES DE CASO DE USO

Nome <<CRUD>> Gerenciar Cursos
Objetivo Permitir que o administrador insira, altere, exclua e
consulte um curso.
Atores Administrador
Fluxo Principal 1) O Sistema lista os cursos cadastrados em ordem
alfabtica
2) O administrador seleciona a operao:

2.1) Variante inserir
2.2) Variante alterar
2.3) Variante consultar
2.4) Variante excluir

Variante inserir
2.1.1) O administrador insere os dados (ano e nome)
referentes ao novo curso.
2.1.2) O sistema verifica os campos e insere o valor
default nos campos em branco que possuem o
mesmo
2.1.3) O sistema valida os dados, verificando se os
inseridos so vlidos
2.1.4) O sistema gera um cdigo para o novo curso
2.1.5)O sistema salva o novo registro na base de
dados

Variante alterar
2.2.1) O administrador seleciona um dos cursos
apresentados
2.2.2) O administrador modifica os atributos sua
escolha (exceto cdigo) referentes ao curso
selecionado
2.2.3) O sistema verifica os dados modificados
2.2.4) O sistema verifica espaos em branco, e, caso
possua algum campo em branco, ele no altera esse
atributo no registro
2.2.5) O sistema salva os dados

Variante consultar
2.3.1) O administrador seleciona um dos cursos
apresentados
2.3.2) O sistema deve apresentar todas as
informaes referentes ao curso selecionado

Variante excluir
2.4.1) O administrador seleciona um dos cursos
29

apresentados para exclu-lo
2.4.2) Uma mensagem de confirmao deve ser
exibida
2.4.3) O sistema exclui o curso seleciona da base de
dados
Fluxo Alternativo Exceo 2.1.2a: Caso algum campo obrigatrio
esteja em branco
2.1.2a.1) O sistema exibe uma mensagem de erro,
indicando falta de dados no(s) determinado campo

Exceo 2.1.3a e 2.2.3a: Caso algum dado inserido
no seja vlido
2.1.3a.1) O sistema exibe uma mensagem de erro,
afirmando que o dado est incorreto
Pr-condio Estar logado no sistema como administrador
Ps-condio Curso inserido ou alterado ou excludo ou consultado
com sucesso
Regras No se aplica.
Tabela 1 - <<CRUD>> Gerenciar Cursos
Nome <<CRUD>> Gerenciar Disciplinas
Objetivo Permitir que o administrador insira, inclua, exclua e
consulte uma disciplina
Atores Administrador
Fluxo Principal 1) O sistema lista as disciplinas cadastradas em
ordem alfabtica
2) O administrador seleciona a operao:

2.1) Variante inserir
2.2) Variante alterar
2.3) Variante consultar
2.4) Variante excluir

Variante inserir:
2.1.1) O administrador insere os dados (nome e
senha) referentes nova disciplina
2.1.2) O sistema verifica os campos e insere o valor
default nos campos em branco que possuem o
mesmo
2.1.3) O sistema valida os dados, verificando se os
inseridos so vlidos
2.1.4) O sistema gera um cdigo para a nova
disciplina
2.1.5) O sistema salva o novo registro no banco de
dados

30

Variante alterar:
2.2.1) O administrador seleciona uma das disciplinas
apresentadas
2.2.2) O administrador modifica os atributos sua
escolha (exceto cdigo) referentes disciplina
selecionada
2.2.3) O sistema verifica os dados modificados
2.2.4) O sistema verifica os espaos em branco, e
caso possua algum campo em branco, ele no altera
esse atributo no registro
2.2.5) O sistema salva os dados

Variante consultar:
2.3.1) O administrador seleciona uma das disciplinas
apresentadas
2.3.2) O sistema deve apresentar todas as
informaes referentes disciplina selecionada

Variante excluir:
2.4.1) O administrador seleciona uma das disciplinas
apresentadas para exclu-la
2.4.2) Uma mensagem de confirmao deve ser
exibida
2.4.3) O sistema exclui a disciplina da base de dados
Fluxo Alternativo Exceo 2.1.2a: Caso algum campo obrigatrio
esteja em branco
2.1.2a 1) O sistema exibe uma mensagem de erro
indicando falta de dados no(s) determinado campo(s)

Exceo 2.1.3a e 2.2.3a: Caso algum dado inserido
no seja vlido
2.1.3a 1) O sistema exibe uma mensagem de erro
afirmando que o dado est incorreto
Pr-condio Estar logado no sistema como administrador
Ps-condio Disciplina inserida ou alterada ou excluda ou
consultada com sucesso
Regras No se aplica.
Tabela 2 - <<CRUD>> Gerenciar Disciplinas
Nome <<CRUD>> Gerenciar Turmas
Objetivo Permitir que o administrador insira, inclua, exclua e
consulte uma turma
Atores Administrador
Fluxo Principal 1) O sistema lista as turmas cadastradas em ordem
alfabtica
2) O administrador seleciona a operao:

2.1) Variante inserir
31

2.2) Variante alterar
2.3) Variante consultar
2.4) Variante excluir

Variante inserir:
2.1.1) O administrador insere os dados (ano)
referentes nova turma
2.1.2) O sistema verifica os campos e insere o valor
default nos campos em branco que possuem o
mesmo
2.1.3) O sistema valida os dados, verificando se os
inseridos so vlidos
2.1.4) O sistema gera um cdigo para a nova turma
2.1.5) O sistema salva o novo registro no banco de
dados

Variante alterar:
2.2.1) O administrador seleciona uma das turmas
apresentadas
2.2.2) O administrador modifica os atributos sua
escolha (exceto cdigo) referentes turma
selecionada
2.2.3) O sistema verifica os dados modificados
2.2.4) O sistema verifica os espaos em branco, e
caso possua algum campo em branco, ele no altera
esse atributo no registro
2.2.5) O sistema salva os dados

Variante consultar:
2.3.1) O administrador seleciona uma das turmas
apresentadas
2.3.2) O sistema deve apresentar todas as
informaes referentes turma selecionada

Variante excluir:
2.4.1) O administrador seleciona uma das turmas
apresentadas para exclu-la
2.4.2) Uma mensagem de confirmao deve ser
exibida
2.4.3) O sistema exclui a turma da base de dados
Fluxo Alternativo Exceo 2.1.2a: Caso algum campo obrigatrio
esteja em branco
2.1.2a 1) O sistema exibe uma mensagem de erro
indicando falta de dados no(s) determinado campo(s)

Exceo 2.1.3a e 2.2.3a: Caso algum dado inserido
no seja vlido
2.1.3a 1) O sistema exibe uma mensagem de erro
32

afirmando que o dado est incorreto
Pr-condio Estar logado no sistema como administrador
Ps-condio Turma inserida ou alterada ou excluda ou
consultada com sucesso
Regras No se aplica.
Tabela 3 - <<CRUD>> Gerenciar Turmas
Nome <<CRUD>> Gerenciar Professores
Objetivo Permitir que o administrador insira, altere, exclua e
consulte um professor.
Atores Administrador
Fluxo Principal 1) O sistema lista os professores cadastrados em
ordem alfabtica
2) O administrador seleciona a operao:

2.1) Variante inserir
2.2) Variante alterar
2.3) Variante consultar
2.4) Variante excluir

Variante inserir:
2.1.1) O administrador insere os dados (nome, login e
senha) referentes ao novo professor
2.1.2) O sistema verifica os campos e insere o valor
default nos campos em branco que possuem o
mesmo
2.1.3) O sistema valida os dados, verificando se os
inseridos so vlidos
2.1.4) O sistema gera um cdigo para o novo
professor
2.1.5) O sistema salva o novo registro no banco de
dados
Variante alterar:
2.2.1) O administrador seleciona um dos professores
apresentados
2.2.2) O administrador modifica os atributos sua
escolha (exceto cdigo) referentes ao professor
selecionado
2.2.3) O sistema verifica os dados modificados
2.2.4) O sistema verifica os espaos em branco, e
caso possua algum campo em branco, ele no altera
esse atributo no registro
2.2.5) O sistema salva os dados

Variante consultar:
2.3.1) O administrador seleciona um dos professores
apresentados
2.3.2) O sistema deve apresentar todas as
33

informaes referentes ao professor selecionado

Variante excluir:
2.4.1) O administrador seleciona um dos professores
apresentados para exclu-lo
2.4.2) Uma mensagem de confirmao deve ser
exibida
2.4.3) O sistema exclui o professor da base de dados
Fluxo Alternativo Exceo 2.1.2a: Caso algum campo obrigatrio
esteja em branco
2.1.2a 1) O sistema exibe uma mensagem de erro
indicando falta de dados no(s) determinado campo(s)

Exceo 2.1.3a: Caso algum dado inserido no seja
vlido
2.1.3a 1) O sistema exibe uma mensagem de erro
afirmando que o dado est incorreto
Pr-condio Estar logado no sistema como administrador
Ps-condio Poder ter um novo registro na base referente ao
professor;
Ou, um registro dos professores poder ser alterado;
Ou, uma consulta dos professores ser exibida;
Ou, um registro dos professores ser excludo.
Regras No se aplica
Tabela 4 - <<CRUD>> Gerenciar Professores
Nome <<CRUD>> Gerenciar Atividades
Objetivo Permitir que o administrador insira, altere, exclua e
consulte uma atividade.
Atores Professor
Fluxo Principal 1) O sistema lista as atividades cadastradas em ordem
alfabtica
2) O administrador seleciona a operao:

2.1) Variante inserir
2.2) Variante alterar
2.3) Variante consultar
2.4) Variante excluir

Variante inserir
2.1.1) O professor insere os dados (data de ativao e
enunciado) referentes nova atividade.
2.1.2) O sistema verifica os campos e insere o valor
default nos campos em branco que possuem o mesmo
2.1.3) O sistema valida os dados, verificando se os
inseridos so vlidos
2.1.4) O sistema gera um cdigo para a nova atividade
2.1.5) O sistema salva o novo registro na base de dados
34


Variante alterar
2.2.1) O administrador seleciona uma das atividades
apresentadas
2.2.2) O administrador modifica os atributos sua
escolha (exceto cdigo) referentes disciplina
selecionada
2.2.3) O sistema verifica os dados modificados
2.2.4) O sistema verifica espaos em branco, e, caso
possua algum campo em branco, ele no altera esse
atributo no registro
2.2.5) O sistema salva os dados

Variante consultar
2.3.1) O administrador seleciona uma das atividades
apresentadas
2.3.2) O sistema deve apresentar todas as informaes
referentes atividade selecionada

Variante excluir
2.4.1) O administrador seleciona uma das atividades
apresentadas para exclu-la
2.4.2) Uma mensagem de confirmao deve ser exibida
2.4.3) O sistema exclui a atividade selecionado da base
de dados
Fluxo Alternativo Exceo 2.1.2a: Caso algum campo obrigatrio esteja
em branco
2.1.2a.1) O sistema exibe uma mensagem de erro,
indicando falta de dados no(s) determinado campo

Exceo 2.1.3a 2.2.3a: Caso algum dado inserido no
seja vlido
2.1.3a.1) O sistema exibe uma mensagem de erro,
afirmando que o dado est incorreto
Pr-condio Estar logado no sistema como professor
Ps-condio Atividade inserida ou alterada ou excluda ou consultada
com sucesso
Regras No se aplica.
Tabela 5 - <<CRUD>> Gerenciar Atividades
Nome Listar Professores
Objetivo Permitir que o professor consulte uma lista de
professores.
Atores Professor
Fluxo Principal Executar passo 2.3 do caso uso Gerenciar
Professores.
Fluxo Alternativo No se aplica
35

Pr-condio Estar logado no sistema como professor.
Ps-condio No se aplica
Regras No se aplica
Tabela 6 - Listar Professores
Nome <<CRUD>> Gerenciar Avaliaes
Objetivo Permitir que o professor insira, altere, exclua e
consulte uma avaliao
Atores Professor
Fluxo Principal 1) O sistema lista as avaliaes cadastradas em
ordem alfabtica
2) O professor seleciona a operao:

2.1) Variante inserir
2.2) Variante alterar
2.3) Variante consultar
2.4) Variante excluir

Variante inserir:
2.1.1) O professor insere os dados (data, enunciado,
matria e tempo) referentes nova avaliao
2.1.2) O sistema verifica os campos e insere o valor
default nos campos em branco que possuem o
mesmo
2.1.3) O sistema valida os dados, verificando se os
inseridos so vlidos
2.1.4) O sistema gera um cdigo para a nova
avaliao
2.1.5) O sistema salva o novo registro no banco de
dados

Variante alterar:
2.2.1) O professor seleciona uma das avaliaes
apresentadas
2.2.2) O professor modifica os atributos sua
escolha (exceto cdigo) referentes avaliao
selecionada
2.2.3) O sistema verifica os dados modificados
2.2.4) O sistema verifica os espaos em branco, e
caso possua algum campo em branco, ele no altera
esse atributo no registro
2.2.5) O sistema salva os dados

Variante consultar:
2.3.1) O professor seleciona uma das avaliaes
apresentadas
2.3.2) O sistema deve apresentar todas as
informaes referentes avaliao selecionada
36


Variante excluir:
2.4.1) O professor seleciona uma das avaliaes
apresentadas para exclu-la
2.4.2) Uma mensagem de confirmao deve ser
exibida
2.4.3) O sistema exclui a avaliao da base de dados
Fluxo Alternativo Exceo 2.1.2a: Caso algum campo obrigatrio
esteja em branco
2.1.2a 1) O sistema exibe uma mensagem de erro
indicando falta de dados no(s) determinado campo(s)

Exceo 2.1.3a e 2.2.3a: Caso algum dado inserido
no seja vlido
2.1.3a 1) O sistema exibe uma mensagem de erro
afirmando que o dado est incorreto
Pr-condio Estar logado no sistema como professor
Ps-condio Avaliao inserida ou alterada ou excluda ou
consultada com sucesso
Regras No se aplica.
Tabela 7 - <<CRUD>> Gerenciar Avaliaes
Nome <<CRUD>> Gerenciar Alertas
Objetivo Permitir que o professor ou aluno insira, altere,
exclua e consulte um alerta
Atores Professor, Aluno
Fluxo Principal 1) O sistema lista os alertas cadastrados em ordem
alfabtica
2) O professor ou aluno seleciona a operao:

2.1) Variante inserir
2.2) Variante alterar
2.3) Variante consultar
2.4) Variante excluir

Variante inserir:
2.1.1) O usurio insere os dados (hora, data e
contedo) referentes ao novo alerta
2.1.2) O sistema verifica os campos e insere o valor
default nos campos em branco que possuem o
mesmo
2.1.3) O sistema valida os dados, verificando se os
inseridos so vlidos
2.1.4) O sistema gera um cdigo para o novo alerta
2.1.5) O sistema salva o novo registro no banco de
dados

Variante alterar:
37

2.2.1) O usurio seleciona um dos alertas
apresentados
2.2.2) O usurio modifica os atributos sua escolha
(exceto cdigo) referentes ao alerta selecionado
2.2.3) O sistema verifica os dados modificados
2.2.4) O sistema verifica os espaos em branco, e
caso possua algum campo em branco, ele no altera
esse atributo no registro
2.2.5) O sistema salva os dados

Variante consultar:
2.3.1) O usurio seleciona um dos alertas
apresentados
2.3.2) O sistema deve apresentar todas as
informaes referentes ao alerta selecionado

Variante excluir:
2.4.1) O usurio seleciona um dos alertas
apresentados para exclu-lo
2.4.2) Uma mensagem de confirmao deve ser
exibida
2.4.3) O sistema exclui o alerta da base de dados
Fluxo Alternativo Exceo 2.1.2a: Caso algum campo obrigatrio
esteja em branco
2.1.2a 1) O sistema exibe uma mensagem de erro
indicando falta de dados no(s) determinado campo(s)

Exceo 2.1.3a e 2.2.3a: Caso algum dado inserido
no seja vlido
2.1.3a 1) O sistema exibe uma mensagem de erro
afirmando que o dado est incorreto
Pr-condio Estar logado no sistema como professor ou aluno
Ps-condio Alerta inserido ou alterado ou excludo ou consultado
com sucesso
Regras No se aplica.
Tabela 8 - <<CRUD>> Gerenciar Alertas
Nome Download de Arquivos
Objetivo Permitir que o aluno faa download de arquivos
Atores Aluno
Fluxo Principal 1) O sistema lista os arquivos cadastrados em ordem
alfabtica relacionados atividade e/ou contedo
selecionado
2) O sistema executa a variante 2.3 (baixar) do caso
de uso <<CRUD>> Gerenciar Arquivos
Fluxo Alternativo No se aplica
Pr-condio Estar logado no sistema como aluno
Ps-condio No se aplica
38

Regras No se aplica
Tabela 9 - Download de Arquivos
Nome Efetuar Login
Objetivo Permitir que o professor ou aluno efetue login
Atores Professor, Aluno
Fluxo Principal 1) O professor ou aluno entra com seu login e sua
senha
2) O sistema valida as informaes com as quais o
usurio entrou
Fluxo Alternativo Exceo 2a: Caso o login ou a senha no sejam
vlidos
2a 1) O sistema exibe uma mensagem de erro
afirmando que o login ou a senha so invlidos
Pr-condio No se aplica
Ps-condio O usurio est logado no sistema
Regras No se aplica
Tabela 10 - Efetuar Login
Nome Atualizar Professor
Objetivo Permitir que o professor altere seu prprio registro
Atores Professor
Fluxo Principal 1) O sistema exibe o cadastro do professor que est
logado
2) O sistema executa a variante 2.2 (alterar) do caso
de uso <<CRUD>> Gerenciar Professores
Fluxo Alternativo Exceo 2.2.3a: Caso algum dado inserido no seja
vlido
2.2.3a 1) O sistema exibe uma mensagem de erro
afirmando que o dado est incorreto
Pr-condio Estar logado no sistema como professor
Ps-condio O registro do professor atualizado
Regras No se aplica
Tabela 11 - Atualizar Professor
Nome <<CRUD>> Gerenciar Alunos
Objetivo Permitir que o administrador insira, altere, exclua e
consulte um aluno.
Atores Administrador
Fluxo Principal 1) O Sistema lista os alunos cadastrados em ordem
alfabtica
2) O administrador seleciona a operao:

2.1) Variante inserir
2.2) Variante alterar
2.3) Variante consultar
2.4) Variante excluir

Variante inserir
39

2.1.1) O administrador insere os dados (nome, login e
senha) referentes ao novo aluno.
2.1.2) O sistema verifica os campos e insere o valor
default nos campos em branco que possuem o
mesmo
2.1.3) O sistema valida os dados, verificando se os
inseridos so vlidos
2.1.4) O sistema gera um cdigo para o novo aluno
2.1.5) O sistema salva o novo registro na base de
dados

Variante alterar
2.2.1) O administrador seleciona um dos alunos
apresentados
2.2.2) O administrador modifica os atributos sua
escolha (exceto cdigo) referentes ao aluno
selecionado
2.2.3) O sistema verifica os dados modificados
2.2.4) O sistema verifica espaos em branco, e, caso
possua algum campo em branco, ele no altera esse
atributo no registro
2.2.5) O sistema salva os dados

Variante consultar
2.3.1) O administrador seleciona um dos alunos
apresentados
2.3.2) O sistema deve apresentar todas as
informaes referentes ao aluno selecionado

Variante excluir
2.4.1) O administrador seleciona um dos alunos
apresentados para exclu-lo
2.4.2) Uma mensagem de confirmao deve ser
exibida
2.4.3) O sistema exclui o aluno seleciona da base de
dados
Fluxo Alternativo Exceo 2.1.2a: Caso algum campo obrigatrio
esteja em branco
2.1.2a.1) O sistema exibe uma mensagem de erro,
indicando falta de dados no(s) determinado campo

Exceo 2.1.3a: Caso algum dado inserido no seja
vlido
2.1.3a.1) O sistema exibe uma mensagem de erro,
afirmando que o dado est incorreto
Pr-condio Estar logado no sistema como administrador
Ps-condio Poder ter um novo registro na base referente ao
aluno;
40

Ou, um registro dos alunos poder ser alterado;
Ou, uma consulta dos alunos ser exibida;
Ou, um registro dos alunos ser excludo.
Regras Um aluno no pode ser recadastrado na base
Tabela 12 - <<CRUD>> Gerenciar Alunos
Nome <<CRUD>> Gerenciar Arquivos
Objetivo Permitir que o professor insira, substitua, exclua e
consulte um arquivo.
Atores Professor
Fluxo Principal 1) O Sistema lista os arquivos cadastrados em ordem
alfabtica relacionado atividade e/ou contedo
selecionado
2) O professor seleciona a operao:

2.1) Variante inserir
2.2) Variante substituir
2.3) Variante baixar
2.4) Variante excluir

Variante inserir
2.1.1) O professor envia o arquivo para o sistema e
insere um nome ao mesmo
2.1.2) O sistema verifica o arquivo e assume os
valores dos dados (tamanho, localizao, tipo)
2.1.3) O sistema gera um cdigo para o novo arquivo
2.1.4) O sistema salva o novo registro na base de
dados
Variante substituir
2.2.1) O professor seleciona um dos arquivos
apresentados
2.2.2) O professor envia um novo arquivo ao sistema
2.2.3) O sistema verifica os dados referentes a esse
novo arquivo
2.2.4) O sistema substitui o arquivo vigente pelo novo
2.2.5) O sistema salva os dados

Variante baixar
2.3.1) O professor seleciona um dos arquivos
apresentados
2.3.2) O sistema deve disponibiliza tal arquivo para
download

Variante excluir
2.4.1) O professor seleciona um ou mais dos
arquivos apresentados para exclu-lo
2.4.2) Uma mensagem de confirmao deve ser
41

exibida
2.4.3) O sistema exclui o(s) arquivo selecionado da
base de dados
Fluxo Alternativo Exceo 2.1.2a: Caso algum campo obrigatrio
esteja em branco
2.1.2a.1) O sistema exibe uma mensagem de erro,
indicando falta de dados no(s) determinado campo

Exceo 2.1.3a e 2.2.3a: Caso algum dado inserido
no seja vlido
2.1.3a.1) O sistema exibe uma mensagem de erro,
afirmando que o dado est incorreto
Pr-condio Estar logado no sistema como administrador
Ps-condio Aluno inserido ou alterado ou excludo ou consultado
com sucesso
Regras No se aplica.
Tabela 13 - <<CRUD>> Gerenciar Arquivos
Nome <<CRUD>> Gerenciar Tpicos
Objetivo Permitir que o professor insira, inclua, exclua e
consulte um tpico.
Atores Professor
Fluxo Principal 1) O Sistema lista os tpicos cadastrados em ordem
alfabtica
2) O professor seleciona a operao:

2.1) Variante inserir
2.2) Variante alterar
2.3) Variante consultar
2.4) Variante excluir

Variante inserir
2.1.1) O professor insere os dados (nome, data)
referentes ao novo tpico.
2.1.2) O sistema verifica os campos e insere o valor
default nos campos em branco que possuem o
mesmo
2.1.3) O sistema valida os dados, verificando se os
inseridos so vlidos
2.1.4) O sistema gera um cdigo para o novo tpico
2.1.5) O sistema salva o novo registro na base de
dados

Variante alterar
2.2.1) O professor seleciona um dos tpicos
apresentados
2.2.2) O professor modifica os atributos sua
42

escolha (exceto cdigo) referentes ao tpico
selecionado
2.2.3) O sistema verifica os dados modificados
2.2.4) O sistema verifica espaos em branco, e, caso
possua algum campo em branco, ele no altera esse
atributo no registro
2.2.5) O sistema salva os dados

Variante consultar
2.3.1) O professor seleciona um dos tpicos
apresentados
2.3.2) O sistema deve apresentar todas as
informaes referentes ao tpico selecionado

Variante excluir
2.4.1) O professor seleciona um dos tpicos
apresentados para exclu-lo
2.4.2) Uma mensagem de confirmao deve ser
exibida
2.4.3) O sistema exclui o tpico seleciona da base de
dados
Fluxo Alternativo Exceo 2.1.2a: Caso algum campo obrigatrio
esteja em branco
2.1.2a.1) O sistema exibe uma mensagem de erro,
indicando falta de dados no(s) determinado campo

Exceo 2.1.3a e 2.2.3a: Caso algum dado inserido
no seja vlido
2.1.3a.1) O sistema exibe uma mensagem de erro,
afirmando que o dado est incorreto
Pr-condio Estar logado no sistema como professor
Ps-condio Tpico inserido ou alterado ou excludo ou
consultado com sucesso
Regras No se aplica.
Tabela 14 - <<CRUD>> Gerenciar Tpicos
Nome Listar Turmas
Objetivo Permitir que o professor consulte uma lista de
turmas.
Atores Professor
Fluxo Principal Executar passo 2.3 do caso uso Gerenciar Turmas.
Fluxo Alternativo No se aplica
Pr-condio Estar logado no sistema como professor.
Ps-condio No se aplica
Regras No se aplica
Tabela 15 - Listar Turmas
Nome Listar Alunos
43

Objetivo Permitir que o professor consulte uma lista de alunos.
Atores Professor
Fluxo Principal Executar passo 2.3 do caso uso Gerenciar Alunos.
Fluxo Alternativo No se aplica
Pr-condio Estar logado no sistema como professor.
Ps-condio No se aplica
Regras No se aplica
Tabela 16 - Listar Alunos
Nome Visualizar Material
Objetivo Permitir que o aluno visualize o material fornecido
pelo professor.
Atores Aluno
Fluxo Principal 1) O sistema lista os arquivos cadastrados em ordem
alfabtica relacionados atividade e/ou contedo
selecionado
2) O aluno seleciona um dos arquivos para
visualizao
3) O sistema exibe o arquivo
Fluxo Alternativo No se aplica
Pr-condio Estar logado no sistema como aluno.
Ps-condio No se aplica
Regras No se aplica
Tabela 17 - Visualizar Material
Nome Visualizar Atividades
Objetivo Permitir que o aluno visualize as atividades enviadas
pelo professor.
Atores Aluno
Fluxo Principal 1) O sistema lista as atividades cadastradas em
ordem alfabtica relacionadas ao tpico selecionado
2) O aluno seleciona uma das atividades para
visualizao
3) O sistema exibe a atividade
Fluxo Alternativo No se aplica
Pr-condio Estar logado no sistema como aluno.
Ps-condio No se aplica
Regras No se aplica
Tabela 18 - Visualizar Atividades
Nome Consultar Calendrio
Objetivo Permitir que o aluno e o professor consultem o
calendrio.
Atores Aluno; Professor
Fluxo Principal 1) O sistema exibe o calendrio do usurio
2) O sistema modifica o calendrio de acordo
com as modificaes feitas pelo usurio.
Fluxo Alternativo No se aplica
Pr-condio Estar logado no sistema como aluno ou professor.
44

Ps-condio No se aplica
Regras No se aplica
Tabela 19 - Consultar Calendrio
Nome Avaliar e Comentar Atividades
Objetivo Permitir que o professor avalie e comente atividades.
Atores Professor
Fluxo Principal 1) O sistema lista as atividades cadastradas em
ordem alfabtica relacionados ao tpico selecionado
2) O professor seleciona uma das atividades para
visualizao
3) O professor seleciona a operao:

3.1) Variante avaliar
3.2) Variante comentar

Variante avaliar:
3.1.1) O sistema exibe a atividade selecionada para
avaliao do professor.

Variante comentar:
3.2.1) O sistema exibe a atividade selecionada
3.2.2)O professor insere o dado comentrio
referente ao novo comentrio
3.2.3) O sistema verifica o campo
3.2.4) O sistema valida o dado, verificando se este
vlido
3.2.5) O sistema gera um cdigo para o novo
comentrio
3.2.6) O sistema salva o novo comentrio na base de
dados
Fluxo Alternativo Exceo 3.2.3a: Caso o campo esteja em branco
3.2.3a 1) O sistema exibe uma mensagem de erro
indicando falta de dados no(s) determinado campo(s)

Exceo 3.2.4a: Caso o dado inserido no seja vlido
3.2.4a 1) O sistema exibe uma mensagem de erro
afirmando que o dado est incorreto
Pr-condio Estar logado no sistema como professor.
Ps-condio No se aplica
Regras No se aplica
Tabela 20 - Avaliar e Comentar Atividades
Nome Enviar Arquivo
Objetivo Permitir que o aluno envie um arquivo
Atores Aluno
Fluxo Principal 1) O sistema executa o caso de uso Visualizar
Atividades
2) O aluno seleciona a opo Enviar Arquivo
45

3) O sistema executa a variante 2.1 do caso de uso
Gerenciar Arquivos
Fluxo Alternativo No se aplica
Pr-condio Estar logado no sistema como aluno
Ps-condio No se aplica
Regras No se aplica
Tabela 21 - Enviar Arquivo
Nome Relacionar Aluno com Turma
Objetivo Permitir que o professor relacione o aluno com a
turma
Atores Professor
Fluxo Principal 1) O sistema executa o caso de uso Listar Alunos
2) O professor seleciona um aluno da lista
3) O sistema exibe os dados sobre o aluno
selecionado
4) O professor seleciona a opo Relacionar Aluno
com Turma
5) O sistema executa o caso de uso Listar Turmas
6) O professor seleciona a turma qual o aluno
pertence
7) O sistema salva a relao aluno-turma no banco
de dados.
Fluxo Alternativo No se aplica
Pr-condio Estar logado no sistema como professor
Ps-condio O aluno pertence a uma turma
Regras No se aplica
Tabela 22 - Relacionar Aluno com Turma




















46

4. IMPLEMENTAO DO SISTEMA E SUAS FUNCIONALIDADES

O foco do projeto Joodle , essencialmente, a relao aluno/professor,
dois tipos de usurios que se entrelaam em turma, curso, disciplina e etc. Por
isso, o design do sistema busca ser, ao mximo, funcional e interativo.

A Figura 9 mostra a pgina de login. por aqui que o usurio entra no
sistema.

Figura 9 - Pgina de login







47

A Figura 10 mostra a tela de cadastro para um novo usurio. Nesse
cadastro o usurio ser sempre um aluno a menos que o administrador mude
suas permisses na pgina de gerenciamento dos usurios.

Figura 10 Tela de cadastro














48

Aps o usurio ter logado no sistema ele entrar em sua home. As telas
dessa home vo variar de acordo com o tipo do usurio: Figura 11, para
administrador; Figura 12, para o professor; e Figura 13, para o aluno.


Figura 11 - Home do administrador
49


Figura 12 - Home do Professor
50


Figura 13 - Home do aluno






51

A Figura 14 apresenta a pgina Gerenciar Usurios que est disponvel
para os administradores. Aqui ele pode cadastrar, editar e excluir os usurios
do sistema livremente.


Figura 14 - Pgina gerenciar usurios













52

A Figura 15 apresenta a tela de cadastro de um novo usurio que
disponvel apenas pasa o administrador. Oa campos aluno, professor e
administrador determinam as permisses que o usurio a ser cadastrado ter
no sistema.
O usurio pode ser mais de um tipo, ou seja, ele pode ser um professor
e um administrador ao mesmo tempo. Isso depende das permisses que o
administrador vai colocar.

Figura 15 Teal de cadastro de usurio









53

A Figura 16 apresenta a pgina de gerenciamento de turmas onde,
novamente, apenas o administrador tem acesso. Nela se pode cadastrar, editar
e excluir turmas.


Figura 16 - Pgina gerenciar turmas













54

A Figura 17 apresenta a pgina onde o administrador cadastra uma
turma, adicionando o nome, uma senha (no obrigatria), o ano, os alunos que
dela participam e as disciplinas da mesma.


Figura 17 Pgina cadastrar turmas








55

A Figura 18 apresenta a pgina da disciplina, com seus tpicos e seus
respectivos itens, na perspectiva do professor. Esta pgina visvel para todos
os usurios, porm, para os alunos no existem as opes de novo tpico,
liberar a excluso dos itens e liberar a excluso dos tpicos.
Esta pgina pode ser modificada tanto pelo administrador quanto pelo
professor. possvel mudar a posio dos tpicos e selecionar e excluir itens
de uma vez (o mesmo funciona com os tpicos).

Figura 18 - Pgina disciplina









56

A Figura 19 apresenta a tela disponibilizada quando o usurio clica no
boto "Novo Item", na pgina das disciplinas. Nela o usurio pode escolher o
tipo de item que quer adicionar ao tpico (arquivo, atividade, avaliao ou link)
e, selecionando uma das opes, abre-se uma tela especfica para o cadastro
do item escolhido.

Figura 19 Tela de novo item












57

A Figura 20 mostra um tipo de cadastro de novo item. Neste caso, o de
avaliao.


Figura 20 Tela de novo item - avaliao














58

A Figura 21 apresenta a pgina onde o aluno responde uma avaliao
cadastrada, pelo professor, na disciplina a qual ele faz parte. Apenas o aluno
pode responder a avaliao e o mesmo s poder realizar esta ao caso
esteja no prazo adequado para faz-la.


Figura 21 - Pgina responder avaliao










59

A Figura 22 apresenta a pgina na qual o aluno v a nota de sua
avaliao, que disponibilizada aps a correo da mesma.

Figura 22 - Pgina resultado da avaliao

60

5. CONSIDERAES FINAIS
Ao longo do desenvolvimento do Joodle os objetivos principais do
projeto, como disponibilizar arquivos, atividades e avaliaes e a correo e
agendamento das mesmas se mantiveram e foram implementados com
sucesso.
O Joodle tambm conseguiu sanar algumas dificuldades que estavam
presentes nos sistemas j existentes como, no Moodle, a impossibilidade de
agendar atividades e avaliaes e o problema em reposicionar os tpicos das
disciplinas.
Dentre os objetivos especficos do sistema Joodle, apenas o objetivo (g)
- Exibir uma agenda para professores e alunos que mostre as atualizaes
feitas, como disponibilizao de arquivos e data inicial e final de tarefas,
avaliaes, eventos e palestras e, uma parte do objetivo (k) - Disponibilizar
um quadro de avisos para todos os usurios e um para cada turma no foram
implementados, pois o componente calendar do RichFaces no permite
alteraes em seu cdigo.
Esse sistema, sendo um AVA, poder ser utilizado pelo Instituto Federal
do Paran, ou por qualquer outra instituio de ensino, a fim de proporcionar
um ambiente prtico e eficiente de interao entre professores e alunos com
atividades intra ou extra sala de aula.

5.1. RESULTADOS E TRABALHOS FUTUROS
O foco do sistema a interao entre os alunos e os professores, bem
como os contedos que estes ltimos queiram disponibilizar para seus
discentes a fim de trazer maior agilidade sala de aula. Para tal, foram
implementados o cadastro tanto de usurios (administradores, professores e
alunos), cursos, turmas, as disciplinas com suas avaliaes e atividades (que
aparecem de forma prtica, organizadas em tpicos), e tambm um quadro de
avisos especfico para cada usurio e um calendrio (para o aluno se localizar
nas datas de entrega).

61

Conforme j dito anteriormente, ainda h muito campo para melhorias no
sistema Joodle, como fazer a agenda mostrar as atualizaes do curso do
usurio, ter um frum para cada turma, um aplicativo chat para os usurios e
mandar e-mails para o usurio com os avisos.

62

REFERNCIAS

ALEXANDER, C. et al. A Pattern Language. Nova York: Oxford University
Press, 1977.

ALLEN, D. Seam in Action. Greenwich, 2008. Disponvel em:
<http://dl.acm.org/citation.cfm?id=1450932> Acesso em: 22 mar. 2012.

ALMEIDA, M. E. B. Educao, ambientes virtuais e Interatividade.
Petrpoles: Loyola, 2003.

ANGELOTTI, E. S. Banco de Dados. Curitiba: Editora do Livro Tcnico, 2010.

AVA-IFPR. Disponvel em <http://200.17.98.190/portalead/default.aspx>.
Acesso em 15 nov. 2012.

BARBOSA, R. M. Ambientes Virtuais de Aprendizagem. Porto Alegre:
Artmed, 2005.

CADENHEAD, R.; LEMAY, L. Java Profissional Reference. 3. ed. Rio de
Janeiro: Elsevier, 2003.

CAMPIONE, M.; WALRATH, K. The Java Tutorial: object-oriented
programming for the Internet. 1996. Disponvel em:
<http://java.sun.com/docs/books/javatutorial/second-edition.html> Acesso em:
28 fev. 2012.

CATTELL, R.; INSCORE, J. J2EE: Java 2 Enterprise Edition. 1. ed. [S.I.]
Campus, 2001.

EUREKA. Disponvel em: <http://eureka.pucpr.br>. Acesso em 18 out. 2012.

63

FOWLER, M. Dealing with Properties. [S.I. : s.n.], 1997. Disponvel em:
<http://martinfowler.com/apsupp/properties.pdf> Acesso em: 20 mar. 2012.

FOWLER, M. Inversion of Control. 2005. Disponvel em:
<http://martinfowler.com/bliki/InversionOfControl.html> Acesso em: 20 mar.
2012.

FURGERI, S. Java 7 Ensino Didtico. 1. ed. So Paulo: rica, 2010.

GEARY, D.; HORSTAMNN, C. Java Server Faces. 1. ed. [S.I.] Alta Books,
2007.

HIBERNATE. Disponvel em: <http://hibernate.org> Acesso em: 20 mar. 2012.

JAVA FREE. Disponvel em: <http://javafree.org> Acesso em: 28 fev. 2012.

JOHNSON, R. E. Frameworks = (components + patterns). Communications of
the ACM, Nova York, n. 40, n. 10 p. 39-42, out. 1997. Disponvel em:
<http://dl.acm.org/citation.cfm?id=262799> Acesso em: 20 mar. 2012.

KANTEK, A.; TAKAHASHI, K. Introduo ao JBoss. Disponvel em
<http://www.mundooo.com.br> Acesso em: 22 mar. 2012.

LEMOS, A. J.; SENGER, V. JSF 2.0: Uma evoluo nas interfaces web com
Java. Disponvel em: <http:///.slideshare.net/drspockbr/jsf-20-uma-evoluo-nas-
interfaces-web-com-java> Acesso em: 21 mar. 2012.

LOHBAUER, C.; KING, G. Hibernate em Ao. 1 ed. Rio de Janeiro: Cincia
Moderna, 2005.

MY SQL. Disponvel em: <http://mysql.com> Acesso em: 21 mar. 2012.

64

NETO, O. M.; Entendendo e Dominando o Java. 2 ed. So Paulo: Digerati
Editorial, 2007.

ORACLE. Disponvel em: <http://oracle.com> Acesso em: 20 mar. 2012.

PEREIRA, A. C. O que o AVA-AD. Disponvel em:
<http://www.avaad.ufsc.br> Acesso em 21 mar. 2012.

SANTOS, E. O. Articulao de saberes na EAD on-line. So Paulo: Loyola,
2003. Disponvel em: < http://abed.org.br> Acesso em: 21 mar. 2012.
SILBERSCHATZ, A.; KORTH, H. F.; SUDARSHAN, S. Sistema de Banco de
Dados. [S.I.]. Campus, 2006.

UNJP. Padro MVC. Disponvel em: < http://i2p.com.br> Acesso em: 20 mar.
2012.

VIEIRA JUNIOR, P. R. [JAVA SERVER FACES]. Curitiba: [s.n.], [2010].

VOGEL, L. Facade Design Pattern in Java. [S.I.], 2007. Disponvel em:
<http://vogella.com/articles/DesignPatternFacade/article.html> Acesso em: 15
mar. 2012.

Potrebbero piacerti anche