UC_04 - antoniodanielbf-isep/LAPR5-2021 GitHub Wiki
=======================================
|| REQUISITOS || ANÁLISE || DESIGN || OBSERVAÇÕES ||
=======================================
Boa tarde, a "UC 4: Consultar (o cálculo d) a força de ligação entre dois utilizadores/jogadores" refere-se à força de ligação - peso atribuído por um jogador a uma relação - ou à força da ligação - número de likes menos o número de dislikes de um utilizador nos posts e comentários do outro.
Caso se refira à força de ligação, o que é que se entende por "cálculo da força de ligação"? (Hipótese: força de ligação de A para B + força de ligação de B para A)
RESPOSTA:
Devem visualizar a força de ligação introduzida pelo utilizador e a força de relação calculada pelo sistema
Boa noite professor, A força de relação é calculada pela fórmula: número de likes menos o número de dislikes. Porém no atual sprint não existe nenhuma UC que peça para implementar os likes.
RESPOSTA:
ver https://moodle.isep.ipp.pt/mod/forum/discuss.php?d=12553#p16448
Neste UC, pretende-se que um utilizador seja capaz de visualizar o cálculo da força de ligação entre dois utilizadores/jogadores, sendo o fluxo o seguinte:
- N/A
Testes de validação da força.
- N/A
O padrão de User Interface é usado para fornecer uma interface simples de usar para que as partes restantes do sistema sejam separadas.
O padrão Controller foi usado para ter um controlador que pode atuar como um organizador da lógica do caso de uso.
Padrão usado para diminuir o acoplamento entre classes e, ao mesmo tempo, apenas atribuir-lhes associações que sejam realmente coesas com o seu propósito. Em todo esse caso de uso, tentamos restringir as responsabilidades próprias de cada classe e, assim, minimizar as associações apenas ao necessário. Como pode ser visto neste caso de uso:
Os DTO´S guardam os dados inseridos num objeto intermediário para posteriormente mostrar o valor calculado;
O Repositório é usado para buscar os Posts criados.
O Controller trata de toda a lógica de atualização de um evento delegando etapas intermediárias às outras classes.
O padrão DTO fornece um objeto intermediário para transferência de dados, reduzindo o acoplamento entre o domínio e as camadas do aplicativo, permitindo o carregamento rápido do aplicativo e garantindo mais segurança. Nesse caso de uso, temos a sua implementação na classe PostDTO.
O Repositório ajuda a persistir, armazenar e acessar dados. É usado na camada de Persistência para garantir a instanciação de PostRepository, onde é armazenado e tem acesso aos Post. Abstrai os detalhes dos métodos que modificam o estado deste objeto.
Mantém o baixo nível de acoplamento entre os diferentes módulos do sistema. Com este princípio, ao invés de se terem dependências programas nos módulos, elas são configuradas num "container", que é responsável por "injetar" (fornecer) as dependências necessárias a cada componente.
É uma forma específica de desacoplamento de módulos de software. Partem de módulos de alto nível, responsáveis pela coordenação geral e lógica, para os de baixo nível. Assim, os módulos de alto nível tornam-se independentes dos detalhes de implementação dos de baixo nível. Módulos de alto nível não devem incorporar (ou incluir) nada dos módulos de baixo nível. Os dois módulos devem trabalhar apenas com abstrações, ou seja, através do uso de interfaces. Abstrações não devem depender de detalhes de implementação, mas os detalhes é que devem depender de abstrações.