| Prezados(a) leitores(a) tudo bem? Depois de alguns dias super ocupado, estou aqui novamente para escrever a penúltima parte do artigo sobre Interoperabilidade. Para aqueles que não leram os anteriores, segue o link: Agora que todos estamos alinhados quanto ao tema, esse post tem como objetivo demostrar as questões técnicas acerca da Interoperabilidade – Metodologias, tecnologias, mecanismos e padrões. |
então let’s start :-)
Interoperabilidade é a habilidade de um sistema ou processo interagir com outros, de forma transparente e com elementos de relacionamento independentes.
Para que essa integração aconteça podem ser utilizados algumas ferramentas e conceitos disponíveis no mercado:
Começando pelos conceitos, basicamente são três:
Service Oriented Architecture (SOA):ou arquitetura orientada a serviço, é uma metodologia de integração onde o princípio fundamental denota que toda a aplicação desenvolvida deve ser disponibilizada na forma de serviços, disponíveis para que outras aplicações, que queira (e possam) utilizar esses seviços, possa fazê-lo baseado no padrão ao qual ele foi desenvolvido.
Business Process Management (BPM):ou gerenciamento de processos de negócios, é um conceito onde os processos de negócio de uma instituição podem ser mapeados e organizados com foco na otimização e, caso seja necessário, sistematiza-los através de ferramentas de BPMS (Business Process Management System), que atenda ao ciclo completo da Gestão de Processos.
Business Rules Management (BRM):
ou gerencimento de regras de negócio, é a ponte que liga dois grandes paradigmas – TI e negócio (Business). Atavés de softwares especialistas é resposável pelo controle de regras de negócio de um processo ou sistema.
E para os mais requintados e focados na gestão após o desenvolvimento básico, existem ferramentas que tratam o resultado desses processos de integração e o tangibilizam em indicadores e monitoram as SLA’s (Service Level Agreement – ou acordo de nível de serviço):
Business Intelligence (BI):ou Inteligência de Negócio, é o processo organizacional de coletada, tratamento, análise, montagem e disseminação inteligente da informação com objetivo de oferecer suporte a tomada de decisão através de indicadores estratégicos. Esse conceito é aplicado através de ferramentas especialista (QlikView esta entre as melhores do mercado) que, a partir de uma fonte de dados, cria gráficos, tabelas e indicadores e os distribui de forma inteligente em uma interface dinâmica e amigável (dashboard).
Business Activity Management (BAM):
ou Gerenciamento de atividades de negócio (nome e conceito definido pelo Gartner), esta entre os conceitos mais recentes para tratamento de performance de gestão. BAM ou Real-Time Business Intelligence, é o conceito de prover acesso em tempo-real aos indicadores de performance críticos através de ferramentas especialista, visando melhorar a velocidade e efetividade das perações de um negócio. Muito utilizado para encontrar gargalos e problemas que devem ser resolvidos de forma imediata.
EPM (Enterprise Performance Management), CPM (Corporate Performance Management), são basicamente a mesma coisa – Processos, conteúdo e tecnlogia que suporta orçamento, planejamento, relatórios, KPI’s (key Performance Indicadors), scorecards, dashboards e análises operacionais ou sob demanda.
Na verdade tanto EPM quanto CPM podem ser considerados como um grande guarda-chuva que descreve metodologias, métricas, processos e tecnologias utilizados para monitorar e gerenciar o desempenho do negócio de uma organização.
E é dentro desse grande guarda-chuva que estão BI, BPM, BAM, BRM e demais sopas de letrinhas.
OK? Conceitos entendidos?
Ótimo… agora vamos inserir Interoperabilidade nessa brincadeira….
Pelos conceitos da para enterder onde e como essas tecnologias se relacionam. SOA é a camada integradora de serviços e sistemas existentes, já o BPM é a forma de criar mecanismos de integração através de processos de negócio, que ainda não estão sistematizados ou que são necessários para a integração … complicou?
Ex.: Vamos supor que desejamos integrar o depto de compras com o depto de produção. O depto de compras possui um sistema para controle de notas, já a produção, quando solicita a compra de um determinado software, mobiliário ou coisas do dia a dia, o faz através de um e-mail ou telefonando ao depto de compras (empresa sem a menor organização, não é?).
Inicilamente devemos entender como o processo de compras funciona - analisar os pontos chaves para então, criar um processo utilizando uma ferramenta BPMS (utilizando os passos da imagem BPM Lifecycle) que contenha os principais passos nesse processo com o objetivo de conectar o sistema de compras com o processo em desenvolvimento, desta forma quando o webservice (criado através da arquitetura SOA) encontrar a referência ao processo de compras de equipamentos, irá chamar uma instância do sistema de compras automaticamente e o processo estará integrado :-)
Muitas vezes uma imagem diz mais que mil palavras:
Dessa forma, o processo de integração fica transparente para o usuário, pois acontece por detrás dos processos e dos sistemas disponíveis na organização (camada abaixo da Interoperabilidade). Entendeu?
Da para sentir que SOA, BPM e sua vertente de regra de negócio, BRM, são os conceitos excenciais para que uma integração aconteça, certo?
Apensar do BPM ser importante não vamos dar foco para ele nesse post. Quem quiser saber mais a respeito sugiro os links abaixo:
http://www.4shared.com/office/MtRQf6Dn/livro_MPNa.html
http://www.4shared.com/office/wH9dMoKv/BPM_e_ferramentas.html
http://www.4shared.com/office/df4ZtnWa/workflow_processos.html
http://www.4shared.com/office/wH9dMoKv/BPM_e_ferramentas.html
http://www.4shared.com/office/df4ZtnWa/workflow_processos.html
SOA
SOA é uma arquitetura baseada em componentes, ou seja, uma arquitetura onde todas as funcionalidades de um sistema são divididas em funções menores (serviços), cada qual no seu devido componente.
Para se implementar a reusabilidade através de componentes, existem algumas tecnologias disponíveis no mercado:
Para se implementar a reusabilidade através de componentes, existem algumas tecnologias disponíveis no mercado:
SOAP (Simple Object Access Protocol): É um protocolo para intercâmbio de messagens XML.
UDDI (Universal Description, Discovery and Integration): É a especificação técnica para descrever (describing), descobrir (discovering) e integrar serviços na Web, habilitando usuários dos serviços a publicarem e descobrirem diretórios de serviços em uma arquitetura SOA.
WSDL (Web Services Description Language): É o protocolo de suporte para transmissão da informação de um Web Service.
Resumindo:
UDDI: Descoberta e Publicação, WSDL: Descrição, SOAP: Mensagens :-)
UDDI: Descoberta e Publicação, WSDL: Descrição, SOAP: Mensagens :-)
Espero ter ajudado a entender um pouco mais sobre as plataformas técnicas que compoem esse tipo de conceito.
Interoperablidade, propriamente dita, é aplicação dos conceitos de SOA juntamente com BPM e BRM (que não deixa de ser BPM também).
Os demais conceitos foram apresentados com o objetivo de agregar valor ao projeto.
TI um pouco mais de atenção … as questão técnicas só interessam para nós. A gestão quer ver os resultados efetivos que esse produto irá gerar, qual o produto tangivel para a gestão, que ferramentas esse projeto trará, qual o retorno deste tipo de investimento para a estratégia empresarial.
Se mantiverem o foco com esse pensamos em vista, o projeto terá stakeholdes de peso!
TI um pouco mais de atenção … as questão técnicas só interessam para nós. A gestão quer ver os resultados efetivos que esse produto irá gerar, qual o produto tangivel para a gestão, que ferramentas esse projeto trará, qual o retorno deste tipo de investimento para a estratégia empresarial.
Se mantiverem o foco com esse pensamos em vista, o projeto terá stakeholdes de peso!
Qualquer dúvida, sugestão ou críticas é só comentar ou enviar um e-mail, ok?
Referências utilizadas para desenvolver esse post:
http://en.wikipedia.org/wiki/Business_activity_monitoring
http://uni.com.br/knowledge_base/?p=267
http://searchcio-midmarket.techtarget.com/definition/business-activity-monitoring
http://www.adobe.com/content/dam/Adobe/en/devnet/livecycle/pdfs/lc_bam_wp_ue.pdf
http://businessintelligence.com/
http://en.wikipedia.org/wiki/Business_rule_management_system
http://www.fico.com/en/Products/DMTools/Pages/Business-Rules-Management.aspx
http://www.infoworld.com/t/business/business-rules-management-systems-548
http://www.visual-rules.com/technology.html
http://www.devmedia.com.br/o-que-e-business-performance-management/7922
http://www.pwc.com.br/pt/servicos/cpm
http://www.oracle.com/br/solutions/business-intelligence/index.html
http://phpbrasil.com/artigo/quSG0Uren6sb/web-service-com-wsdl
http://imasters.com.br/artigo/4422/webservices/descrevendo_um_web_service_wsdl/
http://www.biztalkbrasil.com.br/2010/11/o-que-e-uddi.html
http://www.w3schools.com/wsdl/default.asp
http://www-01.ibm.com/software/solutions/soa/faqs.html
http://www.soa.com/solutions/integrated_soa_governance/
http://java.sun.com/developer/technicalArticles/WebServices/soa2/soa2.pdf
http://www.uniriotec.br/~tanaka/SAIN/MarceloFerreira-SOA.pdf
http://imasters.com.br/artigo/4422/webservices/descrevendo_um_web_service_wsdl/
http://www.gsd.inesc-id.pt/~ler/docencia/tm0607/slides/WSDL-UDDI-PedroNunes.pdf
http://www.ibm.com/developerworks/library/ws-soa-standards/
http://uni.com.br/knowledge_base/?p=267
http://searchcio-midmarket.techtarget.com/definition/business-activity-monitoring
http://www.adobe.com/content/dam/Adobe/en/devnet/livecycle/pdfs/lc_bam_wp_ue.pdf
http://businessintelligence.com/
http://en.wikipedia.org/wiki/Business_rule_management_system
http://www.fico.com/en/Products/DMTools/Pages/Business-Rules-Management.aspx
http://www.infoworld.com/t/business/business-rules-management-systems-548
http://www.visual-rules.com/technology.html
http://www.devmedia.com.br/o-que-e-business-performance-management/7922
http://www.pwc.com.br/pt/servicos/cpm
http://www.oracle.com/br/solutions/business-intelligence/index.html
http://phpbrasil.com/artigo/quSG0Uren6sb/web-service-com-wsdl
http://imasters.com.br/artigo/4422/webservices/descrevendo_um_web_service_wsdl/
http://www.biztalkbrasil.com.br/2010/11/o-que-e-uddi.html
http://www.w3schools.com/wsdl/default.asp
http://www-01.ibm.com/software/solutions/soa/faqs.html
http://www.soa.com/solutions/integrated_soa_governance/
http://java.sun.com/developer/technicalArticles/WebServices/soa2/soa2.pdf
http://www.uniriotec.br/~tanaka/SAIN/MarceloFerreira-SOA.pdf
http://imasters.com.br/artigo/4422/webservices/descrevendo_um_web_service_wsdl/
http://www.gsd.inesc-id.pt/~ler/docencia/tm0607/slides/WSDL-UDDI-PedroNunes.pdf
http://www.ibm.com/developerworks/library/ws-soa-standards/
Para o próximo e ultimo post espero apresentar as considerações finais sobre interoperabilidade, até lá.
Grande Abraço! :-)