SOA Introdução. SOA Visão Departamental das Organizações



Documentos relacionados
Universidade Federal de Juiz de Fora Ciência da Computação Sistemas Distribuídos Professor Ciro Barbosa

UNIVERSIDADE. Sistemas Distribuídos

UFG - Instituto de Informática

Introdução a Web Services

Service Oriented Architecture (SOA)

Serviços Web: Arquitetura

2 Conceitos relativos a Web services e sua composição

acoplamento Exprime o grau de conexão entre os módulos; os módulos de um software devemapresentar um baixo coeficiente de acoplamento.

INTEGRAÇÃO DE APLICAÇÕES UTILIZANDO WEB SERVICE 1. Kellen Kristine Perazzoli 2 ; Manassés Ribeiro 3

Web Services. Autor: Rômulo Rosa Furtado

Web Services. (Introdução)

PROGRAMA DE MBA em Gestão e Engenharia do Produto. O Produto Internet e suas Aplicações

3 Serviços na Web (Web services)

Kassius Vargas Prestes

PROGRAMAÇÃO SERVIDOR WEBSERVICES EM SISTEMAS WEB. Prof. Dr. Daniel Caetano

Web services. Um web service é qualquer software que está disponível através da Internet através de uma interface XML.

Serviços Web: Introdução

Sistemas Distribuídos

Histórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial

Web Services. Integração de aplicações na Web. Sistemas Distribuídos

Programação Cliente em Sistemas Web

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena

Disciplina de Banco de Dados Introdução

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V

Sistemas Operacionais

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web;

SISTEMAS DISTRIBUÍDOS

Service Oriented Architecture SOA

Microsoft.NET. Desenvolvimento Baseado em Componentes

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

Fase 1: Engenharia de Produto

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido

Integração de sistemas utilizando Web Services do tipo REST

Arquiteturas, Padrões e Serviços para Geoprocessamento. Lúbia Vinhas 13/05/2008

Introdução ao Modelos de Duas Camadas Cliente Servidor

SOA - Service Oriented Architecture. Marcelo Canevello Ferreira

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo

Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho

Anexo VI Edital nº 03361/2008. Projeto de Integração das informações de Identificação Civil. 1. Definições de interoperabilidade adotadas pela SENASP

3 SCS: Sistema de Componentes de Software


MBA Inteligência Competitiva Com ênfase em BI/CPM. Metadados

DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3

3 SERVIÇOS IP. 3.1 Serviços IP e alguns aspectos de segurança

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

SISTEMAS DISTRIBUÍDOS

Curso de Aprendizado Industrial Desenvolvedor WEB

Prática da Disciplina de Sistemas Distribuídos Serviços Web IFMA DAI Professor Mauro Lopes C. Silva

Sistemas Distribuídos

Visão geral híbrida de Serviços Corporativos de Conectividade do SharePoint 2013

Administração de Sistemas de Informação Gerenciais

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc.

Sistemas Distribuídos Arquiteturas Middlewares

Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto

Arquitetura dos Sistemas de Informação Distribuídos

BPM e SOA. Grinaldo Lopes de Oliveira (grinaldo@gmail.com) Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas

SISTEMA GERENCIADOR DE BANCO DE DADOS

Análise e Projeto Orientados por Objetos

MADALENA PEREIRA DA SILVA SLA Sociedade Lageana de Educação DCET Departamento de Ciências Exatas e Tecnológica

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores

1

ISO/IEC 12207: Gerência de Configuração

A Figura... mostra a arquitetura técnica de serviços na Web

Processos Técnicos - Aulas 4 e 5

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Laboratório de Computação VI JAVA IDL. Fabricio Aparecido Breve

Capítulo 9. Gerenciamento de rede

Comunicando através da rede

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados.

e-ping - Padrões de Interoperabilidade de Governo Eletrônico

Redes de Computadores. Prof. Dr. Rogério Galante Negri

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING

Semântica para Sharepoint. Busca semântica utilizando ontologias

Usando Service Design Thinking para criar SOA Corporativo

