Skip to content
This repository has been archived by the owner on May 23, 2021. It is now read-only.

argon7academic/ES2Final

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Engenharia de Software II - Trabalho Final

Java CI with Maven Codacy Badge License: MIT Build Status

Problema

Pretende-se criar uma aplicação para fazer a gestão de utilizadores numa empresa. Os requisitos da aplicação são:

  • Criar um utilizador

  • Consultar os dados de um utilizador

  • Listar utilizadores

  • Registrar um utilizador de forma a poder aceder à aplicação

  • Autenticar um utilizador

  • Listar recursos

  • Consultar um recurso

A serviço reqres.in fornece uma API para as operações associadas aos requisitos descritos anteriormente. Este serviço vai ser utilizado como backend para a aplicação a desenvolver.

Testes

De forma a garantir a qualidade máxima da aplicação, é necessário fazer os seguintes testes:

  • Testes de Unidade para as funcionalidades da aplicação, considerando que a API ainda não está disponível - poderá ser necessário utilizar duplos

  • Testes ao serviço REST - os endpoints deverão ser testados

  • Testes globais da aplicação depois de integrada

  • Testes de performance - desenho do workload para testes de robustez e disponibilidade

Deverão ser considerados testes black-box para todos os componentes e white-box sempre que se justificar. As técnicas estudadas nas aulas (e.g., particionamento de equivalência e análise dos valores limite) deverão ser exploradas.

Gestão do Projeto

O projeto deverá ser gerido de acordo com a metodologia Scrum. Neste sentido, os alunos deverão

  • Reunir no início de cada aula durante 10 minutos para discutir o que foi realizado e os obstáculos que estão a enfrentar

  • Atribuír o papel de Product Owner semanalmente a um dos elementos do grupo. Este aluno ficará responsável pela gestão do Product Backlog e Sprint Backlog e representará a equipa perante o docente

  • Distribuir os requisitos pelos elementos do grupo, de forma a que todos tenham de passar por todo o processo de desenvolvimento

  • Manter o Trello atualizado com o Backlog do projeto, as tarefas do próximo Sprint, as tarefas do Sprint Atual, as tarefas em revisão pelo docente e as tarefas concluídas

  • Apresentar semanalmente ao docente o resultado das tarefas concluídas na reunião de revisão. Para que o trabalho fique visível para todos os elementos do grupo (incluindo o docente), a versão da solução implementada deverá ficar disponível no GitHub. Para esse efeito, o docente das práticas deverá ser adicionado ao repositório como elemento da equipa.

Regras de Implementação

A implementação da solução passa pelas seguintes fases

  1. Registo do grupo, com o link para o projeto Trello e GitHub. Os grupos já registados podem ser consultados aqui

  2. Codificação da aplicação

  3. Revisão dos conceitos estudados/ criação dos testes / atualização constante da matriz de rastreabilidade

  4. Escrita do relatório e da memória descritiva

  5. Submissão no Moodle

Artefatos

Ficheiro RAR/ZIP com os seguintes elementos:

  • Relatório com a documentação da solução

  • Memória descritiva (individual) com a descrição do trabalho realizado pelo aluno no grupo (1 página)

  • Código desenvolvido.

Prazos

Avaliação prevista para a época especial em setembro 2020.

Defesa

A defesa do trabalho será feita em grupo, mas as questões serão colocadas pelos docentes individualmente a cada aluno. Cada aluno deverá ser capaz de defender o trabalho prático. Durante a defesa, o aluno deverá demonstrar o conhecimento teórico necessário para a realização do trabalho.

Links

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%