Assine nossa
newsletter

Como alterar a arquitetura de um sistema de serviços e torná-lo flexível

30.11.2023
Autor: Colab
governo

Esse papo começou comigo e com a Vivian (Gerente de Produto do Colab) entendendo melhor como poderíamos trazer mais opções de arquitetura da informação e experiência que temos em todo nosso ecossistema, com isso descobrimos que não poderíamos repensar a estrutura focada somente nas aplicações, tínhamos que abstrair o conceito de flexibilização como se fosse um serviço, desacoplado de tudo.

Pensando nisso, começamos a vislumbrar um caminho onde nós deveríamos moldar a experiência não com regras fixas, mas sim com regras que seriam flexíveis por si só, nisso nasceu o conceito do service-provider.

Ok, ok mas me explica ai o que é essa parada…

O service-provider é um conjunto de arquiteturas que vai servir para moldar a experiência do usuário baseado em determinados inputs:

Basicamente, recebemos a entidade inteira do usuário e junto com nossas outras regras flexíveis, conseguimos prover insumos necessários para que ele tenha uma experiência customizada, dependendo de onde ele esteja, quem ele seja ou em que momento ele está interfaceando conosco.

Do que é feito o service-provider?

Agora que estamos na mesma página do que o service-provider vai fazer, vamos mais fundo para entender como ele pode ser concebido.

Existe um conceito muito conhecido no mundo de desenvolvimento que são os micro serviços, que nada mais são do que funções desacopladas do nosso core para podermos ter um gerenciamento melhor. O service-provider nasceu sendo pensado em um micro serviço porém, na primeira semana, já vimos que esse modelo não iria funcionar.

Não me entenda mal, micro serviços são ótimos, mas precisávamos de algo que fosse componentizado e totalmente desacoplado da arquitetura que temos hoje, agnóstico à regra de negócio que temos hoje, que funcionasse para qualquer base code que temos ou venhamos a ter.

A pergunta óbvia é: podemos fazer isso quando trabalhamos com serviços? Evidentemente, a resposta é sim! Os serviços não têm que ser feitos de pequenos monólitos. Em vez disso, podemos ser projetados com base nos princípios SOLID, recebendo uma estrutura de componentes que suporte inclusão de novos componentes sem que se alterem componentes já existentes dentro do serviço.

Autor: Colab

Aprenda a digitalizar serviços públicos com nosso curso gratuito exclusivo. Transforme a experiência do cidadão e aumente a eficiência da sua prefeitura.


Inscreva-se!

Colab na Mídia

22.04.2024

Veja como o Colab melhorou a eficiência de alguns municípios

17.04.2024

Veja como o Colab atua na prevenção contra a dengue

16.04.2024

Atendimento multicanal: veja detalhes da parceria entre Colab e Prefeitura de Santo André

10.04.2024

Otimize os dados do seu município e melhore a prestação de serviços

13.03.2024

Indicadores de performance na gestão pública: fatores para levar em consideração

22.02.2024

Segurança de dados: um ponto que merece a atenção das gestões públicas

13.02.2024

Transformação digital: como ela pode contribuir na gestão pública colaborativa

08.02.2024

4 fatores que comprovam a relevância da inovação no governo

16.05.2024

Saiba qual é o poder do design de serviços na transformação do setor público