Projeto de Redes Físico e Lógico. Prof. MSc. Jeferson Bussula Pinheiro

Infra estrutura da Tecnologia da Informação

Engenharia de Software III


ENGENHARIA DE SOFTWARE I

APLICATIVO WEB PARA O SETOR DE EXTENSÃO IFC VIDEIRA

Laboratório de Redes. Professora Marcela Santos

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos

Engenharia de Software I: Análise e Projeto de Software Usando UML

SOA na Prática Ricardo Limonta

Universidade Paulista

COORDENAÇÃO DE TECNOLOGIA (COTEC) ABRIL/2011

COORDENAÇÃO DE TECNOLOGIA (COTEC) ABRIL/2011

Obtendo Qualidade com SOA

Arquitetura Orientada a Serviço

10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO

Conceitos de relação de confiança

2 Diagrama de Caso de Uso

Construção Páginas de Internet

Prof. JUBRAN. Aula 1 - Conceitos Básicos de Sistemas de Informação

Transcrição:

1 Introdução A Organização é a forma pela qual nós coordenamos nossos recursos de todos os tipos para realizar o trabalho que nos propusemos a fazer. A estrutura de nossas organizações manteve-se basicamente a mesma durante várias décadas ao longo do século XX. Ela é herança da Revolução Industrial inglesa e foi reformada durante o surto industrial americano no começo do século XX. Esse tipo de organização assenta-se sobre vários pressupostos que estão superados e que deram base ao surgimento de organizações voltadas para dentro, para suas próprias atividades, com estruturas hierárquicas pesadas e rígidas. 2 1

Introdução As Organizações estão procurando se organizar por processos para terem maior eficiência na obtenção do seu produto ou serviço, melhor adaptação à mudança, melhor integração de seus esforços e maior capacidade de aprendizado. A idéia de processo não é nova na administração das organizações, mas é um novo entendimento que diz que o negócio precisa focar aquilo que pode ser feito para atender aos clientes externos. 3 Visão Departamental das Organizações DEP 01 DEP 02 DEP 03 Aplicativos Aplicativos Aplicativos Processos Processos Processos Processos diferentes, com seus próprios dados. BD BD BD Não há compartilhamento de informações. 4 2

Visão Departamental das Organizações Organização Departamento 01 Departamento 02 Departamento 03 Departamento 04 ZTWS WISX.................. 5 Visão Departamental das Organizações DEP 01 Aplicativos DEP 02 Aplicativos DEP 03 Aplicativos Processos Processos Processos Os mesmos dados estão sendo manipulados por mais de um processo. Há compartilhamento de informações. BD 6 3

Visão Departamental das Organizações Organização Departamento 01 Departamento 02 Departamento 03 Departamento 04 ZTWS WISX.................. Repositório Corporativo 7 Modelagem de Processos do Negócio (BPM) Modelagem de processos da organização é o conhecimento e a análise dos processos e seu relacionamento com os dados, estruturados em uma visão top dowm, até um nível que permita sua perfeita compreensão e obtenção satisfatória dos produtos e serviços, objetivos e resultados dos processos. A execução operacional do mapeamento de processos iniciase com a coleta de dados para o levantamento da situação atual do processo (As Is), seguido pela otimização e modelagem do estado desejado do processo (To Be). O primeiro passo em qualquer projeto de Business Process Modeling (BPM) é entender o processo existente e identificar suas falhas. A modelagem dos processos de negócio é uma parte do gerenciamento dos processos de negócio. 8 4

Modelagem de Processos do Negócio (BPM) BPM: envolve a descoberta, projeto e entrega de processos de negócios. Adicionalmente, o BPM inclui o controle executivo, administrativo e supervisório desses processos. Processo: conjunto de atividades inter-relacionadas ou interativas, que transformam entradas em saídas. Subprocesso: um processo incluso em outro processo. Tarefa: uma atividade atômica (pouca abrangência) que é incluída em um processo. 9 Modelagem de Processos do Negócio (BPM) Atividade: podem ser processos, subprocessos ou tarefas. Serviço: consiste da funcionalidade que precisa ser especificada no contexto do negócio e em termos de contrato entre o provedor da mesma e o consumidor. Os detalhes de implementação devem ser omitidos. A implementação de um serviço não é necessariamente automática, pode consistir de uma atividade puramente humana. 10 5

