sistema de autoavalição web para o ceulji ulbra
TRANSCRIPT
CLAYTON FERRAZ ANDRADE
SISTEMA WEB DE AVALIAÇÃO INSTITUCIONAL PAR A O CENTRO
UNIVERSITÁRIO LUTERANO DE JI-PARANÁ - CEULJI
Ji-Paraná
2010
CLAYTON FERRAZ ANDRADE
SISTEMA WEB DE AVALIAÇÃO INSTITUCIONAL PAR A O CENTRO
UNIVERSITÁRIO LUTERANO DE JI-PARANÁ - CEULJI
Trabalho apresentado para
obtenção de grau de bacharel em
Sistema de Informação, sob a
orientação da Professora Letícia C.
Pivetta.
Ji-Paraná
2010
CIP-Brasil. Catalogação na Fonte
Biblioteca Central CEULJI/ULBRA
Ficha Catalográfica: Ana Cláudia da Silva Rodrigues – CRB11/604
A242s Andrade, Clayton Ferraz. Sistema Web de avaliação Institucional para o Centro Uni- versitário Luterano de Ji-Paraná-CEULJI./Clayton Ferraz Andra- de.Centro Universitário Luterano de Ji-Paraná, 2010. 66 f.:il. Orientadora: Profª. Letícia C. Pivetta. Monografia(Graduação) Centro Universitário Luterano de Ji-Paraná. Curso de Bacharelado em Sistema de Infor- mação. 1.Avaliação Interna. 2.CEULJI/ULBRA. 3.Sistema Web. I.Pivetta, Letícia C. II.Título. CDU 004.05 1.Estabilidade provisória. 2.Mulher. 3.Proteção à materni- dade. I.Silva, Marlete Maria da Cruz Corrêa da. II. Título.
CLAYTON FERRAZ ANDRADE
SISTEMA WEB DE AVALIAÇÃO INSTITUCIONAL PAR A O CENTRO
UNIVERSITÁRIO LUTERANO DE JI-PARANÁ - CEULJI
AVALIADORES
______________________________ - __________
Nome do 1º avaliador - Instituição Nota
______________________________ - __________
Nome do 2º avaliador - Instituição Nota
______________________________ - __________
Nome do 3º avaliador - Instituição Nota
_________________
Média
Ji-Paraná
2010
Dedico este trabalho aos meus pais, a
minha irmã, a Deus e a todos que através da
informática, fazem desse mundo, um lugar melhor
para se viver.
Agradeço a Deus por me abençoar a cada
dia, aos meus pais por sempre acreditarem em mim e
ter dado a mim, condições e apoio para meus
estudos, ao Governo Federal por ter criado o ProUni,
uma vez que sem ele, eu não teria condições para
cursar o nível superior, a todos o meus professores
que sempre me incentivaram a crescer a cada dia
mais, a professora Letícia por ter sugerido o tema e
incentivar para a realização do mesmo, a todos estes
meus agradecimentos sinceros!
RESUMO
O CEULJI é uma Instituição de Ensino Superior (IES) que tem como missão a busca
permanente da excelência no ensino, pesquisa e extensão, visando se tornar uma instituição
referência no Norte do Brasil. Para alcançar esta missão, uma importante ferramenta é a
avaliação interna dos cursos deste centro universitário, pois proporciona um feedback dos
acadêmicos com relação aos professores, coordenadores e instituição. Para isso foi
desenvolvido um sistema web de avaliação institucional, objeto deste trabalho. Através deste
sistema cada aluno responde, de forma anônima, uma série de questões sobre professores,
coordenadores e instituição, bem como sobre seu próprio comportamento e atitude diante da
instituição. Para o desenvolvimento do sistema de avaliação, foram utilizadas as técnicas das
metodologias ágeis, através do método XP (Extreme Programming – Programação Extrema).
Quanto às tecnologias para desenvolvimento foram utilizados os recursos a seguir: para a
programação, utilizou-se o PHP; para o armazenamento dos dados, utilizou-se o sistema de
gerenciamento de banco de dados MySql. Na primeira fase do projeto foi desenvolvido o
núcleo principal do Sistema Web de Avaliação Institucional, composto: do banco de dados,
contendo as informações pertinentes à avaliação; e da aplicação web, responsável pela
interface com os usuários finais para obtenção dos dados e apresentação dos resultados. O
sistema foi disponibilizado para aproximadamente três mil alunos dos vinte cursos oferecidos
pela instituição. O sistema contabilizou os votos de mais de mil e setecentos acadêmicos, ou
seja, aproximadamente 60% fizeram a utilização efetiva do sistema. Após a realização da
avaliação, os resultados foram visualizados através de gráficos, onde se constatou que o
sistema foi eficaz tanto na coleta de dados, bem como na visualização dos resultados. Por fim,
o módulo administrativo foi desenvolvido, onde estão construídas interfaces para inserção de
dados necessários para que o sistema possa operar, tais como: cadastro de cursos, professores,
turmas e de perguntas do questionário. Este módulo permitirá que a inserção dos dados possa
ser transferida para o gerente do sistema, desonerando o administrador do banco de dados em
questão.
Palavras-chave:
Avaliação interna. Sistema Web. CEULJI/ULBRA.
ABSTRACT
The CEULJI is a Higher Education Institution (HEI) has as its mission the constant
pursuit of excellence in teaching, research and extension, aiming to become a reference
institution in Northern Brazil. To achieve this mission, an important tool is the internal
evaluation of university courses in this center, it provides feedback from students over
teachers, engineers and institution. For this we developed a web system of institutional
evaluation, the current paper. Through this system each student answered, anonymously, a
series of questions about teachers, engineers and institution as well as on their own behavior
and attitude toward the institution. To develop the evaluation system, we used the techniques
of agile methodologies, using the method XP (Extreme Programming - Extreme
Programming). For technologies for development were used the following resources: for
programming, we used PHP, for the storage of data, we used the system for managing
MySQL database. In the first phase of the project was developed the core of Web System for
Institutional Evaluation, comprising: the database containing information relevant to the
evaluation, and web application responsible for interfacing with end users for data collection
and presentation of results. The system has been available for about three thousand students
from twenty courses offered by the institution. The system counted the votes of more than
seventeen hundred students, or approximately 60%, the effective utilization of the system.
Upon completion of the evaluation, the results were visualized through graphs, where he
found that the system was effective in collecting data and viewing the results. Finally, the
administrative module was developed, where interfaces are built for data entry required for
the system to operate, such as registration of courses, teachers, classes and quiz questions.
This module will allow the inclusion of data may be transferred to the system manager,
relieving the administrator of the database in question.
Keywords: Internal evaluation. Web System. CEULJI/ULBRA.
SUMÁRIO
LISTA DE FIGURAS ........................................................................................................ 10
LISTA DE ABREVIATURAS E SIGLAS....................................................................... 11
INTRODUÇÃO .................................................................................................................. 12
1- CONCEITOS E FERRAMENTAS ADOTADOS ...................................................... 14
1.1 Conceito De Aplicativos Web .................................................................................... 14
1.2 - Engenharia de Software para Web ....................................................................... 15
1.3 – Desenvolvimento Ágil de Aplicações ...................................................................... 17
1.4 – Extreme Programming (XP) ................................................................................... 19
1.5 - UML ........................................................................................................................ 21
1.6 – PHP ......................................................................................................................... 22
1.7 – Banco de Dados ....................................................................................................... 23
1.7.1 - O SGBD MySQL ............................................................................................. 23
1.8 - Biblioteca FusionCharts v3 ....................................................................................... 25
2 - ENGENHARIA DE SOFTWARE DO SISTEMA .................................................... 27
2.1 – Requisitos Funcionais .............................................................................................. 27
2.2. – Requisitos Suplementares: ................................................................................. 39
2.3. – Lista de Conceitos .................................................................................................. 40
2.4 – Lista de Consultas .................................................................................................. 40
2.5. – Diagramas UML ...................................................................................................... 41
2.5.1 - Casos de Uso Expandido do Administrador ...................................................... 42
2.5.2 - Casos de Uso Expandido do Coordenador ........................................................ 45
2.5.3 - Casos de Uso Expandido do Aluno ................................................................... 45
2.6 - Modelos do Banco de Dados .................................................................................... 47
3 – O DESENVOLVIMENTO DO SISTEMA ............................................................... 49
3.1 – Controle de Acesso ................................................................................................... 49
3.1.1 – Identificação e Autenticação ............................................................................ 49
3.2 – Acesso do Administrador do Sistema....................................................................... 50
3.3 – Acesso do Coordenador do Curso ........................................................................... 58
3.4 – – Acesso do Aluno Para Avaliação .......................................................................... 60
4 – CONCLUSÃO ............................................................................................................ 64
REFERÊNCIAS BIBLIOGRÁFICAS ............................................................................ 67
ANEXOS ............................................................................................................................69
LISTA DE FIGURAS
Figura 1 - Camadas da Engenharia de Software para Web ....................................... 17
Figura 2- Fases do Desenvolvimento do software e os seus atributos ...................... 19
Figura 3 – Programação Extrema ............................................................................. 21
Figura 4 – Diagrama de Caso de Uso. ....................................................................... 37
Figura 5 – Modelo Conceitual do Banco de Dados .................................................. 43
Figura 6 – Modelo Lógico do Banco de Dados ........................................................ 44
Figura 7 – Tela de acesso do Administrador ............................................................. 46
Figura 8 – Tela de cadastro e edição de professores ................................................. 47
Figura 9 – Tela de Cadastro e Edição de Disciplinas. ............................................... 48
Figura 10 – Tela de edição de dados das turmas ....................................................... 49
Figura 11 – Tela de edição de dados das Coordenações ........................................... 50
Figura 12 – Tela de relacionar Turma/Professor ....................................................... 51
Figura 13 - Tela de edição de dados. ......................................................................... 52
Figura 14 - Tela de geração do Relatório em Gráficos ............................................. 53
Figura 15 – Tela de acesso do Coordenador ............................................................. 54
Figura 16 – Tela de geração de relatório da Coordenação. ....................................... 55
Figura 17 – Tela de login do aluno ........................................................................... 56
Figura 18 – Tela de votação do tipo múltipla escolha ............................................... 57
Figura 19 – Tela de enviar sugestões ........................................................................ 58
Figura 20 - Tela de saída da avaliação. ..................................................................... 59
LISTA DE ABREVIATURAS E SIGLAS
API (Application Programming Interface)
CSS (Cascading Style Sheets)
HTML (HyperText Markup Language)
HTTP (Hypertext Transfer Protocol)
IES (Instituição de Ensino Superior)
JDBC (Java Database Connectivity)
ODBC (Open Data Base Connectivity)
PHP (Hypertext Preprocessor)
RUP (Rational Unified Process)
UML (Unified Modeling Language)
XP (Extreme Programming)
13
INTRODUÇÃO
Os avanços da tecnologia da informação possibilitam novas formas de comunicação
entre as pessoas. Entre as tecnologias que agruparam maior velocidade às mudanças nas três
últimas décadas, encontra-se a microeletrônica, impulsionada pelos computadores pessoais e
redes de computadores, com destaque para a Internet (TANENBAUM, 1997).
A Internet se tornou uma ferramenta presente e quase indispensável para uma boa
parte da população. Com a Internet, as possibilidades de comunicação ganham um incremento
incomparável, permitindo a milhões de pessoas se comunicarem, compartilharem grande
volume de informação, produzirem através do trabalho cooperativo, e participarem de grupos
de interesse (MOECKEL, 2001).
As organizações empreendedoras e com foco no cliente, buscam cada vez mais
melhorar a qualidade de seus serviços. Uma das formas de atingir este objetivo é através de
um diagnóstico institucional, obtido através de um processo de avaliação.
Diante do exposto acima, este trabalho propõe o desenvolvimento de um sistema web
para dinamizar tanto os processos de elaboração, aplicação, e verificação dos resultados de
uma avaliação institucional realizada em uma IES (Instituição de Ensino Superior –
CEUJI/ULBRA). A construção do sistema foi dividido em três etapas: a primeira etapa foi a
elaboração do questionário on-line e anônimo, onde os acadêmicos realizaram a avaliação; a
segunda etapa foi constituída do desenvolvimento do painel administrativo, onde o
administrador do sistema pode incluir ou editar os dados tais como
professores,turmas,matérias; a terceira etapa, foi o desenvolvimento da geração de relatórios,
14
através de gráficos interativos e dinâmicos, onde a instituição poder ter de forma clara e
simples o resultado do processo de avaliação institucional.
Para a construção do sistema, utilizou-se parte das metodologias de desenvolvimento
ágeis, no caso o XP (Extreme Programing) e as seguintes ferramentas: MySQL, PHP 5,
Notepad++ e a Biblioteca FusionCharts 3.
A organização desta monografia é descrita conforme a seguir:
No Capítulo 1 é apresentada os conceitos, metodologia e ferramentas adotados no
desenvolvimento do sistema, são feitas uma explanação referente aos conceitos da web, e da
engenharia da web, apresentando seus principais atributos e atividades. Outro aspecto
abordado neste capítulo é o uso da UML como ferramenta para modelagem do sistema;
também e apresentada o estudo das tecnologias utilizadas no desenvolvimento do sistema.
São abordadas as tecnologias: PHP, banco de dados MySQL e a Biblioteca FusionCharts 3.
O Capítulo 2 descreve os modelos para o desenvolvimento do sistema.
O Capítulo 3 apresenta como foram implementados os modelos construídos para o
desenvolvimento do sistema.
O Capítulo 4 é dedicado à conclusão e os resultados alcançados neste trabalho. Por
fim, são disponibilizadas as referências bibliográficas.
15
1 – CONCEITOS, METODOLOGIA E FERRAMENTAS ADOTADOS
Neste capitulo são descritos os conceitos de uma aplicação web, bem como a
metodologia e as ferramentas utilizadas para o desenvolvimento do sistema.
1.1 - Conceito de Aplicativos Web
A web é baseada no protocolo HTTP (HyperText Transfer Protocol), um protocolo
de pedido de resposta. Um agente usuário, isto é, um browser, envia um pedido HTTP para
um servidor web, esta solicitação, junto com a informação sobre o servidor, é identificado
pela URL (Universal Resource Locator) correspondente. O servidor analisa o pedido e envia
de volta a resposta HTTP, comumente uma página HTML (SANTOS 2000). As aplicações
web evoluíram de web sites para sistemas web. Um sistema web é um sistema de hipermídia,
porque seus recursos são vinculados uns aos outros. O termo web vem da visão do sistema
como um conjunto de nós com links de interconexão. Os links proporcionam um meio de
navegar pelos recursos do sistema. A maioria destes links conecta documentos de texto, mas o
sistema pode ser usado também para distribuir áudio, vídeo e dados personalizados
(CONALLEM, 2003).
A principal diferença entre um web site e uma aplicação web, é que o web site tem
16
conteúdo estático, enquanto que as aplicações web o conteúdo é dinâmico. O conteúdo
estático não permite uma dinamização dos trabalhos sendo que sua alteração demanda um
serviço manual e dependendo do seu volume é muito repetitivo e cansativo. Para que isto se
torne uma tarefa mais fácil e rápida de ser fazer é necessária à criação de uma aplicação web,
que consiste num sistema que permite que seus usuários executem as regras de negocio com
um navegador web. Se não houver nenhuma regra de negócio em um servidor, o sistema não
deverá ser visto com uma aplicação web. Para (CONALLEM, 2003), essencialmente, uma
aplicação web usa um web site com front-end 1 para uma aplicação de negócio.
1.2 - Engenharia de Software para Web
O Sistema de avaliação que foi desenvolvido utilizando-se dos conceitos da
Engenharia de Web, que trata de peculiaridades pertinentes a aplicações web.
Alguns atributos diferenciam aplicações web de aplicações comuns, chamadas de
aplicações Desktop, segundo FORTES (2002):
Uso intensivo de rede – aplicações web estão na rede (Internet, intranet ou
extranet) e devem servir a diversas comunidades de clientes;
Direcionados a conteúdo – uso da hipermídia para apresentar texto, gráfico,
áudio e vídeo aos usuários;
Evolução contínua – aplicações web evoluem muito rapidamente
Ainda são relatados alguns atributos de qualidade para aplicações web:
Usabilidade – entendimento global do site, feedback online e recursos de
ajuda, interface e estética;
Funcionalidade – capacidade de pesquisa e recuperação, facilidade de
navegação e apresentação, características do domínio da aplicação;
1 Em uma aplicação web, existem duas partes distintas, o Beck-end e o Front-end. O Beck-end é a parte
administrativa da aplicação, onde são inseridas as regras do negócio, já Front-end é a parte da aplicação em que
o usuário pode acessar de acordo com as regras inseridas.
17
Confiabilidade – processamento adequado dos web-liks, cobertura de erro,
validação da entrada do usuário;
Eficiência – Tempo de resposta satisfatório, velocidade de geração da página,
velocidade de geração de gráficos;
Manutenibilidade – Facilidade de correção, adaptabilidade, extensibilidade;
Portabilidade – Compatibilidade com diversos navegadores, plataformas.
A engenharia web utiliza vários princípios e conceitos da engenharia de software,
enfatizando algumas atividades técnicas e gerenciais. Porém princípios e conceitos podem
requerer diferentes adaptações.
À medida que aplicações web se tornam cada vez mais integradas às estratégias de
negócios das organizações, como por exemplo, o e-commerce, é altamente necessário que se
construam sistemas de alta usabilidade, adaptáveis e principalmente seguros. Para isso é de
suma importância que se utilize uma abordagem disciplinada, para o desenvolvimento desse
projeto.
A engenharia da Web aplica princípios científicos sólidos de engenharia e de gestão,
além de abordagens disciplinadas e sistemáticas para o bem-sucedido desenvolvimento,
implantação e manutenção de sistemas e aplicações de alta qualidade baseados na Web
(PRESSMAN, 2006. p. 379).
O processo de desenvolvimento de sistemas e aplicações baseados na Web incorpora
modelos de processo especializados, métodos de engenharia de software adaptados as
necessidades do desenvolvimento de WebApp e varias outras tecnologias.
Os processos, métodos e tecnologias (ferramentas) fornecem uma abordagem em
camadas (Figura 1) para web que é conceitualmente idêntica as camadas de software
engenharia clássica.
18
Figura 1 – Camadas da Engenharia de Software para Web
(PRESSMAN, 2006).
Os modelos de processos no desenvolvimento web são fundamentados na filosofia de
desenvolvimento ágil. Desenvolvimento ágil enfatiza uma abordagem de desenvolvimento
simples que incorpora ciclos rápidos de desenvolvimento.
1.3 – Desenvolvimento Ágil de Aplicações
Um dos maiores gargalos nas metodologias clássicas é o excesso de documentação e
formalidades a serem cumpridas, chegando ao ponto de alguns softwares terem mais
documentação do que funcionalidades (Pressman 2006, p. 57)..
As metodologias ágeis nasceram para simplificar as praticas de desenvolvimento sem
perder a qualidade e essência da engenharia de software. Hoje é notória a necessidade de que
o desenvolvimento de software seja de forma rápida, mas com qualidade, principalmente
quando a aplicação se trata de web. Esse desenvolvimento poder ser obtido utilizando
métodos ágeis e padrões organizacionais e de processo. Outro fato importante são os prazos
de entrega do software, que para este projeto tinha uma data já fixada para entrega.
“A engenharia de software ágil combina uma filosofia e um
conjunto de diretrizes de desenvolvimento. A filosofia encoraja a satisfação
do cliente e a entrega incremental do software logo de inicio; equipes de
projeto pequeno, altamente motivado; métodos informais; produtos de
trabalho de engenharia de software mínimo e simplicidade global do
desenvolvimento. As diretrizes de desenvolvimento enfatizam a entrega em
contraposição à análise a e ao projeto (apesar dessas atividades não serem
Foco na Qualidade
Processo
Métodos
Ferramenta
19
desencorajadas) e a comunicação ativa e continua entre desenvolvedores e
clientes.” (Pressman 2006, p. 58).
A popularização dos métodos ágeis ocorreu com “Manifesto Ágil”, que indica alguns
princípios que são compartilhados por tais métodos:
• Indivíduos e interações são mais importantes que processos e ferramentas;
• Software funcionando é mais importante do que documentação detalhada;
• Colaboração dos clientes é mais importante do que negociação de contratos;
• Adaptação às mudanças é mais importante do que seguir um plano.
Relata-se que nos últimos anos, os métodos ágeis como o XP (Extreme
Programming) passaram a serem utilizados em empresas, universidades, institutos de
pesquisa e agências governamentais. O reuso de software é uma atividade comum durante o
processo de desenvolvimento. Juntamente com outras técnicas, por exemplo,
desenvolvimento de software baseado em componentes, os padrões de software auxiliam e
contribuem para o reuso em níveis mais altos de abstração, como em nível de analise,
arquitetural, organizacional e de processo (Pressman 2006, p. 58)..
A figura 2, mostra como são divididas as fases do desenvolvimento de um software
em geral, e seus atributos, que deve ser tratada em cada etapa pelos desenvolvedores.
20
Figura 2- Fases do Desenvolvimento do software e os seus atributos
(Romam ET AL, 2004).
Para Rezende (2002, p. 122-151) das diversas categorias de padrões que surgiram, os
padrões organizacionais e de processo são os que têm por objetivo apoiar a construção do
software e melhorar os seus desenvolvimentos. Além de estarem divididos em categorias, os
padrões podem ser agrupados em linguagens de padrões. Uma linguagem de padrão é um
sistema de padrões organizados em uma estrutura que guia a sua aplicação.
1.4 – Extreme Programming (XP)
O XP (Extreme Programming) usa uma abordagem da orientação a objetos como o
seu paradigma de desenvolvimento. Inclui um conjunto de regras e práticas que ocorrem no
contexto de quatro atividades de arcabouço: planejamento, projeto, codificação e teste
(PRESSMAM, 2006, p. 65).
Testes/Entrega
Roteiro de Testes
Doc. de
homologação
Implementação
Módulos na
plataforma da
produção de
software.
Componentes
Design
Especificação dos
módulos na
plataforma da
produção de
software.
Estimativa dos
módulos na
plataforma.
Requisitos
Visão e escopo
Especificação de
requisitos
Glossário
Casos de Uso
Matriz de Casos de Uso
GERÊNCIA DE CONFIGURAÇÕES E MUDANÇAS
AMBIENTE
METODOLOGIA
QUALIDADE
GERÊNCIA DO PROJETO
Gerência de
configurações
Gerência de mudanças
Gerência de versões
Cronograma
Plano de projeto
Plano de versões
Controle de custos
21
O Planejamento começa com a criação de um conjunto de histórias (chamado
também de histórias de usuário) que descrevem as características e funcionalidades requeridas
para o software a ser construído. Se a historia precisar mais do que três semanas de
desenvolvimento, pede-se ao cliente para dividir a história em histórias menores e a atribuição
de valor e custo ocorre novamente.
O Projeto segue rigorosamente o principio KIS (keep it simple – mantenha a
simplicidade). Um projeto simples é sempre preferível em relação uma representação mais
complexa. Fornece também diretrizes de implementação para uma história como ela está
escrita. Se um problema de projeto difícil é encontrado como parte do projeto de uma história,
o XP recomenda a criação de um protótipo operacional daquela parte do projeto.
Na Codificação, o XP recomenda que depois que as histórias forem desenvolvidas e
trabalho preliminar de projeto for realizado, a equipe não avance para o código, mas em vez
disso, desenvolva uma série de testes unitários que exercitarão cada uma das histórias que
devem ser incluídas na versão atual (incremento de software). Criado os testes unitários, o
desenvolvedor estará mais bem preparado para focalizar o que precisa ser implementado para
passar no teste unitário.
Uma atividade muito importante também no processo de codificação do XP é a
programação em pares. Onde duas pessoas trabalham juntas em uma estação de trabalho de
computador para criar o código correspondente a uma história. Sendo assim, isso fornece um
mecanismo de solução de problemas em tempo real e qualidade.
Os Testes unitários que são criados devem ser implementados usando um arcabouço
que lhes permita serem automatizados, consequentemente, eles podem ser executados fácil e
repetidamente (PRESSMAM, 2006, p. 65).
À medida que os testes unitários individuais são organizados em uma espécie de
sequência universal de testes, os testes de integração e validação do sistema podem ocorrer
diariamente. Isso fornece à equipe do XP uma indicação continua de progresso e também
pode levantar sinais de alerta se as coisas estiverem se deteriorando. No decorrer deste
trabalho foi utilizas as boas práticas do XP como a interação diretamente com o Cliente.
Ressalta-se ainda, não foram utilizadas todas as práticas do XP. Entre elas, a programação em
22
pares, em virtude do trabalho de conclusão de curso, ser realizado por apenas um acadêmico.
As histórias do XP foram representadas através dos diagramas de caso de uso.
Figura 3 Programação Extrema
(AgilCoop.org.br, 2009).
1.5 – UML
O valor real dos modelos e da modelagem está na capacidade de ver uma
simplificação de um sistema através de um ponto de vista específico, onde o sistema se torna
mais fácil de entender (CONALLEM, 2003).
Segundo (BOOCH, RUMBAUGH & JACOBSON, 2000), com a modelagem
alcançamos quatro objetivos:
1. Os modelos ajudam a visualizar o sistema como ele é ou como desejamos que
fosse;
2. Os modelos permitem especificar a estrutura ou o comportamento de um
sistema;
23
3. Os modelos proporcionam um guia para a construção do sistema; Os modelos
documentam as decisões tomadas.
4. A UML (Unified Modeling Language) é uma linguagem-padrão para a
elaboração da estrutura de projetos de software. A UML e adequada para a modelagem de
sistemas, cuja abrangência poderá incluir sistemas de informação corporativos a serem
distribuídos a aplicações web e até sistemas complexos embutidos de tempo real.
SANTOS (2005,p 22) diz que a UML utiliza diagramas no seu processo de
modelagem. Um diagrama é uma representação gráfica de um conjunto de elementos. Um
diagrama é uma projeção em um sistema.
Os seguintes diagramas são usados na modelagem UML
Diagrama de Classe – Um diagrama estrutural que mostra um conjunto de
classes, interfaces, colaborações e seus relacionamentos.
Diagrama de casos de uso – Um diagrama comportamental que mostra um
conjunto de casos de uso e atores e seus relacionamentos.
1.6 - PHP (Personal Home Page)
O PHP surgiu inicialmente em 1995, quando Rasmus Lerdorf criou para uso pessoal
uma ferramenta chamada PHP/FI (Personal Home Page/Forms Interpreter) (NIEDERAUER,
2004).
O PHP é uma linguagem de elaboração de scripts embutida que opera do lado do
servidor. Isso significa que ela funciona dentro de um documento HTML, para conferir-lhe a
capacidade de gerar instruções especificas (SCOLLO, 2001).
O PHP é um software de código-fonte aberto, e conseqüentemente também gratuito.
O PHP é uma linguagem que pode ser utilizada, baseado no modelo de Orientação a Objetos,
a partir do PHP5. A linguagem PHP foi projetada para trabalhar na Web e, nesse ambiente, ela
se distingue; acessar e consultar um banco de dados é uma tarefa simples que pode ser
realizada com duas ou três linhas de código. Além disso, o sistema de processamento de
scripts PHP é otimizado para os tempos de resposta necessários nos aplicativos Web.
24
A linguagem PHP é uma linguagem de programação de domínio específico, ou seja,
seu escopo se estende a um campo de atuação que é o desenvolvimento web, embora tenha
variante, como o PHP-GTK. Seu propósito principal é de programar soluções web velozes,
simples e eficientes.
Características:
Velocidade e robustez
Estruturado e orientação a objeto
Portabilidade - independência de plataforma - escreva uma vez, rode em
qualquer lugar;
Tipagem fraca
Sintaxe similar a Linguagem C/C++ e o PERL
1.7-Banco de Dados
Um banco de dados é uma coleção de dados de forma organizada. Para (SOARES
2001), citado por (SANTOS 2005), a não utilização de bancos de dados nos dias atuais é
simplesmente impensável, pois é preciso armazenar uma grande quantidade de dados, também
é preciso acessá-los o mais rápido possível e espera-se que os dados estejam sempre seguros e
íntegros.
Para o armazenamento das informações da aplicação web, foi utilizado o sistema de
gerenciador de banco de dados MySQL, conforme a descrito a seguir.
1.7.1 - O SGBD MySQL
O programa MySQL é um servidor robusto e leve de banco de dados SQL
(Structured Query Language – Linguagem Estruturada para Pesquisa) também é rápido,
multitarefa e multiusuário (MYSQL AB 2004).
25
O MySQL é disponibilizado de forma gratuita, sob a licença Open Source, ou então a
baixo custo para uma licença comercial.
De acordo com (YARGER, RESEE & KING 2000), uma área na qual o MySQL se
sobressai é no desenvolvimento de aplicações web. Uma das muitas vantagens para se utilizar
o MySQL para aplicações web está no fato que o banco suporta varias conexões simultâneas.
Outra característica significativa é que não há perda de desempenho nem na integridade física
dos dados enquanto essas conexões estejam simultaneamente em atividade
( BERTHOLINI & PETILO 2004).
São enumerados por WELLING & THOMSON (2001), alguns pontos altos do
MySQL tais como: alto desempenho, baixo custo, facilidade de uso, portabilidade dos dados
Características do MySQL, segundo o manual do MySQL AB (2004):
Compatibilidade (existem drivers ODBC, JDBC e .NET e módulos de interface
para diversas linguagens de programação, como Delphi, Java, C/C++, Python, Perl, PHP,
ASP e Ruby);
Pouco exigente quanto a recursos de hardware;
Facilidade de uso;
É um Software Livre com base na GPL;
Contempla a utilização de vários Storage Engines como MyISAM, InnoDB,
Falcon, BDB, Archive, Federated, CSV, Solid;
Suporta controle transacional;
Suporta Triggers;
Suporta Cursors (Non-Scrollable e Non-Updatable);
Suporta Stored Procedures e Functions;
Replicação facilmente configurável;
Interfaces gráficas (MySQL Toolkit) de fácil utilização cedidos pela MySQL
Inc.
26
1.8 - Biblioteca FusionCharts v3.
FusionCharts versão 3, é uma biblioteca que ajuda a criar gráficos interativos para
aplicações web . Existem duas versões: a comercial e a gratuita, para o desenvolvimento do
sistema utilizou-se a versão gratuita. A biblioteca é um componente de gráficos, que funciona
sem problemas em várias plataformas e diversos dispositivos, tais como computadores,
celulares, smartphones etc. A FusionCharts utiliza recursos dos Adobe Macromedia Flash e
Java Script (HTML5) para criar as visualizações de dados de um modo dinâmico por
componentes convencionais do lado do servidor. Como ela trabalha com dados XML e JSON,
ele pode ser integrado com qualquer tecnologia server-side , tais como o PHP e banco de
dados. Todas as opções de produção são interativas e dinâmicas, podendo seus gráficos ser
impressos ou então exportados como imagem, PDF, CSV e Java Script.
Vantagens na utilização FusionCharts v3, sobre :
Funciona com todas as tecnologias web e bases de dados:
FusionCharts trabalha com ASP, ASP.NET, PHP, JSP, ColdFusion, Ruby on
Rails, JavaScript ou até mesmo páginas HTML simples. Ele se conecta a
qualquer banco de dados (MS SQL, MySQL, Oracle, PostgreSQL) e web-
service para permitir fazer um mapa em tempo real.
Aparência impressionante e relatórios completos:
FusionCharts a adição de recursos de relatórios inteligentes, como dicas, drill-
down, a exportação do gráfico, exibição seletiva de dados e de rolagem e zoom
para o gráfico. Alguns gráficos também permitem a edição visual de dados
utilizando simples arrastar e soltar.
Reduz a carga nos servidores:
Na imagem tradicional baseada sistemas gráficos, os gráficos são gerados
como uma imagem no lado do servidor. Assim, para cada gráfico que você
precisa servir a um usuário, é necessário criar imagens complexas no servidor e
depois transmitir para o cliente. Quando há um grande volume de acesso, isso
pode causar uma sobre carga no servidor, como a criação da imagem torna um
grande peso ao servidor. Nesta conjuntura, FusionCharts ameniza essa sobre-
27
carga, uma vez que todos os gráficos são renderizados no lado do cliente
usando o amplamente instalado o Adobe Flash Platform. O servidor é apenas
responsável pela transmissão dos dados pré-processados com SWF e seus
dados através do arquivos XMLl. A partir daí, o Flash Player tem o ônus de
prestar os gráficos. Além disso, o gráfico SWF podem ser armazenadas de
forma que é necessário apenas atualizar os dados, sem gerar sobre carga no
servidor outra vez.
Exportação para JPG, PNG, PDF e CSV:
Embora os gráficos sejam gerados usando o Flash, eles também podem ser
exportados para JPG, PNG ou PDF. Os dados também podem ser copiados a
partir do gráfico como CSV. Isso pode ser feito através de interação com o
usuário ou até mesmo de programação.
28
2 - ENGENHARIA DE SOFTWARE DO SISTEMA
Este capítulo destina-se a apresentar os modelos do sistema de avaliação.
2.1 Requisitos Funcionais
Um requisito é definido como: uma condição ou uma capacidade com a qual o
sistema deve estar de acordo.
Os requisitos funcionais especificam ações que um sistema deve ser capaz de
executar, sem levar em consideração restrições físicas. Os requisitos funcionais especificam,
portanto, o comportamento de entrada e saída de um sistema.
Os quadros de 1 a 12 destinam-se a apresentar os requisitos funcionais do sistema:
O Quadro 1, representa o requisito de cadastrar o curso para ser avaliado.
F1 Cadastrar Curso ( ) Oculto
Descrição: Permite que o administrador realize o cadastro (inclusão, alteração, exclusão) dos
dados de um curso.
Requisitos Não-Funcionais (NF)
Nome Restrição Categoria Desejável Permanente
NF1.1
Nome do
Curso
Nome do curso permite a sua
identificação no sistema (obrigatório)
Interface ( ) (x)
29
NF1.2
Nome do
Coordenador
Nome do coordenador responsável
pelo curso, também cadastra login e
senha para o coordenador.
Especificação ( ) (x)
Quadro 1: Referente a função de Cadastrar Curso.
O Quadro 2, representa o requisito do sistema de lançar um novo semestre para ser
realizada um nova avaliação.
F2 Lançamento de Novo Semestre ( ) Oculto
Descrição: Permite que o administrador realize o lançamento de um novo semestre.
Requisitos Não-Funcionais (NF)
Nome Restrição Categoria Desejável Permanente
NF2.1
Identificação
do Semestre
O semestre é identificado a partir
do ano seguido pelo semestre.
Interface (x) ( )
NF2.2
Características
do semestre
Cada ano tem dois semestres: 1 que
identifica o primeiro semestre; 2
que identifica o segundo semestre.
O semestre lançado sempre será
seqüencial, por exemplo, se o
último semestre lançado foi 2008-1
(primeiro semestre do ano do
2008), o próximo semestre será
2008-2 (segundo semestre do ano
do 2008). A abertura de um novo
semestre, necessariamente encerra
o semestre anterior.
Especificação ( ) (x)
Quadro 2: Referente a função de lançar um novo semestre.
30
O Quadro 3, representa o requisito do sistema de se cadastrar todos os professores da
instituição.
F3 Cadastro dos Professores ( ) Oculto
Descrição: Permite que o administrador realize o cadastro (inclusão, alteração, exclusão) dos
mesmos.
Requisitos Não-Funcionais (NF)
Nome Restrição Categoria Desejável Permanente
NF3.1
Nome do
Professor
Nome do professor relacionado ao
curso.
Interface ( ) (x)
NF3.2
Titulação
do
Professor
Titulação do professor relacionado ao
curso.
Especificação ( ) (x)
NF3.3
Código do
Professor
Código do professor no sistema
Ensino da ULBRA.
Especificação ( ) (x)
Quadro 3: Referente a função de Cadastrar Professores.
31
O Quadro 4, representa o requisito do sistema de se cadastrar as disciplinas dos
cursos da instituição.
F4 Cadastro das disciplinas do Curso ( ) Oculto
Descrição: Permite que o administrados realize o cadastro (inclusão, alteração, exclusão) das
disciplinas relacionados ao curso.
Requisitos Não-Funcionais (NF)
Nome Restrição Categoria Desejável Permanente
NF4.1 Nome
da Disciplina
Nome da disciplina relacionado ao
curso.
Interface ( ) (x)
NF4.2 Dados
da disciplina
Código da disciplina, número de
créditos, carga horária, semestre
(qual o semestre na grade
curricular)
Especificação ( ) (x)
Quadro 4: Referente a função de Cadastrar Disciplinas do Curso.
32
O Quadro 5, representa o requisito do sistema de se cadastrar as turmas de alunos dos
cursos da instituição.
F5 Cadastro das turmas do semestre ( ) Oculto
Descrição: Permite que o administrador realize o cadastro (inclusão, alteração, exclusão) das
turmas do semestre relacionado ao curso, para o semestre aberto.
Requisitos Não-Funcionais (NF)
Nome Restrição Categoria Desejável Permanente
NF5.1
Seleciona
Disciplina
Escolhe a disciplina a partir das
disciplinas cadastradas para o curso
Interface ( ) (x)
NF5.2
Seleciona o
professor
Escolhe o professor a partir dos
professores cadastrados na instituição,
caso o professor não esteja cadastrado,
o coordenador deverá efetuar o seu
cadastro.
Interface ( ) (x)
NF5.3
Número da
Turma
Número que identifica a turma Especificação ( ) (x)
NF5.4 Dia
da semana
Seleciona de segunda a sábado Especificação (x) ( )
NF5.5
Período
Seleciona entre matutino, vespertino
ou noturno
Especificação (x) ( )
Quadro 5: Referente a função de Cadastrar Turmas do Semestre.
33
O Quadro 6, representa o requisito do sistema de se cadastrar uma nova avaliação.
F6 Cadastro da avaliação ( ) Oculto
Descrição: Permite que o administrador realize o cadastro (inclusão, exclusão) de uma
avaliação. E acesse o cadastro de perguntas para esta avaliação.
Requisitos Não-Funcionais (NF)
Nome Restrição Categoria Desejável Permanente
NF6.1
Identificação
da Avaliação
Nome pelo qual a avaliação será
identificada.
Interface ( ) (x)
NF6.2
Seleciona o
semestre
Escolhe o administrador escolhe o
semestre ao qual a avaliação estará
ligada. O semestre default será o
último aberto, isto é, o atual.
Interface ( ) (x)
NF6.3
Disponibilidade
da avaliação
O administrador pode alterar o
estado da avaliação para
disponível ou indisponível.
Interface ( ) (x)
Quadro 6: Referente a função de Cadastrar Avaliação.
34
O Quadro 7, representa o requisito do sistema de se cadastrar as perguntas para que
seja realizada a avaliação.
F7 Cadastro das perguntas ( ) Oculto
Descrição: Permite que o administrador realize o cadastro (inclusão, alteração, exclusão) das
perguntas relacionadas a uma avaliação.
Requisitos Não-Funcionais (NF)
Nome Restrição Categoria Desejável Permanente
NF7.1
Identificação
da Pergunta
Nome pelo qual a pergunta será
identificada.
Interface ( ) (x)
NF7.2 Tipo
da pergunta
Escolhe entre os tipos: questão aberta
e múltipla escolha.
Interface (x) ( )
NF7.3 Texto
da pergunta
Texto do corpo da pergunta. Especificação (x) ( )
NF7.4
Opções das
perguntas
Insere cinco possíveis escolhas para
resposta, no caso de escolher
pergunta de múltipla escolha.
Especificação ( ) (x)
Quadro 7: Referente a função de Cadastrar Perguntas.
35
O Quadro 8, representa o requisito do aluno responder o questionário da avaliação.
F8 Responder Questionário ( ) Oculto
Descrição: Permite que o aluno responda uma determinada avaliação.
Requisitos Não-Funcionais (NF)
Nome Restrição Categoria Desejável Permanente
NF8.1
Seleção de
curso
Aluno seleciona o curso a que
pertence
Interface ( ) (x)
NF8.2
Seleção das
disciplinas
Aluno seleciona as turmas que estão
matriculadas (através do nome da
disciplina e nome do professor)
Interface (..) (x)
NF8.3
Envio do
questionário
Após responder as questões o aluno
deverá enviar o questionário. Caso
alguma questão de múltipla escolha
tenha ficado sem resposta, a mesma
de deverá ser solicitada ao aluno.
Questões abertas podem ficar sem
resposta.
Especificação ( ) (x)
Quadro 8: Referente a função de Responder a Avaliação.
36
O Quadro 9, representa o requisito do sistema que deverá gerar os relatórios da
avaliação das coordenações de cada curso.
F9 Relatórios Coordenação ( ) Oculto
Descrição: O administrador ou coordenador pode obter (por curso ou total geral da IES)
relatórios com base nas informações fornecidas ao sistema.
Requisitos Não-Funcionais (NF)
Nome Restrição Categoria Desejável Permanente
NF9.1 Seleção
da semestre da
avaliação.
O usuário informa o semestre da
avaliação.
Interface (x) ( )
NF9.2 Seleção
da avaliação.
O usuário informa a avaliação. Interface (x) ( )
NF9.3 Relatório
da avaliação da
Coordenação;
O sistema informa para:
- questões de múltipla escolha,
através de gráfico, as opções de
cada pergunta e mostra o total
de votos para cada opção;
- questões abertas, o conteúdo
de cada texto digitado pelos
alunos.
Especificação () (x)
Quadro 9 : Referente a função de Gerar Relatórios da Coordenação .
37
O Quadro 10, representa o requisito do sistema que deverá gerar os relatórios da
avaliação da Instituição como um todo.
F10 Relatório da Instituição ( ) Oculto
Descrição: O administrador pode obter (por curso ou total geral da IES) relatórios com base
nas informações fornecidas ao sistema.
Requisitos Não-Funcionais (NF)
Nome Restrição Categoria Desejável Permanente
NF9.1 Seleção
da semestre da
avaliação.
O usuário informa o semestre da
avaliação.
Interface (x) ( )
NF9.2 Seleção
da avaliação.
O usuário informa a avaliação. Interface (x) ( )
NF9.3 Relatório
da avaliação da
Instituição;
O sistema informa para:
- questões de múltipla escolha,
através de gráfico, as opções de
cada pergunta e mostra o total
de votos para cada opção;
- questões abertas, o conteúdo
de cada texto digitado pelos
alunos.
Especificação () (x)
Quadro 10 : Referente a função de Gerar Relatórios da Instituição.
38
O Quadro 11, representa o requisito do sistema que deverá gerar os relatórios da
avaliação dos Professores.
F11 Relatório dos Professores ( ) Oculto
Descrição: O administrador pode obter (por curso ou total geral da IES) relatórios com base
nas informações fornecidas ao sistema.
Requisitos Não-Funcionais (NF)
Nome Restrição Categoria Desejável Permanente
NF9.1 Seleção
da semestre da
avaliação.
O usuário informa o semestre da
avaliação.
Interface (x) ( )
NF9.2 Seleção
da avaliação.
O usuário informa a avaliação. Interface (x) ( )
NF9.3 Relatório
da avaliação dos
Professores;
O sistema informa para:
- questões de múltipla escolha,
através de gráfico, as opções de
cada pergunta e mostra o total
de votos para cada opção;
- questões abertas, o conteúdo
de cada texto digitado pelos
alunos.
Especificação () (x)
Quadro 11 : Referente a função de Gerar Relatórios dos Professores.
39
O Quadro 12, representa o requisito do sistema que deverá gerar os relatórios da auto
avaliação do Aluno.
F12 Relatório da Auto Avaliação do Aluno ( ) Oculto
Descrição: O administrador pode obter os relatórios com base nas informações fornecidas ao
sistema.
Requisitos Não-Funcionais (NF)
Nome Restrição Categoria Desejável Permanente
NF9.1 Seleção
da semestre da
avaliação.
O usuário informa o semestre da
avaliação.
Interface (x) ( )
NF9.2 Seleção
da avaliação.
O usuário informa a avaliação. Interface (x) ( )
NF9.3 Relatório
da Auto
Avaliação do
Aluno.
O sistema informa para:
- questões de múltipla escolha,
através de gráfico, as opções de
cada pergunta e mostra o total
de votos para cada opção;
- questões abertas, o conteúdo
de cada texto digitado pelos
alunos.
Especificação () (x)
Quadro 12 : Referente a função de Gerar Relatórios da Auto Avaliação do Aluno.
40
2.2-Requisitos Suplementares:
Os requisitos que não são funcionais são chamados de requisitos não funcionais. Os
requisitos que não são funcionais descrevem apenas atributos do sistema ou atributos do
ambiente do sistema.
O Quadro 13 apresenta os requisitos não funcionais pertinentes ao sistema como um
todo.
Quadro 13: Referente a função de Controle de Acesso ao Sistema.
S1 TIPOS DE ACESSO AO SISTEMA Oculto (X)
Descrição: O sistema deve cadastrar os diferentes usuários
Nome Restrição Categoria Desejável Permanente
S 1.1 controle
de acesso
O usuário só fará acesso se estiver
cadastrado
Segurança ( ) (x)
S 1.2 cadastro
de usuários
O sistema cadastrara os usuários. Segurança. ( ) (x)
S 1.3 níveis de
acesso
Administrador: controle e
manutenção do sistema, insere novas
turmas, e novos usuários, cadastra
ou altera a avaliação.
Coordenador: faz inclusões no
sistema pertinente ao seu curso.
Aluno: avalia a instituição.
Segurança ( ) (x)
41
2.3 - Lista de Conceitos.
O Quadro 14 apresenta os conceitos.
Conceito I A E C Observação Ref. Cruzadas
Administrador x x x x Só é possível alterar os dados do
sistema ou para gerar os
relatórios se tiver autenticado
F1, F2, F3, F4,
F5, F6, F7, F9,
F10, F11 e F12
Coordenador x x Só tem acesso ao seu curso. F3, F4, F5 e F9
Aluno x Anônimo, porem deve autenticar
no sistema, com senha delegada.
F8
Relatório da
avaliação
x Será impresso na tela do sistema
na forma de gráfico
F9, F10, F11 e
F12
Quadro 14: Referente aos Conceitos do Sistema.
2.4 - Lista de Consultas.
O quadro 15 apresenta a lista de Consultas do sistema
Nome Referencias Cruzadas
Relatórios da Coordenação F9
Relatórios da Instituição F10
Relatórios da Auto Avaliação do Aluno F12
Relatório Professor F11
Quadro 15: Referente a Lista de Consultas do Sistema.
42
2.5- Diagramas UML
Um diagrama provê uma parcial representação do sistema. Ele ajuda a compreender
a arquitetura do sistema em desenvolvimento.
O Diagrama de Caso de Uso tem o objetivo de auxiliar a comunicação entre os
analistas e o cliente. Um diagrama de Caso de Uso descreve um cenário que mostra as
funcionalidades do sistema do ponto de vista do usuário. O cliente deve ver no diagrama de
Caso de Uso as principais funcionalidades de seu sistema.
A Figura 4 apresenta os casos de uso do sistema.
Figura 4: Diagrama de Caso de Uso
43
2.5.1 - Casos de Uso Expandido do Administrador
Caso de Uso 1 : Cadastrar Professor
Fluxo principal:
1. [EV] Administrador acessa o site e faz o login informando o nome de usuário e senha e
seleciona a opção cadastrar professor.
2. [EV] Administrador digita os dados do Professor no sistema.
3. Sistema verifica se o professor não é cadastrado.
4. Sistema cadastra o professor.
4. [RS] Sistema mostra os dados cadastrais do professor.
Tratamento de exceções:
3a. Professor já está cadastrado.
3a.1- [RS]O sistema informa que no momento o professor já está cadastrado.
3a.2- Retorna ao fluxo principal no passo 5 sem incluir os dados digitados.
Caso de Uso 2 : Cadastrar Disciplinas
Fluxo principal:
1. [EV] Administrador acessa o site e faz o login informando o nome de usuário e senha e
seleciona a opção cadastrar disciplinas.
2. [EV] Administrador digita os dados da disciplina e seleciona a qual curso ira pertencer.
3. Sistema verifica se a disciplina não é cadastrada.
4. Sistema cadastra a disciplina para o curso selecionado.
4. [RS] Sistema mostra os dados cadastrais da disciplina.
Tratamento de exceções:
3a. Disciplina já está cadastrada.
3a.1- [RS]O sistema informa que no momento a disciplina já está cadastrada.
3a.2- Retorna ao fluxo principal no passo 5 sem incluir os dados digitados.
44
Caso de Uso 3 : Cadastrar Turmas
Fluxo principal:
1. [EV] Administrador acessa o site e faz o login informando o nome de usuário e senha e
seleciona a opção cadastrar turmas.
2. [EV] Administrador digita os dados da turma no sistema e seleciona qual disciplina
pertence.
3. Sistema verifica se a turma não é cadastrada.
4. Sistema cadastra a turma para a disciplina.
5. [RS] Sistema mostra os dados cadastrais da turma.
Tratamento de exceções:
3a. Turma já está cadastrada.
3a.1- [RS]O sistema informa que no momento a turma já está cadastrada.
3a.2- Retorna ao fluxo principal no passo 5 sem incluir os dados digitados.
Caso de Uso 4 : Cadastrar Coordenação
Fluxo principal:
1. [EV] Administrador acessa o site e faz o login informando o nome de usuário e senha e
seleciona a opção cadastrar coordenação.
2. [EV] Administrador digita os dados da coordenação no sistema.
3. Sistema verifica se a coordenação não é cadastrada.
4. Sistema cadastra a coordenação.
5. [RS] Sistema mostra os dados cadastrais da coordenação.
Tratamento de exceções:
3a. Coordenação já está cadastrada.
3a.1- [RS]O sistema informa que no momento a coordenação já está cadastrada.
3a.2- Retorna ao fluxo principal no passo 5 sem incluir os dados digitados.
45
Caso de Uso 5 : Relacionar Turma/Professor
Fluxo principal:
1. [EV] Administrador acessa o site e faz o login informando o nome de usuário e senha e
seleciona a opção relacionar turma professor.
2. [EV] Administrador seleciona a turma e o professor para relacionar no sistema.
3. Sistema verifica se a turma já não está relacionada ao professor.
4. Sistema relaciona a turma ao professor.
5. [RS] Sistema mostra os dados da turma e seu respectivo professor.
Tratamento de exceções:
3a. Turma já está relacionada ao professor.
3a.1- [RS]O sistema informa que no momento a turma já está relacionada.
3a.2- Retorna ao fluxo principal no passo 5 sem incluir os dados selecionados.
Caso de Uso 6 : Cadastro de Avaliações
Fluxo principal:
1. [EV] Administrador acessa o site e faz o login informando o nome de usuário e senha e
seleciona a opção cadastro de Avaliação.
2. [EV] Administrador digita os dados da nova avaliação no sistema.
3. Sistema verifica se a avaliação para o período não é cadastrada.
4. Sistema cadastra a avaliação.
5. [RS] Sistema mostra os dados cadastrais da avaliação.
Tratamento de exceções:
3a. Avaliação já está cadastrada.
3a.1- [RS]O sistema informa que no momento a avaliação já está cadastrada.
3a.2- Retorna ao fluxo principal no passo 5 sem incluir os dados digitados.
46
Caso de Uso 7 : Cadastrar Perguntas
Fluxo principal:
1. [EV] Administrador acessa o site e faz o login informando o nome de usuário e senha e
seleciona a opção cadastrar Perguntas.
2. [EV] Administrador digita os dados da pergunta no sistema, em seguida escolhe a categoria
ela pertence.
3. Sistema verifica se a pergunta não é cadastrada.
4. Sistema cadastra a pergunta.
5. [RS] Sistema mostra os dados cadastrais da avaliação.
Tratamento de exceções:
3a. Perguna já está cadastrada.
3a.1- [RS]O sistema informa que no momento a pergunta já está cadastrada.
3a.2- Retorna ao fluxo principal no passo 5 sem incluir os dados digitados.
2.5.2 - Casos de Uso Expandido do Usuário
Caso de Uso 8 : Gerar Relatório
Fluxo principal:
1. [EV] O usuário acessa o site e faz o login informando o nome de usuário e senha e
seleciona a opção gerar relatório.
2. [EV] O sistema apresenta quais os tipos de relatório e possível gerar.
3. [EV] O usuário seleciona qual o tipo de relatório deseja que o sistema gere.
4. [RS] Sistema gera o relatório.
5. [EV] O usuário solicita a impressão do relatório.
6. [RS] Sistema envia o relatório para ser impresso.
47
2.5.3 - Casos de Uso Expandido do Aluno
Caso de Uso 9 : Responder Avaliação
Fluxo principal:
1. [EV] O Aluno acessa o site e faz o login informando o nome de usuário e senha e seleciona
a instituição que deseja avaliar.
2. [RS] Sistema apresenta o questionário da avaliação da instituição.
3. [EV] O Aluno responde as questões objetivas da avaliação da instituição.
4. Sistema grava os dados da avaliação.
5. [RS] Sistema automaticamente mostra as coordenações de curso que o aluno pode escolher
para avaliar.
6. [EV] O Aluno seleciona a coordenação do seu curso para avaliar.
7. [RS] Sistema apresenta o questionário da avaliação da coordenação do curso.
8. [EV] O Aluno responde as questões avaliativas sobre a coordenação do curso.
9. Sistema grava os dados da avaliação.
10. [RS] Sistema apresenta o questionário da avaliação da relação da auto avaliação.
11. [EV] O Aluno responde as questões avaliativas.
12. Sistema grava os dados da avaliação.
13. [RS] Sistema apresenta os cursos entre os quais o aluno deve selecionar
14. [EV] O Aluno seleciona seu curso.
15. [RS] Sistema apresenta as turmas e respectivos professores para o aluno avaliar.
16. [RS] O aluno seleciona a turma
17. [RS] Sistema apresenta o questionário da avaliação do professor.
18. [EV] O Aluno responde as questões avaliativas.
19. Sistema grava os dados da avaliação.
20. [RS] Sistema questiona o aluno se ainda existem professores para serem avaliados.
21. [EV] O Aluno informa que ainda existem ou não professores para serem avaliados.
22. Caso a resposta do aluno seja afirmativa, retorna ao fluxo principal no passo 15, caso seja
negativa retorna ao fluxo principal no passo 23.
24. Sistema encerra o processo de avaliação.
48
2.6 - Modelos do Banco de Dados
A figura 5 mostra o Modelo Conceitual do banco de dados do sistema.
Figura 5 - Modelo Conceitual do Banco de Dados
49
A Figura 6 mostra o modelo lógico do bando de dados do sistema.
Figura 6 – Modelo Lógico do Banco de Dados
50
3- O DESENVOLVIMENTO DO SISTEMA
O presente sistema destina-se a realizar a avaliação on-line de professores, alunos e
instituição de nível superior. Ao acessar o sistema, o aluno deverá informar qual é o seu curso
bem como as disciplinas que está cursando. A partir destes dados o sistema apresentará uma
série de perguntas que o aluno deverá responder. A qualquer momento poderão ser
consultados e impressos relatórios contendo resultados das avaliações feitas. O sistema
permitirá o cadastro de perguntas de dois tipos: múltipla escolha e questão aberta.
3.1 - Controle de Acesso
O controle de acesso, na segurança da informação, é composto dos processos de
autenticação, autorização e auditoria. Neste contexto o controle de acesso pode ser entendido
como a habilidade de permitir ou negar a utilização de um objeto (uma entidade passiva,
como um sistema ou arquivo) por um sujeito (uma entidade ativa, como um indivíduo ou um
processo). A autenticação identifica quem acessa o sistema, a autorização determina o que um
usuário autenticado pode fazer.
3.1.1 - Identificação e Autenticação
A identificação e autenticação fazem parte de um processo de dois passos que
determina quem pode acessar determinado sistema. Durante a identificação o usuário diz ao
51
sistema quem ele é (normalmente através de um nome de usuário). Durante a autenticação a
identidade é verificada através de uma credencial (uma senha, por exemplo) fornecida pelo
usuário. A autorização define quais direitos e permissões têm o usuário do sistema. Após o
usuário ser autenticado o processo de autorização determina o que ele pode fazer no sistema.
No sistema de avaliação, cada usuário tem seu nível de acesso, a saber:
• Administrador: acessa as funções administrativas do sistema, porém
não acessa a avaliação.
• Coordenador: acessa as funções da coordenação do seu respectivo
curso, onde pode gerar os relatórios pertinentes ao curso.
• Aluno: acessa de forma anônima, porém autenticado, somente a parte
do sistema que realiza a avaliação.
3.2 - Acesso do Administrador do Sistema.
Tela apresentada na figura 7 permita o acesso do administrador para consultar,
incluir, alterar ou excluir os dados e ainda gerar os relatórios.
Figura 7 – Tela de acesso do Administrador
52
A Figura 8 apresenta o cadastro e edição de professores que são avaliados. Esta tela
implementa o caso de uso 1 do administrador: cadastrar professor.
Figura 8- Tela de cadastro e edição de professores
53
A Figura 9 apresenta o cadastro e edição de disciplinas/matérias que são avaliados.
Esta tela implementa o caso de uso 2 do administrador: Cadastrar Disciplina.
Figura 9- Tela de Cadastro e Edição de Disciplinas
54
A Figura 10 apresenta o cadastro e edição de turmas. Esta tela implementa o caso de
uso 3 do administrador: Cadastrar turma.
Figura 10 – Tela de edição de dados das turmas.
55
A Figura 11 apresenta o cadastro e edição das coordenações. Esta tela implementa o
caso de uso 4 do administrador: Cadastrar Coordenações .
Figura 11 – Tela de edição de dados das Coordenações.
56
A Figura 12 apresenta o cadastro de professores para as turmas. Esta tela implementa
o caso de uso 5 do administrador: Relacionar Turma/Professor
Figura 12 – Tela de relacionar Turma/Professor.
57
A Figura 13 apresenta a edição de dados. Esta tela implementa o caso de uso do
administrador para edição dos dados.
Figura 13 – Tela de edição de dados.
58
A Figura 14 apresenta a geração de relatórios. Esta tela implementa o caso de uso 8
do administrador Gerar Relatórios .
Figura 14 – Tela de geração do Relatório em Gráficos.
59
3.3 - Acesso do Coordenador do Curso.
A Figura 15 apresenta a tela de acesso do Coordenador do Curso, onde o mesmo tem
somente acesso ao seu curso respectivo. Esta tela implementa o caso de uso 8 gerar relatório.
Figura 15 – Tela de acesso do Coordenador.
60
A Figura 16 apresenta a tela de geração de relatório da Coordenação. Esta tela
implementa o caso de uso 8 gerar relatório.
Figura 16 – Tela de geração de relatório da Coordenação.
61
3.4 - Acesso do Aluno Para Avaliação.
A tela de acesso apresentada na Figura 17, permite que o aluno realiza o login no
sistema, onde o mesmo só poderá (fazer logoff) após ter encerrada toda a avaliação:
Figura 17 – Tela de login do aluno.
62
A Figura 18 apresenta a tela de votação do tipo múltipla escolha. Esta tela
implementa o caso de uso 9 do aluno, responder avaliação.
Figura 18 – Tela de votação do tipo múltipla escolha.
63
A Figura 19 apresenta a tela de enviar sugestão . Esta tela implementa o caso de uso
9 do aluno, responder avaliação.
Figura 19 – Tela de enviar sugestões.
64
A Figura 20 apresenta a tela onde o aluno encerra o processo de avalição ou então o
aluno volta ao passo de avaliar os professores. Esta tela implementa o caso de uso 9 do aluno,
responder avaliação.
Figura 20 – Tela de saída da avaliação.
65
4- CONCLUSÃO
O objetivo deste trabalho é a implementação uma aplicação web, no caso um sistema
de avaliação institucional, através do qual a instituição do CEULJ/ULBRA poderá ter um feed
back dos acadêmicos sobre como ela vem desenvolvendo suas atividades educacionais. Foram
estudados vários aspectos envolvidos no desenvolvimento para web, para definição de um
melhor conjunto de recursos necessários para implementação do sistema. Sendo assim, optou-
se por uma arquitetura que melhor adequasse um banco de dados com características e
funcionalidades que atendesse as necessidades da aplicação web, além da escolha da
linguagem de implementação de que oferecesse os recursos suficientes. Atendendo a esses
aspectos técnicos as ferramentas utilizadas foram: A linguagem de programação PHP; o
sistema de gerenciador de banco de dados MySQL;o aplicativo Notepadd++ para o
desenvolvimento das paginas do sistema; a biblioteca de geração de gráficos FusionChart v3;
e como metodologia foi utilizada parte das técnicas de desenvolvimento da Programação
Extrema, o XP.
No inicio da implementação, a primeira dificuldade encontrada foi escolher a
ferramenta, uma vez que havia um prazo determinado para que a aplicação fosse utilizada.
Em seguida as dificuldades foram à absorção dos conceitos de HTML, PHP, conexões com
banco de dados e também na área do design gráfico da página. Nesse último, ficou nítido que
se faz necessário um profissional da área de design para o desenvolvimento web, enquanto
que o desenvolvedor preocupa-se somente com as regras de negócio do sistema. Mas a
experiência foi muito proveitosa, uma vez que o aprendizado só alcança todo o seu potencial
quando se faz uso prático do conhecimento teórico adquirido. Após ter sido implementado a
66
primeira fase do sistema, a parte do processo de avaliação, o sistema foi disponibilizado para
um percentual de 60% dos acadêmicos da instituição. Os dados coletados da avaliação, após
prévia análise pôde-se observar a validação dos mesmos bem como e eficiência do sistema em
coletar os dados de forma precisa e consistente. Ainda vale ressaltar que foram apresentados
dois trabalhos, no Salão de Iniciação Científica do Ceulji/Ulbra, onde se relataram os
resultados prévios já obtidos, como também os resultados a serem alcançados.
Como resultado do trabalho, obteve-se um sistema web que permite: coletar dados de
uma avaliação institucional, de forma anônima e segura; administrar o banco de dados para
inclusão, exclusão, alteração e consulta dos dados pertinentes ao processo de avaliação; e o
principal recurso, a visualização dos resultados da avaliação através de relatórios em gráficos,
onde é possível ter de forma simplificada e eficiente a visualização do seu desempenho, bem
com ter em suas mãos uma ferramenta que possibilita fazer uma administração estratégica
eficiente e eficaz.
Apesar das dificuldades, a implementação deste sistema trouxe grande motivação. A
cada desafio que surgia, via-se uma oportunidade para o crescimento do conhecimento bem
como a experiência adquirida. Outro fator importante é que a própria internet oferece um
gama de recursos, para resolução de problemas que aparecem no decorrer do trabalho.
Muitos consideram a informática uma ciência exata, mas a construção de um sistema
está muito longe disto. Durante todas as fases de desenvolvimento, sempre ocorrem situações
não previstas e conclusão no tempo previsto torna-se um desafio.
No desenvolvimento deste sistema não foi diferente, com isso muitos aspectos
podem e devem ser melhorados e outros acrescentados.
Entre melhorias propostas estão:
Implementação de segurança no banco de dados;
Correção de erro detectado durante o processo de avaliação;
Mecanismo para garantir que os votos não são repetidos;
Melhor divulgação do sistema para os acadêmicos da Instituição.
67
Essas melhorias e implementações deverão ser realizadas para uma futura versão
comercial do sistema, onde qualquer Instituição poderá utilizá-lo. Para isso serão buscados
novas tecnologias, para serem adicionadas ao sistema e consequentemente colher os
benefícios proposto por este trabalho.
68
REFERÊNCIAS BIBLIOGRÁFICAS
ALECRIM, Emerson. Banco de dados MySQL e PostgreSQL. In :
http://www.infowester.com/postgremysql.php, disponível em 20/09/2009.
BERTHOLINI, D., PETILO, J. Coldfusion MX com MySQL – Parte 1.2004. In:
http://www.sqlmagazine.com.br/artigos/MySQL/05_coldFusion_com_MySQL.asp.
Disponível em 04 de outubro de 2009.
BOOCH, Grady; RUMBAUGH, James & Jacobson. UML Guia do Usuário, 1 ed, Rio de
Janeiro, Campus, 2000.
CASTAGENTTO, Jesus; RAWAT, Harish; VELIATH, Deepak, PHP Programado, 1 ed.
São Paulo, Markron Books 2001, cap 1 e 2.
CLAUDIO. Subconsultas em SQL. In: http://www.criarweb.com/artigos/subconsultas-em-
sql.html, disponível em 13/08/2009.
CONALLEN, J. Desenvolvendo Aplicações Web Com Uml Tradução Da Segunda Edição.
2 ed. Rio de Janeiro: Campus,2003 .476p.
GAMMA, Erich, Padrões de Projeto, 1 ed. Porto Alegre, Bookmam, 2000, cap 2.
GUEDES, Gelleanes T. A., UML, Abordagem Pratica, 3 edição, São Paulo, edi Novatec,
cap 1,2,3,4 e 5.
HERRINGTON, Jack D.. PHP Hacks, 1 ed. São Paulo,Artmed Editora, 2007. Cap. 1,3 e 4 p.
4 – 7,59-89.
69
MOECKEL, L.C.F Implementação de Ambiente Web para Informação e Interação em
um Programa de Pós-graduação. Curitiba: CEFET-PR, 2001 15p. (Tese de Mestrado).
MYSQL AB. MySQL Manual | 1 Informacoes Gerais. 2004. In:
http://dev.mysql.com/odc/mysql/pt/introduction.html.
Disponível em 01 de outubro de 2009.
NIEDERAUER, Juliano. PHP para quem conhece PHP , 3 ed. São Paulo, Cap 1-9.
NIELSEN, Jacob, Projetando Web Sites, 1 ed, Rio de Janeiro, Campus, 2000 cap 1,2 e 3.
PRESSMAN, Roger S. Engenharia de Software; 6 ed. São Paulo: McGraw-Hill,2006.
PÔSTERES DE MÉTODOS ÁGEIS, Pôster de práticas, princípios e valores de XP, In:
http://www.agilcoop.org.br/files/cartaz.png , Disponível em 01 de outubro de 2009.
SANTOS, Claudinei Teles dos. TCC- Web-Sistema De Controle De Trabalho De
Conclusão De Curso Via Web, Ji-paraná, Ceulji/Ulbra 2005.
SEIXAS, Cleber de Oliveira. TCC- Um Protótipo de Ferramenta de Auditoria para
Desenvolvimento de Lojas Virtuais, Ceulji/Ulbra, 2000.
SILVA, Cleydson Fernandes da, TCC- Sistema de Informação Web para Controle de
Analises Físico-Químico e Microbiológicas do Leite In-Natura, Ji-paraná, Ceulji/Ulbra
2007 .
VELOZO, Verbenia Bezerra. TCC – Fonoaudioweb – um Ambiente de Apoio a
Fonoaudiologia na Web, Ceulji/Ulbra, 2002.
WELLING, L.,THOMSON,L. MySQL: Desenvolvimento web. Rio de Janeiro: Campus
2001,678p.
YARGER, R.J., RESENDE, G., KING, T. MySQL e mSQL. Rio de Janeiro: Ciencia
Moderna. 2000. 491p.
70
ANEXOS
Questionários utilizados para avaliação
1) Instituição.
1. Os laboratórios atendem as necessidades dos alunos:
2. Acesso a Internet:
3. Preparação (oferecida pelo curso/instituição) ao aluno para o mercado de trabalho:
4. Integração teórico / prática das disciplinas:
5. Preocupação com bom desempenho do aluno:
6. O acervo da Biblioteca:
7. O atendimento na Biblioteca:
8. As instalações físicas (salas de aula, sanitários, etc.) em relação á quantidade.
9. As instalações físicas em relação à qualidade (limpeza, iluminação, conforto, etc.).
10. O atendimento na Secretaria:
11. O atendimento na Tesouraria:
12. O atendimento na Direção Geral:
13. O atendimento na Ouvidoria:
Sugestão
2) Aluno.
1. Sua pontualidade no inicio e no término do período das aulas:
2. Sua assiduidade (comparece sempre às aulas):
3. Seu relacionamento com os professores:
4. Seu relacionamento com os outros alunos:
5. Você complementa o conteúdo visto em sala através de outras leituras em livros,
revistas, etc.:
71
6. Sua participação em sala de aula, com questões e sugestões ao professor para
ampliar o seu conhecimento e:
7. Realização das atividades acadêmicas (leituras, trabalhos, exercícios, etc) previstas
nas disciplinas;
Sugestão.
3) Coordenação do Curso
1. Disposição do coordenador para auxiliá-lo nos problemas rotineiros do curso:
2. Acessibilidade para responder as dúvidas e questionamentos sobre as disciplinas e o
curso:
3. O coordenador procura resolver os meus problemas com rapidez e agilidade:
4. Iniciativa do Coordenador para melhorar a integração dos alunos:
5. Esforço do coordenador para melhorar o desempenho e a qualidade do curso:
6. Incentivo da coordenação à participação em atividades extra-classe, como pesquisa,
extensão, palestras e eventos científicos:
7. Relacionamento do Coordenador com os alunos:
Sugestão.
4)Disciplinas/Turmas
1. Esforço do professor para iniciar e terminar a aula no horário correto:
2. Postura, clareza na exposição do conteúdo e tom de voz do professor:
3. Segurança e domínio do conteúdo por parte do professor:
4. O professor, com relação a resolução de duvidas, problemas e possíveis
questionamentos sobre a disciplina, é:
5. Postura ética e profissional do professor de acordo com a disciplina ministrada:
6. Esforço do professor para demonstrar a importância da disciplina para o futuro
profissional do aluno:
7. Professor utiliza recursos audiovisuais (data show, retroprojetor, laboratório, etc.) e
tradicionais de forma:
8. Professor faz emprego atividades complementares (trabalhos, leituras, etc.) para
auxiliar no conteúdo da disciplina:
9. Professor faz atribuição notas com clareza, especificando as formas de avaliação:
72
10. Professor tem cumprido o conteúdo programático da matéria proposto no inicio do
semestre:
11. O professor realizou a apresentação do conteúdo pertinente a disciplina no inicio
do semestre:
12. O professor apresenta (no inicio do semestre) as referências bibliográficas
pertinentes a disciplina:
Sugestão.