A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Desmistificando SOA SERVICE-ORIENTED ARCHITECTURE Patrick de Faria –

Apresentações semelhantes


Apresentação em tema: "Desmistificando SOA SERVICE-ORIENTED ARCHITECTURE Patrick de Faria –"— Transcrição da apresentação:

1

2 Desmistificando SOA SERVICE-ORIENTED ARCHITECTURE Patrick de Faria –

3 Desmistificando SOA Módulo 1 – Primeiro os Negócios

4 Ambiente Competitivo Atual Módulo 1 – Primeiro os Negócios Hiper-Competição Clientes: Cada vez compram menos Cada vez mais exigentes Cada vez menos fiéis Rápidos ciclos de produtos Empresas precisam ser capazes de responder rapidamente a competição, as demandas dos consumidores e as mudanças do mercado Empresas precisam ser ágeis e flexíveis Hiper-Competição: Significa estar o tempo todo criando estratégias para conseguir vantagens e eliminar as da concorrência Dismistificando SOA

5 O Valor do Tempo de Resposta Módulo 1 – Primeiro os Negócios Time to Market: Tempo entre conceber e lançar determinado produto ou serviço Dismistificando SOA Agilidade = Diferencial Competitivo

6 Surgem as Perguntas… Módulo 1 – Primeiro os Negócios Como se tornar mais competitivo ? Como aumentar a agilidade para mudança e inovação ? Como responder rapidamente ? Como ser flexível o suficiente para reduzir time to market ? E como fazer tudo isso... Tendo o que reduzir custos e Conviver com ambientes de TI heterogêneos e cada vez mais complexos Dismistificando SOA

7 Cabo de Guerra Módulo 1 – Primeiro os NegóciosDismistificando SOA Negócios: Aumentando nível e volume de mudanças e inovação Pressionando por rapidez Virtualizando TI: Reduzir Custos Lidar com Ambientes Heterogêneos Maximizar os ativos de TI

8 Olhando para o Passado Recente Módulo 1 – Primeiro os Negócios Empresas nos últimos anos aplicaram dezenas de teorias para aumentarem sua competitividade TQM Six-Sigma ISO Re-engenharia Outsourcing Rightsourcing... Levando a competição para trincheiras da: Produtividade Menor Custo Dismistificando SOA

9 Resultado Módulo 1 – Primeiro os Negócios Eficiência Operacional Redução de Custos Aumento da Satisfação do Cliente Entretanto: Fácil de copiar Não garante tradução sustentável de ganhos Soma Zero a longo prazo Pressão sobre os custos e sobre os preços Competição baseada em Eficiência Operacional normalmente são mutuamente destrutivas Dismistificando SOA Eficiência Operacional: Executar atividades similares melhor que o concorrente

10 Fronteira da Produtividade Módulo 1 – Primeiro os NegóciosDismistificando SOA Fronteira da Produtividade: É o somatório de todas as melhores práticas existentes em um dado momento ou o máximo valor que uma empresa pode criar para um dado custo usando a melhor tecnologia, habilidades, técnicas de gerenciamento e ferramentas. Porter, HBR, 1996

11 Soma Zero Módulo 1 – Primeiro os NegóciosDismistificando SOA

12 Eficiência Operacional é importante mas não é suficiente! Segundo Michael Porter: “ A concorrência moderna tornou muito difícil manter vantagens em relação aos seus concorrentes. A empresas passaram a imitar umas às outras, em ritmo acelerado. Restam apenas dois caminhos: Diferenciação Preço Baixo Concluindo Módulo 1 – Primeiro os NegóciosDismistificando SOA Michael Porter: Michael Porter é considerado a maior autoridade mundial em estratégia competitiva. É autor dos maiores best- sellers internacionais na área, entre os quais se destacam: Vantagem competitiva e Estratégia competitiva

13 Sabemos que há um limite para compressão dos preços sem prejuízo a saúde financeira das empresas e/ou a qualidade do serviço ou produto. Logo pedimos licença a Michael Porter para afirmar: Só existe o caminho, o da diferenciação. Portanto, seja Distinto ou seja Extinto! Apenas um Caminho Módulo 1 – Primeiro os NegóciosDismistificando SOA

14 Empresas só podem superar rivais, conquistar mercados e manter clientes se puderem estabelecer uma diferença ou singularidade que possa preservar. Existente duas maneiras de se diferenciar: Diferenciação por Custos – Eficiência Operacional Diferenciação por Atividade – Posicionamento Estratégico INOVAR e INOVAR Apenas um Caminho Módulo 1 – Primeiro os NegóciosDismistificando SOA Posicionamento Estratégico: Executar atividades diferentes dos rivais ou executar atividades similares de diferentes meios ou maneiras.

