1ª Entrega

Objetivo

Implementar as classes de domínio persistentes e testes de unidade. 

Instruções

Cada grupo trabalha no seu repositório privado que já contém o código disponibilizado. É necessário acrescentar as classes de domínio em falta e respectivos testes de forma a alcançar uma cobertura de 100%. É também necessário alterar a classe TeacherDashboard de acordo com que é mostrado no diagrama de domínio. Cada subgrupo (de 2 alunos) deve implementar uma funcionalidade diferente, correspondente a uma classe de domínio diferente e aos respectivos testes de unidade. A carga de trabalho (quantidade e complexidade das tarefas) deve ser dividida de forma semelhante entre os membros de cada subgrupo. Isto será verificado pelos commits de cada grupo. A nota 0 (zero) será atribuída a alunos que não apresentem commits. (Ver secção Grupos e Ramos para mais informação.)


Para os testes funcionarem pode ser necessário acrescentar algumas instruções em algumas das superclasses ou em classes de configuração, e.g., SpockTest.groovy e BeanConfiguration.groovy. 


Sugestões de Planeamento


  1. Ler com atenção o enunciado

  2. Analisar o modelo de domínio

  3. Analisar o código fornecido como suporte

  4. Planear:

    • Definir as histórias para cada uma das funcionalidades
    • Decompor as histórias em tarefas de modo a haver um desenvolvimento incremental que permita validação constante. Para cada história:
      • Definir uma tarefa para implementar as entidades de domínio
      • Definir uma tarefa para cada novo teste

Na maior parte dos casos, cada tarefa estará associada a um elemento do subgrupo e um commit a realizar por esse elemento (por exemplo, casos de teste). Algumas tarefas (issues) podem estar atribuídas aos dois elementos do subgrupo, mas ambos os elementos terão de realizar commits (por exemplo, podemos ter uma tarefa de criação de nova classe de domínio com commits dos dois elementos do subgrupo referentes a atributos diferentes).


Sugere-se um Board por sprint (entrega), com 5 colunas:
  • Stories backlog
  • Not started tasks
  • In progress tasks
  • In review tasks
  • Closed

Para o critério "Markdown file with submission summary", basta preencher o template P1.md e colocá-lo numa pasta com nome "markdown". Link para template: https://gitlab.rnl.tecnico.ulisboa.pt/-/snippets/2. Versão "raw": https://gitlab.rnl.tecnico.ulisboa.pt/-/snippets/2/raw/master/P1.md

Critérios de Avaliação