Projeto Integrado - Turma S73 - 2012.2

De Wiki DAINF
(Diferença entre revisões)
(Descrição do Projeto)
(Datas Importantes)
 
(22 edições intermediárias de 2 usuários não apresentadas)
Linha 1: Linha 1:
((EM ATUALIZAÇÃO))
 
 
 
 
= O que é o Projeto Integrado do Primeiro Período do Bacharelado em Sistemas de Informação? =
 
= O que é o Projeto Integrado do Primeiro Período do Bacharelado em Sistemas de Informação? =
  
Linha 16: Linha 13:
  
 
* Keller (Tecnologia e Sociedade)
 
* Keller (Tecnologia e Sociedade)
 +
 +
== Moodle ==
 +
 +
* http://moodle.dainf.ct.utfpr.edu.br/course/view.php?id=147
  
 
= Descrição do Projeto =
 
= Descrição do Projeto =
  
Estamos em algum momento do futuro. Há alguns anos, foram detectados indícios de atividade sísmica no planeta Marte. Um robô enviado pela NASA descobriu a entrada de uma caverna aberta pelos tremores. Ele recebeu um comando para entrar na mesma, mas sua capacidade de comunicação foi severamente prejudicada pelo ambiente da caverna. Os últimos dados enviados pelo robô da NASA revelavam notícias incríveis: aparentemente, a caverna tem fontes de calor, e mais importante que isso, foram encontrados traços de água e de moléculas orgânicas. Infelizmente, os dados continham muito ruído, e o robô parou de responder pouco depois de entrar na caverna – e nunca mais retornou.
+
Veja a [http://www.dainf.ct.utfpr.edu.br/~nassu/data/Trabalho3-geral.pdf descrição geral].
  
Como o Brasil se tornou uma grande potência científica nos últimos anos, a Agência Espacial Brasileira resolveu enviar um novo robô para explorar a caverna. Sua missão é entrar na caverna, procurar indícios de vida, recolher amostras, e retornar ao ponto de partida. O robô deve também evitar o destino do robô da NASA – seja lá qual foi.
+
O problema será trabalhado em duas versões: a interativa e a autônoma.
  
== Modelo do problema: ==
+
== Versão Interativa ==
  
== Funcionalidades essenciais ==
+
Para a versão interativa do problema, as equipes desenvolverão um jogo no qual o jogador assume o controle sobre as ações do robô. Para isso, será usada a ferramenta/linguagem de programação Processing. Os trabalhos serão apresentados. A nota da disciplina de Algoritmos I será dada com base nesta versão do problema.
  
== Funcionalidades desejáveis ==
+
== Versão Autônoma ==
 +
 
 +
Para a versão autônoma do problema, cada equipe deverá construir um módulo decisor para o robô, permitindo a exploração automática da caverna. Este módulo deverá ser escrito na linguagem C. A nota para a disciplina de Fundamentos de Programação I será dada com base nesta versão do problema.
 +
 
 +
Será realizada uma competição entre as equipes, com os decisores sendo comparados pelos seguintes critérios:
 +
* Número de explorações bem-sucedidas.
 +
* Número de movimentos realizados.
 +
* Número de fracassos por falta de bateria.
 +
 
 +
A competição incluirá um decisor escrito pelo professor de Fundamentos de Programação I. Equipes que consigam desempenho superior a este decisor receberão um bônus na nota.
 +
 
 +
Para informações detalhadas sobre esta parte do projeto, veja a [http://www.dainf.ct.utfpr.edu.br/~nassu/data/Trabalho3.pdf especificação].
  
 
= Regras =
 
= Regras =
  
* Quantidade de membros na equipe: 3 ou 4.
+
* Quantidade de membros na equipe: até 4.
 
** Observação: caso um ou dois integrantes da equipe desistam de uma ou mais disciplinas ao longo do semestre, a equipe poderá escolher entre permanecer a mesma ou fundir-se com outra equipe. O professor responsável pela gerência do projeto analisará cada caso.
 
** Observação: caso um ou dois integrantes da equipe desistam de uma ou mais disciplinas ao longo do semestre, a equipe poderá escolher entre permanecer a mesma ou fundir-se com outra equipe. O professor responsável pela gerência do projeto analisará cada caso.
  
 
* Todas as equipes deverão relatar semanalmente o andamento do projeto.
 
* Todas as equipes deverão relatar semanalmente o andamento do projeto.
** Sugestão: criar um blog  para isso.
 
  
 
= Equipes =
 
= Equipes =
Linha 43: Linha 54:
 
== O que cada equipe precisa entregar? ==
 
== O que cada equipe precisa entregar? ==
  
# '''Software funcionando''' (código-fonte com licença aberta)
+
# '''Software funcionando'''
 
# '''Documento''' descrevendo o software, contendo as seguintes seções:
 
# '''Documento''' descrevendo o software, contendo as seguintes seções:
 
## Introdução
 
## Introdução
Linha 71: Linha 82:
 
=== Avaliação ===
 
=== Avaliação ===
  
A cada item do documento/implementação será atribuído um peso. Em adição, a equipe que obtiver a melhor pontuação nas "funcionalidades desejáveis" obterá um acréscimo de 10% na nota.
+
As notas serão dadas com base nos documentos e implementações entregues. Os critérios para pontuação serão definidos pelo professor de cada disciplina - ou seja, a nota pode ser diferente por disciplina, e por membro da equipe. Ex.: na equipe A, com os membros A1, A2 e A3, A1 pode tirar 10 em Algoritmos, 9 em Lógica e 8 em Fundamentos 1. Na mesma equipe, os membros A2 e A3 podem tirar 9 em Algoritmos, 8 em Lógica e 8 em Fundamentos 1.
 
+
Baseados nestes itens os professores estabelecerão uma nota.
+
 
+
A nota pode ser diferente por disciplina, por membro da equipe. Ex.: na equipe A, com os membros A1, A2 e A3, A1 pode tirar 10 em Algoritmos, 9 em Lógica e 8 em Fundamentos 1. Na mesma equipe, os membros A2 e A3 podem tirar 9 em Algoritmos, 8 em Lógica e 8 em Fundamentos 1.
+
  
 
Uma única nota será repassada ao professor de TGS.
 
Uma única nota será repassada ao professor de TGS.
  
 
+
Algumas métricas que serão avaliadas:
 
+
* erros de compilação e execução
Algumas métricas que também serão avaliadas:
+
 
* qualidade do código em geral
 
* qualidade do código em geral
** quantidade de variáveis globais
+
** atendimento da especificação
 +
** legibilidade
 +
** qualidade e quantidade dos comentários
 
** concordância com padrões de codificação (regras para nomear símbolos, por exemplo)
 
** concordância com padrões de codificação (regras para nomear símbolos, por exemplo)
** qualidade e quantidade dos comentários
+
** modularização
** adequabilidade das funções/métodos de API escolhidos
+
* grau de modularização:
+
** número de funções/métodos x linhas por função/método
+
** quantidade de funções/métodos chamadas mais de uma vez
+
  
 
= Datas Importantes =
 
= Datas Importantes =
  
* Até 28.03.2013: definição das equipes
+
* Até 09.04.2013: definição das equipes.
* Até 04.04.2013: entrega de documento descrevendo o sistema a ser implementado.
+
* 26.04.2013: Entrega e apresentação da versão interativa do projeto.
* (prof. de TGS define): Entrega dos Diagramas de Fluxo de Dados
+
* 28.04.2013: Entrega do documento (preliminar) para o(a) professor(a) de Comunicação Oral e Escrita, para revisão.
* 20.04.2013: Entrega do documento para o(a) professor(a) de Comunicação Oral e Escrita, para revisão
+
* 06.05.2013 13h00: Entrega dos documentos finais e do módulo decisor em C.
* 03.05.2013 13h00: Entrega do documento e do código-fonte (via Moodle)
+
* 07 a 10.05.2013: Bancas do projeto integrado.
* 06 a 10.05.2013: Bancas do projeto integrado
+
  
 
= IMPORTANTE =
 
= IMPORTANTE =
  
 
'''Os melhores trabalhos serão apresentados na ExpoUT 2013!'''
 
'''Os melhores trabalhos serão apresentados na ExpoUT 2013!'''

Edição atual tal como 17h34min de 9 de abril de 2013

Tabela de conteúdo

O que é o Projeto Integrado do Primeiro Período do Bacharelado em Sistemas de Informação?

Leia Projeto Integrado do Primeiro Período do Bacharelado em Sistemas de Informação.

Equipe de Professores diretamente envolvidos

  • Adolfo Neto (Lógica para Computação)
  • Silvia (Algoritmos 1)
  • Bogdan (Fundamentos de Programação 1)
  • Bernardes (TGS)

Demais professores do primeiro período

  • Keller (Tecnologia e Sociedade)

Moodle

Descrição do Projeto

Veja a descrição geral.

O problema será trabalhado em duas versões: a interativa e a autônoma.

Versão Interativa

Para a versão interativa do problema, as equipes desenvolverão um jogo no qual o jogador assume o controle sobre as ações do robô. Para isso, será usada a ferramenta/linguagem de programação Processing. Os trabalhos serão apresentados. A nota da disciplina de Algoritmos I será dada com base nesta versão do problema.

Versão Autônoma

Para a versão autônoma do problema, cada equipe deverá construir um módulo decisor para o robô, permitindo a exploração automática da caverna. Este módulo deverá ser escrito na linguagem C. A nota para a disciplina de Fundamentos de Programação I será dada com base nesta versão do problema.

Será realizada uma competição entre as equipes, com os decisores sendo comparados pelos seguintes critérios:

  • Número de explorações bem-sucedidas.
  • Número de movimentos realizados.
  • Número de fracassos por falta de bateria.

A competição incluirá um decisor escrito pelo professor de Fundamentos de Programação I. Equipes que consigam desempenho superior a este decisor receberão um bônus na nota.

Para informações detalhadas sobre esta parte do projeto, veja a especificação.

Regras

  • Quantidade de membros na equipe: até 4.
    • Observação: caso um ou dois integrantes da equipe desistam de uma ou mais disciplinas ao longo do semestre, a equipe poderá escolher entre permanecer a mesma ou fundir-se com outra equipe. O professor responsável pela gerência do projeto analisará cada caso.
  • Todas as equipes deverão relatar semanalmente o andamento do projeto.

Equipes

O que cada equipe precisa entregar?

  1. Software funcionando
  2. Documento descrevendo o software, contendo as seguintes seções:
    1. Introdução
    2. Diagramas de Fluxo de Dados (mais informações com o professor de TGS)
    3. Especificação Formal (mais informações com o professor de Lógica para Computação)
    4. Algoritmos Utilizados (mais informações com a professora de Algoritmos 1)
    5. Design e Implementação do Sistema (mais informações com o professor de Fundamentos de Programação 1)
    6. Conclusão


O documento deve seguir as normas para a elaboração de trabalhos acadêmicos da UTFPR.

De acordo com o que está na página 16 das normas, o documento deverá conter os seguintes elementos:

  1. Capa
  2. Folha de rosto
  3. Sumário
  4. Introdução
  5. Desenvolvimento (dividido em seções como visto acima)
  6. Conclusão
  7. Referências

Não é necessário Resumo, Abstract, Lista de Ilustrações, Lista de Tabelas, etc.

Instruções sobre como elaborar estes elementos e sobre como fazer citações (muito importante!) podem ser encontradas nas normas. A equipe da Biblioteca da UTFPR e o(a) professor(a) de Comunicação Oral e Escrita também podem ajudar quanto às questões de escrita do documento.


Avaliação

As notas serão dadas com base nos documentos e implementações entregues. Os critérios para pontuação serão definidos pelo professor de cada disciplina - ou seja, a nota pode ser diferente por disciplina, e por membro da equipe. Ex.: na equipe A, com os membros A1, A2 e A3, A1 pode tirar 10 em Algoritmos, 9 em Lógica e 8 em Fundamentos 1. Na mesma equipe, os membros A2 e A3 podem tirar 9 em Algoritmos, 8 em Lógica e 8 em Fundamentos 1.

Uma única nota será repassada ao professor de TGS.

Algumas métricas que serão avaliadas:

  • erros de compilação e execução
  • qualidade do código em geral
    • atendimento da especificação
    • legibilidade
    • qualidade e quantidade dos comentários
    • concordância com padrões de codificação (regras para nomear símbolos, por exemplo)
    • modularização

Datas Importantes

  • Até 09.04.2013: definição das equipes.
  • 26.04.2013: Entrega e apresentação da versão interativa do projeto.
  • 28.04.2013: Entrega do documento (preliminar) para o(a) professor(a) de Comunicação Oral e Escrita, para revisão.
  • 06.05.2013 13h00: Entrega dos documentos finais e do módulo decisor em C.
  • 07 a 10.05.2013: Bancas do projeto integrado.

IMPORTANTE

Os melhores trabalhos serão apresentados na ExpoUT 2013!

Ferramentas pessoais