15 Posicionamento Estratégico tem haver com TI Desalinhamento é : A diferença de velocidade entre TI e Negócios é a principal causa do fraco alinhamento entre estas duas áreas. Existem casos em que o negócio tem sido guiado pelas restrições de TI “Você sabe quanto tempo vai demorar para fazer isso ?” Desalinhamento Módulo 1 – Primeiro os NegóciosDismistificando SOA Alinhameno: TI agrega real valor ao plano de negócios; Não resiste às mudanças; Combate a resistência às mudanças; e É planejado Dinâmico The Squandred Computer Paul Strassmann IEP (1997)

16 Atualmente empresas sofrem de ineficiência e falta de agilidade. Isso significa que elas não são capazes de atender rápido o suficiente as requisições de negócio através de sua infra-estrutura de TI, efetivamente limitando a capacidade de reação para as demandas crescentes e constantes do mercado. Juntando Tudo Módulo 1 – Primeiro os NegóciosDismistificando SOA

17 O Fenômeno das Solicitações de Mudanças Módulo 1 – Primeiro os NegóciosDismistificando SOA

18 Dificuldades de realizar mudanças estruturais O gerente de projeto e os participantes chaves foram para outros projetos A manutenção é realizadas por profissionais menos qualificados Perde-se o lobby interno e apoio em função de projetos mais prioritários Orçamentos apertados para consertos e manutenções Raramente existe orçamento para fazer refactoring O Fenômeno das Solicitações de Mudanças Módulo 1 – Primeiro os NegóciosDismistificando SOA Refactoring: Reestruturar um software aplicando mudanças em seu desenho, sem alterar o comportamento externo ou observável

19 Desmistificando SOA Módulo 2 – Os Fundamentos

20 Componentes de software que representam um processo, atividade ou tarefa de negócio. São componentes de alto nível, orientados ao negócio. Tecnicamente falando: Um Serviço é módulo de aplicação alto-contido Acessível Remotamente Frequentemente os termos “Client” e “Server” são usados como sinônimos para “Service Consumer” e “Service Provider” repectivamente O Conceito de Serviço Módulo 2 – Os FundamentosDismistificando SOA

21 Provém funcionalidades que podem ser re-usadas em diferentes aplicações Serviços são destinados para uso público e não de um específico Cliente Serviços encapsula alguma atividade de uma determinada complexidade Serviços deixam o mundo mais convenientes para o “Service Consumer” Um apropriado padrão de interação e comunicação deve existe entre “Service Provider” e “Service Consumer” O Conceito de Serviço Módulo 2 – Os FundamentosDismistificando SOA

22 O Fator crucial no desenvolvimento de serviços é a questão do Grau de Abstração Podem existir vários tipos de Serviços Serviços Básicos ( Log, Pegar Informação do Cliente ) Serviços de Intermediários ( Gateways, Facades, Adapters ) Serviços de Transações ( Abrir Conta ) Serviços de Negócios ( Processar Pedido ) O Conceito de Serviço Módulo 2 – Os FundamentosDismistificando SOA

23 Fraco Acoplamento ( Loosing Coupled ) Módulo 2 – Os FundamentosDismistificando SOA Um Consumidor “chama” um provedor de serviço sem se importar como sua Localização, a Plataforma onde ele se encontra, a linguagem em que foi desenvolvido ou mesmo o protocolo de comunicação que ele utiliza Serviços são componentes de softwares desenvolvidos de maneira fracamente acoplada

24 Exemplos de Serviços Módulo 2 – Os FundamentosDismistificando SOA Caso do Cliente Inativo. Possíveis Serviços: ConsultaCliente() ClienteEstaCadastrado() VerificaPosiçãoFInanceira() ConsultaCPFSERASA()

25 Um Web Service é uma peça de software que está em conformidade com um conjunto de padrões abertos para interoperabilidade. Esses padrões permitem que programas de computador troquem informação através de mensagens, sem se importar com a plataforma de hardware, sistema operacional, infra-estrutura de rede ou linguagem de programação. Web Services Módulo 2 – Os FundamentosDismistificando SOA

26 Web Services e suas Tecnologias Módulo 2 – Os FundamentosDismistificando SOA Web Services dependem de três tecnologias inter-relacionadas, baseadas no padrão XML: Simple Object Access Protocol (SOAP) — Protocolo para a troca de mensagens Web Services Description Language (WSDL) — O documento que descreve exatamente o que o web service faz e como invoca-lo Universal Discovery, Description, and Integration (UDDI) — O diretório de web services que estão disponíveis para o uso

