• Nenhum resultado encontrado

6. IMPLEMENTAÇÃO COMPUTACIONAL DO ARCABOUÇO

6.3   TECNOLOGIA UTILIZADA NA IMPLEMENTAÇÃO 130

Um conjunto de elementos de tecnologia de implementação foi utilizado para o desenvolvimento do protótipo computacional

6. Implementação Computacional do Arcabouço 131

apresentado neste capítulo. Esses elementos são sucintamente apresentados a seguir.

6.3.1 BPMN / BPEL

A notação de modelagem de processos de negócios (BPMN –

Business Process Modeling Notation) é um padrão para o

desenvolvimento de sistemas de alto nível no domínio da análise e resgate dos processos de negócios (Dijkman, R. M., Dumas, M., Ouyang, C., 2008). Essa notação herda e combina elementos de outras propostas de notações de modelagens de processo de negócios, como por exemplo a XML Process Definition Language (XPDL) (WFMC, 2002, apud Dijkman, R. M., Dumas, M., Ouyang, C., 2008) e o componente de diagrama de atividades da UML (Unified Modelling

Language) (OMG, 2005, apud Dijkman, R. M., Dumas, M., Ouyang, C.,

2008). A modelagem de sequências de tarefas e processos de negócios é uma importante área da engenharia de software, sendo que o BPMN permite aos desenvolvedores usar uma abordagem orientada a processos na modelagem de sistemas (Wong, P. Y. H., Gibbons, J., 2009).

O BPMN combina aspectos de ambientes gráficos de programação com padrões de workflow (Aalst, W. M. P. Van der. et al., 2003, apud Dijkman, R. M., Dumas, M., Ouyang, C., 2008) e a linguagem de execução de processos de negócios (BPEL – Business

Process Execution Language) que é um padrão para a definição de

processos de negócios no nível de implementação (Dijkman, R. M., Dumas, M., Ouyang, C., 2008). O BPEL é um padrão OASIS (Jordan, D., Evdemon, J., 2007, apud Juric, M. B., Sasa, A., Rozman, I., 2009) que tem se tornado de fato um padrão para orquestação de serviços para

web (Web Services). O BPEL é suportado pela maioria das plataformas e

ferramentas de desenvolvimento de sistemas, e provê suporte para a abstração de processos de negócios tornando-os executáveis (Juric, M. B., Sasa, A., Rozman, I., 2009).

6.3.2 Web Services - SOA

Cada vez mais as aplicações precisam acessar recursos web de forma automatizada, garantindo maior integração dos processos de negócios. Os Web Services foram criados para constituir aplicações

6. Implementação Computacional do Arcabouço 132

interoperáveis através da internet. Um Web Service é um programa ou procedimento remoto que pode ser acessado e executado via protocolos da web (Bilck, L. G., 2010).

O paradigma de Arquitetura Orientada a Serviços (SOA –

Service Oriented Arqhitecture) é uma estratégia para a implementação

de comunicação e integração de sistemas (Ordanini, A. e Pasini, P., 2008). SOA expressa um conceito, no qual aplicativos ou rotinas são disponibilizados como serviços em uma rede de computadores (internet ou intranets) de forma independente e se comunicando através de padrões abertos (Bilck, L. G., 2010). O uso de Web Services é uma das possíveis maneiras de aplicar os aspectos técnicos de SOA (Josuttis, N. M., 2008).

6.3.3 NetBeans

O NetBeans IDE é um ambiente de desenvolvimento integrado (IDE) gratuito e de código aberto para desenvolvedores de software em diversas linguagens de programação (p. ex. Java, C/C++, PHP). Pode ser executado em muitas plataformas, como Windows, Linux, Solaris e MacOS. Oferece aos desenvolvedores ferramentas necessárias para criar aplicativos profissionais de desktop, empresariais, Web e móveis multiplataformas.

Em 1996 dois estudantes tchecos iniciaram o desenvolvimento do NetBeans, quando a linguagem de programação Java ainda não era tão popular como atualmente. Com nome inicial “Xelfi”, em alusão ao Delphi (ambiente de desenvolvimento integrado mais popular da época). Em 1999 surgiu o nome de NetBeans DeveloperX2, que veio da ideia de reutilização de componentes que era a base do Java. Nessa época a empresa Sun Microsystems adquiriu o projeto NetBeans DeveloperX2 incorporando-o a sua linha de software (Wikipédia, 2010).

6.3.4 PostgreSQL

Para o gerenciamento do banco de dados utilizado no desenvolvimento dos módulos de análise de cenários alternativos e consulta às características particulares da EV, utilizou-se o programa “SQL Manager for PostgreSQL”, que oferece grande facilidade de

6. Implementação Computacional do Arcabouço 133

acesso às tabelas, inclusão de dados e atributos ao banco de dados (Bilck, L. G., 2010).

O PostgreSQL é resultado da evolução do projeto Ingres, desenvolvido na Universidade de Berkeley na Califórnia. Michael Stonebraker, um dos pioneiros dos bancos de dados relacionais, esteve ausente da universidade para comercialização do Ingres. Após seu retorno, Stonebraker começou o projeto pós-Ingres com o objetivo de resolver problemas com o modelo de banco de dados relacional. O principal problema era a incapacidade do modelo relacional compreender “tipos” (atualmente, chamados de objetos), ou seja, combinações de dados simples que formam uma única unidade (Wikipédia, 2010).

6.3.5 Portais

Os portais são sítios que agregam conteúdos de serviços de diversas naturezas, permitindo que o usuário personalize a sua utilização. Portais corporativos podem facilitar o contato com clientes, promovendo maximização de lucros, disponibilização de informações importantes, históricos de pedidos, catálogos de produtos, etc. com o objetivo de dinamizar e agilizar os processos de negócios das empresas. (Bilck, L. G., 2010).

Dentre as funções dos portais corporativos, as de maior importância são às de suporte à decisão, que permitem que os usuários organizem e encontrem informações corporativas, associados a ferramentas inteligentes de apoio à tomada de decisão e de acesso a dados operacionais e de geração de relatórios e gráficos para análise de indicadores de desempenho, por exemplo (Dias, C. A., 2001).

6.3.6 Google Docs e Dashboards

O serviço de armazenamento de arquivos do Google (Google Docs) oferece um repositório de arquivos no padrão de editores de texto, planilhas de cálculo, entre outros, que podem ser compartilhados com outros usuários e em algumas circunstâncias serem alterados por outros usuários que tiverem direito de acesso para isso. A utilização desse serviço se deu para o desenvolvimento de planilhas de cálculo avançadas (dashboards) para a execução do módulo de avaliação de

6. Implementação Computacional do Arcabouço 134

cenários alternativos para a resolução do conflito surgido na EV. Esse módulo foi especificamente desenvolvido para ilustrar uma das possíveis ferramentas da caixa de ferramentas prevista no modelo conceitual.

O termo dashboard é utilizado para indicar um “painel de indicadores”. Em tecnologia da informação, um painel desse tipo associa a observação de uma grande quantidade de informações, variáveis e indicadores, que oferecem uma ampla visualização de respostas a modificações de cenários para monitoramento ou previsão de alteração futura, possibilitando verificar gráficos ao longo do tempo e valores calculados por funções previamente elaboradas (Bilck, L. G., 2010).