Hoje está claro que o canal mobile é muito importante para as empresas e que, devido as suas características únicas, são necessárias APIs especialmente pensadas para ele. Mas a pressão por prazo normalmente faz com que o bom design seja substituído por uma API que funcione num curto espaço de tempo. Isso é um erro porque subestima o papel das APIs mobile na estratégia multi canais.Nesse artigo, vamos explorar a visão do Forrester sobre 14 guidelines, divididas em uma plataforma de engajamento em 4 camadas. Essas guidelines posicionam as APIs mobile no contexto empresarial.Caso você não conheça, a Forrester Research é uma das mais influentes empresas para pesquisa de mercado, especialmente na área de tecnologia.
Aplicativos móveis são um dos principais motivadores para quem compra produtos de API Management, e é obvio que essas Apps precisam acessar os dados, transações, nuvem e outros recursos da empresa.A questão do design dessas APIs vai muito além de usar RESTful ou não sobrecarregar mensagens com muitos dados. As APIs mobile estão na intersecção de 3 domínios de design:
Na visão do Forrester, os 3 domínios de design se alinham com a plataforma de engajamento em 4 camadas, conforme figura abaixo:
Com esses 3 domínios e 4 camadas em mente, o Forrester identifica processos e práticas para o design de APIs além de princípios para as APIs propriamente ditas.
Antes de começar o design de uma API mobile, é preciso saber como a app mobile irá ser usado e que tipo de recurso ele irá precisar. Para que a perspectiva do design da API seja balanceada, cada um dos 7 itens no guia abaixo está associado a um contra-ponto que precisa ser observado para garantir o balanceamento.1. Ponto: Comece com o design da experiência do usuário, permissões, operação off-line, fluxo do processo, etc. Contra-ponto: Atenção para o design da experiência mobile desalinhada dos outros canais de engajamento.2. Ponto: Parta da intenção do usuário até chegada no design da API Contra-ponto: Cuidado para não desenhar APIs que só servem para um canal3. Ponto: Use os modelos de domínios de negócio para guiar o design de APIs Contra-ponto: Atenção para modelos de negócio antiquados que não levam em consideração a localização ou outras formas de contexto4. Ponto: Inclua aspectos de orientação a dados e orientação a ações do domínio de negócios Contra-ponto: Atenção para modelos de negócios muito restritos que não contemplam variação e evolução5. Ponto: Identifique claramente cada API como sendo específica de um canal, multicanal ou enterprise API Contra-ponto: Cuidado ao assumir que uma API deve ser específica do canal6. Ponto: Pergunte-se “é assim que fazemos negócio?” para manter a questão do multicanal em mente Contra-ponto: Cuidado para não ignorar adaptações técnicas e específicas do canal7. Ponto: Desenhe prevendo o monitoramento da operação e a evolução das apps Contra-ponto: Cuidado para não sobrecarregar os recursos da API com muito monitoramentoOs 7 itens desse guia de identificação se enquadram em 3 grandes temas:
Depois de identificar quais APIs serão desenhadas para uma estratégia mobile, seguimos com um conjunto de princípios de como as APIs e as apps funcionam juntas. De novo, para cada um dos 7 princípios de design e implementação abaixo, existe um contra-ponto que precisa ser observado.1. Ponto: Varie APIs entre canais quando isso for natural no contexto Contra-ponto: Ao invés de impedir o multicanal, coloque o contexto em parâmetros2. Ponto: Filtre e limpe os dados antes de enviar para o mobile Contra-ponto: Atenção para a proliferação de APIs backend e camadas nas APIs de enterprise3. Ponto: Minimize as idas e voltas ao backend usando agregação e múltiplos recursos Contra-ponto: Cuidado com mensagens muito grandes e com conteúdo que a app não precisa no momento4. Ponto: Considere especificamente o grau de uso off-line necessário Contra-ponto: Cuidado para o uso off-line não causar inconsistência ou frustração para o usuário5. Ponto: Modele interfaces que permitam chamadas assíncronas às APIs Contra-ponto: Cuidado com o uso de operações assíncronas que frustrem o usuário ou prejudiquem a consistência do multicanal6. Ponto: Delegue poder para as APIs que funcionam em background, por exemplo, sincronização de dados Contra-ponto: Atenção para o alto consumo de recursos causado pelas operações em background7. Ponto: Tire vantagem da boa conectividade com a rede Contra-ponto: Não assuma uma boa qualidade de rede em qualquer hora ou lugarAssim como na identificação da API, os 7 princípios da implementação se enquadram em 3 grandes temas:
A agilidade é muito importante quando ciclos rápidos de upgrade são necessários, mas é desafiador unir essa agilidade envolvendo um contexto mais amplo de APIs corporativas ou multicanais. O Forrester identifica alguns aspectos importantes da colaboração em arquiteturas multi-níveis:
Quando o time de mobile constrói a API isoladamente, a chance de uma entrega mais rápida é maior. Porém, isso gera um passivo para o futuro, já que pode haver inconsistências de negócio e retrabalho.Portanto, garanta que os times mobile e corporativo entendam as 3 categorias de APIs e tenham isso em mente no momento do design.
Existem mais de 1 bilhão de smartphones no mundo. Simples: APIs para mobile são muito importantes! Portanto, garanta que o design de APIs mobile esteja alinhado com outros níveis na empresa. Ou seja, tenha uma discussão mais ampla para não pagar o preço de um retrabalho no futuro.Além disso, o entendimento do uso das APIs no mobile é muito importante para a evolução: programe-se para monitorar e evoluir de forma rápida.Por fim, uma visão simplista do design da API mobile acelera a primeira entrega, mas complica a evolução.Agora, vá e construa APIs incríveis!----Gostou do artigo? Que tal receber todas as novidades da Sensedia no conforto do seu email? Mais de 7000 pessoas já fazem isso. Não mandamos spam, apenas a nata do conhecimento sobre APIs e serviços! Inscreva-se:[contact-form-7 id="1069" title="Formulário de contato 1"]E mais, construir APIs mobile não é tudo! APIs RESTful são a base para uma estratégia digital que gere negócios e inovação. Quer saber como construir uma API de primeira? Confira nosso Webinar de Design de APIs, clicando aqui ou na imagem abaixo: