Back-end for Front-end

Resumo

O Back-end for Front-end (BFF) é um padrão arquitetural que cria uma camada de back-end dedicada por front-end (web, mobile, IoT). Essa camada atua como intermediária e adaptadora, agregando e transformando dados de múltiplos serviços para entregar apenas o necessário no formato ideal, reforçando eficiência, desacoplamento e qualidade de experiência, com custos adicionais de governança e manutenção.


Definição

O BFF é uma camada de back-end específica para cada front-end, responsável por orquestrar, agregar e transformar dados de microserviços e sistemas legados, expondo APIs sob medida que reduzem acoplamento e otimizam payloads e latência conforme as necessidades de cada canal.


Características principais


Benefícios


Desafios


Critérios de uso


Relações


Visualização

flowchart LR
    subgraph Frontends
        F1[Web]
        F2[Mobile]
        F3[IoT]
    end

    subgraph BFFs
        B1[BFF Web]
        B2[BFF Mobile]
        B3[BFF IoT]
    end

    subgraph Core Services
        S1[Users]
        S2[Products]
        S3[Orders]
        S4[Notifications]
        S5[Inventory]
        S6[Auth]
    end

    F1 --> B1
    F2 --> B2
    F3 --> B3

    B1 --> S1
    B1 --> S2
    B1 --> S3
    B1 --> S5
    B1 --> S6

    B2 --> S1
    B2 --> S2
    B2 --> S4
    B2 --> S6

    B3 --> S2
    B3 --> S5
    B3 --> S6