- Proposta
- Introdução
- Planejamento de Desenvolvimento - Sprints
- Modelo Analítico
- Tecnologias Utilizadas
- Protótipo
- Documentações
- Equipe de Desenvolvimento
- Professores Orientadores
Este é um repositório referente a API (Aprendizagem por Projetos Integrados), que envolve as seguintes disciplinas do 6º semestre do curso de Análise e Desenvolvimentos de Sistemas da Fatec-SJC (Faculdade de Tecnologia de São José dos Campos), 2º semestre de 2021:
- Inteligência Artificial
- Tópicos Especiais em Informática
- Gerenciamento de Projetos
- Gestão e Gerenciamento de TI
- Gestão de Equipes
- Empreendedorismo
A proposta desse projeto é desenvolver um software capaz de resolver o problema proposto pela empresa UOL, que é a empresa parceira desse projeto API.
A UOL é uma empresa brasileira fornecedora de conteúdo, produtos e serviços da Internet, dentre esses serviços tem o BOL - Brasil Online que é um portal de internet, serviço de webmail.
Vem aumentando constantemente o números de spammers (pessoas que enviam conteúdo de spam), que são as pessoas responsáveis pelo envio de mensagens não solicitadas, em sua maioria publicitária, enviadas em massa, que nós mais conhecemos como mensagens de spam , do termo “Sending and Posting Advertisement in Mass” (tráfego de publicidade em massa) ou “Stupid Pointless Annoying Messages” (mensagem de propósito irritante), de e-mail, porém alguns desses e-mails podem conter links e arquivos em anexo com códigos maliciosos.
Os spammers geralmente criam várias contas de e-mail para conseguir enviar uma quantidade maior de spam para atingir mais pessoas o possível.
O intuito desse projeto é desenvolver um software que seja capaz de identificar todas as contas que esse mesmo usuário spammer criou, para que posteriormente alguma providência seja tomada.
O problema é que esses spammers maliciosos geralmente fraudam suas informações de IP do computador, celular e entre outras informações que são solicitadas/coletadas em seu cadastro de conta e-mail no BOL.
É possível visualizar nosso modelo analítico utilizando Machine Learning Clicando Aqui
Para o desenvolvimento desse projeto foi determinada a utilização de tecnologias adequadas para o contexto. Estas tecnologias selecionadas foram agrupadas por áreas de atuação e cada uma é detalhada sobre sua utilidade dentro do projeto, elas são:
Azure DevOps: Plataforma utilizada para o gerenciamento, planejamento, colaboração e visualização de entregas do projeto.
Google Drive: é um serviço de armazenamento e sincronização de arquivos.
Figma: Framework utilizado para a prototipação do projeto, permitindo o cliente ter uma melhor visualização do produto final, com modelos interativos e normalmente com o visual próximo ao do produto final.
Microsoft Project: Ou MS Project é um software de gerenciamento de projetos que atua em diferentes etapas da gestão. Ele é uma ferramenta de apoio com um grande número de recursos para gerenciar um projeto do início ao fim.
Eclipse: IDE para desenvolvimento Java.
Spring Tools Suite: é uma IDE baseada em Eclipse que dá algumas facilidades para trabalhos com o Spring no geral.
Visual Studio Code: Plataforma utilizada para a interface de desenvolvimento (IDE) do projeto. Neste projeto, a ferramente será utilizada para a construção do Produto Mínimo Viável (MVP) da aplicação e do projeto completo.
Java: linguagem de programação orientada a objetos.
Spring Boot: framework Java open source que tem como objetivo facilitar esse processo de configurações iniciais em aplicações Java.
JavaScript: linguagem de programação interpretada estruturada, de script em alto nível com tipagem dinâmica fraca e multiparadigma. Juntamente com HTML e CSS, o JavaScript é uma das três principais tecnologias da World Wide Web.
React: é uma biblioteca JavaScript de código aberto com foco em criar interfaces de usuário em páginas web.
PostgreSQL: sistema gerenciador de banco de dados objeto relacional, desenvolvido como projeto de código aberto.
Veja mais detalhes sobre as tecnologias utilizadas...
A prototipação é essencial para a visualização do projeto antes de começar o desenvolvimento. Para visualizar a prototipação dessa aplicação e navegar entre as telas acesse o link.
Veja mais detalhes sobre as telas prototipadas...
A documentação é uma parte essencial de uma aplicação. Ela é o responsável por informar e documentar sobre o produto/projeto.
Veja mais detalhes sobre as documentações desse projeto...


