2º Ano TDS - Challenge FIAP - Plusoft
2º Ano TDS - Challenge FIAP - Plusoft
2º Ano TDS - Challenge FIAP - Plusoft
CHALLENGE 2024
ANÁLISE E DESENVOLVIMENTO DE SISTEMAS - 2º ANO
2
EMPRESA PARCEIRA
▣ Plusoft – www.plusoft.com.br
3
O Desafio
4
O DESAFIO
5
O DESAFIO
Cada vez mais as empresas estão em busca de entender como os dados
gerados nas interações de encantamento, compra e atendimento podem
ajudar na condução do negócio. Leads, prospects e clientes geram dados
que podem ser transformados em insights e ações. Análise, predição e
prescrição são elementos fundamentais nessa jornada. Como a AI
generativa e o deep analytics podem ajudar nesse processo? Empresas
que entregarem essa proposta de valor podem crescer muito rápido em
um mercado avido por informações.
6
ALGUNS EXEMPLOS
Modelo de Previsão de Comportamento do Cliente: Desenvolvimento de um modelo preditivo que utiliza técnicas de machine
learning para prever o comportamento futuro dos clientes com base em seus dados históricos de interação, permitindo que a empresa
antecipe suas necessidades e personalize suas estratégias de engajamento.
Sistema de Recomendação Personalizada: Construção de um sistema de recomendação inteligente que utiliza algoritmos de AI
generativa para analisar os padrões de comportamento dos clientes e sugerir produtos ou serviços relevantes de acordo com seus
interesses e preferências individuais.
Análise de Sentimento e Feedback Automatizado: Implementação de uma solução de análise de sentimento e feedback
automatizado que utiliza técnicas avançadas de processamento de linguagem natural (NLP) para extrair insights úteis a partir das
interações dos clientes em diferentes canais de comunicação, como e-mails, mídias sociais e chats online.
Otimização de Campanhas de Marketing: Desenvolvimento de um sistema de otimização de campanhas de marketing que utiliza
análises profundas de dados para identificar os canais e estratégias mais eficazes para atrair e converter leads em clientes,
maximizando o retorno sobre o investimento (ROI) em marketing.
Assistente Virtual Inteligente para Atendimento ao Cliente: Criação de um assistente virtual baseado em AI generativa que seja
capaz de fornecer suporte e assistência personalizada aos clientes, respondendo às suas perguntas, resolvendo problemas comuns e
encaminhando consultas mais complexas para os canais de atendimento humano quando necessário.
7
Normas Básicas
8
GRUPOS
▣ Máximo de 5 integrantes, sem exceções;
▣ Não é permitido formar grupos com alunos de outros cursos ou anos (TDS ON é
outro curso).
9
ENTREGAS
10
ENTREGAS
1º Entrega 2º Entrega
15/04/2024 13/05/2024
11
Responsabilidades
12
ALUNOS
13
PROFESSORES
▣ Manter os dados dos grupos de alunos atualizada (a gestão e formação dos grupos é
de responsabilidade dos alunos);
Professores: Karina Costa, Luis Carlos Silva, Thiago Keller e Thiago Yamamoto.
15
Premiação
16
PREMIAÇÃO
▣ Premiação em dinheiro;
Imagens ilustrativas 17
Cronograma
18
CRONOGRAMA – 1º Semestre
19
MENTORIAS
▣ Caso o grupo não participe de uma mentoria, o grupo será penalizado em 10 pontos em todas as
disciplina (pontuação de 0 a 100);
▣ Neste semestre haverá duas sessões de mentoria. A não participação do grupo em ambas resultará
em um desconto de 20 pontos em cada disciplina. Caso o grupo falte a apenas uma, o desconto será
de 10 pontos.
▣ O desconto será para todos do grupo, não é individual, ou seja, se pelo menos um integrante
participar da mentoria, o grupo não terá a nota descontada.
▣ Caso a apresentação para a empresa esteja significativamente abaixo das expectativas, indicando
falta de preparação adequada por parte do grupo, poderá haver um desconto na nota
20
1º Entregas
21
1º Entrega
Gere um PDF com o material desenvolvido e suba a sua resposta da challenge sprint - entregas fora do
formato perderão 10%
22
1º Entrega (Banco Relacional)
MASTERING RELATIONAL AND NON-RELATIONAL DATABASE
Caso o grupo opte por um banco de dados relacional a entrega será:
❑ Entregável: arquivo zipado contendo o pdf. Projeto de Banco de Dados Relacional e arquivo .sql com os scripts
separados por tabela e pdf do modelo logico e físico.
❑ Observação: A boa organização do conteúdo dos arquivos é de suma importância para apontamento da nota, caso
haja falha nesta organização a correção pode vir a ser comprometida acarretando diminuição da nota.
23
1º Entrega (Banco Não Relacional)
MASTERING RELATIONAL AND NON-RELATIONAL DATABASE
Caso o grupo opte por um banco de dados não relacional a entrega será:
❑ Caso seja MongoDB: Realizar 5 cinco documentos em .JSON (ou BSON), com no mínimo 10 atributos
preenchidos.
❑ Entregável: arquivo zipado contendo o pdf. Projeto de Banco de Dados e os arquivos de script
referente ao banco de dados escolhido
❑ Observação: A boa organização do conteúdo dos arquivos é de suma importância para apontamento
da nota, caso haja falha nesta organização a correção pode vir a ser comprometida acarretando
diminuição da nota.
24
1º Entrega
A partir da solução identificada pelo seu grupo, justifique como a técnica de Virtualização pode
contribuir na entrega desse importante projeto. (até 100 pontos)
A entrega deve ser em um arquivo PDF e entregue via Portal do Aluno, na área especificada para as
entregas do Challenge, sua pontuação irá variar de acordo com a qualidade da entrega.
25
1º Entrega
DISRUPTIVE ARCHITECTURES: IOT, IOB &
GENERATIVE IA
Objetivo Principal:
❑ Criação de vídeo pitch (máximo: 3 minutos) com a apresentação macro da ideia do projeto.
Objetivos Específicos:
❑ Apresentar o tema escolhido pelo grupo.
❑ Apresentar a explicação do problema.
❑ Apresentar as alternativas de solução.
❑ Descrever os possíveis frameworks/bibliotecas Python que serão utilizados (seja específico, quais e por
quais razões)
❑ Descrever de que forma os conceitos de Machine Learning / IA poderão ser utilizados no
desenvolvimento do projeto (seja específico neste requisito).
Página 01 / 02
26
1º Entrega
DISRUPTIVE ARCHITECTURES: IOT, IOB &
GENERATIVE IA
Critérios de Avaliação:
❑ Organização e a estrutura do material gerado (até 30 pontos).
❑ Apresentação do vídeo de forma clara (até 30 pontos).
❑ Abrangência, profundidade e coerência para a aplicação de conceitos de Machine Learning / IA com
apresentação das possíveis ferramentas / frameworks a serem aplicados na solução (até 40 pontos)
Entregável:
❑ Um arquivo .zip com o link do vídeo carregado no Youtube, conforme objetivos acima.
Condições de entrega:
❑ A integridade e o conteúdo do arquivo entregue são de responsabilidade dos integrantes do grupo. Arquivos
entregues sem conteúdo ou com arquivos corrompidos não serão considerados.
❑ Não serão aceitos arquivos enviados pelo Teams ou fora do prazo.
Página 02 / 02
27
1º Entrega (1/5)
JAVA ADVANCED
❑ Produza pelo menos um dos domínios da sua solução tecnológica proposta utilizando Java e
Spring. Esta solução deverá ser capaz de persistir, manter e consultar os dados em um SGBD
Relacional (Preferencialmente Oracle). Os dados gerados por meio da solução de TI proposta pela
equipe será primordial para a construção da IA generativa e do deep analytics que foram
solicitados pelo cliente para a tomada de decisões estratégicas (baseadas em análise de dados e
modelos preditivos).
28
1º Entrega (2/5)
JAVA ADVANCED
Criar aplicação Java com Spring Boot que ajude a resolver um problema (utilize a criatividade). A aplicação deverá
respeitar os fundamentos da Programação Orientada a Objetos e as classes de entidade deverão estar relacionadas e
mapeadas com JPA e deverá ainda:
❑ Na primeira Sprint, a API deverá estar de acordo com o modelo de maturidade nível 1;
❑ Utilizar os Design Patterns como Singleton, Repositoy com Genérics quando necessário;
❑ A Gestão de Configuração dos artefatos de software deverá ser demonstrada pela equipe, portanto todos os artefatos produzidos
deverão estar no Github e os professores deverão ter acesso ao repositório.
29
1º Entrega (3/5)
JAVA ADVANCED
❑ Apresentar os testes dos endpoints da API (Utilize o Postman ou Insominia) exporte as requisições para que o professor
possa validar o funcionamento.
❑ b) (até 10 Pontos) Imagens explicativas da arquitetura, definição das classes de domínio da aplicação e o
respectivo Diagrama de Classes de Entidade. O Diagrama de Entidade e Relacionamento (DER) e o
Diagrama de Classe das Entidades deverão ser coerentes. Se necessário faça uma breve explicação sobre os
relacionamentos e as constraints envolvidas;
❑ c) (até 40 Pontos) Implementação das classes de Entidade necessárias para solução do problema que se
propõe resolver. Atenção ao correto encapsulamento, à tipagem dos atributos e ao Mapeamento Objeto
Relacional com JPA e Hibernate (A equipe deverá demonstrar a cada Sprint que houve evolução em relação
à sprint anterior);
30
1º Entrega (4/5)
JAVA ADVANCED
❑ d) (até 15 Pontos) A aplicação respeita os conceitos fundamentais do REST criados por Roy
Fielding (RESTful) e API está de acordo com o modelo de maturidade nível 1 proposto por Leonard
Richardson.
❑ e) (até 10 Pontos) A Gestão de Configuração dos Artefatos de Software foram demonstrados pela
equipe. Ou seja, todos os artefatos produzidos estão no Github e os professores têm acesso ao
repositório.
❑ f) (até 10 pontos) Envio do link para o projeto público compartilhado no github contendo entre
outros:
1) Toda documentação;
2) Código-fonte;
3) Arquivo README.md com texto contendo:
3.1) Nome da aplicação;
31
1º Entrega (5/5)
JAVA ADVANCED
❑ 3.2) Nome completo e breve apresentação dos integrantes do Grupo (Atividade da qual ficou
responsável no projeto);
3.3) instrução de como rodar a aplicação;
3.4) imagem dos diagramas;
3.5) link para vídeo apresentando a Proposta Tecnológica, o público-alvo da aplicação e os
problemas que a aplicação se propõe a solucionar;
3.6) Listagem de todos os endpoints (Documentação da API);
32
1º Entrega
❑ Descrição:
o Protótipo não funcional wireframe de uma solução mobile com no mínimo 5
telas, acompanhado de explicações detalhadas para cada tela. (70 pontos)
o Incluir cenários possíveis de sucesso ou erro. (30 pontos)
❑ Formato de Entrega: Documento do Word com imagens e explicações, contendo o
nome completo e RM de todos os integrantes do grupo na capa.
❑ Dicas de ferramentas: Software de prototipação como Figma, Protopie, Photoshop,
Miro e etc;
33
1º Entrega (1/2)
Na primeira entrega, estaremos concentrados em desenvolver e aprofundar a ideia central. Por sua
vez, a segunda entrega focará na execução prática do produto, seguindo o roteiro estabelecido
inicialmente. Assim, a primeira fase engloba a formulação da ideia, acompanhada de estudos e
pesquisas necessários para conceber a solução ideal.
▣ Determinar quem são as pessoas afetadas pelo problema em questão, delimitando nosso
público-alvo e potenciais clientes.
34
1º Entrega(2/2)
▣ Clarificar como nossa solução gera valor para o público-alvo, detalhando o funcionamento e
os benefícios que oferece.
▣ Mapear os principais concorrentes, tanto diretos quanto indiretos, para entender o cenário
competitivo.
▣ Especificar como o projeto gerará receita, apresentando as diversas fontes de renda previstas.
Apresentação pode ser um pdf/ppt ou outro arquivo similar. Aproveite para estudar a ideia e construir
uma versão inicial do material que será apresentado para a banca da plusoft.
35
2º Entregas
36
2º Entrega
37
2º Entrega (Banco Relacional)
❑ Deverá ser construído uma rotina em PL/SQL que gere uma saída em JSON. Essa saída
deverá alimentar um banco de dados NoSQL MongoDB, que contenha no mínimo 10
documentos. (60)
❑ Na aplicação, deverá ser construída uma interface que exiba os dados consultados no
banco de dados NoSQL. (20)
❑ Exportar um dataset dos dados inseridos com a procedure. (20)
❑ Entregavel: arquivo zip contendo a procedure criada, print de execução dela em pdf, print
de geração do dataset, prints da interface construída com os dados e o dataset gerado.
01) De acordo com a arquitetura e tecnologia da sua solução proposta, qual é o melhor tipo de nuvem
(Pública, Privada ou Híbrida) e tipos de serviços (SaaS, PaaS e IaaS) que se encaixam em sua solução?
Justifique detalhadamente sua escolha. (até 35 pontos)
O que será avaliado:
40
2º Entrega (2/3)
02) Definir e justificar os possíveis recursos de Cloud Computing que podem ser utilizados em sua
solução. São esperados no mínimo três recursos que podem ser utilizados em Cloud. Nesse item o grupo
pode utilizar qualquer recurso nos serviços prestados em nuvem: SaaS, PaaS e IaaS. (até 35 pontos)
41
2º Entrega (3/3)
03) Desenhe a arquitetura macro de sua solução com o uso dos recursos em nuvem (até 30 pontos)
Ferramenta Sugerida para criar o desenho da Arquitetura: Visual Paradigm (apenas sugestão...)
A entrega deve ser em um arquivo PDF e entregue via Portal do Aluno, na área especificada para
as entregas do Challenge, sua pontuação irá variar de acordo com a qualidade da entrega.
42
2º Entrega
DISRUPTIVE ARCHITECTURES: IOT, IOB &
GENERATIVE IA
Objetivo Principal:
❑ Apresentação de uma versão Beta (simples) envolvendo as principais ideias e os recursos que serão
utilizados no projeto.
Objetivos Específicos:
❑ Apresentar as diferenças entre a etapa atual do projeto e a proposta apresentada na primeira entrega.
❑ Apresentar, com mais detalhes em relação à primeira entrega, os frameworks/bibliotecas Python, APIs e
demais recursos/ferramentas que serão utilizados no desenvolvimento.
❑ Explicar, de forma breve, o funcionamento dos recursos/ferramentas (descritos acima) dentro da aplicação
que será desenvolvida.
❑ Descrever resumidamente de que forma os conceitos de Machine Learning / IA estão sendo utilizados no
desenvolvimento do projeto.
Página 01 / 02
43
2º Entrega
DISRUPTIVE ARCHITECTURES: IOT, IOB &
GENERATIVE IA
Critérios de Avaliação:
❑ Organização e a estrutura do material gerado (até 30 pontos).
❑ Apresentação do vídeo de forma clara (até 30 pontos).
❑ Abrangência, profundidade e coerência para a aplicação de conceitos de Machine Learning / IA com
apresentação das possíveis ferramentas / frameworks a serem aplicados na solução (até 40 pontos).
Entregável:
❑ Um arquivo .zip com o link do repositório do projeto, contendo o link do novo vídeo e a documentação
organizada, conforme descrito nos objetivos.
Condições de entrega:
❑ A integridade e o conteúdo do arquivo entregue são de responsabilidade dos integrantes do grupo.
Arquivos entregues sem conteúdo ou com arquivos corrompidos não serão considerados.
❑ Não serão aceitos arquivos enviados pelo Teams ou fora do prazo.
Página 02/ 02
44
2º Entrega (1/5)
JAVA ADVANCED
❑ A equipe deverá demonstrar evolução entre a primeira e a entrega que está sendo realizada nesta
segunda Sprint.
❑ Esta solução deverá se manter capaz de persistir, alterar e consultar os dados em um SGBD
Relacional (Preferencialmente Oracle). Os dados gerados por meio da solução de TI proposta pela
equipe será primordial para a construção da IA generativa e do deep analytics que foram
solicitados pelo cliente para a tomada de decisões estratégicas (baseadas em análise de dados e
modelos preditivos).
45
2º Entrega (2/5)
JAVA ADVANCED
Aperfeiçoar a aplicação Java com Spring Boot em desenvolvimento. A aplicação deverá respeitar os fundamentos
da Programação Orientada a Objetos e as classes de entidade deverão estar relacionadas e mapeadas com JPA e
deverá ainda:
❑ A API deverá estar de acordo com o modelo de maturidade nível 2 proposto por Leonard Richardson Utilizar os Design Patterns
como Singleton, Repositoy com Genérics quando necessário;
❑ A Gestão de Configuração dos artefatos de software deverá ser demonstrada pela equipe, portanto todos os artefatos produzidos
deverão estar no Github e os professores deverão ter acesso ao repositório.
46
2º Entrega (3/5)
JAVA ADVANCED
❑ Apresentar os testes dos endpoints da API (Utilize o Postman ou Insominia) exporte as requisições para que
o professor possa validar o funcionamento.
❑ b) (até 10 Pontos) Imagens explicativas da arquitetura, definição das classes de domínio da aplicação e o
respectivo Diagrama de Classes de Entidade. O Diagrama de Entidade e Relacionamento (DER) e o
Diagrama de Classe das Entidades deverão ser coerentes. Se necessário faça uma breve explicação sobre os
relacionamentos e as constraints envolvidas;
❑ c) (até 40 Pontos) Implementação das classes de Entidade necessárias para solução do problema que se
propõe a resolver. Atenção ao correto encapsulamento, à tipagem dos atributos e ao Mapeamento Objeto
Relacional com JPA e Hibernate (A equipe deverá demonstrar a cada Sprint que houve evolução em relação
à sprint anterior);
47
2º Entrega (4/5)
JAVA ADVANCED
❑ d) (até 15 Pontos) A aplicação respeita os conceitos fundamentais do REST criados por Roy
Fielding (RESTful) e API está de acordo com o modelo de maturidade de proposto por Leonard
Richardson
❑ e) (até 10 Pontos) A Gestão de Configuração dos Artefatos de Software foram demonstrados pela
equipe. Ou seja, todos os artefatos produzidos estão no Github e os professores têm acesso ao
repositório.
❑ f) (até 10 pontos) Envio do link para o projeto público compartilhado no github contendo entre
outros:
1) Toda documentação;
2) Código-fonte;
3) Arquivo README.md com texto contendo:
3.1) Nome da aplicação;
48
2º Entrega (5/5)
JAVA ADVANCED
❑ 3.2) Nome completo e breve apresentação dos integrantes do Grupo (Atividade da qual ficou
responsável no projeto);
3.3) instrução de como rodar a aplicação;
3.4) imagem dos diagramas;
3.5) link para vídeo apresentando a Proposta Tecnológica, o público-alvo da aplicação e os
problemas que a aplicação se propõe a solucionar;
3.6) Listagem de todos os endpoints (Documentação da API);
❑ ATENÇÃO: A equipe deverá deixar BEM CLARO que houve evolução em comparação a entrega
da Sprint anterior. 49
2º Entrega
❑ Descrição:
o Diagrama demonstrando a integração/comunicação do aplicativo com
API/banco de dados e sistemas externos. (30 pontos)
o Programação visual de 5 telas do aplicativo funcional. (40 pontos)
o Realizar chamadas de uma API (login, esqueceu senha e ao menos 3 telas
fazendo requisições). (30 pontos)
❑ Formato de Entrega: Documento do Word com imagens, explicações de cada
integração, e programação visual das telas, contendo o nome completo e RM de
todos os integrantes do grupo na capa.
50
2º Entrega(1/2)
❑ Visão macro dos sistemas e aplicativos, destacando como se integram através de tecnologias
como API Rest, aplicativos móveis, IoT, chatbots, inteligência artificial, aplicativos web e
bancos de dados. Este esquema facilitara o entendimento das funcionalidades e o fluxo de
dados entre os componentes da solução.
51
2º Entrega(2/2)
52
DÚVIDAS?
Procure o Scrum Master mais perto!
Obs. Dúvidas sobre as entregas das disciplinas, procure o professor responsável pela disciplina.
53