soa next steps/passos de adoção soa

Post on 22-May-2015

1.670 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

SOA e reúso te ativos de software na prática. Essa apresentação aborda aspectos estratégicos, educativos e técnicos sobre SOA (Service Oriented Architecture), reúso de ativos de software, arquitetura e componentização.

TRANSCRIPT

SOA Next Steps e

Roadmap de Adoção

SOA Next Steps e

Roadmap de Adoção

confide público | www.sensedia.com/br 1

Roadmap de AdoçãoRoadmap de Adoção

Kleber Bacilikleber.bacili@sensedia.com

• Benefícios e Desafios

• Principais características

• Funcionamento da arquitetura SOA

• Exemplos (Básicos e Avançados)

• Web Services

AgendaAgenda

público | www.sensedia.com/br

• Web Services

• Infra-estrutura SOA

• Roadmap de Adoção

�Agilidade

MotivaçãoMotivação

público | www.sensedia.com/br

�Agilidade

�Produtividade

Fazer mais com menos!

Arquitetura TradicionalArquitetura Tradicional

• Mundo de conexões Ponto-a-Ponto• Muito difícil de entender, manter e evoluir

público | www.sensedia.com/br

• SOA não é uma tecnologia

• SOA não é um produto ou plataforma

• Nenhum fornecedor pode vender SOA para você

• SOA não é uma revolução ou “bala de prata”

SOA NÃO é:SOA NÃO é:

público | www.sensedia.com/br

• SOA não é uma revolução ou “bala de prata”

• SOA ≠ WebServices ≠ XML ≠ BPM

• SOA não é “Puro Marketing”

“Because SOA Comes From So Many Places, SOA Will Happen to Everyone”

Não há como evitar SOA:

público | www.sensedia.com/br

“Service Orient or Be Doomed”Jason Bloomberg, Ronald Schmelzer, mar 2006

Places, SOA Will Happen to Everyone”Frank Kenney, Gartner, abr 2007

Service-Oriented Architecture

SOA é uma abordagem arquitetural corporativa que permite a criação de serviços de negócio interoperáveis que

Arquitetura Orientada a Serviços

público | www.sensedia.com/br

Architecturede negócio interoperáveis que podem facilmente ser reutilizados e compartilhados entre aplicações e empresas.

• Metodologia / Processos / Governança

• Capacitação e estruturação organizacional

Dimensões EnvolvidasDimensões Envolvidas

“Em 2010, a carência de planejamento relacionado a governança será a razão mais comum dos fracassos em SOA”

público | www.sensedia.com/br

• Capacitação e estruturação organizacional

• Arquitetura Tecnológica

� Padrões, Frameworks e Boas Práticas

• Ferramentas em Design-time e Run-time

Fator Crítico de TI: Reutilização

O que o Mercado anda dizendo...O que o Mercado anda dizendo...

“Em 2008, mais de 60% das empresas utilizarão SOA como princípio básico para a criação de aplicações e processos de

missão crítica”

O mercado SOA na América Latina deve crescer de US$ 71

milhões para US$1,6 bilhão de

público | www.sensedia.com/br

missão crítica”milhões para US$1,6 bilhão de

2006 para 2011 o que representa um crescimento acumulado de 86% ao ano

“SOA é a nova fundação para a entrega mais rápida e

eficiente de valor ao negócio através de TI”

“Companies with even basic governance in place see the

benefits through high levels of service reuse and low levels of

service duplication”

Conceitos-chave: Baixo AcoplamentoConceitos-chave: Baixo Acoplamento

• Alto Acoplamento • Baixo Acoplamento

� Capacidade dos ativos de TI trabalharem integrados embora existam independentemente

público | www.sensedia.com/br

� Permite que agentes humanos interajam com sistemas complexos de uma forma simples:

Conceitos-chave: AbstraçãoConceitos-chave: Abstração

público | www.sensedia.com/br

� Elemento de software que encapsula conhecimento e que pode ser reusado: Quais são os seus?

Conceitos-chave: AssetConceitos-chave: Asset

público | www.sensedia.com/br

Exemplo de AtivosExemplo de Ativos

Serviços de Negócio

Componentes para domínios específicos de negócio (representados através de modelos ou componentes/serviços de software)

Módulos e APIs de produtos

COTs (Commercial off-the-shelf), módulos de produtos com API’s, serviços disponíveis de forma “on-demand”

público | www.sensedia.com/br

Padrões Patterns de arquitetura, de design, padrões de interface, codificação etc

Componentes Técnicos / Framework

Biblioteca de funcionalidades e componentes técnicos que servem de base para novos desenvolvimentos

Templates Modelos e documentos gerados no ciclo de vida de desenvolvimento