27 Web Services Módulo 2 – Os FundamentosDismistificando SOA Sem Web Services: Interface proprietária Interface para envio e recebimento Com Web Services: Interface universalmente aceitas XML e SOAP Ambos computadores entendem SOAP Tráfego através de HTTP JMS, FTP, SMTP....

28 Web Services Módulo 2 – Os FundamentosDismistificando SOA Em ambientes de computação distribuídas utilização de SOAP sobre protocolos de internet tornam Web Services universais Operações em Web Services tipicamente envolvem Requisição e Resposta Existe no mínimo um Consumidor e um Provedor para cada transação Um Provedor pode servir a centenas de consumidores em diferentes computadores

29 Web Services e suas Tecnologias Módulo 2 – Os FundamentosDismistificando SOA

30 Web Services - SOAP Módulo 2 – Os FundamentosDismistificando SOA SOAP é a “língua franca” dos web services, Documento estruturado em XML na qual as mensagens dos web services são construídas

31 Web Services - WSDL Módulo 2 – Os FundamentosDismistificando SOA O WSDL é um documento estruturado em XML que descreve exatamente como um web service específico trabalha Mensagens SOAP podem ser geradas automaticamente a partir do documento WSDL Web services são conhecidos como “self-describing” em função das propriedades do WSDL

32 Web Services - UDDI Módulo 2 – Os FundamentosDismistificando SOA UDDI oferece um mecanismo para clientes procurarem web services Usando UDDI clientes podem dinamicamente pesquisar e descobrir serviços oferecidos por um provedor de serviços UDDI funciona como uma espécie de “páginas amarelas”. Se precisar de serviço procure no UDDI Clientes podem encontrar serviços usando diferentes tipos de categorização

33 O que Web Services podem fazer Módulo 2 – Os FundamentosDismistificando SOA Comunicação entre sistemas de fornecedores diferentes ( Loose Coupling )

34 Limites dos Web Services Módulo 2 – Os FundamentosDismistificando SOA Latência XML são considerados lentos Web Services devem ser concebidos para função de alto nível Segurança Expor dados via padrões abertos pode ser perigoso Não foram concebidos com essa preocupação Gerenciamento Integrações ponto-a-ponto Monitoramento de performancee e disponibilidade Controle de Versão

35 Desmistificando SOA Módulo 3 – Bem-Vindo a SOA

36 Empresas em Direção a SOA Módulo 3 – Bem-vindo ao SOADismistificando SOA

37 Definição do Conceito Módulo 3 – Bem-vindo ao SOADismistificando SOA É uma estratégia que propõe a organização dos ativos de software de forma que eles possam representar Processos, Atividades ou Tarefas de Negócio. Tais representações são chamadas de Serviços, que devem ser baseados em padrões e facilmente combinados e reutilizados visando a satisfação dos requerimentos do negócio.

38 Mais uma definição… Módulo 3 – Bem-vindo ao SOADismistificando SOA SOA é a implementação de uma plataforma de serviços, que significa elementos de processo de negócios, que podem ser combinados a recombinados em diferentes soluções e cenários, como determinado pelas necessidades dos negócios. A capacidade de integrar e recombinar serviços prover uma maior aproximação entre o negócios e TI bem como maior flexibilidade para resolver novas situações.

39 Sobre SOA Módulo 3 – Bem-vindo ao SOADismistificando SOA SOA (Service Oriented Architeture) significa Arquitetura orientada a serviços [1970]. SOA não é orientado a objetos [1980]. Muito menos implementar web services Bons desenvolvedores estruturados implementam as características de código do SOA (dados só acessíveis via rotinas específicas, rotinas de cálculo comuns, etc). A diferença é a fatoração. É o olhar que damos a estrutura e volatilidade das rotinas em relação ao ciclo de vida do negócio.

40 Sobre SOA Módulo 3 – Bem-vindo ao SOADismistificando SOA Dar ao software um ciclo de vida igual ao do negócio é uma vantagem sensível. Fraco acoplamento ( loose-coupled) dos serviços; Independência de tecnologia e protocolos; Uso irrestrito de padrões Incentivo à reutilização de ativos SOA não é aplicação N-TIER