Visão de Processos das Organizações Departamento 04 Organização Departamento 02 Departamento 03 Departamento 01 11 Visão de Processos das Organizações DEP 01 DEP 02 DEP 03 Aplicativos Aplicativos Aplicativos Processos Integrados Compartilhamento de Processos. Compartilhamento de informações. BD 12 6

Visão de Processos das Organizações Serviço Aplicativo Serviço Serviço Serviço Barramento de Serviços Repositório Corporativo 13 Arquitetura Orientada a Serviços é uma arquitetura fracamente acoplada, pois os serviços disponibilizados nesta arquitetura podem ser reutilizados e modificados e aplicados em diferentes áreas dentro e fora da organização sem ajustar a tecnologia subjacente, projetada para atender às necessidades de uma organização. Um serviço consiste da funcionalidade que precisa ser especificada no contexto do negócio e em termos de contrato entre o provedor da mesma e o consumidor. Os detalhes de implementação devem ser omitidos. Em os serviços são partes de um ou mais processos de negócio distribuídos. 14 7

Arquitetura Orientada a Serviços (Service Oriented Architecture) é um novo paradigma de modelagem das organizações cujo objetivo é criar módulos funcionais chamados de serviços, com baixo acoplamento permitindo sua reutilização. Além do reuso, a adoção de uma arquitetura orientada a serviços facilita a adaptabilidade de sistemas, fazendo com que se tornem altamente dinâmicos na medida que serviços podem ser substituídos em tempo de execução de maneira transparente. Como atualmente as organizações estão em constante atualização, a dinamicidade dos sistemas torna-se uma questão relevante. 15 Arquitetura Orientada a Serviços conecta pessoas, processos e informação em uma organização. (Fonte: Adaptado de JOHN et al., 2006). 16 8

Os Serviços Web são componentes de software em uma arquitetura baseada em serviços, também conhecida por (Service Oriented Architecture), termo inicialmente definido pela IBM. Os componentes da arquitetura representam uma coleção de serviços que se comunicam através da troca de mensagens XML. Nesta arquitetura estão definidos três papéis que interagem entre si: Provedor do Serviço; Consumidor do Serviço; Registro dos Serviços. 17 Provedor de serviço: responsável pela descrição e publicação de um determinado serviço Web no registro dos serviços. As informações estão representadas em um documento XML escrito na linguagem padrão WSDL(Web Service Description Language); Consumidor do serviço: responsável por descobrir um serviço, obter a sua descrição e usá-lo; Registro dos serviços: mantém um diretório com informações sobre serviços, armazenados no padrão UDDI (Universal Description, Discovery and Integration). 18 9

Tecnicamente, Web services são serviços distribuídos que processam mensagens Simple Object Access Protocol (P) codificadas em XML, enviadas através de HTTP e que são descritas através de Description Language (WSDL). 19 P (Simple Object Access Protocol) é um protocolo para troca de informações estruturadas em uma plataforma descentralizada e distribuída, utilizando tecnologias baseadas em XML. Sua especificação define uma framework que provê maneiras para se construir mensagens que podem trafegar através de diversos protocolos e que foi especificado de forma a ser independente de qualquer modelo de programação ou outra implementação específica. O P surgiu no ano de 1998, apresentado ao World Wide Web Consortium (W3C) pelas empresas DevelopMentor, Microsoft e UserLand Software como um Internet Draft. Inicialmente, este protocolo definia um mecanismo para transmissão de procedimentos remotos XML sobre HTML. Devido a divergências políticas, sua especificação em 1998 não ocorreu, mas sim em dezembro de 1999. 20 10