Código Classes, funções e procedimentos ou, no pior caso, reuso copy&paste

Benefícios e Desafios

Benefícios e Desafios

confide público | www.sensedia.com/br 15

DesafiosDesafios

• Time-to-Market / Agilidade

• Redução de Custo

• Facilidade / Flexibilidade de Manutenção

• Melhoria da Qualidade / Maturidade

• Otimização dos processos

Benefícios Esperados de SOABenefícios Esperados de SOA

público | www.sensedia.com/br

• Otimização dos processos

• Transformação dos negócios / Oportunidades de Receita

SOA: Manutenção vs. InovaçãoSOA: Manutenção vs. Inovação

público | www.sensedia.com/br

Principais DesafiosPrincipais Desafios

Organização e PessoasOrganização e Pessoas

� Papéis e Responsabilidades

� Mudança de Cultura, Treinamentos

Tecnologia e FerramentasTecnologia e Ferramentas

público | www.sensedia.com/br

Treinamentos

� Promoção, Acompanhamento e Enforcement

� Arquiteturas Padronizadas

� Middleware de Integração

� Padrões de Classificaçãoe Documentação

� Repositório de AtivosReutilizáveis

Processos e Políticas

Processos e Políticas

� Ciclo de Vida dos Ativos

� Metodologia de Desenvolvimento Revisitada

� Processos de Manutenção

Funcionamento Básico SOA

Funcionamento Básico SOA

confide público | www.sensedia.com/br 19

Básico SOABásico SOA

Dinâmica de FuncionamentoDinâmica de Funcionamento

Diretório

de Serviços

Query Service Register Service12

público | www.sensedia.com/br

Provedor

do Serviço

Consumidor

do Serviço

Ex.: CorreiosTracking de Pacotes

Ex.: SubmarinoLoja Virtual

Bind Service

Register Service

Service Contract

and Address

Service Response

3

4

5

Dinâmica de FuncionamentoDinâmica de Funcionamento

É muito mais comum encontrar integração com

ligação ponto-a-ponto usando Web Services

público | www.sensedia.com/br

Provedor

do Serviço

Consumidor

do Serviço

Ex.: CorreiosTracking de Pacotes

Ex.: SubmarinoLoja Virtual

Bind Service

Service Response

4

5

• Serviços Básicos:

� Stock Quotes

� Previsão do Tempo

• Serviços com Valor Estratégico para o Negócio

Mais alguns exemplos de ServiçosMais alguns exemplos de Serviços

público | www.sensedia.com/br

• Serviços com Valor Estratégico para o Negócio

� Status de Pedido

� Consulta de Extrato

� Consulta de índice de Risco

Agência de ViagensAgência de Viagens

público | www.sensedia.com/br

Como SOA vem Transformando

Negócios

Como SOA vem Transformando

Negócios

confide público | www.sensedia.com/br 24

NegóciosNegócios

• Algumas empresas já vêm destacando-se e reinventando sua forma de realizar negócios

• Alguns destaques globais:

� Amazon.com

Alguns (bons) ExemplosAlguns (bons) Exemplos

público | www.sensedia.com/br

� Amazon.com

� Strike Iron

� Massa crítica:

– ComponentSource

– Widgetbox

Amazon.com WebservicesMarketplace at 1’click

Amazon.com WebservicesMarketplace at 1’click

público | www.sensedia.com/br

Strike IronIt’s all about information

Strike IronIt’s all about information

público | www.sensedia.com/br

