Como usuário, eu gostaria de acessar a nova página de listagem de personas para realizar a modelagem e visualizar meus grupos de opinião

Porquê estamos fazendo isso

Essa issue deve implementar a nova versão da tela de gestão de personas. O objetivo com essa implementação é unificar três telas da EJ em uma única:

  • Relatório de grupos de opinião. (entra nessa issue)
  • Tela de modelagem de personas. (entra nessa issue)
  • Tela de criação/edição de grupos (não entra nessa issue)

Nessa nova tela, o usuário terá total controle sobre o processo de modelagem das personas e visualização dos grupos que serão formados. Essa issue deve cobrir a implementação apenas da aba ver/editar personas. A aba de criação de persona virá em uma nova issue.

Por enquanto, manteremos a área de "criar/editar grupos", já que a incorporação dela na nova tela de modelagem não entrará nessa issue.

O que precisa ser feito

  • A clusterização deve acontecer de forma automática sempre que:
    • Uma persona for editada. Ao editar uma persona, o seu grupo também deve ser atualizado e a clusterização deve ser regerada para refletir a remoção do grupo.
    • Uma persona for excluída. Ao excluir uma persona, o seu grupo também deve ser excluído e a clusterização deve ser regerada para refletir a remoção do grupo.
  • Ao regerar a clusterização (que é responsável por atualizar os grupos), o frontend deve ser atualizado automaticamente, ou seja, o usuário não precisará fazer reload da página para visualizar a nova formação dos grupos.
  • Os grupos de opinião formados devem ser apresentados na seção "Agrupamentos". A edição/exclusão de uma persona deve disparar uma requisição de clusterização e os grupos devem ser regerados automaticamente. Reutilizar implementação do botão "forçar agrupamento", disponível na página do relatório Grupos de Opinião.
  • Remover templates Jinja2 da página "Grupos de opinião" (item de Relatórios) e o seu respectivo backend.
  • Implementação da estrutura de abas
  • Suporte ao mobile.

Design

Requisitos não funcionais

  • Atualizar documentação com a nova página de modelagem.
  • Implementar testes automatizados com Pytest para a nova implementação e revisar os testes existentes.
Edited by Shayane