Fala Radizeiro e Radizeira, tudo bem com vocês?

No post anterior falei um pouco sobre sua conscientização para melhorar a experiência dos seus usuários.

E isso se dá muito pela necessidade de entender como é o comportamento deles em seus software.

E para lhe auxiliar nesta análise iremos utilizar o Google Analytics.

O Delphi chegou a lançar uma ferramenta para acompanhamento de software.

Muitas pessoas já desenvolveram ferramentas para essas análises.

Mas o Google Analytics nos permite usar a api dele para podermos mapear o comportamento do nosso usuário, inclusive em tempo real.

Então vamos ao Delphi.

Mas primeiro vou deixar aqui um link do repositório de um dos nossos alunos que desenvolveu uma biblioteca de integração do Delphi com o Google Analytics.

https://github.com/maiconsi/DGoogleAnalytics

Essa biblioteca faz toda a integração com o Google Analytics.

Então você já vai começar a persistir nas métricas do seu software dentro do Google Analytics.

Uma ferramenta gratuita do Google, para que você possa acompanhar o comportamento dos seus usuários no seu software, quais as telas mais usadas, o que está sendo usado, e qual momento está sendo usado.

Para que possamos utilizar basta criar uma nova unit em seu projeto e adicionar algumas informações, como você pode ver no código abaixo.

uses
Google.Controller.Analytics.Interfaces;
var _GoogleAnalytics: iControllerGoogleAnalytics;
implementation
uses
Google.Controller.Analytics;
const
//Google Analytics property ID.
GooglePropertyID ='UA-133308546-1';
AppName = 'Minha Aplicacao';
AppLicense = 'Comercial';
AppEdition = 'ERP';
VersaoSistema = '1.0.0';
initialization
_GoogleAnalytics :=TControllerGoogleAnalytics
.New(GooglePropertyID);
_GoogleAnalytics.AppInfo
.AppName(AppName)
.AppVersion(VersaoSistema)
.AppLicense(AppLicense)
.AppEdition(AppEdition);

Adicionando em seu projeto essas informações já é possível a integração com o Google Analytics.

A opção GooglePropertyID é seu id que é disponibilizado no console do Google, mais especificamente do Google Analytics.

E não podemos esquecer que tem que adicionar dentro das librarys do Delphi essa biblioteca.

Para que você consiga ter as informações necessárias para que sua biblioteca possa mandar informações para o Google Analytics, é preciso pegar esse id.

Para isso basta entrar no Google Analytics, fazer seu cadastro, que é algo bem intuitivo.

E dentro da área de administrador você cria uma nova propriedade.

Com sua propriedade criada, por exemplo, a minha é AppDelphi.

E essa propriedade cria uma chave, e essa chave é o nosso identificador que será adicionado na propriedade GooglePropertyID.

E só iremos ter esse identificador na nossa unit, e claro, algumas informações que você pode adicionar a seu gosto.

E temos algumas funcionalidades que iremos precisar para que possamos utilizar dentro do nosso software.

Com essa nossa unit com as informações adicionadas, basta dar uses no seu projeto essa unit para que possamos adicionar as ações dentro do software.

Dentro do evento do formulário damos início a sessão, pois o Google Analytics trabalha com sessões, e no evento Close fechamos essa sessão.

procedure TfrmPrincipal.FormClose(Sender: TObject; var Action: TCloseAction);
begin
_GoogleAnalytics.EndSession;
end;

procedure TfrmPrincipal.FormCreate(Sender: TObject);
begin
_GoogleAnalytics.StartSession;
end;

Se você observar, estamos utilizando a variável global _GoogleAnalytics.

E essa nossa biblioteca conta com as propriedades Event, Exception, ScreenView, PageView.

Onde o ScreenView nós passamos para ele a tela que está sendo visualizada, então você pode pegar o caption da sua aplicação, onde dentro do ScreenView como você pode ver no código abaixo.

procedure TfrmPrincipal.FormShow(Sender: TObject);
begin
_GoogleAnalytics
.ScreenView(Self.Caption);
end;

Fazendo isso em todas as suas telas, colocando no create essa informação, é enviado para o Google Analytics a informação que algum usuário de algum lugar está acessando essa tela.

O Google Analytics guarda esse relatório para nós, onde conseguimos acompanhar em tempo real, e de um dia para o outro, gera um relatório do dia anterior.

Com o nosso projeto rodando, nesse caso o próprio exemplo da biblioteca, poderemos ver no Google Analytics que já aparece que tem uma aplicação.

Você pode observar que temos um usuário ativo no momento, e se entrarmos em tempo real, iremos ver que temos usuários ativos no sistema na cidade de Arraial do Cabo.

Todos os relatórios são gerados de um dia para o outro, mas dependendo do que precisa ele gera em tempo real, como vemos na imagem acima.

Dessa forma, no dia seguinte iremos saber o que foi feito, o qual tela o usuário mais acessou, temos todas as métricas necessárias para que possamos analisar o comportamento do usuário em nosso sistema.

Outra coisa muito legal que temos nesta biblioteca, é o uso de eventos, onde por exemplo você pode colocar na ação da geração de um relatório.

procedure TfrmPrincipal.btnImprimirRelatorio(Sender : TObject);
begin
_GoogleAnalytics
.Event('Relatorio',
'Imprimir',
'Vendas do dia',
123);
end;

Além de você mandar o ScreemView, ou seja, a tela que está sendo visualizada, você pode mandar eventos que estão acontecendo dentro do seu software.

O usuário apagou um registro, uma mensagem de erro, qualquer evento dentro do seu sistema pode ser adicionado para o Google Analytics.

Observe que dentro do Google Analytics você pode ver esse evento.

Muito legal, não é pessoal?

Você não precisa desenvolver uma solução nova para fazer um acompanhamento dentro do seu software.

Uma forma de você acompanhar os relatórios, e comportamento dos usuários nos seus softwares.

Saber qual tela está sendo mais usada, qual relatório está sendo mais gerado.

Quais relatórios estão sendo mais usados numa determinada região.

Você consegue através do Google Analytics ter todo um mapeamento completo do seu software.

Onde também você pode saber qual horário tem menos usuários ativos dentro do software para fazer uma atualização.

Existem inúmeras possibilidades para a utilização desses recursos, e claro, aumentar a experiência do usuário nos seus softwares.

E caso você tenha interesse de conhecer mais sobre Aplicar Design Criativo no Delphi acesse o nosso portal do CLUBE DE PROGRAMADORES EM DELPHI, onde você não terá só conteúdos relacionados ao Design , mas uma quantidade enorme de conteúdos que poderá lhe ajudar muito no seu dia a dia, é uma verdadeira NETFLIX para os programadores Delphi.

CLIQUE AQUI E SAIBA MAIS SOBRE O CLUBE DOS PROGRAMADORES DELPHI