Component Source(http://www.componentsource.com)

Component Source(http://www.componentsource.com)

público | www.sensedia.com/br

O Fenômeno Web 2.0 O Fenômeno Web 2.0

público | www.sensedia.com/br

SerasaEstamos começando?

SerasaEstamos começando?

público | www.sensedia.com/br

• Reflexões:

� Isso se aplica a mim?

– Comprador de soluções de software

Fornecedores de

E quanto a todos nós?E quanto a todos nós?

público | www.sensedia.com/br

– Fornecedores de serviços

– Vendors de produtos/ pacotes

� Software as a Service (SaaS) ??

• Em ambientes estáveis, homogêneos e quando a empresa não oferece serviços de software para parceiros, clientes ou fornecedores

• Como SOA é baseado em troca de mensagens

Quando NÃO usar SOAQuando NÃO usar SOA

público | www.sensedia.com/br

• Como SOA é baseado em troca de mensagens e baixo acoplamento, para os casos que necessitem de desempenho real-time, SOA pode não ser a melhor abordagem

Serviços:Identificação, Modelagem,

Granularidade, ...

Serviços:Identificação, Modelagem,

Granularidade, ...

confide público | www.sensedia.com/br 33

Granularidade, ...Granularidade, ...

• Top-Down

� Identificando as necessidades de negócio e modelando essas necessidades em serviços de alto valor agregado

• Bottom-Up

Identificação de ServiçosIdentificação de Serviços

público | www.sensedia.com/br

• Bottom-Up

� Disponibilizando um conjunto de funcionalidades já disponíveis nos sistemas existentes (legados)

• Recomendação (“meet in the middle”):

� Primeiro a análise Top-Down e depois a Botom-Up para preservar o alinhamento com o negócio que é o principal objetivo de uma arquitetura orientada a serviços

Trade-off da GranularidadeTrade-off da Granularidade

Coarse-Grained Fine-Grained

Performance ☺☺☺☺ Melhor pois o número de troca de mensagens é menor

���� Requer mais troca de mensagens

Testabilidade ☺☺☺☺ Simplificado pois o controle do caminho de execução é limitado

���� Testar é mais desafiador pois o fluxo é desconhecido

público | www.sensedia.com/br

limitado

Flexibilidade ���� Menos flexível ☺☺☺☺ Permite composição e orquestração

Reusabilidade ���� É mais difícil surgirem oportunidades de reúso para os grãos maiores

☺☺☺☺ Grãos menores são mais facilmente reutilizados

Gerenciamento ☺☺☺☺ Melhor pois haverá um número menor de serviços

���� O número de serviços pode explodir

Valor para o negócio ☺☺☺☺ Representa melhor um conceito de negócio

���� Pode ser muito detalhado

Tudo em função de decisões de design

Implementando SOA com Web Services

Implementando SOA com Web Services

confide público | www.sensedia.com/br 36

com Web Servicescom Web Services

• Baseado em padrões abertos de grande aceitação no mercado

• Aplicações podem ser desenvolvidas em qualquer linguagem que possua suporte a WebServices de forma bastante simples**

Web ServicesWeb Services

público | www.sensedia.com/br

WebServices de forma bastante simples**

• Forma padronizada para se descrever as interfaces dos serviços

• Infra-estrutura de transporte e comunicação já existente – a Web (baixos custos de adoção)

• Ferramentas dão suporte e cuidam de quase todos os detalhes

Dinâmica de FuncionamentoDinâmica de Funcionamento

Diretório

de Serviços

Query Service

(UDDI query API)

Publish WSDL12

Implementação

Registro de Serviços UDDI

WSDL Service Endpoint

SOAP Message

público | www.sensedia.com/br

Provedor

do Serviço

Consumidor

do Serviço

(UDDI query API)

Invoque

Services Info

(WSDL file)

Response

3

4

5

Implementação do Serviço JEE

Consumidor do Serviço .Net

WS* Um oceano de especificaçõesWS* Um oceano de especificações

BusinessProcess

Management

Metadata TransactionSecurity

Inte

rop

era

bilit

y

Presentation

Reliability Resource

público | www.sensedia.com/br

Metadata TransactionSecurity

Messaging and Transport

XML

Inte

rop

era

bilit

y

Reliability Resource

InteroperabilidadeInteroperabilidade

• Composta por cerca de 130 empresas (70% vendors; 30% end-user organizations)

• Objetivos:

público | www.sensedia.com/br

• Objetivos:

� Integrar especificações

� Promover implementações consistentes

� Oferecer guias, boas práticas, ferramentas e exemplos de implementação

� Encorajar a adoção através de consenso

www.ws-i.org

Main Deliverables:• Basic Profile• Basic Security Profile• Attachments Profile• Testing Tools• Sample Applications

• Catálogo global com informações sobre provedores de serviços e serviços disponíveis para invocação

• Função de páginas amarelas para descoberta de serviços públicos

UBR – UDDI Business RegistriesUBR – UDDI Business Registries

Conclusão: “Quem tem amigos

não precisa de páginas amarelas”

público | www.sensedia.com/br

de serviços públicos

• UBR’s públicos: Microsoft, IBM e SAP (lançamento em Set/2000)

• ....

Infra-estrutura SOAInfra-estrutura SOA

confide público | www.sensedia.com/br 43

• Design Time:

� Modelagem de Negócio: BPM (BPMN, ...)

� Catálogo de Ativos Reutilizáveis

• Run Time:

Quais Classes de Ferramentas estão relacionadas a SOA?

Quais Classes de Ferramentas estão relacionadas a SOA?

público | www.sensedia.com/br

• Run Time:

� Container de WebServices

� ESB: Enterprise Service Bus

� Registro de localização de Serviços e Aplicações de Policies de Governança

� BAM: Monitoramento de Atividade de Negócio

• Objetivo:: Integrar!

• O que existe por aí?

� Enterprise Service Bus (ESB)

� Message-Oriented Middleware (MOM)

ESB: Nova Classe de Produtos?ESB: Nova Classe de Produtos?

público | www.sensedia.com/br

� Message-Oriented Middleware (MOM)

• Features comuns:– Garantia de entrega das chamadas/mensagens

– Roteamento e Transformação

– Mediação, Load-balancing e Adaptadores

– Segurança, Logging e Auditoria

ESB = MOM++

Abordagem Tradicional

Conexões Ponto-a-PontoAbordagem Tradicional

Conexões Ponto-a-Ponto

ERPAplicação

.NETWebService(Externo)

Custom point-to-point connections

público | www.sensedia.com/br

AplicaçãoJEE

Legacy(C/C++)

Mainframe(CICS Transaction

Gateway)

Pacote CRM(proprietário)

connections

Barramento Corporativo de Serviços(ESB – Enterprise Service Bus)

Barramento Corporativo de Serviços(ESB – Enterprise Service Bus)

ERPAplicação

.NETWebService(Externo)

JCA SOAP/HTTP

SOAP/HTTP

público | www.sensedia.com/br

Enterprise Service Bus

JMS SOAP/HTTP

SOAP/HTTP

JCA

AplicaçãoJEE

Legacy(C/C++)

Mainframe(CICS Transaction

Gateway)

Pacote CRM(proprietário)

Seleção DinâmicaSeleção Dinâmica

(3) ESB solicitainformações sobre o

(4) Registry responde com as informações básicas e os metadados

(1) Provedor registra o serviço no Registry e no ESB. Regras/Policiespodem ser incluídas

DiretórioServiços

público | www.sensedia.com/br

ESBClienteServiço

ProvedorServiço

informações sobre oserviço a ser executado

informações básicas e os metadados (port type, endpoint, policies, etc.)

(5) ESB executa o match client-provider aplicando as transformações, policies etc.

(2) Cliente invocao serviço chamando a infra-estrutura de ESB

(6) A mensagem é transformada e roteada para o provedor correto

Roadmap de AdoçãoRoadmap de Adoção

confide público | www.sensedia.com/br 49

E quais são os fatores críticos para o sucesso?E quais são os fatores críticos para o sucesso?

• Executive level buy-in• Comunicação e colaboração efetiva

• Escolher corretamente o projeto piloto

� Requisitos e escopo bem definidos

� Valor de negócio claro e visível

Fatores críticos para o sucessoFatores críticos para o sucesso

público | www.sensedia.com/br

� Valor de negócio claro e visível

• Disciplina formal e Governança

� Ownership de serviços e incentivos às equipes de projeto

• Adoção incremental baseada em uma combinação de critérios técnicos e de negócio

Nível de Reuso

Abordagem IncrementalAbordagem Incremental

Aplicações

A 1 2

B 31 4 5

1

5

2

3

Identificados

Reutilizados

público | www.sensedia.com/br

Ativos Reutilizáveis

D 2 73 8

E 3 5 6

F 1 2 6

8

11 2 3 4

6 75 8

2 3

5 6 8

C 1 65 6

9

Fases de Adoção SOAFases de Adoção SOA

SOAInitiation

SOAPlanning

and Design

SOAImplementation

SOAMonitoring and

Compliance

público | www.sensedia.com/br

• Entendimento e Conceituação

• Capacitação• Análise de GAP• Business Case e “Venda interna”

• Estabelecimento dos processos de Governança:

• Definição da Arquitetura Tecnológica:

• Padrões e Guidelines• Arquitetura de Referência

• Definição de Infra-estrutura SOA

• Seleção de Projeto-Piloto

• Identificação de serviços já existentes

• Implantação da Infra-estrutura SOA• Realização dos Serviçosdo Projeto Piloto

• Coleta de indicadores• Análise Crítica e Propostas de Melhoria

“SERIOUS ABOUT SOA? MAKE A REPOSITORY

PART OF YOUR

• “Service Orient or Be Doomed!”

• Promova a Padronização naArq. de Software

• Defina Processos de Governança

Recomendações FinaisRecomendações Finais

público | www.sensedia.com/br

STRATEGY”• Defina Processos de Governança

• Organize o Catálogo de Ativos

• Para consumidores de soluções de software:

� Estabeleça uma infra-estrtura SOA que suporte a demanda do negócio

• Para ISVs / Software Services:

� Estruturem sua oferta SOA!

Obrigado!

www.sensedia.com/br

público | www.sensedia.com/br

Copyright (C) 2008DigitalAssets S.A. - Todos os direitos reservados.

Todos os nomes e produtos são usados apenas com o propósito de identificação e são marcas registradas de seus respectivos

proprietários.

www.sensedia.com/br

top related