Sobre | Backlogs | User Stories | Protótipo | Tecnologias | Equipe | Apresentação Final | Licença
Tem por objetivo proporcionar à "TV Vanguarda" um site de análise de dados com a exibição de estatísticas do eleitorado localizado dentro de sua cobertura no Estado de São Paulo, podendo obter diversas características, como gráficos e tabelas de estado civil, escolaridade e faixa etária, além de informações sobre renda e evolução na quantidade de eleitores, tanto no âmbito municipal (de cada cidade) quanto macro-regiões, como o Vale do Paraíba.
Projeto baseado na metodologia ágil SCRUM, procurando desenvolver a Proatividade, Autonomia, Colaboração e Entrega de Resultados dos envolvidos
Status do Projeto: Concluído ✔️
Depois de baixar o Python e clonar o repositório (ou baixá-lo):
# Acesse a pasta do projeto por meio do terminal
cd projeto
# Instale as dependências
pip install -r requirements.txt
# Execute a aplicação
python app.py
# O site estará disponível através do link: http://localhost:5000/
OBS.: Para executar o notebook desenvolvido para análise de dados, vide o passo a passo deste tópico.
Cada entrega foi realizada a partir da criação de uma tag. Observe a relação a seguir:
Sprint | Tag | Lançamento | Status | Histórico |
---|---|---|---|---|
01 | sprint-01 | 28/03/2021 | Entregue | ver relatório |
02 | sprint-02 | 18/04/2021 | Entregue | ver relatório |
03 | sprint-03 | 16/05/2021 | Entregue | ver relatório |
04 | sprint-04 | 06/06/2021 | Entregue | ver relatório |
Código | Item | User Story |
---|---|---|
RF 01 | Geração de estatísticas sobre eleitorado | #01 |
RF 02 | Verificação características do eleitorado de acordo com o representante eleito | #02 |
RF 03 | Verificação das cidades com mais jovens e mais idosos na região | #04 |
RF 04 | Exportação dos resultados da busca | #06 |
RF 05 | Verificação da renda média do eleitorado | #03 |
RF 06 | Comparação renda média do Vale do Paraíba com outras regiões | #05 |
RF 07 | Geração de estatísticas sobre comparecimento e ausência às urnas | #11 |
RF 08 | Geração de estatísticas sobre a evolução da quantidade de eleitores | #12 |
Código | Item | User Story |
---|---|---|
RFN 01 | Passível de atualizações | #07 |
RFN 02 | Implementação do backend em Python | #09 |
RFN 03 | Codificação de fácil compreensão | #08 |
RFN 04 | Documentação | #10 |
RFN 05 | Análise de dados em Jupyter Notebook | #13 |
Item | Descrição |
---|---|
01 | Wireframe |
02 | Levantamento de Requisitos |
03 | Protótipo Dinâmico |
04 | Organização da equipe |
05 | Organização do repositório |
Item do Backlog do Produto | Descrição | User Story |
---|---|---|
RF 01 | Geração de estatísticas sobre eleitorado | #01 |
RF 02 | Verificação características do eleitorado de acordo com o representante eleito | #02 |
RF 07 | Geração de estatísticas sobre comparecimento e ausência às urnas | #11 |
Item do Backlog do Produto | Descrição | User Story |
---|---|---|
RF 03 | Verificação das cidades com mais jovens e mais idosos na região | #04 |
RF 05 | Verificação da renda média do eleitorado | #03 |
RF 06 | Comparação da renda média do Vale do Paraíba com outras regiões | #05 |
RF 08 | Verificação da evolução na quantidade de eleitores | #12 |
Item do Backlog do Produto | Descrição | User Story |
---|---|---|
RF 04 | Exportação dos resultados da busca | #06 |
- OBS: Para a quarta sprint, os maiores esforços estarão no desenvolvimento do site e aplicação de melhorias na análise de dados (Jupyter Notebook).
📍 Para ver o planejamento completo das sprints, como conteúdo das entregas, tarefas e prazos, bem como estatísticas do time, clique aqui.
Informações informais sobre as funções do sistema (como uma única tarefa pode oferecer determinado valor)
Código | Quem | O que? | Para |
---|---|---|---|
#01 | Jornalista | Quer saber a classificação do eleitorado a partir do estado civil, escolaridade e faixa etária, além da quantidade de eleitores que utilizam nome social | Obter conteúdo para sua matéria |
#02 | Jornalista | Quer relacionar as características do eleitorado de acordo com o representante eleito em determinada região | Obter conteúdo para sua matéria |
#03 | Jornalista | Quer saber a renda média do eleitorado de determinada região | Obter conteúdo para sua matéria |
#04 | Jornalista | Quer saber, daquela região, a cidade com mais eleitores jovem e mais eleitores idosos | Obter conteúdo para sua matéria |
#05 | Jornalista | Quer comparar a renda média de eleitores do Vale do Paraíba com a de outras regiões do Estado | Obter conteúdo para sua matéria |
#06 | Jornalista | Quer automatizar a exportação das estatísticas | Publicar gráficos e dados em diferentes plataformas |
#07 | Jornalista | Quer poder relacionar características do eleitorado de acordo com o representante eleito em determinada região de eleições futuras | Continuar obtendo conteúdo para sua matéria |
#08 | Jornalista | Quer entender o código | Fazer customizações |
#09 | Jornalista | Quer que o back-end seja feito em Python | Fazer customizações |
#10 | Jornalista | Quer ler uma documentação simples | Saber usar a aplicação |
#11 | Jornalista | Quer saber a percentagem de eleitores ausentes da última eleição | Obter conteúdo para sua matéria |
#12 | Jornalista | Quer saber a evolução do número de eleitores | Obter conteúdo para sua matéria |
#13 | Jornalista | Quer a análise de dados feita em Jupyter Notebook | Obter visualização prévia das estatísticas |
Antes de realmente desenvolver o projeto, foi idealizado um layout específico, aplicado em um wireframe e validado com o cliente. Depois, foi criado um protótipo em HTML, CSS e Javascript (que possibilitava algumas interações na interface e também a exibição de gráficos com dados fictícios), onde é possível observar o resultado gerado pelos códigos na demonstração abaixo:
Depois de alguns feedbacks, o time desenvolveu um novo protótipo e layout para o site, contando com mais páginas em sua navegação, além de novos estilos e ícones. Observe o resultado da atualização do protótipo:
As seguintes ferramentas, linguagens, bibliotecas e tecnologias foram usadas na construção do projeto:
- Figma: Prototipagem
- HTML: Estrutura das páginas do site
- CSS: Estilização do site
- JavaScript: Interações do site
- Python: Back-end
- Flask: Servidor
- Jupyter Notebook: Análise de dados
- Pandas: Análise de dados
- NumPy: Análise de dados
- Plotly: Geração de gráficos (Jupyter Notebook)
- Chart.js: Geração de gráficos (site)
- Visual Studio Code: Codificação
- Discord: Comunicação
- GitHub: Versionamento e documentação
- Google Sheets: Acompanhamento do gráfico de burndown
Função | Nome | GitHub | |
---|---|---|---|
Scrum Master | Maria Gabriela G.S. Reis | GitHub | |
Dev Team | Adriano Almeida | GitHub | |
Dev Team | Ana Carolina dos Santos | GitHub | |
Dev Team | Antônio A.R. Nepomuceno | GitHub | |
Dev Team | Caio Vitor Dias | GitHub | |
Dev Team | Giovana Thaís O. Silva | GitHub |
Clique aqui para visualizar o vídeo final do projeto.
Esse projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.