Fundada em 2001, a empresa de desenvolvimento de software Syncfusion tem actualmente sede na Carolina do Norte dos Estados Unidos da América. O seu portfólio tem algumas seme- lhanças com o da Telerik, contando com várias frameworks para tecnologias Web e dispositivos móveis, e também soluções de BI, para o desenvolvimento e gestão de dashboards e relatórios.
Figura 2.22: Interface de edição da fonte de dados no Syncfusion Dashboard Designer.
A sua solução para dashboards, Dashboard Platform, divide-se entre um programa on-premises de criação de dashboards, Dashboard Designer, e um servidor Web para a publicação e gestão dos dashboards, o Dashboard Server.
Na criação de uma fonte de dados, depois dos habituais dados de acesso ao servidor e base de dados, o Syncfusion mostra o modelo de dados (Figura2.22) dividido pelos diferentes esquemas e dentro de cada um tem os objectos organizados pelos diversos tipos, nomeadamente Tabelas, Vistas e Stored Procedures. Em baixo estão os dados do dataset.
Depois de inserido o primeiro objecto na fonte de dados, a cada nova inserção o Syncfusion pede para que seja definida a junção (Join) com algum dos objectos já inseridos (Figura2.23). Ou seja, o Syncfusion obriga a que uma fonte de dados tenha os seus objectos todos ligados, de forma a que resulte num só dataset. No entanto, é possível criar e utilizar várias fontes de dados num dashboard.
Para além de ser possível definir a fonte de dados arrastando os objectos pretendidos, também é possível defini-lo escrevendo o código manualmente (Figura2.24). Na barra superior é possível alterar para a vista de código para introduzir código SQL personalizado.
Estado da arte das soluções de BI
Figura 2.23: O Syncfusion pede para escolher uma junção ao adicionar uma nova tabela.
Estado da arte das soluções de BI
O desenvolvimento visual do dashboard também é baseado no arrastamento de um dos widgets disponíveis para o dashboard, sendo necessário editá-lo individualmente para lhe associar os dados de uma fonte de dados, para além das personalizações visuais.
Na definição dos dados de um widget (Figura2.25), escolhe-se a fonte de dados da lista e são listadas as diferentes colunas entre medidas, valores numéricos e dimensões, datas e strings. Estas colunas podem ser arrastadas para os campos de valores e colunas, sendo que em alguns casos podem constar várias colunas, formando uma hierarquia onde é possível fazer drill-down. Também é possível criar colunas personalizadas, contendo valores por omissão ou calculados através de outras colunas.
Figura 2.25: Interface de especificação dos dados de um widget.
As definições visuais permitem desligar e ligar diferentes funcionalidades, como o título do widget, os nomes dos eixos e as legendas. Não permite alterar as cores dos gráficos através deste menu de personalização ao invés de outras ferramentas estudadas.
Para além de widgets de visualização como gráficos de barras, gráficos de linhas, gráficos de área, gráficos circulares ou KPI, o Syncfusion também disponibiliza widgets que permitem filtrar os dados através do dashboard. Um widget de combobox dá ao utilizador a escolher um valor ou múltiplos valores de entre uma lista de opções. Essa lista é obtida escolhendo uma das colunas da fonte de dados, da qual o Syncfusion irá buscar os valores distintos.
Na Figura2.26temos uma combobox que filtra os dados pela cor escolhida. Ao escolher a cor vermelha (Red) apenas são mostradas duas barras das quatro originais pois as duas retiradas não contêm qualquer elemento com a cor vermelha e vice-versa (Figura2.27). Os valores também reduziram. Também é possível filtrar por múltiplos elementos. Na Figura 2.28é mostrado um
Estado da arte das soluções de BI
Figura 2.26: Dashboard com um gráfico de barras e uma combobox.
Estado da arte das soluções de BI
Figura 2.28: Cor "Silver"adicionada ao dashboard.
filtro pela cor vermelha (Red) e prateada (Silver) surgindo uma terceira barra no gráfico, além de um aumento dos valores.
Sobre os filtros convém acrescentar que, no caso de existirem múltiplos widgets de filtragem, estes influenciam-se mutuamente. Assim, num dashboard com duas comboboxes, se filtrarmos numa delas, a outra combobox poderá aparecer com menos elementos, fruto de esses elementos filtrados não preencherem os requisitos da filtragem feita como se demonstra nas (Figura2.29) e (Figura 2.30). O mesmo acontece caso se filtre na segunda combobox. A primeira actualiza-se com menos elementos por não satisfazerem os requisitos da segunda filtragem(Figura2.31).
Para desfazer os filtros têm-se 3 alternativas. Pode-se seleccionar a opção All em cada widget, pode-se carregar no ícone no canto superior direito para desfazer o filtro desse widget ou pode-se desfazer os filtros todos do dashboard de uma vez só, indo ao Filters Overview, no canto superior direito do dashboard.
O Syncfusion Dashboard Designer possui um botão de pré-visualização no canto superior direito que permite ver a aparência do dashboard num navegador, criando uma página Web pelo IIS Express com o dashboard.
Para publicar efectivamente o dashboard é necessário ter uma máquina com o Dashboard Server instalado. Quando se tenta publicar a partir do Dashboard Designer, é necessário introduzir o endereço e porta do Dashboard Server, juntamente com os dados de autenticação, que podem ser do painel de gestão do Syncfusion ou do Windows. Depois da autenticação no servidor, é permitido ao utilizador publicar o dashboard, introduzindo dados como a pasta onde este deverá ser guardado, título e descrições. Depois de publicado, o utilizador pode optar por ver o dashboard através do Dashboard Server e confirmar o sucesso dessa publicação.
Estado da arte das soluções de BI
Figura 2.29: Dashboard com duas comboboxes e com os filtros sem nada seleccionado.
Estado da arte das soluções de BI
Figura 2.31: Seleccionada a categoria "Bikes"no dashboard.
Através do MSSQL Profiler (Figura2.32) é possível ver que o dashboard, sempre que é car- regado no navegador, inquire a base de dados assim como quando é alterado um dos filtros.
Através do servidor Web do Dashboard Server é possível gerir o dashboard, sendo possível organizá-los em pastas, criar novos utilizadores e definir as suas permissões de acesso, entre outras funcionalidades. O Syncfusion permite, para além da publicação dos dashboards, a publicação de fontes de dados e widgets para o servidor, que podem ser descarregados para o Dashboard Designer para serem reutilizados num outro dashboard.
As páginas mostraram-se responsivas, adaptáveis a diferentes resoluções. Actualmente, não é possível criar widgets personalizados.
No que toca ao preço, a Syncfusion Dashboard Platform oferece uma licença comunitária (Community License), tornando-a gratuita para empresas com receitas inferiores a um milhão de dólares anuais e limitada a 5 utilizadores. A licença empresarial fica por 1995 dólares anuais até 50 utilizadores, sendo que acresce 500 dólares anuais por cada incremento de 25 utilizadores. Ao conhecer o projecto da CMF, a equipa de vendas da Syncfusion propôs um número ilimitado de licenças e utilizadores por seis mil dólares anuais.
O Syncfusion foi escolhido porque cumpre todos os requisitos e possui um preço atrativo. No que toca à fonte de dados, importa saber se é capaz de invocar vistas, UDF e SP. Na definição da fonte de dados do Syncfusion, a barra lateral esquerda lista os esquemas da base de dados escolhida, sendo possível encontrar, para além das tabelas, as vistas e SP a que o utilizador tem acesso.
No caso das vistas, o Syncfusion trata-as tal como se fossem tabelas, pedindo para referir qual a junção que deve ser feita aquando da introdução de um novo objecto.
Estado da arte das soluções de BI
Figura 2.32: Pelo SQL Server Profiler é possível ver o filtro por "Red"na interrogação.
No caso das SP, a interface pede para introduzir os valores dos argumentos bloqueando a vista de código (Code View) e a adição de novos objectos. Também não é possível adicionar uma SP quando já existem tabelas ou vistas no modelo.
As UDF não são listadas. No entanto, caso sejam conhecidas do utilizador, é possível chamá- las através do modo de código. No modo de código, e neste modo apenas, é possível criar parâ- metros personalizados e utilizá-los na interrogação. No entanto, estes parâmetros apenas podem ser editados na fonte de dados. Não é possível editar o valor do parâmetro noutro local, seja no dashboard, no widget ou por argumento no URL.
Na personalização dos widgets, o Dashboard Designer não permite, por exemplo, a alteração das cores utilizadas num gráfico de barras. A cor azul é aplicada a todas e não é possível ser alterada através deste editor. Para o conseguir, é necessário descarregar o Syncfusion Dashboard SDK, que contém exemplos de ficheiros .sydx (extensão dos dashboards Syncfusion guardados localmente) embebidos numa página Web e as stylesheets e scripts necessários para personalizar o aspecto e experiência dos dashboards. Para efeitos de demonstração, foi criado um exemplo simples onde foram colocados elementos em redor do dashboard e personalizadas as cores de fundo e do gráfico de barras do dashboard.
Outro aspecto estudado foi a autenticação. A utilização de contas criadas através do painel de gestão do servidor Syncfusion acrescenta não só trabalho extra na gestão de utilizadores e suas permissões, como também obriga os utilizadores a possuírem uma nova conta. Para evitar isso, o Syncfusion permite a autenticação com contas Windows através do Active Directory.
Estado da arte das soluções de BI
Figura 2.33: Dashboard com as cores alteradas graças ao SDK.
No que toca a manter os dados do dashboard actualizados quando se pretende que estes es- tejam abertos durante longos períodos, o Syncfusion permite estabelecer um refrescamento do mesmo em intervalos de tempo personalizáveis. Para activar e configurar esse refrescamento é ne- cessário editá-lo com o Dashboard Designer, indo ao menu superior, escolhendo Server e depois Refresh Settings.
Na finalização deste estudo e ao ver como a nova interface HTML5 estava estruturada, uma das questões que surgiu foi se era possível o dashboard receber parâmetros através do URL para serem utilizados na filtragem.
A passagem de argumentos é bastante simples, bastando para isso utilizar a sintaxe:
<Endereço>:<Porta>/?<Nome da coluna a filtrar>=<Valor>,<Valor2> &<Nome da segunda coluna a filtrar>=<Valor>,<Valor2>
Exemplo:
http://localhost:6765/?Color=white,grey
Este endereço filtra a fonte de dados com a coluna “Color” pelos valores “White” e “Grey”. Na Figura2.34é possível ver que o dashboard aparece filtrado, tanto no gráfico de barras como na combobox. É possível ver através do Profiler que o dashboard, no carregamento de uma página que contenha os parâmetros mencionados, adiciona à interrogação a filtragem especificada.
O dashboard aparece filtrado, não só no gráfico de barras, como também na combobox, que permite posteriormente filtrar especificamente por um dos dois valores resultantes.
Estado da arte das soluções de BI
Figura 2.34: Dashboard e interrogações duma filtragem por endereço.
Infelizmente, não é possível passar argumentos pelo URL que possam ser utilizados nos ar- gumentos das SP ou UDF. Os argumentos de SP e UDF apenas podem ser alterados na fonte de dados.