O SoftwareLearning é um aplicativo educacional desenvolvido com o objetivo de apoiar atividades acadêmicas no ensino superior. Ele oferece uma plataforma intuitiva para a interação entre alunos e orientadores, permitindo o acompanhamento contínuo da criação de questões, análise de respostas e feedbacks ao longo do semestre letivo.
Com o suporte de inteligência artificial, o sistema otimiza processos manuais, reduz o tempo de correção e fornece feedbacks rápidos e contextualizados, promovendo um ambiente dinâmico e colaborativo para o ensino e aprendizagem.
O SoftwareLearning foi projetado para cursos de Engenharia de Software e Segurança da Informação, oferecendo suporte tanto ao envio quanto ao acompanhamento de atividades acadêmicas. A ferramenta auxilia na compreensão de conteúdos fundamentais, como Programação Orientada a Objetos e Algoritmos, e permite um acompanhamento detalhado do progresso dos alunos ao longo do semestre.
Com foco em automação, integração com serviços inteligentes e uma interface acessível, o aplicativo busca modernizar o ensino, promovendo organização, autonomia e eficiência.
A arquitetura do SoftwareLearning segue o modelo de microsserviços REST, garantindo que cada serviço funcione de forma independente, escalável e desacoplada. Essa abordagem facilita manutenção, evolução modular do sistema e distribuição de responsabilidades entre os componentes.
O sistema também adota os princípios do Domain-Driven Design (DDD), separando claramente camadas e responsabilidades, o que garante maior organização, reutilização de componentes e clareza no fluxo de dados e processos. Essa estratégia contribui para a robustez, flexibilidade e adaptabilidade da aplicação em ambientes acadêmicos dinâmicos.
O desenvolvimento do SoftwareLearning utilizou ferramentas consolidadas no mercado, com foco em produtividade, integração e compatibilidade tecnológica:
- PyCharm: Implementação dos microsserviços em Python, incluindo lógica de automação e análise de atividades.
- IntelliJ IDEA: Desenvolvimento de componentes auxiliares, integração com múltiplas linguagens e repositórios.
- Android Studio: Desenvolvimento do aplicativo mobile em Kotlin e Java.
- Docker Desktop: Criação e gerenciamento de contêineres para padronização do ambiente e portabilidade de microsserviços.
O projeto combina tecnologias modernas para garantir um sistema robusto, modular e preparado para produção:
- 📱 Java & Kotlin (Mobile): Desenvolvimento do front-end mobile do aplicativo.
- ⚡ Python (FastAPI): Implementação da lógica central dos microsserviços, incluindo automação e integração com IA.
- ☕ Spring Boot (Java): Desenvolvimento de APIs robustas e escaláveis para comunicação entre microsserviços.
- 🗄 PostgreSQL: Banco de dados relacional para armazenamento seguro de informações acadêmicas.
- 🔄 Firebase Realtime Database: Armazenamento de dados em tempo real para acompanhamento do progresso das atividades.
- 🔒 Firebase Authentication: Gerenciamento seguro de autenticação e permissões de usuários.
- 🤖 OpenRouter GPT: Integração com modelo de IA para feedbacks automáticos.
- 🖼 OCR.space API: Processamento de imagens enviadas pelos alunos, como leitura automatizada de gabaritos.
- ☁️ Render: Deploy de microsserviços e banco de dados, garantindo escalabilidade e acesso remoto.
- 💻 Git & GitHub: Controle de versão e colaboração no desenvolvimento do projeto.
- Arquitetura escalável e modular com microsserviços REST e DDD.
- Suporte a múltiplos usuários em produção, com autenticação e permissões robustas.
- Integração com inteligência artificial para feedbacks automatizados.
- Processamento de imagens e correção automatizada de atividades.
- Deploy em nuvem via Render, com banco PostgreSQL, permitindo acesso remoto seguro.
- Integração com Firebase para gerenciamento de dados em tempo real e autenticação.
Assista ao vídeo de apresentação do SoftwareLearning no Google Drive:
Você pode baixar a versão 1.0.0 do aplicativo na página de releases do GitHub:



