Skip to content
@ALFAC-Org

ALFAC

Repositórios para o "Tech Challenge", executado pelo grupo 34, na turma 7SOAT em 2024. Curso da FIAP - Pós Tech Software Architecture.

FIAP Pós Tech - Software Architecture - Tech Challenge

Repositórios para o "Tech Challenge", executado pelo grupo 34, na turma 7SOAT em 2024. Curso da FIAP - Pós Tech Software Architecture.

Os repositórios desta org tem como por objetivo, fornecer uma plataforma de pedidos de fast food. A plataforma permite aos clientes seguir o fluxo comum de um pedido: escolher o lanche com seu complemento, acompanhamento, bebida e sobremesa.

Ao final, o cliente irá realizar o pagamento deste pedido, através de um QR Code e por fim, receber seu pedido.

Tabela de conteúdos

Tecnologia

  • Linguagem de Programação: Java 17
  • Framework: Spring Boot
  • Gerenciador de dependências: Maven
  • Banco de dados: MySQL 8
  • Documentação e uso de API's: Swagger
  • Conteinerização: Docker
  • Orquestração: Kubernetes

Na Nuvem

  • Web Services: AWS
  • IaC: Terraform - v1.9.5

Requisitos

  • Docker (versão 27.0.3) - para rodar localmente
  • Kubernetes (versão 1.30) - para rodar localmente e na nuvem (AWS)
  • Terraform (versão 1.9.5) - para rodar na nuvem (AWS) e GitHub Actions

Arquitetura

Visão Geral

A aplicação está estruturada no padrão de Clean Architecture. Pode ser executada tanto via Docker, Kubernetes e Terraform. Podendo ser hospedada tanto localmente ou na nuvem, usando serviços como AWS. A interação da aplicação se dá através de APIs com o Swagger disponibilizado.

TODO

Fluxo do usuário

Como fazer um pedido em nossa plataforma?

Veja em Fluxo do usuário.

Roadmap

FASE 1

Veja em https://github.com/ALFAC-Org/food/tree/hexagonal#roadmap

FASE 2

Veja em https://github.com/ALFAC-Org/food/tree/fase2-clean-arch?tab=readme-ov-file#roadmap

FASE 3
  • 1. Implementar um API Gateway e um function serverless para autenticar o cliente com base no CPF.

  • 2. Implementar as melhores práticas de CI/CD para a aplicação, segregando os códigos em repositórios, por exemplo:

    • 1 repositório para o Lambda - repositório food-serveless-function.
    • 1 repositório para sua infra Kubernetes com Terraform - repositório food-cloud-infra.
    • 1 repositório para sua infra banco de dados gerenciáveis com Terraform - repositório food-database. 4. 1 repositório para sua aplicação que é executada no Kubernetes - repositório food
  • 3. Os repositórios devem fazer deploy automatizado na conta da nuvem utilizando actions. As branchs main/master devem ser protegidas, não permitindo commits direto. Sempre utilize pull request.

  • 4. Melhorar a estrutura do banco de dados escolhido, documentar seguindo os padrões de modelagem de dados e justificar a escolha do banco de dados.

  • 5. Você tem a liberdade para escolher qual a infra de nuvem desejar, mas terá de utilizar os serviços serverless: functions (AWS Lamba, Azure functions ou Google Functions, por exemplo), banco de dados gerenciáveis (AWS RDS, Banco de Dados do Azure ou Cloud SQL no GCP, por exemplo), sistema de autenticação (AWS Cognito, Microsoft AD ou Google Identity platform no GCP, por exemplo).

FASE 4

TODO

Entregas

  • FASE 1 - 28/05/2024 - FEITO
  • FASE 2 - 30/07/2024 - FEITO
  • FASE 3 - 01/10/2024 - FEITO
  • FASE 4 - 03/12/2024 - AGUARDANDO

Membros

Nome RM E-mail GitHub
Leonardo Fraga RM354771 rm354771@fiap.com.br @LeonardoFraga
Carlos Henrique Carvalho de Santana RM355339 rm355339@fiap.com.br @carlohcs
Leonardo Alves Campos RM355568 rm355568@fiap.com.br @lcalves
Andre Musolino RM355582 rm355582@fiap.com.br @amusolino
Caio Antunes Gonçalves RM354913 rm354913@fiap.com.br @caio367

Pinned Loading

  1. food food Public

    Uma plataforma de pedidos de fast food

    Java

  2. food-cloud-infra food-cloud-infra Public

    Este é um repositório Git que utiliza o Terraform para gerenciar infraestrutura na nuvem. Nele, você encontrará arquivos de configuração do Terraform que definem a infraestrutura como código.

    HCL

  3. food-database food-database Public

    Repositório para armazenar a criação do banco de dados na cloud

    HCL

  4. food-serveless-function food-serveless-function Public

    Repositório para as funções na cloud

    JavaScript

  5. food-cliente food-cliente Public

    Repositório para armazenar os clientes da plataforma food

    Java

  6. food-produto food-produto Public

    Repositório para armazenar os produtos ofertados pela plataforma food

    Java

Repositories

Showing 10 of 12 repositories
  • video-studio Public

    Repositório para o projeto de hackathon (2024 - 7SOAT - Grupo 34) do curso de Arquitetura de Software da FIAP Pós Tech. O projeto gerencia o envio e processamento de vídeos, transformando em imagens em um arquivo .zip. Além do cadastro e autenticação dos usuários desta plataforma.

    ALFAC-Org/video-studio’s past year of commit activity
    Java 0 0 0 0 Updated Feb 8, 2025
  • video-cloud-infra Public

    Este é um repositório Git que utiliza o Terraform para gerenciar infraestrutura na nuvem. Nele, você encontrará arquivos de configuração do Terraform que definem a infraestrutura como código da plataforma video-studio.

    ALFAC-Org/video-cloud-infra’s past year of commit activity
    HCL 1 0 0 0 Updated Feb 7, 2025
  • video-serveless-function Public

    Repositório para as funções na cloud

    ALFAC-Org/video-serveless-function’s past year of commit activity
    Python 0 MIT 0 0 0 Updated Feb 7, 2025
  • github-workflows Public

    Um repositório para centralizar worklfows comuns à organização ALFAC-Org

    ALFAC-Org/github-workflows’s past year of commit activity
    0 0 0 0 Updated Feb 4, 2025
  • hackathon Public

    Repositório para o projeto de hackathon (2024 - 7SOAT - Grupo 34) do curso de Arquitetura de Software da FIAP Pós Tech

    ALFAC-Org/hackathon’s past year of commit activity
    0 0 0 0 Updated Jan 18, 2025
  • food Public

    Uma plataforma de pedidos de fast food

    ALFAC-Org/food’s past year of commit activity
    Java 0 0 0 0 Updated Dec 2, 2024
  • food-produto Public

    Repositório para armazenar os produtos ofertados pela plataforma food

    ALFAC-Org/food-produto’s past year of commit activity
    Java 0 0 0 0 Updated Dec 2, 2024
  • food-cliente Public

    Repositório para armazenar os clientes da plataforma food

    ALFAC-Org/food-cliente’s past year of commit activity
    Java 0 0 0 0 Updated Dec 2, 2024
  • food-database Public

    Repositório para armazenar a criação do banco de dados na cloud

    ALFAC-Org/food-database’s past year of commit activity
    HCL 0 0 0 0 Updated Dec 2, 2024
  • food-serveless-function Public

    Repositório para as funções na cloud

    ALFAC-Org/food-serveless-function’s past year of commit activity
    JavaScript 0 0 0 0 Updated Dec 2, 2024

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…