Neste artigo, Bruno comenta as características e vantagens de utilização do toolkit Spark da empresa Salient, como acelerador nos projetos envolvendo a ferramenta IBM BPM.
1. Título do Artigo
Spark Toolkit
Autor
Bruno Rodrigues
Data de Publicação
Março de 2017
Fonte
Própria
Spark Toolkit
Sumário Executivo
Neste artigo, Bruno comenta as características e vantagens de utilização do
toolkit Spark da empresa Salient, como acelerador nos projetos envolvendo a
ferramenta IBM BPM
Introdução
Ainda em 2016, a IBM anunciou que embarcaria o Spark Toolkit em futuras versões do IBM BPM, utilizando
o mesmo como acelerador padrão de interfaces do produto. Tendo isso em mente, comecei a me
aprofundar no framework no final de 2016, e agora, após um tempo razoável de desenvolvimento
utilizando o mesmo, escrevi este artigo para que o assunto possa ser difundido entre os interessados e
usuários dos produtos da IBM.
O toolkit foi desenvolvido pela Salient Process, uma empresa situada na Califórnia, com grande experiência
em Business Process Management e Decision Management. Nós, da LuminaMind, Tivemos a oportunidade
de conversar com o CEO da companhia, Brian French, e fomos muito bem atendidos por ele, tendo todas
as nossas dúvidas sanadas.
O Toolkit – características principais
O Spark possui mais de 90 coach views (componente gráfico do IBM BPM) que vão desde controles básicos
(textboxes, radiobuttons, botões), gráficos e data-grids com uma performance excepcional, até
componentes mais específicos para dispositivos móveis, como geolocalização. Além disso, a Saliente
oferece mais dois componentes adicionais: o External Participant, que consegue disponibilizar atividades
de um processo para usuários que não estejam inseridos no ecossistema do IBM BPM, e o Portal Builder,
que facilita nas customizações do Process Portal (Componente do IBM BPM no qual os usuários do
processo podem visualizar sua lista de tarefas, assim como os indicadores de performance de cada
processo). Veja na figura abaixo alguns dos componentes disponibilizados pelo toolkit.
2. Exemplos de componentes do Spark Toolkit
O Toolkit – impressões sobre sua utilização
Neste tópico irei abordar minhas impressões sobre a curva de aprendizado para utilização do Spark, bem
como a aplicação efetiva de componentes comuns no dia a dia de desenvolvimento de soluções IBM BPM.
Começando com a curva de aprendizado, demora um pouco para se habituar com a utilização de alguns
componentes, o que é muito normal para um framework poderoso como o Spark. Alguns componentes,
como o Responsive Sensor, demandam um tempo a mais para o total entendimento de seu
funcionamento. Ponto positivo para a documentação fornecida pela Salient Process, muito rica em
detalhes de uso e funcionamento de cada componente, além do fórum de dúvidas que eles disponibilizam
e sempre estão de olho nas questões dos desenvolvedores. De qualquer forma, mesmo com a dificuldade
no início, não existiram grandes problemas que demandassem muito tempo para serem resolvidos em
nenhum componente utilizado até agora, e as dúvidas foram sanadas rapidamente com as consultas nos
materiais disponibilizados.
Quanto ao tempo de desenvolvimento, é grande o valor do aumento de produtividade que este toolkit dá
ao desenvolvedor. Quando comecei o entendimento e pesquisa do framework uma das “propagandas” era
que ele aumentava a velocidade de desenvolvimento em 3 vezes comparado aos coachs padrão do IBM
BPM. Confesso que achei uma afirmação difícil de ser cumprida, visto que os componentes da IBM são
muito bem construídos e nunca tive grandes problemas em construir interfaces de simples, média ou alta
complexidade com eles. Porém, após o domínio do framework, houve realmente um aumento
considerável na produtividade.
A liberdade que o Spark dá para validações, mudanças em visibilidades, implementações de interfaces
responsivas e utilização de técnicas de User Experience é impressionante. Alguns componentes que antes
eram necessários serem desenvolvidos do zero, como modals e alerts, são nativos e de fácil uso. A
quantidade de configurações que podem ser feitas de forma fácil em cada componente é imensa e, além
de tudo isso, ainda é possível utilizar funções desenvolvidas em Javascript de forma muito tranquila, pois
3. houve o cuidado de se mapear os principais eventos para todos os componentes, conforme os exemplos
das figuras abaixo:
Opções de configuração de um dos componentes do Spark Toolkit
Eventos mapeados que geram uma maior facilidade de utilização
Uma prática de organização de código que estou utilizando com o Spark é a criação de um Business Object
de funções, inserindo todas as funções utilizadas neste objeto, o que possibilita centralizar o código e
manter o mesmo organizado e limpo.
Considerações Finais
O ganho da utilização do Spark é bem grande. É muito válido que qualquer desenvolvedor comece a
estudar o framework antes que ele efetivamente seja embarcado no produto para que seja possível uma
produtividade ainda maior nos projetos envolvendo o IBM BPM.
Deixo aqui meus contatos para eventuais dúvidas sobre o mesmo, ou mesmo para troca de experiências na
utilização deste novo toolkit.
Bruno Monteiro Rodrigues (bruno.rodrigues@luminamind.com.br)