Conteúdo Mundo API

Criando o seu Time de APIs, comece pelo Administrador de Dados

A criação de APIs vem sendo apontada como uma solução rápida para disponibilização de dados e integração de sistemas. Há alguns anos atrás elas já eram usadas para disponibilizar recursos de uma aplicação. Hoje elas são muito mais que isso, pois servem tanto como uma estratégia tecnológica, quando de negócio.

Do ponto de vista técnico, APIs são criadas por desenvolvedores para serem utilizadas por outros desenvolvedores. Normalmente elas são gerenciadas via gerenciador de APIs, disponibilizadas em um site, chamado Portal de APIs, junto com sua documentação, exemplos de uso, possíveis erros e toda informação necessárias para o uso da API pelo desenvolvedor de aplicações(apps). Quanto melhor for a percepção do desenvolvedor de apps que utilizará as APIs, onde este possa entender perfeitamente tudo que as APIs oferecem, preferencialmente no modelo self-service, melhor. Contudo, para se chegar até o momento em que suas APIs serão disponibilizadas, um longo do caminho será percorrido e muitas dúvidas surgirão.

Uma dúvida recentemente levantada em uma conversa com alguns desenvolvedores foi a seguinte: Quem é que deve ser responsável em construir as APIs dentro de uma empresa?

Para estes desenvolvedores corporativos o uso de APIs está intimamente ligado a agilidade, velocidade e entregas rápidas. Por isso a opinião deles foi unanime: “As equipes de desenvolvimento devem ser totalmente responsáveis e independentes pela criação e disponibilização das APIs!”, quase que um coro! Entendo este ponto de vista, mas como arquiteta de dados minha opinião é um pouco diferente. Talvez não utilizaria tão fortemente o “totalmente responsáveis ou independente”.

Basta imaginar uma empresa com muitas equipes trabalhando em projetos distintos. Teríamos então varias equipes disponibilizando APIs, cada uma utilizando seus padrões e, se a comunicação não for muito eficiente, podem ocorrer problemas de duplicidade das APIs, falta de documentação correta, diferentes estratégias de versionamento, nomenclatura de atributos e recursos fora dos padrões, dificuldade de ter um inventário das APIs, falta de exemplos, diferentes estratégias de segurança, entre outros problemas.

A construção de uma API pode ser descentralizada, ou seja, podem existir várias equipes desenvolvendo APIs dentro de uma empresa. Contudo, deve também existir uma equipe responsável por garantir que os padrões sejam seguidos. Quem define tais padrões é o Time de APIs (em inglês fica mais bonito: API Team).

O nascimento do Time de APIs

O Time de APIs é composto por vários profissionais e cada um utilizando a sua especialidades para que estes estabeleçam padrões que seguirão as melhores práticas focadas para que as API corporativas seja bem formatas e construídas e de acordo com as políticas de dados e desenvolvimento da empresa.

Dentre as várias responsabilidades do Time de APIs, vamos falar especificamente  do Arquiteto de Dados. 

O Arquiteto de Dados (AD) é responsável por planejar, documentar, gerenciar e integrar os recursos de informação corporativos. Anteriormente chamados de “Administradores de Dados” tinham como tarefa principal atuar na elaboração e manutenção de modelos de dados e elaborar e promover padrões de dados como dicionários, nomes, tipos, etc.

Atualmente com a popularização e o crescimento do uso das APIs, os ADs em algumas empresas atuam garantindo que elas estejam aderentes ao negócio, de acordo com o dicionário corporativo, com as interfaces padronizadas e corretamente definidas, com a documentação completa e disponível no Portal de APIs, fazem a análise de impacto das alterações, avaliam as integrações entre os sistemas, fazem o versionamento e garantem que não exista duplicidade das APIs. Estas tarefas são de extremamente importância para o sucesso da utilização e manutenção das APIs.

Outro item que também devemos considerar é que nem sempre as equipes de AD são grandes o suficiente para atender de forma extremamente rápida várias equipes de desenvolvimento, isso pode ser um gerador de problemas. Neste caso, a gestão de demandas deve ser vista de perto, assim como o alinhamento entre as equipes junto com o Time de APIs. Tal alinhamento engloba: definição dos processos, divulgação, conhecimento de padrões e melhores práticas. Tudo para que a sua empresa tenha APIs que atendem muito bem tanto as características do negócio, quando as técnicas.

No geral, dependendo logicamente do tamanho de sua empresa, um Time de APIs pode ser composto de vários profissionais. Mas, o perfil mais próximo para a definição de padrões tão importantes para APIs é o do AD. Logo, eu digo: Comece pelo AD 🙂

 

Danielle Monteiro (LinkedIn) – Mestre em Engenharia da Computação, Arquiteta de Dados na B3, apaixonada por qualidade, governança, bancos de dados, big data e APIs.

Comentários

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *