PlayerGroup

Atividade de formação autônoma de grupos para o Moodle — documentação completa.

English | Português

View on GitHub Download .zip

Moodle License Status Latest Release PlayerGames Ecosystem Role Author

Moodle Plugin CI Last Commit Open Issues

O PlayerGroup permite que estudantes formem seus próprios grupos de forma autônoma diretamente na página da atividade — sem precisar de intervenção do professor. Ele substitui a formação manual de grupos por uma experiência de autoatendimento que funciona em qualquer formato de curso.

👈 Use a barra lateral para pular direto a qualquer seção desta página.


🖼️ Capturas de Tela

Navegue pelas setas, pelos pontos, ou pelas teclas de seta do teclado. Clique na imagem para ampliar.

✨ Funcionalidades

🎓 Finalidade Educacional

O PlayerGroup foi projetado para:

Indicado para:

🕹️ Ecossistema PlayerGames

O PlayerGroup faz parte do ecossistema de gamificação PlayerGames para o Moodle. Juntos, esses plugins transformam o Moodle em uma experiência imersiva:

Veja o hub do PlayerGames para a família completa de plugins.

📦 Requisitos

Componente Versão
Moodle 4.5+
PHP 8.1+

🛠️ Instalação e Configuração

  1. Baixe o arquivo .zip ou clone este repositório.
  2. Extraia a pasta dentro do diretório mod/ do seu Moodle.
  3. Renomeie a pasta para playergroup (se necessário). Caminho final: seu-moodle/mod/playergroup/
  4. Acesse Administração do site > Notificações para concluir a instalação.
  5. Adicione uma atividade PlayerGroup a qualquer curso.

Este plugin não tem configurações separadas em nível de site após a instalação — toda configuração é feita pelo professor ao adicionar a atividade a um curso, conforme explicado em Como Usar abaixo.

📖 Como Usar

  1. Adicione uma atividade PlayerGroup ao seu curso.
  2. Configure:
    • Mínimo / máximo de integrantes por grupo
    • Modo de agrupamento — criar um novo agrupamento automaticamente, usar um já existente, ou nenhum
    • Permitir que estudantes saiam do grupo, e se um grupo esvaziado é excluído automaticamente
    • Excluir grupos ao excluir a atividade — só remove grupos e um agrupamento que esta atividade realmente criou; um agrupamento pré-existente apontado via “usar um agrupamento existente” fica intacto
    • Recompensa de fundação — nota atribuída automaticamente a todo estudante que entra ou cria um grupo
  3. Os estudantes abrem a atividade e criam um grupo (nome, descrição, emblema, nível de privacidade) ou entram em um grupo existente — aberto, protegido por senha, ou aceitando um convite.
  4. A partir de qualquer card de grupo, o estudante pode:
    • Clicar no contador de integrantes para ver quem está naquele grupo, com o fundador marcado como líder
    • Convidar um colega matriculado que ainda não tem grupo (só é mostrado a estudantes que também podem ver a lista de participantes do curso)
    • Sair do próprio grupo, se o professor permitir
  5. A atividade é concluída e a nota é atribuída automaticamente no momento em que o estudante entra ou cria um grupo.
  6. O professor tem acesso a duas abas de relatório a partir da página da atividade: o log de atividade (quem fez o quê, e quando) e grupos e integrantes (a composição completa, uma linha por integrante) — ambos exportáveis em CSV e Excel.

🧪 Testes Automatizados

O PlayerGroup inclui uma suíte PHPUnit cobrindo lógica de negócio, web services, relatórios e exportações, o renderer e a saída do app mobile, a API pública, e conformidade com a Privacy API, além de uma suíte Behat para aceitação em navegador. Todo push de CI executa a matriz completa (Moodle 4.5 → 5.x, PostgreSQL e MariaDB).

PHPUnit — Por Área

Área Arquivos Casos
Web services (tests/external/) 8 53
Núcleo (lib_test.php, notas, conclusão, lock, ordenação de integrantes, backup, privacidade) 7 36
Relatórios e exportações (tests/controller/) 2 5
Saída e app mobile (tests/output/) 2 14
API pública (tests/api/) 1 6
Total Geral 20 114
vendor/bin/phpunit --testsuite mod_playergroup

Cobertura de linha geral (moodle-coverage, PHPUnit + Xdebug): 80%.

Behat — Testes de Aceitação

Arquivo de feature Cenários
create_group.feature 2
join_group.feature 2
join_protected_group.feature 3
view.feature 3
invite_colleagues.feature 1
view_members.feature 1
Total 12
php admin/tool/behat/cli/init.php
vendor/bin/behat --tags=@mod_playergroup --profile=chrome

Detalhamento completo teste-a-teste e tabela de cobertura →

🔐 Segurança e Conformidade

📄 Licença

Este projeto é licenciado sob a GNU General Public License v3 (GPLv3).

Copyright: 2026 Jean Lúcio