Introdução
Poucas vezes na área de TI uma sigla despertou tantas discussões nos planos de
investimentos das grandes instit...
Alguns conceitos importantes:

Serviços

 Um serviço é uma função que é bem definida, auto-suficiente e não depende do
con...
O principal benefício técnico de serviços da Web são de que eles são
independentes de plataforma e podem ser acessados liv...
BPMS (Business Process Management Suite)

Softwares para a automatização da gestão por processos (execução, controle e
mon...
A figura acima nos da uma visão dos símbolos usados nas notações de diagramas
BPMN.

Eventos: algo que afeta o fluxo do pr...
BizAgi Process Modeler;

Visual Paradigm;

Oracle soa suíte;

                                Orquestração
BPE4WS ou BPEL ...
Activities: seção que contém a descrição do comportamento normal para a
execução do Processo de Negócio.

 Exemplo a segui...
Devido a reclamações sobre desempenho e tempo de resposta a usuários e
usabilidade, criou-se a necessidade da adoção de fe...
A competitividade de uma organização depende, sobretudo, de sua habilidade em
configurar seus processos de negócio de form...
modelos tradicionais. Este estudo nos permitiu entrar um pouco no mundo da
programação orientada a serviços, conhecer um p...
Upcoming SlideShare
Loading in...5
×

Arquitetura orientada a serviço

1,747

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,747
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
55
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Arquitetura orientada a serviço"

  1. 1. Introdução Poucas vezes na área de TI uma sigla despertou tantas discussões nos planos de investimentos das grandes instituições. SOA é uma resposta da indústria da informática para a nova realidade do mercado, que exige, das áreas de TI, agilidade suficiente para mostrar resultados mais rapidamente e produtividade para conseguir fazer isso com recursos cada vez mais limitados. SOA (Service-Oriented Architecture) É uma abordagem arquitetural corporativa que permite a criação de serviços de negócio interoperáveis que podem facilmente ser reutilizados e compartilhados entre aplicações e empresas. SOA propõe que um sistema seja construído a partir de unidades de trabalho, cada uma com fluxo bem definido e interagindo entre si para garantir que algo seja criado como produto final. Seu princípio fundamental prega que as funcionalidades implementadas pelas aplicaçoes devem ser disponibilizadas na forma de serviços. Sua proposta e que as unidades do sistema funcionem isoladamente cada uma executando um serviço independente criando um fluxo de trabalho (Workflow) onde cada unidade recebe o nome de serviço. Veja algumas vantagens do uso da arquitetura SOA: 1. Redução dos custos de manutenção do software; 2. Preservação dos investimentos já realizados; 3. Facilidade de integração entre sistemas construídos em diferentes tecnologias, dentro e fora da empresa; 4. Obtenção de informações em tempo real para tomadas de decisão 5. Alta flexibilidade e rápido atendimento aos requisitos de negócio, reduzindo o GAP de TI; 6. Rápido time-to-market; 7. Rápida composição de serviços gerando novos serviços; 8. Segurança; 9. Governança corporativa; A idéia do SOA e aproximar o entendimento entre as áreas de TI e de negócios a uma visão semelhante de como um sistema de informação deve ser abordado. A seguir apresentaremos ferramentas e aspectos da modelagem de processos de negócio.
  2. 2. Alguns conceitos importantes: Serviços Um serviço é uma função que é bem definida, auto-suficiente e não depende do contexto ou estado de outros serviços. Workflow (fluxo de trabalho) É a tecnologia que possibilita automatizar processos, racionalizando-os e potencializando-os por meio de dois componentes implícitos: organização e tecnologia, de modo geral definem uma seqüência de passos a serem executados para se chegar a um produto ou objetivo especifico, são representados através notações ilustrativas de alto nível. Web Services É uma solução utilizada na integração de sistemas e na comunicação entre aplicações diferentes. Com esta tecnologia é possível que novas aplicações possam interagir com aquelas que já existem e que sistemas desenvolvidos em plataformas diferentes sejam compatíveis, funciona a base de envio de arquivos XML traduzido das linguagens particulares dos sistemas.
  3. 3. O principal benefício técnico de serviços da Web são de que eles são independentes de plataforma e podem ser acessados livremente utilizando os recursos disponíveis. A desvantagem é que esses aplicativos distribuídos tendem a executar de forma relativamente lenta, em parte por causa de uma dependência de XML. Modelagem de processos BPM (business Process Management), gerenciamento de processos de negócios. É uma forma disciplinada para identificar, desenhar, executar, documentar, medir, monitorar, controlar e melhorar os processos de negócios automatizados ou não para alcançar resultados pretendidos, consistentes e alinhados com as metas estratégicas de uma organização. O BPM não é uma categoria de produto, nem uma ferramenta, ou software, mas uma metodologia, Khan (2003). A metodologia BPM foi desenvolvida para facilitar o trabalho de informatização orientado aos processos de negócio. Do ponto de vista de negócios, BPM é uma metodologia para modelar, automatizar, otimizar e gerenciar processos de negócio visando ampliar a lucratividade.
  4. 4. BPMS (Business Process Management Suite) Softwares para a automatização da gestão por processos (execução, controle e monitoração), proporcionam o mapeamento de processos, desenho dos fluxos e formulários eletrônicos, definição de workflow, regras de negócio, integradores, monitoração das atividades e alerta. Seu principal objetivo e garantir que processos estão sendo efetivamente executados como modelados. A seguir apresentaremos os componentes principais de um BPMS. Desenho BPMN (business process modeling notation): É um padrão de representação gráfica de processos de negócio, normalmente ferramentas de BPMN fornecem recursos para a criação de fluxogramas independentes do ambiente de implementação. O BPMN e composto por um conjunto de BPDs (business process diagram), sendo estes capazes de permitir que o desenho em questão, de alguma forma, possa ser mapeado para um formato de execução. Esses diagramas são originados por um conjunto de elementos representativos e interligados.
  5. 5. A figura acima nos da uma visão dos símbolos usados nas notações de diagramas BPMN. Eventos: algo que afeta o fluxo do processo e tem causas e impactos. Atividade: é um comando executado dentro de um processo de negócio As flechas como podemos observar podem representar mensagens, seqüência ou associações. Gateway ou losangos: representam uma divergência ou convergência, como pontos de tomada de decisão. Lembrando que esses tipos podem ainda que esses tipos podem, subdividirem-se em vários outros símbolos com a finalidade de representar o mais corretamente um fluxo, evento, atividade ou uma condição do processo. Exemplo de notação de processos de negócios: Ferramentas BPMN: Demo IBM WebSphere Business Modeler;
  6. 6. BizAgi Process Modeler; Visual Paradigm; Oracle soa suíte; Orquestração BPE4WS ou BPEL (Business Process Execution Language) É o resultado de uma iniciativa conjunta entre IBM, BEA Systems e Microsoft que em 2003 apresentaram o BPL4WS, posteriormente a SAP e Siebel Systems apresentaram o BPL4WS 1.1. Posteriormente foi oficializada pela OASIS (Organization for the Advancement of Structured Information Standards) por WS-BPEL 2.0 (Web Services Business Process Execution Language) popularmente chamado BPEL. O WS-BPEL é uma linguagem baseada em XML sua proposta e criar formas não programáticas de armazenamento de dados e criar engines que interpretam o XML como um programa em si para a execução de Web Services em seqüência de modo a proporcionar formas de manter uma ferramenta pela própria área de negócio, porem limita-se apenas tecnologia Web Services tornando-se inaplicável em outras áreas. A estrutura geral de um Processo de Negócio especificado em WS-BPEL é formada por quatro seções: PartnerLinks, Variables, FaultHandlers e Activities. PartnerLinks: seção que define os diferentes parceiros (partes envolvidas) que interagem com o Processo de Negócio durante toda sua execução. Eles são usados para identificar a funcionalidade que deve ser oferecida por cada serviço parceiro. As ligações de parceiros (partner link) devem estar associadas a um tipo de ligação entre parceiros (partner link type) definidos na especificação de serviços Web em WSDL; Variables: seção que define as variáveis de dados usadas pelo Processo de Negócio. As definições são feitas em termos de tipos de mensagem WSDL, elementos ou tipos simples de esquemas XML. Elas são usadas para manter os dados de estado e o histórico do processo com base nas mensagens trocadas. As variáveis devem estar associadas a tipos de mensagens (messages) definidos na especificação WSDL; FaultHandlers: seção que contém os tratadores de falhas que definem as atividades a ser executadas em resposta às falhas resultantes da invocação de serviços de avaliação e de aprovação;
  7. 7. Activities: seção que contém a descrição do comportamento normal para a execução do Processo de Negócio. Exemplo a seguir mostra o código BPEL resultante que será gerado para o recebimento de mensagens de Início de Evento. <receive createInstance="yes" operation="book" name="Receive" wpc:displayName="Receive" portType="wsdl0:travelPort" variable="input" wpc:id="2"> <source linkName="link1" /> </receive> Ferramentas BPEL: Net Beans; Eclipse BPEL Designer; ActiveVOSDEsigner; Oracle Suite/Jdeveloper; JOpera; WebRatio. Componentização Um componente é um pacote coerente de artefatos de software que pode ser independentemente desenvolvido e distribuído como uma unidade, e que pode ser composto, sem alterações, com outros componentes para construir algo maior. Componentizar um sistema é dividir o software em pequenos fragmentos de código e interligá-los de forma que a partir da execução conjunta desses fragmentos se obtenha o resultado desejado. Tendo em vista que cada componente desempenha uma função poderíamos chamá-los de funcionalidades ou partes funcionais claro neste caso totalmente independentes. Como todas as arquiteturas modernas enfatizam o reuso na construção de software a componentização é conhecimento quase obrigatório para profissionais de TI principalmente em se tratando de SOA. Monitoramento
  8. 8. Devido a reclamações sobre desempenho e tempo de resposta a usuários e usabilidade, criou-se a necessidade da adoção de ferramentas para monitorar como os usuários estavam usando as aplicações da corporação e como elas se comportavam, visando assim à tomada da decisão precisa caso um problema viesse a acontecer. Dashboard (painel de controle) São ferramentas disponibilizadas em formas de painéis que permitem acompanhamento em tempo real dos processos de negócios da empresa. Exemplo: Service Level Dashboard 2.0 é uma solução que coleta, monitora e “transforma” os dados em informações relevantes para a área de negócios. Esse dashboard inclui métricas adicionais como Service Level Compliance, com tempo médio de reparo (Mean Time to Repair – MTTR), tempo médio entre falhas (Mean Time Between Failures – MTBF) e tendências de nível de serviço de aplicações. Realinhamento
  9. 9. A competitividade de uma organização depende, sobretudo, de sua habilidade em configurar seus processos de negócio de forma a obter respostas rápidas às mudanças externas provocadas pelo mercado. Isto implica que a estrutura organizacional deve possuir a propriedade de realinhamento de seus processos de negócio em relação a mudanças exigidas pelo ambiente competitivo e, uma vez bem alinhadas, estes devem ser revistos de acordo com mudanças nas condições internas e externas. Este movimento de alinhamento dos processos da empresa em direção as necessidades dos clientes, imposto pelo ambiente, é descrito como dinâmica empresarial e preconiza que atualmente as empresas necessitam renovar-se cada vez com maior freqüência devido a necessidades dos clientes e o acirramento da concorrência. Portanto o realinhamento e como se fosse uma revisão dos processos de negocio visando cada vez mais a sua otimização. As ferramentas BPM provem suporte a um realinhamento de processos numa união de BPMN+SOA. Provavelmente a coisa mais importante sobre o realinhamento de processos de negócios são os resultados. 1. Condução para objetivos comuns através das linhas funcionais; 2. Construir uma relação mais forte com o cliente; 3. Construir relações mais fortes na cruzada funcional do empregado; 4. Eliminar pontos de estrangulamento de fluxo de trabalho; Certificações IBM Certified SOA Associate IBM Certified SOA Solution Designer www-03.ibm.com/certfy/certs/ Certificação internacionalmente reconhecida OMG-Certified Expert in BPM OCEB- WWW.omg.org/oceb CBPP Certified Business Process Professional. BPM Boot Camp & CBPP Exam, 3ª edição, 01 a 04 de dezembro de 2010 Programa de certificação profissional em Gerenciamento de Processos de Negócio (BPM - Business Process Management) da ABPMP Brasil em sua 3ª edição ocorrerá no período de 01 a 04/12/2010 no Tryp Campinas Hotel. Mais informações em WWW.abpmp-br.org Conclusão Podemos constatar que grandes mudanças estão acontecendo no cenário da modelagem de negócios, derrubando velhos e ultrapassados paradigmas e
  10. 10. modelos tradicionais. Este estudo nos permitiu entrar um pouco no mundo da programação orientada a serviços, conhecer um pouco de ferramentas de modelagem de negócios. Referências Bibliográficas Advice business: http://www.advice-business.com: Portal OMG http://www.omg.org/bpmn; BPMN. Business Process Management Initiatives. http://www.bpmi.org; BPMN. PORTALBPM. http://www.portalbpm.com.br; Nome: Carlos Alessandro Soares Ra: 1801241420 Nome: Claudio Marcio Gonçalves Ra: 1816323420

×