Escolar Documentos
Profissional Documentos
Cultura Documentos
www.etecnologia.com.br
Rildo F Santos
rildo.santos@etecnologia.com.br
(11) 9123-5358
@rildosan
(11) 9962-4260 http://rildosan.com/
Quer participar ?
- Reduza o uso de papel (e de madeira) o máximo possível.
- Só imprima se for extremamente necessário.
- Evite comprar produtos com excesso de embalagem.
- Ao imprimir ou escrever, utilize os dois lados do papel.
- Use papel reciclado.
Este material não deve ser impresso..
SOA Versão 3.0 | Rildo F Santos | (@rildosan) | rildo.santos@etecnologia.com.br | www.etecnologia.com.br | http://etecnologia.ning.com 2
Facilitador:
É Coach, Consultor, Palestrante, Instrutor e Professor de MBA. É graduado Administração de Empresas, pós graduação
Metodologia do Ensino Superior e mestrando em Engenharia de Software pela Universidade Mackenzie.
Resumo da Experiência:
Tem mais de 10.000 horas de experiência em Análise de Negócio, Gestão por Processo, Inovação, Gestão de Serviços
de TI, Governança de TI, Métodos Ágeis (SCRUM, XP, Kanban, Lean, e FDD) e Tecnologia.
SOA Fundamentos
Prestou serviço de instrutor para as Universidades Corporativas: Correios, Petrobras, Serpro, Secretária da Fazenda do
Estado de São Paulo.
Foi instrutor de Tecnologia de Orientação a Objetos, UML e Linguagem Java na Sun Microsystems e da IBM. Professor
de curso de MBA da Fiap e foi professor de pós-graduação do IBTA.
Participou de projetos em diversas empresas públicas e privadas, tais como: Usiminas, Unifesp, TJSE, Petrobras, Sefaz-
SP, Sonagol (Angola), Secretária da Segurança do SP, Sabesp, Prodesp, Serpro, Bradesco, Correios, Banco do Brasil,
Neo Quimica, Benner Sistemas, Seisa Saúde, Toot Micro, Vivo, Novabase, CTEP, do Hospital das Clinicas da Faculdade
de Medicina do Estado de São Paulo, Aço Villares, Conexxoes Educacional e Amil.
Certificações:
CSM - Certified SCRUM Master, CSPO - Certified SCRUM Product Owner ,SUN Java Certified Instructor , ITIL
Foundation e Instrutor Oficial de Cobit Foundation e Cobit Games;
Objetivo desta apresentação é dar uma visão prática e simples do SOA, que ajudará as
pessoas a entenderem o SOA e seus fundamentos.
SOA Versão 3.0 | Rildo F Santos | (@rildosan) | rildo.santos@etecnologia.com.br | www.etecnologia.com.br | http://etecnologia.ning.com 4
Introdução
Arquitetura Orientada a Serviços, SOA, promete mudar consideravelmente a interação entre o Desafio
negócio e a Tecnologia da Informação (TI).
O maior desafio durante as últimas décadas é fazer que TI responda mais ágil as mudanças
no negócio, como: processos de aquisição e fusões, novas oportunidades ou alteração de
regras de negócios.
Orientação a
SOA, permite criar uma arquitetura que aproveita os investimentos já existentes de infra-
Serviços
estrutura e software (legado). Esta arquitetura tem como componente chave os ―serviços‖,
que estão ligados diretamente com as necessidades dos negócios. Arquitetura
Os serviços existentes podem ser combinados de diversas formas diferentes e assim reduz o
Agilidade
SOA Fundamentos
3 Arquitetura SOA
4 Governança de TI e o SOA
Definition of SOA:
Forrester report1 included the following definition of SOA.
A style of design, deployment, and management of both
applications and software infrastructure in which:
• Applications are organized into business units of work
(business services) that are (typically) network accessible.
• Service interface definitions are first-class development
SOA Fundamentos
SOA
SOA Fundamentos
Verificar novamente
Avaliar
Verificar os Verificar a
resultado
dados reserva carro
da reserva
OK
Verificar o Verificar a
cartão
de crédito
reserva do
hotel + Confirmação
Recebe
Reply
Verificar a
reserva
do vôo
Trata de falha
Reply
SOA Fundamentos
Serviços
Políticas Processos
Papéis e
Responsabilidades
Sales
Force clientes
(campo) Portal B2B
EDI1
SOA Fundamentos
Consumidores
Sales (clientes)
Force
Portal B2B
(campo)
CRM Billing
Backend
Billing
Cliente Informações sobre faturamento do cliente
Registro e Qualidade
Sistema de Atendimento ao Cliente
Sistemas / Aplicações
Quantos serviços de Busca de CEP será necessário atender os sistemas/aplicações que
precisam da informação do CEP ?
Negócio Negócio
Avaliar Avaliar
Verificar os Verificar a Verificar os Verificar a
resultado resultado
dados reserva carro dados reserva carro
da reserva da reserva
OK OK
Verificar o Verificar a Verificar o Verificar a
cartão
de crédito
reserva do
hotel + Confirmação cartão
de crédito
reserva do
hotel + Confirmação
Recebe Recebe
Reply Reply
Verificar a Verificar a
reserva reserva
do vôo do vôo
Business Case
USe Case
Serviço Serviço
Serviço
Serviço
Componentes
Classes
Serviço Serviço
Serviço
4
Gestor de TI
Vender SOA para alta gestão e pares,
apresentar benefícios do SOA e comprovar ROI
SOA. Visão executiva
Analista de Negócio/
Sistema Mapear e modelar os processos e desenhar
serviços de negócios, coreografar/orquestrar
SOA Fundamentos
serviços
SOA Foundation + SOA Design
Desenvolvedor
Implementar os serviços
SOA Implementation
SOA Implementation
SOA Versão 3.0 | Rildo F Santos | (@rildosan) | rildo.santos@etecnologia.com.br | www.etecnologia.com.br | http://etecnologia.ning.com 21
SOA Fundamentos SOA, Value Drivers:
negócio;
- Interoperabilidade entre sistemas legados e novos;
- Melhoria de processos;
- Reuso de Serviços (ativos). O reúso maximiza o valor dos ativos;
- Aumenta estabilidade na operação de TI. Aumenta a tolerância a falhas;
- Redução de Custos da Operação de TI.
- Mudança de paradigma, de alinhamento para integração:
sua casa
SOA Fundamentos
Questão:
- Precisamos saber como feito a geração da energia elétrica e/ou sua transmissão para usufruirmos
dos benefícios da eletricidade (serviço) ?
Transmissão
Comercialização Geração
Distribuição
ANEEL (www.aneel.gov.br)
Serviço
Verificar novamente
Avaliar resultado
Verificar a
da reserva do
Serviço reserva carro
carro
SOA Fundamentos
OK
Confirmar
Receive
Reserva
Verificar a
reserva do hotel
+ Confirmação
Verificar a reserva
do vôo
Reply
Business Services – Reflete o conceito e o evento de negócio, ele também pode ser chamados
Business Process Services, por que eles estão ligados com a execução do Business Function
(função de negócio) de uma empresa ou de um domínio de negócio (Domínio pode ser uma unidade
de negócio, uma divisão, um departamento ou uma equipe)
Business Services tem o nível de granularidade grossa, é uma funcionalidade de negócio que será
entregue como um serviço. Representa um processo ou atividade de negócio, tais como:
SOA Fundamentos
Implementa contratos
padronizados
Service Loose Reduz dependência (facilita a composição) Standardized
Coupling Service Contract
Redução de Custos,
Separa o serviço da redução do Time-to-Market,
Service sua implementação aumenta produtividade Service
Abstraction Reusability
SOA Fundamentos
Serviço
Solução:
> Desenhar e modelar serviços com baixo acoplamento.
> Contudo o baixo acoplamento leva complexidade de implementação
- Forte: Forte grau dependência ... Exemplo: Significa que o um serviço depende de uma determinada
tecnologia para ser implementado, por exemplo: Web Services.
- Fraco: Fraco grau de dependência fraco. Exemplo: Significa que um serviço não depende
diretamente de uma determinada tecnologia. O Serviço tem sua implementação encapsulada.
O SOA, requer que os serviços tenham acoplamento fraco, pois isto facilita a manutenção e
favorece o reúso
SOA Versão 3.0 | Rildo F Santos | (@rildosan) | rildo.santos@etecnologia.com.br | www.etecnologia.com.br | http://etecnologia.ning.com 33
Principais Características dos Serviços (Princípios de Serviços)
Contrato bem definido (Well-defined service contracts) ou Interface bem Definida
Serviços expressam seu objetivo e as capacidades através de um Contrato de Serviço.
A descrição completa de uma interface (pública) de serviço entre o consumidor (cliente) e o provedor
de serviço. O contrato contém a interface técnica (assinatura), as semânticas e os aspectos não
funcionais (atributos de qualidade, como: disponibilidade, segurança, performance, confiabilidade e etc)
com o Acordo de Nível de Serviço (SLA).
Devemos garantir que os contratos de serviços sejam bem definidos, concisos, otimizados, devidamente
granular, padronizado (para garantir que os parâmetros estabelecidos pelos serviços são coerentes),
SOA Fundamentos
confiáveis e governáveis.
Backend
Serviço
Cliente
(Consumidor)
Contrato
O Contrato descreve as funcionalidades, tipos de dados, modelo dados definidos e como as
políticas são definidas e efetivadas.
Granularidade nada mais é do que o nível de detalhe de cada serviço ou componente, existem dois
tipos de granularidade:
- Grossa: Quanto menor for o nível de detalhes, maior ou mais grossa será o nível de granularidade,
ou seja, sem detalhes.
- Fina: Quanto maior for o nível de detalhes, menor ou mais fina será o nível de granularidade, ou
seja, com detalhes
O SOA, que é arquitetura orientada a serviços, requer que os serviços tenham (obrigatoriamente) o
nível de granularidade grossa (sem detalhes). O nível de granularidade grossa favorece o reúso.
SOA Fundamentos
Exemplos:
Exemplo de Serviço com Granularidade Grossa:
- Confirmar Pedido
- Confirmar Reserva
- Verificar disponibilidade de vôo
- Realizar venda de produtos
- Criar Plano Tarifário
- Validar uma transação de pagamento (cartão de crédito)
Decomposição de Domínio:
Ao analisar o domínio, conseguimos identificar os candidatos a serviços. Exemplo: Domínio de Cliente,
Domínio de Seguros de Automóvel, Crédito ao Consumidor e etc
Análise Bottom-up:
SOA Fundamentos
Ao verificar quais são as interfaces do Backend (sistemas legados) podemos identificar os candidatos a
serviços, aqueles que podem encapsular essas interfaces.
Gerenciamento de Portfólio:
O portfólio de serviços (se existir) pode ajudar na modelagem e na identificação dos candidatos a
serviços.
Melhores Praticas: Mix entre Análise Top-down e Bottom-up (―meet in the middle‖):
Primeiro a análise Top-Down e depois a Botom-Up para sustentar a integração entre a TI o negócio que
é o objetivo primario da SOA.
Visão do Verificar a
Avaliar resultado
da reserva do
reserva carro
Processo carro
OK
Confirmar
Receive
Reserva
Verificar a
reserva do hotel
+ Confirmação
Verificar a
reserva
do vôo Reply
SOA Fundamentos
Tratar a falha
Reply
Serviço Serviço
CRM Reserva
Avaliar resultado
Verificar a
da reserva do
reserva carro
carro
OK
Confirmar
Receive
Reserva
Verificar a
reserva do hotel
+ Confirmação
Verificar a
SOA Fundamentos
reserva
do vôo Reply
BPEL
Tratar a falha
Reply
BPEL
Serviços
Um novo
serviço
Serviço Buscar CEP
Coordenador
central
Serviço Serviço
Encontrar a Calcular Frete
Melhor Rota
processo
Cada serviço é uma
parte do processo que Coreografia
colabora com outra
parte (serviço) Buscar CEP
Serviço
a. ( ) Orquestração a. ( ) Coreografia
b. ( ) Coreografia b. ( ) Orquestração
Arquitetura do SOA
SOA Versão 3.0 | Rildo F Santos | (@rildosan) | rildo.santos@etecnologia.com.br | www.etecnologia.com.br | http://etecnologia.ning.com 42
Arquitetura SOA. ESB
Importância do “ESB” no SOA:
SOA Fundamentos
ESB (Enterprise Service Bus), ou Barramento Corporativo de Serviços é considerado como a infra-
estrutura do SOA.
Business Process
Desktop Aplicação
CRM
Composite Service
ERP
URA
Connectivity
Portal
Sales Verificar novamente
Fronted
(campo) Portal
cartão
de crédito
reserva do
hotel + Confirmação
Recebe
ESB Verificar a
reserva
do vôo
Reply
Verificar novamente
Trata de falha
Avaliar
Verificar os Verificar a
Processo
resultado Reply
dados reserva carro
da reserva
OK
Verificar o Verificar a
cartão
de crédito
reserva do
hotel + Confirmação
ESB
SOA Fundamentos
Recebe
Reply
Verificar a
reserva
do vôo
Mecanismo de Regras
Trata de falha
Mecanismo
Regra
Serviço Serviço Serviço Serviço
Serviço Serviço Serviço Serviço
Serviços
Serviços
Serviço Serviço
Mecanismo
Regra Serviço
Mecanismo Serviço
Serviço Serviço Serviço Serviço Serviço Serviço
Mecanismo Regra
Regra
Backend
Backend
SOA tem que lidar com os conceitos de segurança heterogêneos dos sistemas legados;
Governança de TI e o SOA
SOA Versão 3.0 | Rildo F Santos | (@rildosan) | rildo.santos@etecnologia.com.br | www.etecnologia.com.br | http://etecnologia.ning.com 48
Governança de TI
O que é Governança de TI ?
Exigências
Governança
Leis Corporativa
Governança SOA
Transparência Cobit
Regulamentos Governança
Equidade ITIL
de TI BSC
Normas Prestação de Conta
PMBok
Compliance
Controles Ética
Serviços
Políticas Processos
Papéis e
Responsabilidades
Serviços
Políticas Processos
Papéis e
SOA Fundamentos
Definição da Governança:
Um boa definição para Governança: ―Garantir que as pessoas façam o que é certo”1
Fundamentos da Governança:
A governança primariamente foca nos aspectos de gerenciamento e depois nos aspectos técnicos
Serviços
Políticas Processos
Papéis e
SOA Fundamentos
Responsabilidades
Modelo de Maturidade:
Governança Portfólio
de
Serviço
Gerenciamento
Catálogo de Serviços
SOA Fundamentos
Monitorar
e Avaliar
Maturidade
Portfólio
Qualidade PDCA
Operação do (melhoria
Entrada de Serviços Serviço continua)
Saída de Serviços
Distribuição
Retirada
SLA
Modelagem &
Implementação
Arquivo
Identificação
Descoberta Status: Status: Status:
Construção Status: Ativo Obsoleto Inativo
Tempo
SOA Versão 3.0 | Rildo F Santos | (@rildosan) | rildo.santos@etecnologia.com.br | www.etecnologia.com.br | http://etecnologia.ning.com 54
SOA Fundamentos Parte 5
Dicas de Implementação
SOA Versão 3.0 | Rildo F Santos | (@rildosan) | rildo.santos@etecnologia.com.br | www.etecnologia.com.br | http://etecnologia.ning.com 55
SOA. Implementação
Crie um “bom” Road Map de implementação SOA:
Definição Infra-estrutura
SOA Fundamentos
Capacitação de Recursos
Mentoring SOA
Pense grande:
- SOA é um conceito para sistemas distribuídos e desacoplados
- Diferentes plataformas;
- Diferentes "middleware―;
- Diferentes ferramentas;
Você tem estabelecer SOA aos poucos, ou seja um passo por vez,
de maneira iterativa e incremental;
Comece com pelos Fundamentos SOA:
- Estabeleça infra-estrutura e arquitetura para:
- para um pequeno número de serviços
- para um pequeno número de participantes
Crescimento:
- Incremente mais serviços e participantes
Capacitar as pessoas;
A modelagem dos serviços deve ser feita pelo pessoal de negócio e pelo
pessoal de TI
Será necessário ter patrocinador forte para que projeto SOA tem mais
chance de sucesso;
Padrões: Referências:
CIO Executive Day - 2006
Criando Valor para o Negócio com SOA.
BEA Systems
http://www.w3.org/
http://www.omg.org/
SOA Principles of Service Design
http://www.bpmn.org/ Thomas Erl
http://www.oasis-open.org/ Editora: Prentice Hall
http://www.omg.org/mda/
SOA Fundamentos
Service-Oriented Architecture
http://www.ws-i.org/ Concepts, Technology and Desing
Thomas Erl
Editora: Prentice Hall
Object Management Group
http://www.omg.org/corba/ http://www.opengroup.org/projects/soa/
SOA in Practice
Nicolai M. Josutis
Editora: OReill´y
http://www.unicode.org
Object Management Group
http://www.omg.org/uml Service-Oriented Architecture
A Planning and Guide Implementation Guide
for Business and Technology
Eric A. Marks & Michael Bell
http://www.ebxml.org/
Editora: Wiley
Promoção do SOA:
Revista Info Corporate
http://www.soa-consortium.org www.infocorporate.com.br
www.ibm.com/soa
www.etecnologia.com.br
Rildo F Santos
rildo.santos@etecnologia.com.br
(11) 9123-5358
@rildosan
(11) 9962-4260 http://rildosan.com/