Um sistema de monitoramento inteligente de hardware, software e rede de ATMs, com foco em redução de downtime, manutenção preditiva e segurança cibernética.
- Downtime elevado causado por falhas não previstas.
- Custos altos de manutenção corretiva emergencial.
- Ausência de observabilidade e baixa visibilidade sobre o estado real dos equipamentos.
- Governança de TI fragilizada, com SLAs descumpridos e TCO elevado.
- Monitoramento contínuo de CPU, memória, disco e rede.
- Alertas automáticos configuráveis.
- Dashboard de observabilidade em tempo real.
- Integração com sistemas de tickets (Jira).
- Conformidade com PCI-DSS e normas do BACEN.
Falhas em ATMs podem gerar não apenas prejuízos financeiros diretos, mas também impactar a imagem da instituição financeira, reduzindo a confiança dos clientes. Estudos indicam que é possível reduzir downtime em até 30% e custos de manutenção em 25% com soluções preditivas.
Este projeto está dividido em múltiplos repositórios:
- 📂 monitoramento_atm_bd → Banco de Dados
- 📂 monitoramento_atm_python → Agente de Monitoramento (coleta)
- 📂 monitoramento_atm_java → Backend (ETL)
- 📂 projetos_individuais_java_sprint → Projetos individuais em java
- 📂 monitoramento_atm_web → Interface Web (Dashboard)
- 📂 monitoramento_atm_config_aws → Configuração da instancia EC2
- 📂 .github → Documentação geral e configurações
- 🏧 ATMs → origem dos dados (CPU, memória, disco, rede).
- 🐍 Agente Python → coleta de métricas em tempo real e envio para S3.
- ☕ ETL em Java → processamento e transformação dos dados em EC2.
- 🗄️ MySQL → armazenamento centralizado das métricas.
- 🌐 Interface Web (JS, HTML, CSS) → dashboards e relatórios.
- 📢 Integrações → envio de alertas para Jira, Slack e Email.
- 🤖 Módulo de Machine Learning (Python/R) → análises preditivas.
Antes de rodar o projeto, certifique-se de que seu ambiente possui:
- Java 17 ou superior
- MySQL 8 ou superior
- Node.js 20 (se usar front-end separado)
- IDE: IntelliJ, VS Code ou outra de sua preferência
O sistema permite:
- RF01: Cadastrar e gerenciar ATMs
- RF02: Monitorar status de ATMs em tempo real
- RF03: Enviar alertas de indisponibilidade via e-mail ou notificação
- RF04: Visualizar histórico de falhas e uptime dos ATMs
- RNF01: Disponibilidade mínima de 99% do sistema
- RNF02: Segurança no acesso, com autenticação e controle de permissões
- RNF03: Escalabilidade para suportar até X ATMs simultâneas
- RNF04: Interface web responsiva e compatível com navegadores modernos
- Chave de API para serviços de geolocalização (se integrar mapa)
- Clonar os repositórios
git clone https://github.com/upfinity-sisa/monitoramento_atm_bd.git git clone https://github.com/upfinity-sisa/monitoramento_atm_python.git git clone https://github.com/upfinity-sisa/monitoramento_atm_java.git git clone https://github.com/upfinity-sisa/monitoramento_atm_web.git
| Breno Freitas | Catarina Gimenes | Gabriel Pereira | Giovanne Pagano | Gwen Raldes | Omar Dahbur |
