fga-eps-mds / fga-eps-mds/2022-1-MeasureSoftGram-Doc
Visualizas os valores mais recentes das `medidas` no dashboard
- Dominant language
- Jupyter Notebook
- Stars
- 0
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
## História de usuário
Eu como usuário do MSG
Desejo visualizar o último valor calculado para as medidas de um determinado projeto,
Para que eu possa extrair informações relevantes do código.
## Critérios de aceitação
### Cenário: Obtenção de todos os valores por meio da API
| Passo | Ação | Resultado esperado |
| ----- | ---- | ------------------ |
| 01 | **Dado que** o usuário tenha acesso ao endpoint que disponibiliza os valores de um determinado projeto | - |
| 02 | **Quando** o usuário realiza a requisição no endpoint dos últimos valores de todas as medida de um determinado projeto | **Então** o sistema retorna um arquivo de json com as medidas |
| 03 | - | **E** o json possui uma chave de ```count``` com valor irrelevante para interpretação |
| 04 | - | **E** o json possui uma chave de ```next``` com valor irrelevante para interpretação |
| 05 | - | **E** o json possui uma chave de ```previous``` com valor irrelevante para interpretação |
| 06 | - | **E** o json possui uma chave de ```results``` com valor sendo uma lista com dicionários para cada medida |
| 07 | - | **E** para cada dicionário de medida, a chave ```id``` com o valor referente ao id da medida |
| 08 | - | **E** para cada dicionário de medida, a chave ```key``` com o valor referente a um dos identificadores únicos da medida (nome da medida) |
| 09 | - | **E** para cada dicionário de medida, a chave ```name``` com o valor referente ao nome da medida |
| 10 | - | **E** para cada dicionário de medida, a chave ```description``` com o valor referente à descrição da medida |
| 11 | - | **E** para cada dicionário de medida, a chave ```latest_collected_measure``` com o valor referente a um dicionário com as descrições dos últimos valores da medida |
| 12 | - | **E** para cada dicionário de medida, a chave ```id``` com o valor referente ao id da instância de medida |
| 13 | - | **E** a chave ```measure_id``` com o valor referente a chave estrangeira da medida |
| 14 | - | **E** a chave ```value``` com o valor referente ao valor calculado para a medida |
| 15 | - | **E** a chave ```created_at``` com o valor referente a data de criação da instância de medida |
### Cenário: Obtenção de todos os valores por meio da API
| Passo | Ação | Resultado esperado |
| ----- | ---- | ------------------ |
| 01 | **Dado que** o usuário tenha acesso ao endpoint que disponibiliza os valores de um determinado projeto | - |
| 02 | **Quando** o usuário realiza a requisição no endpoint dos últimos valores de todas as medida de um determinado projeto | **Então** o sistema retorna um arquivo de json com as medidas |
| 03 | - | **E** o json possui uma chave de ```count``` com valor irrelevante para interpretação |
| 04 | - | **E** o json possui uma chave de ```next``` com valor irrelevante para interpretação |
| 05 | - | **E** o json possui uma chave de ```previous``` com valor irrelevante para interpretação |
| 06 | - | **E** o json possui uma chave de ```results``` com valor sendo uma lista com dicionários para cada medida |
| 07 | - | **E** para cada dicionário de medida, a chave ```id``` com o valor referente ao id da medida |
| 08 | - | **E** para cada dicionário de medida, a chave ```key``` com o valor referente a um dos identificadores únicos da medida (nome da medida) |
| 09 | - | **E** para cada dicionário de medida, a chave ```name``` com o valor referente ao nome da medida |
| 10 | - | **E** para cada dicionário de medida, a chave ```description``` com o valor referente à descrição da medida |
| 11 | - | **E** para cada dicionário de medida, a chave ```latest_collected_measure``` com o valor referente a um dicionário com as descrições dos últimos valores da medida |
| 12 | - | **E** para cada dicionário de medida, a chave ```id``` com o valor referente ao id da instância de medida |
| 13 | - | **E** a chave ```measure_id``` com o valor referente a chave estrangeira da medida |
| 14 | - | **E** a chave ```value``` com o valor referente ao valor calculado para a medida |
| 15 | - | **E** a chave ```created_at``` com o valor referente a data de criação da instância de medida |
Uma vez que o MSG possui em sua base de dados diversas métricas coletadas de diversas fontes, e possui implementado as fórmulas que calculam as medidas com base nas métricas, eu gostaria de visualizar via dashboard o valor atual de determinada medida.
Uma possível maneira de visualizar essa informação é por meio de cards. Segue um exemplo de card:

## Tarefas
* [x] Backend
* [x] Definir a interface (estrutura do JSON e endpoint) que será disponibilizada na API e avisar o responsável da CLI e do Frontend, para que assim possa começar o trabalho
* [x] Modelar a tabela `Medida` e `Métrica` para armazenar os dados calculados.
* [x] Cadastrar no banco de dados as `Métricas` necessárias para calcular a Medida.
* [x] Entender como a requisição deve ser feita para o service `core` para que o resultado do cálculo da medida seja feito.
* [x] Salvar o resultado do cálculo no banco de dados, juntamente com a data atual do cálculo.
* [x] Criar uma classe ou função que serializa os dados em formato JSON
* [x] Criar um endpoint e servir os dados
* [x] Frontend
* [x] Criar um componente de card que suporte estilização de cores e números entre 0.00 e 1.00
* [x] Visualizar e estilizar o componente criado utilizando dados falsos
* [x] Obter os dados da API do backend e utilizá-los no componente
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.