Desenvolva um programa em Java para gerenciar notas de estudantes das diversas disciplinas do curso de Engenharia Elétrica da UFPR.
O programa deve contemplar:
- Cadastro, consulta e exclusão de estudantes.
- Cadastro, consulta e exclusão de professores.
- Cadastro, consulta e exclusão de disciplinas. A disciplina contempla uma ementa, carga horária e referências. Um estudante pode participar de várias turmas. Um professor pode ser responsável por várias turmas. Considere que uma turma pode ter apenas um professor.
- Cadastro, consulta e exclusão de turmas. Uma turma é a realização de uma disciplina, com um professor responsável e seus alunos.
- O programa deve permitir que sejam inseridas as notas dos estudantes.
- Devem ser diponibilizados os seguintes relatórios: estudantes aprovados por turma, estudantes reprovados por turma, professor por turma, estudante por turma.
- A interface com o usuário deve ser do tipo texto.
- Para apresentação, o código deve criar por default 3 turmas com 10 estudantes cada.
Este trabalho pode ser desenvolvido por equipes de até dois alunos.
O trabalho deve ser apresentado no dia
04/04/2014, durante a aula prática.
Peso deste trabalho na nota final:
10%.
Critérios de Avaliação.
- Até 100% da nota: Uso adequado da orientação objetos. Uso adequado da herança. Funcionamento sem erros.
- Até 75% da nota: Uso adequado da orientação objetos. Uso adequado da herança. Funcionamento com eventuais erros.
- Até 50% da nota: Alguns erros no uso da orientação objetos. Funcionamento com eventuais erros.
- Até 25% da nota: Erros no uso da orientação objetos. Funcionamento com muitos erros.
O objetivo deste trabalho será desenvolver habilidades de programação sockets utilizando a linguagem Java.
Deve ser desenvolvido um programa servidor de rede utilizando o protocolo TCP que permite o cadastro e a visualização de oportunidades de estágio.
O servidor deve aguardar conexão em duas portas do protocolo TCP.
A primeira porta deve ser utillizada para o cadastro de oportunidades. A equipe deve propor um protocolo, chamado Simple Internship-Opportunities Registration Protocol (SIORP). O SIORP deve obrigar que o interessado informe o seguinte: nome da empresa, nome do supervisor, telefone, horário, atividades propostas.
O programa servidor deve armazenar as oportunidades em um arquivo, que deve ser lido e carregado em memória quando o servidor inicializar.
A segunda porta deve ser utilizada para o acesso das oportunidades.
O servidor deve formatar as oportunidades cadastradas utilizando o padrão HTML e responder uma requisição HTTP, gerada por um browser.
O protocolo HTTP recebe uma requisição com a seguinte estrutura:
--------------------------------------
GET / HTTP/1.1\r\n
Host: www-users.cselabs.umn.edu
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:29.0) Gecko/20100101 Firefox/29.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
--------------------------------------
O protocolo HTTP responde as requisições da seguinte forma:
--------------------------------------
HTTP/1.1 200 OK
Date: Fri, 16 May 2014 13:59:59 GMT
Content-Type: text/html
Content-Length: 16
resposta em HTML
---------------------------------------
Este trabalho pode ser desenvolvido por equipes de até dois alunos.
O trabalho deve ser apresentado no dia
05/06/2014.
Peso deste trabalho na nota final:
10%.
Critérios de Avaliação.
- Até 100% da nota: Funcionamento sem erros.
- Até 75% da nota: Funcionamento com eventuais erros.
- Até 50% da nota: Funcionamento com muitos erros.
- Até 25% da nota: Funcionamento comprometido.
Ponto Extra!:Será considerado extra o desenvolvimento de uma interface gráfica com bom padrão de qualidade na implementação do cliente. Considero como bom padrão de qualidade uma interface que apresente: menu funcional, janelas de entrada de dados (incluindo validações de entradas), ícones de atalho e help.