Conceito de SOA
•
SOA – Arquitetura Orientada a Serviços
Conceitos e Aplicações
•
Prof. MSc. Edilberto Silva
[email protected] / http://edilms.eti.br
Gestão de TI
•
Baseado nos materiais dos professores
Luiz Fernando Sirotheau / Senac/DF
1
Alexandre Vasconcelos / UFPE / Qualiti Software Processes
SOA - Service Oriented Architecture (Arquitetura Orientada a Serviços):
Arquitetura proposta para interoperabilidade de sistemas por meio de
conjunto de interfaces de serviços fracamente acoplados, onde os
serviços não necessitam de detalhes técnicos da plataforma dos outros
serviços para a troca de informações ser realizada. (e-ping v.3,2007)
É um estilo de arquitetura que promove a integração entre o negócio e a
TI através de serviços. O serviço é o principal componente desta
arquitetura. SOA preconiza como resultado: maior agilidade para atender
a novas demandas, flexibilidade para atender as mudanças, redução de
custo e reuso de ativos (serviços). (companyweb, 2007)
... é um paradigma para organização e utilização de competências
distribuídas que estão sob controle de diferentes domínios proprietários.
...é um meio para organizar as soluções que promovem o reuso,
crescimento e interoperabilidade. (Oasis – Modelo de Referência SOA 1.0,
2006
Prof. MSc. Edilberto Silva
Ponto vista do negócio
a independência funcional
•
•
É a mais recente iniciativa para desenvolver soluções de tratamento da
informação aderente aos negócios
É uma abordagem que visa aumentar a eficiência do capital estrutural
É um estratégia para aumentar o valor percebido pelos clientes
É uma arquitetura para agilizar as mudanças nos negócios
a coesão
Definição tecnológica
•
•
•
acoplamento
É uma coleção de serviços (barramento de serviços)
Utiliza topologia de rede para realizar a troca de mensagens
Garante serviços fracamente acoplados, altamente coesos e com alta
possibilidade de reutilização
[email protected]
http://www.edilms.eti.br
2
Surge como conseqüência da aplicação dos princípios de abstração e
ocultação de informação; pode ser obtida a partir da definição de
módulos de "propósito único" e evitando-se excessivas interações
com outros módulos;
•
Prof. MSc. Edilberto Silva
http://www.edilms.eti.br
Coesão e Acoplamento
Conceito de SOA
•
•
•
[email protected]
•
3
está fortemente ligada ao princípio de ocultação e que sugere que um
módulo pode realizar a sua função com um mínimo de interação
com os demais módulos do sistema; é desejável que os módulos
num software apresentem um alto grau de coesão;
Exprime o grau de conexão entre os módulos; os módulos de um
software devem apresentar um baixo coeficiente de acoplamento.
Prof. MSc. Edilberto Silva
[email protected]
http://www.edilms.eti.br
4
Um exemplo de SOA
• Uma empresa de eletricidade tem a capacidade de gerar e distribuir eletricidade (capacidade
subjacente). A fiação da rede de distribuição da companhia elétrica (o serviço) oferece o
meio para fornecer eletricidade para suportar o uso por um consumidor residencial típico
(funcionalidade do serviço), e um consumidor acessa a eletricidade gerada (a saída da
invocação de serviço) via uma tomada de parede (interface de serviço).
• De forma a utilizar a eletricidade, um consumidor precisa entender que tipo de plug usar,
qual a voltagem fornecida, e quais os possíveis limites de carga; a empresa presume que o
consumidor irá conectar somente aparelhos adequados à voltagem ofertada e a carga
suportada; e o consumidor por sua vez assume que os aparelhos adequados podem ser
conectados sem danos ou riscos (suposições técnicas do serviço).
• Um usuário residencial ou comercial precisa abrir uma conta na empresa para usar o
fornecimento (restrição de serviço) e a empresa irá medir o consumo e espera que o
consumidor pague pela energia conforme taxa prevista (política de serviço).
• Quando o consumidor e a empresa concordam nas restrições e políticas (contrato de
serviço), o consumidor pode ter o fornecimento de eletricidade usando o serviço desde que
a rede de distribuição de eletricidade e a conexão residencial permaneçam intactas (por ex.
uma tempestade que derrube a rede e interrompa o fornecimento) e o consumidor pode
pagar (por exemplo, transferência eletrônica de fundos) a empresa (acessibilidade).
Prof. MSc. Edilberto Silva
[email protected]
http://www.edilms.eti.br
5
O que o SOA não é…
•
•
•
•
•
•
•
•
•
•
•
SOA não é uma tecnologia
SOA não é um produto
SOA não é um projeto de TI
SOA não é um software
SOA não é um “framework”
SOA não é uma metodologia
SOA não é uma solução de negócio
SOA não é um middleware
SOA não pode ser comprada
SOA não um serviço
SOA não é uma ferramenta de produtividade
(companyweb,2007)
Prof. MSc. Edilberto Silva
Conceito
•
•
•
•
•
6
O “O” do SOA – Orientado a serviços
É uma tarefa repetitiva de negócios – Ex. Verificar crédito cliente; abrir
nova conta
É um componente, altamente coeso e fracamente acoplado que
encapsula uma função de negócio reutilizável
Recebe requisições e responde encapsulando todo o detalhe do seu
processamento
Executa um ciclo completo de trabalho e não depende do estado de
outros componentes externos
É uma unidade de trabalho feita por um fornecedor de serviço para
fornecer resultados finais requeridos por um consumidor de serviço
É invocado através de protocolos de comunicação independentes da
localização e da tecnologia de suporte
Prof. MSc. Edilberto Silva
http://www.edilms.eti.br
Conceito
O “S” do SOA - Serviço
•
[email protected]
[email protected]
http://www.edilms.eti.br
CEO
CIO
Analista de Negócio
Executivos de TI
Para o CEO é uma forma crucial de criar uma corporação
conectada e responder melhor às demandas de clientes e
pressões de mercado.
Para o CIO é uma possibilidade de proteger investimentos
existentes de TI sem inibir o desenvolvimento de novas
capacidades. É a forma de utilizar TI como alavancador da
empresa ao invés de barreiras.
Para os analistas de negócios é uma forma de trazer
investimentos e ativos alinhados com a estratégia e
processos de negócios de Negócio.
Para os Executivos e Gerentes de TI é uma forma de
efetivamente integrar sistemas heterogêneos.
Possibilitando uma melhor gestão da complexidade de TI
e responder eficientemente às necessidades de negócio.
Aos desenvolvedores é o caminho para se criar
Desenvolvedores de TI aplicações dinâmicas e colaborativas e melhorar a
reutilização de TI.
7
Prof. MSc. Edilberto Silva
[email protected]
http://www.edilms.eti.br
8
Expectivas do SOA
Conceito
O “A” do SOA - Arquitetura
•
•
Motivação para SOA é pelo
valor que traz para a área
de negócios. Não é uma
motivação apenas
tecnológica
É a estrutura do sistema composta pelos elementos de software,
propriedades visíveis destes elementos e o relacionamento entre eles
É um estilo de arquitetura que suporta a integração dos negócios com
serviços conectados
Até 2008, 80% dos
novos desenvolvimentos
de projetos usarão
técnicas de SOA.
Prof. MSc. Edilberto Silva
[email protected]
http://www.edilms.eti.br
9
Evolução das Arquiteturas
Prof. MSc. Edilberto Silva
[email protected]
http://www.edilms.eti.br
Prof. MSc. Edilberto Silva
SOA diz respeito a
mudanças nos negócios:
Aumenta a velocidade das
mudanças, facilita as conexões
de negócio, e melhora o
controle dos negócios.
[email protected]
http://www.edilms.eti.br
10
Evolução das Arquiteturas
11
Prof. MSc. Edilberto Silva
[email protected]
http://www.edilms.eti.br
12
Evolução das Arquiteturas
• Arquitetura Spaghetti
Arquitetura SOA
42% dos orçamentos de TI – apenas
para fazer “coisa se conectar com
coisa”.Gartner
Modelagem Negócios
Painéis de Negócio
The Yankee Group, 3/05
Lógica de
Segurança
Serviços Interação
Serviços Process.
Regras de
Negócio
Lógica de
Interação com
Usuário
Lógica de
Processos
Enterprise Service Bus
Serviços Informação
Lógica de
Acesso a
Dados
Lógica de
Integração
Serviços de
Gerenciamento TI
Mais de 70% dos orçamentos de TI
são alocados à manutenção e
operação de sistemas existentes.
Serviços de
Desenvolvimento
Inovação de Negócios & Serviços de Otimização
Desenvolvimento
Partner Services
Serviços de Aplicações
Serviços de
Negócio Criando
Novos Ativos
Lógica de
Integração
Serviços Acesso
Monitoração TI
Serviços de
Negócio Transformando
Ativos Existentes
Serviços de Infra Estrutura
Prof. MSc. Edilberto Silva
[email protected]
http://www.edilms.eti.br
13
Arquitetura tradicional
Prof. MSc. Edilberto Silva
[email protected]
http://www.edilms.eti.br
Prof. MSc. Edilberto Silva
[email protected]
http://www.edilms.eti.br
14
Arquitetura com SOA
15
Prof. MSc. Edilberto Silva
[email protected]
http://www.edilms.eti.br
16
Tecnologias ligadas a SOA
Tecnologias ligadas a SOA
POO (Programação orientada a Objetos)
• POO é um paradigma de desenvolvimento de softwares (Objetos, Classes,
Métodos, herança, polimorfismo,etc...)
WOA (Web Oriented Architeture)
• Os softwares SOA utilizados na internet. No WOA os artefatos são
conhecidos como recursos, que são quaisquer artefatos que possam ser
identificados por uma URI (Universal Resource Identifier), basicamente o
endereço do recurso.
Web Services
• Os serviços encontrados para WEB são conhecidos como WEB Services
• componentes que permitem às aplicações enviar e receber dados em
formato XML
• e são padronizados segundo UDDI (Universal Description, Discovery
and Integration)
UDDI (Universal Description, Discovery and Integration)
• Especificação que define um serviço de registro para Web Services.
• Provedores de serviços podem utilizar UDDI pa-ra publicar os serviços que
eles oferecem.
WSDL (Web Services Description Language)
• 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
• padrão baseado em XML para descrever o serviço como no COM, onde ele
traz os métodos do webservice.
SOAP (Simple Object Access Protocol)
• Protocolo padronizado para troca de informações estruturadas entre
plataforma descentralizada e distribuída usando como base o XML
• Envelope que define a estrutura para descrever o conteúdo da mensagem
e como processá-lo
Prof. MSc. Edilberto Silva
[email protected]
http://www.edilms.eti.br
17
Prof. MSc. Edilberto Silva
[email protected]
http://www.edilms.eti.br
18
Download

SOA - Prof. Edilberto Silva