41 SOA Permite Módulo 3 – Bem-vindo ao SOADismistificando SOA INTERFACES FLUXO DO PROCESSO REGRAS DE NEGÓCIO IMPLEMENTAÇÃO INTEGRAÇÃO Aplicação Monolítica Forte Acoplamento INTERFACES Aplicação SOA Fraco Acoplamento SERVIÇO FLUXO DE CONTROLE SERVIÇO SERVIÇO SERVIÇO SERVIÇO SERVIÇO SERVIÇO SERVIÇO SERVIÇO SERVIÇO SERVIÇO SERVIÇO

42 SOA Permite Módulo 3 – Bem-vindo ao SOADismistificando SOA Desenvolvimento novos relacionamento com consumidores, parceiros e fornecedores Melhoramento do time to market Criar soluções diferenciadas com alto valor para clientes e parceiros em tempo Redução de custos operacionais Justificativa de investimentos de TI de maneira mais clara Economia de tempo e dinheiro através da re-utilização

43 Camadas do SOA Módulo 3 – Bem-vindo ao SOADismistificando SOA

44 O Paradigma Muda Módulo 3 – Bem-vindo ao SOADismistificando SOA

45 Exemplo de Serviços II Módulo 3 – Bem-vindo ao SOADismistificando SOA

46 Antes e Depois Módulo 4 – Planejando e ModelandoDismistificando SOA

47 Componentes do SOA Módulo 3 – Bem-vindo ao SOADismistificando SOASOA AplicativosServiços Repositório de Serviços Barramento de Serviços

48 Componentes do SOA Módulo 3 – Bem-vindo ao SOADismistificando SOA APPLICATION FRONTENDS ( Aplicativos ) Inicializam e controlam todas as atividades da empresa Existem diferentes tipo: com Interface gráfica, Aplicações WEB, … Podem ser agentes ou programas Batch SERVICES ( Serviços ) Componentes de software que representam um processo, atividade ou tarefa de negócio São componentes de alto nível, orientados ao negócio São compostos por lógica, dados, contrato e interfaces

49 Componentes do SOA Módulo 3 – Bem-vindo ao SOADismistificando SOA SERVICE REPOSITORY ( Repositório de Serviços ) Um repositório de serviços que oferece facilidades para descobrir e obter informações sobre serviços SERVICE BUS ( Barramento de Serviços ) Interconecta todos os participantes de uma SOA, abstraindo a complexidade técnica que existe nas camadas inferiores.

50 Desmistificando SOA Módulo 4 – Planejando e Modelando

51 SOA e BPM Módulo 4 – Planejando e ModelandoDismistificando SOA BPM ( Business Process Management ) - É um conceito de gerência geral que foca nos aspectos estratégicos e operacionais do mapeamento, análise e otimização de processos de negócio de uma empresa. BPM introduz o conceito de “process processing” BPMS (Business Process Management System) – Oferece plataforma técnica para realizar as inciativas propostas pelo BPM. BPMN é a notação usada pelas BPMS Implementam extensivamente Linguagens de composição ( BPEL,...)

52 Evolução das linguagens de Composição Módulo 4 – Planejando e ModelandoDismistificando SOA

53 Orquestrar X Coerografar Módulo 4 – Planejando e ModelandoDismistificando SOA Orquestrar Coordenação central Os componentes não sabem quem esta envolvido Coreografar Sem coordenação Central Cada componente sabe exatamente quando executar sua operação

54 BPEL Módulo 4 – Planejando e ModelandoDismistificando SOA BPEL ( Business Process Execution Language ) – Padrão de como especificar a orquestração de processos de negócios Baseado em XML

55 BPM, SOA e BPEL Módulo 4 – Planejando e ModelandoDismistificando SOA

56 BPM, SOA e BPEL na prática Módulo 4 – Planejando e ModelandoDismistificando SOA

57 Um gráfico vale mais que mil palavras Módulo 3 – Bem-vindo ao SOADismistificando SOA Processos de Negócios ( BPEL ) Serviços ( WS ) Legado Componentes Ativos

58 Entendendo o ESB Módulo 4 – Planejando e ModelandoDismistificando SOA É um termo criado pelo Gartner Group. Seu conceito é de uma camada de desacoplamento entre aplicações (e não sistemas) já existentes. É implementado através de uma solução de mensageria de interface rica. A função primária do ESB é conectividade, inter-conectar os participantes de um SOA Facilita aplicações e serviços invocarem serviços ESB é uma abordagem para promover integração entre softwares já existentes através de uma coleção de midlewares diferentes