P <P-ENV:envelope> <! Elemento raiz do P e define que essa é uma mensagem P--> <P-ENV:header> <! Especifica informações especificas como autenticação (opcional)--> </P-ENV:header> <P-ENV:body> <! O elemento BODY contém o corpo da mensagem--> <P-ENV:fault> <! O elemento FAULT contém os erros que podem ocorrer--> </P-ENV:fault> </P-ENV:body> </P-ENV:envelope> 21 P possibilita dois processos (possivelmente em duas máquinas diferentes) comunicarem entre si, desconsiderando o hardware e a plataforma que eles estão rodando. Não está vinculado a nenhuma plataforma de hardware, software ou linguagem de programação. É considerado superficial, pois contém menos recursos que outros protocolos de computação distribuídos. Um dos grandes benefícios do P é que ele é aberto e foi adotado pela maioria das grandes empresas de hardware e software. A sua especificação provê a base para a comunicação aplicação-aplicação: os. 22 11

WSDL ( Description Language) é uma linguagem baseada em XML utilizada para descrever. Na verdade, trata-se de um documento escrito em XML que além de descrever o serviço, especifica como acessá-lo e quais as operações ou métodos disponíveis. 23 UDDI (Universal Description, Discovery and Integration) é uma especificação que define um serviço de registro para. Usuários de serviços podem usar UDDI para descobrir serviços que lhes interessem e obter os metadados necessários para utilizar esses serviços. 24 12

A arquitetura dos Serviços Web é composta basicamente por quatro elementos: Serviço: um aplicativo apto para processar documentos XML recebidos através de uma combinação de protocolos de transporte e de aplicação. Detalhes de como esse componente é construído, como técnicas de orientação a objetos, etc., não são especificados. O único requisito necessário para este tipo de componente, é que o mesmo esteja apto a tratar documentos XML; Endereço: combinação entre protocolo e endereço de rede, utilizada para que um cliente possa acessar um serviço; Documento XML: um documento que contém informações específicas à aplicação; Envelope: encapsulamento que garante que documentos XML sejam processados de forma correta, separando as informações relacionadas a comunicação dos dados em si. Por exemplo, informações relacionadas a forma como a mensagem será cifrada ou assinada podem ser especificadas em um envelope sem que o documento XML original seja modificado. 25 Um documento WSDL é composto por uma parte abstrata, que descreve o que o Serviço Web faz em termos de mensagem que este consome e produz, e por outra parte concreta que é referente a implementação e que define como e onde o serviços é oferecido. Os principais elementos XML presentes em um documento WSDL são: types: define os tipos de dados; message: define, de forma abstrata, as mensagens que serão trocadas; operation: define, de forma abstrata, a operação para uma mensagem; porttype: descreve um conjunto abstrato de operações mapeadas para um ou mais serviços, os quais são descritos como pontos finais de rede ou portas; binding: especifica como mapear os elementos abstratos, message e operation, nos protocolos de rede que serão utilizados para transportar as mensagens até o destino (suas representações concretas); port: uma combinação entre o elemento binding e o endereço de rede, provendo assim um endereço único para acessar um serviço; service: declara o endereço das portas para os bindings. Ou seja, indica onde encontrar um serviço usando sua porta. Os quatro primeiros elementos pertencem à parte abstrata da WSDL e os demais, à parte concreta. 26 13

Exemplo 27 Serviço: Servico.jws Exemplo public class Servico { public int soma(int valor1, int valor2) { return valor1 + valor2; } } 28 14

Cliente: Cliente.java Exemplo import org.apache.axis.client.service; import org.apache.axis.client.call; public class Cliente { public static void main(string[] args) throws Exception { // Endereo, local onde encontra-se o Web Service String local = "http://localhost:8080/axis/servico.jws"; // Criando e configurando o servio Call call = (Call) new Service().createCall(); // Configurando o endereo. call.settargetendpointaddress(local); // Marcando o mtodo a ser chamado. call.setoperationname("soma"); // Parmetros da funcao soma. Object[] param = new Object[]{new Integer(2),new Integer(4)}; // Retorno da Funo Integer ret = (Integer)call.invoke(param); // Imprime o resultado: ret = 2 + 4. System.out.println("Resultado da soma : " + ret); }} 29 FIM 15