Trabalho Prático - Professor Agente (Assistente IA Educacional)
Trabalho Prático Integrador: Professor Agente (Inspirado no Ecossistema WokDex)
1. Introdução e Propósito
Este trabalho prático é a atividade principal da disciplina de Gestão de Projetos de Software. O objetivo é que sua equipe aplique os conceitos teóricos aprendidos em sala de aula para planejar, executar, monitorar e concluir um projeto real de desenvolvimento de software.
Ao longo do semestre, sua equipe irá construir o Professor Agente, um assistente de IA educacional socrático inspirado na visão do ecossistema WokDex (plataforma de exercícios e juiz online desenvolvida pelo professor). O assistente utilizará uma API de inteligência artificial (ex: Gemini, OpenAI, Groq) e uma interface de escolha da equipe (ex: Telegram Bot, Discord, Streamlit ou Web App).
As estruturas apresentadas neste guia (como a decomposição da EAP, organização de pastas, tecnologias e diretrizes de prompt) representam propostas e sugestões de referência.
A sua equipe pode adaptar, reorganizar, expandir ou simplificar os pacotes de trabalho e a arquitetura conforme a proposta. O requisito é manter rigor de gestão: cobertura do escopo adotado na EAP, rastreabilidade das mudanças significativas e uma estratégia pedagógica documentada. Se prazo, risco ou disponibilidade exigirem, priorizem e reduzam o produto a um MVP viável.
Atenção à Tecnologia: A linguagem de programação e o framework são de livre escolha da equipe (ex: Python, Java/Spring, Node.js). O foco da disciplina não é avaliar a complexidade técnica da stack escolhida, mas, principalmente, o processo de gestão de projetos que sua equipe irá utilizar para construir o produto, versionando tudo no GitLab.
2. Objetivos de Aprendizagem
Este trabalho foi projetado para que você possa:
- Aplicar Conceitos de Gestão: Colocar em prática as metodologias de gestão tradicional (PMBOK), ágil (Scrum) e híbrida.
- Utilizar Ferramentas de Mercado: Usar ferramentas colaborativas como o GitLab para versionamento, discussão, revisão e automação CI/CD, compondo evidências de processo.
- Engenharia de Prompt e Escopo: Gerenciar o “Scope Creep” e os riscos de LLMs por meio de prompts, testes, mitigação e comunicação de limites, sem prometer comportamento infalível.
- Praticar a Colaboração: Trabalhar em equipe para definir escopo, delegar tarefas, resolver conflitos e garantir a entrega de um produto de qualidade com base na contribuição de todos.
3. Descrição do Projeto e Ideologia do Assistente
O produto final do seu projeto será um software funcional (O Professor Agente), com as seguintes diretrizes de escopo e proposta pedagógica:
- MVP e evolução de conteúdo: A equipe deve priorizar uma jornada mínima de tutoria para um recorte de conteúdos e usuários. Programação básica e grafos podem orientar a evolução do produto, mas não precisam estar integralmente cobertos no primeiro incremento:
- Nível Introdutório (Programação Simples): Lógica de programação, variáveis, estruturas condicionais (
if/else), laços de repetição (for/while), vetores, matrizes e manipulação de strings; - Nível Intermediário/Avançado (Estruturas e Grafos): Busca em largura (BFS), busca em profundidade (DFS), caminhos mínimos (Dijkstra), ordenação topológica, árvores, programação dinâmica e análise assintótica de complexidade \(O(V + E)\).
- Nível Introdutório (Programação Simples): Lógica de programação, variáveis, estruturas condicionais (
- Ideologia e Estratégia Pedagógica: A equipe deve definir claramente a ideologia do seu chatbot. Dado um problema computacional (seja um
forbásico ou um algoritmo de Dijkstra), qual a estratégia adotada para que o aluno aprenda de verdade? O assistente deve atuar como um mentor/tutor socrático, conduzindo o estudante por meio de diálogo investigativo para que ele mesmo construa a solução. - Ajuda graduada: O objetivo central é guiar a jornada de aprendizado. O assistente deve priorizar diagnóstico, perguntas e pistas progressivas:
- Estimular o aluno a conversar e explicar o que já pensou (“Qual foi a sua ideia inicial para percorrer a matriz ou representar a lista de adjacência?”);
- Validar se o aluno realmente compreendeu o problema e as restrições antes de sugerir caminhos;
- Oferecer pistas graduais ajustadas ao nível do desafio (ex: alertar sobre limites de laço em problemas simples ou sugerir filas de prioridade em problemas de grafos);
- Fazer perguntas que provoquem a reflexão lógica e a autonomia do estudante;
- Explicar quando pseudocódigo, trechos pequenos ou código completo são didaticamente adequados, registrando os limites adotados pela equipe.
- Postura Frente a Fraudes vs. Foco no Aprendizado: É fato conhecido que não é possível impedir 100% que um aluno use métodos externos ou outras IAs para obter a resposta pronta. O propósito do Professor Agente não é ser um mecanismo de repressão policialesco, mas sim oferecer a melhor experiência possível para quem quer aprender, guiando o caminho do conhecimento de forma envolvente e construtiva.
- Integração e evidências: A lógica de negócio e o System Prompt serão construídos incrementalmente. Mudanças significativas devem ser rastreáveis por evidências adequadas, como issues, Merge Requests com revisão, ADRs, testes, demonstrações e retrospectivas. Commits e MRs são indícios relevantes, mas não provam isoladamente toda contribuição individual.
- Repositório-Modelo: A equipe deverá iniciar o projeto a partir de um Template Repository fornecido pelo professor, que já contém as estruturas iniciais de documentação e CI/CD.
O foco da avaliação não está em criar a IA do zero (vocês consumirão uma API), mas na qualidade do processo de gestão, na consistência da engenharia pedagógica do assistente e na rastreabilidade da evolução do produto via Sprints.
4. Avaliação e Pontuação
O trabalho prático tem um valor total de 30 pontos, distribuídos ao longo dos quatro módulos da disciplina. A pontuação será baseada na demonstração da aplicação dos conceitos de gestão e nas evidências do trabalho colaborativo registradas no GitLab.
| Módulo de Avaliação | Prazo de Entrega | Valor | Foco da Avaliação | Detalhes |
|---|---|---|---|---|
| Módulo 1: Iniciação e Planejamento | 15-08 a 14/09/2026 | 5 pontos | Identidade, Charter, EAP, Requisitos, Diretrizes de Prompt, Backlog GitLab e Spike de API. | 📖 Ver Guia do Módulo 1 |
| Módulo 2: Gestão e Documentação | 19/10/2026 | 5 pontos | Prompt inicial, validação, refinamento de escopo e evidências de processo. | 📝 Ver Proposta (Rascunho) |
| Módulo 3: Execução Ágil e CI/CD | 16/11/2026 | 10 pontos | Incremento priorizado, gestão visual, revisão colaborativa e pipeline de CI/CD. | 📝 Ver Proposta (Rascunho) |
| Módulo 4: Conclusão e Apresentação | 07/12/2026 | 10 pontos | Produto demonstrável, retrospectiva, defesa técnica e conjunto de evidências. | 📝 Ver Proposta (Rascunho) |
5. Requisitos e Diretrizes
Para a realização do projeto, as seguintes regras e diretrizes devem ser seguidas:
- Identificação: Todos os participantes devem ter um login no GitLab da disciplina. O projeto deve ser criado no subgrupo oficial gps-projetos-integradores (o professor já terá acesso automático).
- Papéis: Se adotar Scrum, a equipe registra Product Owner, Scrum Master e Developers. O Scrum Master facilita o processo, não gerencia nem avalia individualmente. Responsabilidades técnicas, como Tech Lead, são acordos de equipe, não papéis Scrum.
- Rastreamento de mudanças: Mudanças significativas de produto, documentação, arquitetura ou processo devem ter rastreabilidade adequada. Issues e Merge Requests são práticas recomendadas; a equipe pode complementá-las com ADRs, registros de teste, demonstrações e retrospectivas.
- Estimativa de Tempo: As issues devem incluir estimativas (ex:
1h,2h) para acompanhar o esforço. - Evidência: A avaliação considera o conjunto de issues, MRs e revisões, ADRs, histórico de versões, pipeline e testes, demonstrações, retrospectivas e defesa técnica. As evidências devem ser interpretadas com o contexto da contribuição.
- Responsabilidade e nota individual: A nota pode variar entre integrantes. A avaliação considera contribuição, complexidade, disponibilidade comunicada, revisão e colaboração, e não apenas volume de commits ou tarefas.