59 Entendendo o ESB Módulo 4 – Planejando e ModelandoDismistificando SOA Principais funcionalidades Heterogenia de Tecnologias – O ESB deve conectar uma variedade de diferentes tecnologias possibilitando a comunicação de participantes baseados em diferentes linguagens de programação, sistemas operacionais Heterogenia de Comunicação – O ESB deve oferecer uma variedade de conceitos de comunicação permitindo diferentes modos de comunicação entre os participantes. Serviços Técnicos – O ESB pode prover serviços como LOG, Auditoria, Segurança e Transformação. ou pela definição da IBM – Transporte, Mediação e Qualidade do Serviço ( Quality of Service - QoS ) e Web Service Gateway

60 Entendendo o ESB Módulo 4 – Planejando e ModelandoDismistificando SOA

61 Entendendo ESB II Módulo 3 – Bem-vindo ao SOADismistificando SOA

62 Entendendo ESB III Módulo 3 – Bem-vindo ao SOADismistificando SOA

63 Entendendo ESB IV Módulo 3 – Bem-vindo ao SOADismistificando SOA

64 O Programa SOA Módulo 4 – Planejando e ModelandoDismistificando SOA SOA é uma iniciativa de longo prazo (3 – 5 anos) Compreende a execução de dezenas ou centenas de projetos Projetos que devem respeitar Estruturas, Processos e Padrões Além (ou apesar) de adotarem integralmente o conceito de “Acoplamento Fraco” que caracteriza os Serviços Programa: Segundo PMI-PMBOK, um programa consiste em um conjunto de projetos

65 Projetos SOA Módulo 4 – Planejando e ModelandoDismistificando SOA Projetos são de pequeno porte (2 – 8 semanas); Exceto o projeto de implementação do ESB, que deve evoluir gradualmente e pode durar meses; Proximidade com as áreas de negócio é fundamental para o sucesso assim como a aderência aos padrões;

66 Enganos comuns Módulo 4 – Planejando e ModelandoDismistificando SOA Argumentar sobre o conceito ao invés sobre o como fazer Confundir Web Services com SOA Deixar SOA exclusivamente nas mãos de TI Achar que se pode comprar SOA de um fornecedor Construir SOA “do zero” Usar um processo Cascata ( “waterfall” ) Tornar SOA muito complicado

67 Primeiros Passos Módulo 4 – Planejando e ModelandoDismistificando SOA Identificar 1 (um!) processo de negócio que: - Componha o ‘core business’ - Seja ‘nervoso’ (volátil) - Tenha relevância na cadeia de valor - Esteja ‘mal-atendido’ por TI (e esteja no backlog de manutenção!) Definir um “Rabisco de Processo” Identificar e Classificar todos os prováveis Serviços Aferir capacidade de reuso dos prováveis Serviços Avaliar: - Projeto SOA (overhead reuso) X Tradicional - Redução do Custo de Propriedade Rabiscar um “Plano Arquitetônico” Bancar o primeiro “Projeto SOA”!

68 Desmistificando SOA Módulo 5 – SOA em Ação

69 SOA em B2B Módulo 5 – SOA em AçãoDismistificando SOA Aumentando o potencial : Facilidade para novas soluções Facilidade para novos negócios

70 Construindo HUBs Módulo 5 – SOA em AçãoDismistificando SOA HUBs Corporativos: Facilita o gerenciamento Facilita a segurança

71 Interação entre Parceiros Módulo 5 – SOA em AçãoDismistificando SOA

72 Interação entre Parceiros Módulo 5 – SOA em AçãoDismistificando SOA

73 Motivação e Benefícios Módulo 3 – Bem-vindo ao SOADismistificando SOA Re-Uso: Segundo Barry,1999 alguns aspectos que tendem a influenciar diretamente a produtividade do desenvolvimento e no impacto sobre custos é descrito da seguinte forma: Trabalhando mais rápido (ex.: automação, ferramentas e ambientes): 8% de ganho. Trabalhando de forma mais inteligente (ex.: melhoria dos processos): 17% de ganho. Evitando o trabalho desnecessário (ex.: reuso dos artefatos de projeto): 47% de ganho.

74 Dismistificando SOA Obrigado !

75 Dismistificando SOA Bibiliografia / Referências Enterprise SOA Dirk Krafzig et al Prentice-Hall (2005) Understanding Enterprise SOA Eric Puler Manning (2006) Service-Oriented Architecture ( SOA ) Compass Nobert B., Sajay B IBM Press (2006) Let´s Talk About SOA – Creative Commons Advantage Competitive Michael Porter Free Press( 1987 )


Carregar ppt "Desmistificando SOA SERVICE-ORIENTED ARCHITECTURE Patrick de Faria –"

Apresentações semelhantes


Anúncios Google