Disciplina: FGA0210 - PARADIGMAS DE PROGRAMAÇÃO - T02
Nro do Grupo (de acordo com a Planilha de Divisão dos Grupos): 02
Paradigma: Lógico
Matrícula | Aluno |
---|---|
180099353 | Cibele Freitas Goudinho - @CibeleG |
190108011 | Guilherme Brito Vilas Boas - @dev-brito |
170105342 | Irwin Schmitt - @irwinschmitt |
180103792 | Júlia Farias Sousa - @julisous |
180104390 | Lameque Fernandes Azevedo - @LamequeFernandes |
201000379 | Leonardo Milomes Vitoriano - @leonardomilv3 |
180078224 | Thaís Rebouças de Araujo - @Thais-ra |
200028367 | Victor Hugo Oliveira Leão - @victorleaoo |
A fim de praticar os conhecimentos do Paradigma Lógico, foi desenvolvido um sistema de recomendação/busca de matérias optativas para o curso de Engenharia de Software.
As disciplinas foram listadas e analisadas com base na Estrutura Curricular 6360/1, realizando um filtro para retirar as obrigatórias e as que não eram específicas, como, por exemplo, Atividades Complementares. Na página de Optativas é possível encontrar as disciplinas filtradas e descritas de acordo com atributos julgados importantes (nome, palavras chaves, área de conhecimento, carga horária e ementa).
A partir disso, então, o sistema desenvolvido possui os seguintes filtros para as disciplinas:
- Carga horária
- Área de conhecimento
- Palavra presente na ementa
Além disso, há, também, uma funcionalidade de geração de relatório para aqueles que desejarem informações mais completas da ementa.
Linguagens: Prolog
Tecnologias: XPCE (interface)
- SWI-Prolog instalado
git clone https://github.com/UnBParadigmas2023-1-Turma02/20231_G2_Logico_OptaSoftware
cd app
swipl -q -s main.pl -g main
Nome do Membro | Contribuição | Significância da Contribuição para o Projeto (Excelente/Boa/Regular/Ruim/Nula) |
---|---|---|
Cibele Freitas Goudinho - @CibeleG | Desenvolvimento dos filtros | Excelente |
Guilherme Brito Vilas Boas - @dev-brito | Desenvolvimento da tabela de Resultados da Busca e Integração com os filtros, além de contribuir ativamente com considerações nas reuniões que fizemos. | Excelente |
Irwin Schmitt - @irwinschmitt | Protótipo de baixa fidelidade e desenvolvimento das janelas dos filtros: ui/main_filter_dialog , ui/keywords_filter_dialog , ui/area_filter_dialog , ui/syllabus_filter_dialog e ui/workload_filter_dialog . |
Excelente |
Júlia Farias Sousa - @julisous | Desenvolvimento do gerador de relatório relatório, atualização do Github Pages e README | Boa |
Lameque Fernandes Azevedo - @LamequeFernandes | Desenvolvimento da base de conhecimento e o diagrama de matérias. Construção da documentação do Github Pages, requisitos e reuniões |
Boa |
Leonardo Milomes Vitoriano - @leonardomilv3 | Desenvolvimento dos filtros | Boa |
Thaís Rebouças de Araujo - @Thais-ra | Desenvolvimento do gerador de relatório relatório | Boa |
Victor Hugo Oliveira Leão - @victorleaoo | Desenvolvimento da base de conhecimento e o diagrama de Optativas. Construção da documentação do Github Pages e README. |
Boa |
(i) Lições Aprendidas:
- Realizar modularização de tarefas nem sempre é o melhor caminho;
- É importante ter abordagens alternativas durante o desenvolvimento do projeto;
- É importante realizar reuniões pré-projeto para elencar os requisitos, assim todos estarão alinhados quanto aos objetivos do projeto.
(ii) Percepções:
- O simples funcionamento do Paradigma Lógico em encontrar "dados" cadastrados em sua base de conhecimento.
- Partir do caso default para conseguir progredir com os predicados
(iii) Contribuições e Fragilidades:
- O paradigma é difícil de ser modularizado, sendo necessária a constante integração e comunicação de toda a equipe durante o desenvolvimento do trabalho;
- O log de erros é de difícil interpretação, portante é necessário estudar bastante não só sobre o paradigma como o Prolog em si;
- O projeto contribuiu para tornar a forma de pensar da equipe mais lógica, menos orientada a objetos e pensando constantemente de existe um caso default para cada problema.
- Estrutura Curricular 6360/1 (Engenharia de Software): https://sigaa.unb.br/sigaa/public/curso/curriculo.jsf?lc=pt_BR&id=414924