Agenda. SOA - Introdução 12/3/ PDF
Agenda. SOA - Introdução 12/3/2008
Download "Agenda. SOA - Introdução 12/3/2008"
Edson Soares Figueiroa
1 Agenda Necessidade de automação dos processos de negócio. Tecnologias e paradigmas para automação de processos de negócio. Integração de sistemas. BPM e SOA modelo de aplicações compostas. Opções de automação (para todos os bolsos ). Orquestração de processos. Fechamento da disciplina SOA - Introdução SOA Service-oriented Architecture Um estilo de arquitetura de software e negócios Origem do termo: desconhecida Rastreamento mais antigo do termo: 1997 pelo Gartner Group SOA se beneficia por ser um modelo mais maduro que seus antecessores. SOA não é: um produto uma tecnologia uma solução 1
2 SOA - Introdução SOA - Introdução Uma definição razoável: SOA é um arquitetura conceitual de negócios onde a funcionalidade do negócio ou a lógica das aplicações é tornada disponível para usuários SOA, ou consumidores, como serviços reusáveis e compartilhados em uma rede de TI. Marks e Bell Outras definições: Definição de negócios: uma arquitetura orientada a serviços provê a flexibilidade para tratar elementos de processos de negócio e é a base para uma infraestrutura de IT segura e com componentes padronizados (serviços) que podem ser reusados e combinados para endereçar mudanças prioritárias de negócios. IBM Definição mais técnica: uma arquitetura de TI transversal à organização que promove baixo acoplamento, reuso e interoperabilidade entre os sistemas. Bieberstein, Bose, Fiammante, Jones e Shah 2
3 SOA - Introdução O que são serviços? (em SOA, claro!) Serviços são: componentes com interfaces padronizadas (TI) funções de negócio repetíveis (Negócios) artefatos fundamentais da arquitetura ativos da organização Monitoração de performance Relacionamento entre BPM e SOA Processos reusam vários serviços sempre que necessário BPM modela, simula e redesenha processos. A infraestrutura de SOA orquestra os processos de negócio e faz a mediação entre provedores de serviço Implementação de processos Mudanças nos serviços não devem impactar nos processos Serviços são expostos para serem usados em vários processos Fonte: BPM & SOA Together 3
4 Ciclo de vida com BPM e SOA Medir Modelar Ciclo de vida do processo Executar Implementar Negócios Consumo de serviços Descoberta de serviços TI Executar Gerenciar Ciclo de vida do serviço Implementar Arquitetar Possibilita a agilidade do negócio Possibilita a agilidade de TI Princípios do estilo SOA: Modularidade Encapsulamento Baixo acoplamento SOA - Introdução Separação de responsabilidades Capacidade de (re)montar componentes 4
5 SOA - Introdução SOA - Introdução Benefícios para os negócios: Incrementa a agilidade e a capacidade de responder aos negócios Habilidade em transcender fronteiras organizacionais Reduz o tempo de desenvolvimento de produtos Expõe commodities para os processos de negócio Benefícios para a TI: Construir os serviços uma vez e reusá-los frequentemente Os serviços são construídos através de contratos Promove consistência dos processos Permite a localização de funções Padroniza a integração e reduz a complexidade da solução 5
6 SOA - Introdução SOA Questões comuns Mais uma definição para SOA: Um estilo de arquitetura que permite a orquestração de processos de negócio a partir de serviços expostos dos ativos de TI. Por quê as empresas precisam de SOA? Realiza o potencial da TI há muito prometido. Provê para o pessoal não-técnico um entendimento claro sobre o que a TI faz e seu valor intrínseco. Provê para o pessoal técnico um entendimento claro sobre o negócio. SOA auxilia a: Determinar competências centrais (core). Identificar uma estratégia de outsourcing. Definir um plano para reduzir a complexidade da infra estrutura de TI. 6
7 SOA Questões comuns Quais os benefícios para os negócios? Economia ao reusar ativos. Diminui frustrações com a TI. Justifica claramente investimentos em TI. Permite implantações graduais e interativas. Cria um diferenciador de competitividade. SOA Questões comuns Quais as oportunidades que podem ser perdidas se não implementar SOA? Fusões Aquisições Vendas da companhia ou partes dela Renovação de produtos e serviços Mudanças de parceiros Expansões geográficas Ganhos competitivos 7
8 Exercício O que diferencia SOA das iniciativas predecessoras? Elementos da Arquitetura Serviço Provedor de serviço Consumidor de serviço Diretório de serviços (opcional, mas nem tanto) Infraestrutura para troca de informações 8
9 Componentes da Arquitetura Elementos da Arquitetura Consumidor de serviço Diretório de serviços Serviços Acessa Provedor de serviço Processos de negócio obtêm o valor do negócio a partir de coisas diversas, como ativos de software heterogêneos. Serviços descrevem o que as coisas são. Componentes mostram o que as coisas fazem. Artefatos de software definem como as coisas são construídas e implantadas. 9
10 Elementos da Arquitetura Elementos da Arquitetura Soluções de Negócio Blocos de montar (nível de negócios) Recursos corporativos Aplicações legadas Funcionário Cliente Infraestrutura existente Aplicação web Parceiro Pacotes aplicativos Assinantes de serviços Serviços de negócio compostos Serviços de negócio Business Componentes Services (Check balance, Check credit) Serviços terceirizados Ativos de TI Níveis de serviço: Serviço no nível de negócios: mapeia mais proximamente atividades e funções de negócio do mundo real. Serviço no nível de infraestrutura: não contém lógica de negócio mas é necessário para a gerência de serviços no nível de negócios. Outros serviços: Segurança: provê mecanismos de identificação dos consumidores de serviços. Diretório de serviços: provê o registro para descoberta de serviços. 10
11 Processo de negócio Reserva Check out veículo Check in veículo Web services e SOA Processo aluguel de veículo Criar reserva Modificar reserva Componente funcional de veículos Criar reserva Cancelar reserva Modificar reserva Serviços Mostrar reserva Componentes de serviços Componente funcional de clientes Mostrar reserva Componente funcional de taxação Calcular impostos Calcular impostos Componente de segurança Banco de Dados O que é um web service? Um sistema de software identificado por uma URL O que web services oferecem para SOA? Baseados em padrões Independentes de plataforma e tecnologia Amplamente suportados Orientados a mensagens Pode haver SOA sem web services? Sim, tipicamente outras interfaces devem ser suportadas. 11
12 Componentes de Web services Web services e SOA Diretório de serviços (UDDI) Serviços Em suma, web services podem realizar a arquitetura orientada por serviços; mas uma arquitetura orientada a serviços deve oferecer muito mais que web services. Consumidor de serviço Associa (SOAP) Provedor de serviço 12
13 Visões de mercado sobre SOA 13
14 Ciclo de vida Microsoft para SOA Suite BEA Aqualogic para SOA 14
15 Suite WebSphere para SOA Enterprise Service Bus Definição: componente central da arquitetura orientada por serviços. Responsável por: transporte mediação orquestração de serviços Também serve de ponto (gateway) entre sistemas externos. 15
16 Enterprise Service Bus Transporte da informação Abstração sobre prococolos como SOAP over HTTP(S) SOAP over JMS CORBA RMI/IIOP JAX-RPC etc 16
17 Enterprise Service Bus Enterprise Service Bus Mediação Tranformações Validação das mensagens Seleção de contéudo Seleção QoS Roteamento baseado em conteúdo Monitoração Políticas de segurança e gerência Orquestração dos serviços Cordenação e escolha do serviço apropriado Seleção alternativa devido a QoS 17
18 Suite IBM WebSphere para SOA Fonte: IBM 18
19 Transição para SOA Demonstração WebSphere Process Server Tipicamente, a adoção de SOA se dá pelos seguintes estágios: 1. Implementação de web services individuais. 2. Integração orientada por serviços de funções de negócios. 3. Transformação da TI em escala corporativa. 4. Transformação do negócio sob demanda. Fonte: SOA Compass 19
20 Pontos de entrada Habilitando a integração de funções de negócio através da empresa por uma implementação arquitetada. Integrando serviços através de múltiplas aplicações dentro e for a da empresa por um motivo de negócio. Criando serviços a partir de tarefas contidas em aplicações novas ou já existentes. Níveis de adoção de SOA Transformando transversalmente modelos de negócios existentes ou implantando novos modelos de negócio. Transformação do negócio sob demanda. Transformação da TI em escala corporativa. Integração orientada por serviços de funções de negócios. Implementação web services individuais. Fonte: SOA Compass Governança em TI/SOA O que é governança em TI? conjunto de práticas, padrões e relacionamentos; assumidos por executivos, gestores, técnicos e usuários de TI de uma organização; com a finalidade de: garantir controles efetivos, ampliar os processos de segurança, minimizar os riscos, ampliar o desempenho, otimizar a aplicação de recursos, reduzir os custos, suportar as melhores decisões, alinhar TI aos negócios. Fonte: João R. Peres, FGV 20
21 Governança em TI/SOA Governança em TI/SOA Governança não é gerência! Está acima da gerência. Define práticas padrões e relacionamentos a serem seguidos pela gerência. Deve ser capaz de aferir, mensurar e dirigir. Exemplos de frameworks de governança: CobiT- Control Objectives for Information and related Technology ISO ITIL ISO / ISO Six Sigma Isto pode ser transformar A promessa de SOA em algo como isto! Um monte de serviços Fonte: IBM Rational 21
22 Governança em TI/SOA Governança em TI/SOA Característica Ativos, serviços e processos de negócios são reusados através de toda estrutura organizacional. Processos de negócio e serviços são compostos como subprocessos e subserviços de várias áreas dentro e fora da organização. Dados são expostos e compartilhados em tempo real. Aplicações e infraestrutura são vistas como portifólio de ativos e serviços. Impacta em Segurança, privacidade, integridade e disponibilidade de dados e processos Percepção da companhia A governança em SOA pode contribuir fortemente para a governança em TI. Governança Corporativa Conexões para parceiros e clientes podem ser mais rápidas e dinâmicas. Performance e qualidade Diferentes tamanhos de companhias com diferentes níveis de suporte de TI são conectadas à rede do cliente. Mudar parceiros, fornecedores ou vendedores é mais fácil e pode acontecer com mais frequência. Companhias podem ser integradas em tempo real, isto é, sem ter que parar suas atividades. Maiores níveis de interoperabilidade, eficiência e acurácia Governança em TI Governança em SOA O custo da TI pode ser distribuído através de grupos. Auditoria e metrificação 22
23 Governança em TI/SOA A governança em SOA tem jurisdição sobre negócios e TI. A governança em SOA pode ser definida como o framework para: assegurar as forças e os retornos de SOA; provêr a visibilidade e o controle necessários para assegurar os objetivos de TI; encorajar comportamentos consistentes com a missão, estratégia e valores da organização; balancear riscos versus retorno. Governança em TI/SOA Um framework SOA (IBM) Para cada área de consideração, deve-se definir: Práticas: Como executá-la Quem deve executá-la Como mensurá-la Consequências em ausência de governança. Existem vários outros frameworks para SOA (não padronizados). Um dos mais relevantes: BEA 23
24 Governança em TI/SOA Governança em TI/SOA Áreas de consideração para SOA: Necessidades de negócio da aplicação Investimento em TI Princípios de TI Modelagem de serviço, suprimento e demanda Arquitetura corporativa Fonte: 24
25 Referências Referências Service-Oriented Architecture (SOA): A Planning and Implementation Guide for Business and Technology. Eric Marks, Michael Bell. USA: Wiley, Service-Oriented Architecture (SOA) Compass Business Value, Planning and Enterprise Roadmap. N. Bieberstein, S. Bose, M. Fiammante, K. Jones, R. Shah "BPM and SOA: Better Together", Jasmine Noel "BPM and SOA: Where does one end and the other begin?", Mike Rosen Improve your SOA project plans, Yvonne Balz IT Governance Institute - "Business process management and SOA", Tilak Mitra "Service-oriented architecture: Programming model and product architecture", D. F. Ferguson, M. L. Stockton "Pattern-Oriented Software Architecture A System of Patterns", F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad, M. Stal. Wiley Press, Hoboken, NJ (1996). DeveloperWorks - BPM - "Business process management enabled by SOA", Christina Lau 25
26 Referências Patterns: Implementing Self-Service in an SOA Environment", C. Sadtler, A. Aggarwal, D. Cotignola, S. Grewal, P. Hood, S. Shrimali, F. Teixeira, IBM Redbooks, January 2006 "Extending the Business Value of SOA Through Business Process Management", BEA White Paper, 2006 SOA for Executives ontent/solutions/soa "BEA AquaLogic BPM Suite - Unleashing the Value in the Way We Work", BEA Product Data Sheet 26
Iniciando um Framework de
c o l u n a Ricardo Ferreira (ricardo.ferreira@redhat.com): Trabalha na Red Hat do Brasil atuando como Solutions Architect e é especialista em Middleware, SOA e BPM. Com mais de 11 anos de experiência,