Integração Empresarial / Abordagem Estratégica Enterprise Integration Billing Service Customer Representative Situação Inicial Sales Portal Customer Enterprise Systems Accounting Order Processing BSD Customer Relationship Management Warehouse Clerk Warehouse BSD Carrier Shipping Clerk Archives Management Information Purchasing Receiving Clerk Supplier Carrier
Requisitos implícitos sobre a arquitectura de integração da empresa Comunicação entre os sistemas de suporte ao negócio os sistemas foram desenvolvidos ao longo do tempo e as interligações podem ter diversas formas Pedidos e acontecimentos As comunicações neste exemplo podem ter duas formas pedidos ou acontecimentos assíncronos Comunicação fiável A empresa depende do funcionamento da integração Coordenação das actividades Segurança Integração da Cadeia de Fornecimento Gestão dos clientes Informação consolidada de gestão Documentos com valor legal Outsourcing Potencial Billing Service Customer Representative Objectivo Sales Portal Customer Enterprise Systems Accounting Order Processing BSD Customer Relationship Management Warehouse Clerk Warehouse BSD Carrier Shipping Clerk Archives Management Information Purchasing Receiving Clerk Supplier Carrier
Abordagem Estratégica da Integração Domínios da Arquitectura de Integração Principais domínios de uma Arquitectura Estratégica de Integração
Domínios da Arquitectura Arquitectura Técnica de Integração Define as tecnologias subjacentes à integração São os elementos de base que permitem o estabelecimento de canais de interacção Ex.: Messaging, interfaces de aplicações, web services Arquitectura de Serviços de Integração Define os serviços que suportam o negócio e que devem ser de grão grosso, fracamente interligados, reutilizáveis Arquitectura de Integração de Processos A arquitectura de processos descreve os processos que atravessam as fronteiras das aplicações Arquitectura de Informação de Integração Mantém uma visão comum dos dados da organização Metadata que permite correlacionar e manter a integridade dos dados entre aplicações Arquitectura de Processos
Processo de Negócio Um processo de negócio define: A sequência de controlo (flow), A forma como os acontecimentos externos são tratados, Os requisitos de interacção humana Condicionantes ao processamento A modelação de processos está focada em: Criar e optimizar modelos de negócio Tendo por base custos, recursos e receitas O modelo de um processo de negócio é normalmente: Um grafo com nós para cada actividade Ligações entre nós que indicam o fluxo de controlo e informação Indicação de execução concorrente e condicional Requisitos de informação necessários para cada nó Conceitos necessários para descrever um Processo de Negócio Um Processo de Negócio depende do estado. Necessita de construções para expressar a condicionalidade e temporizadores Mecanismos para especificar condições excepcionais e as suas consequências Mecanismos para expressar transaccionalidade e recuperação Interacções de longa duração implicam múltiplas etapas de execução, por vezes encadeadas, e com os seus próprios requisitos de dados Pode implicar múltiplos parceiros de negócio
Arquitectura de Processos Identificação dos processos com base em critérios de valor e de Qualidade Agregação das actividades (manuais ou automáticas) em processos Representação dos processos que discrimine as actividades, a informação necessária, entre outros (quem, quando, porquê). A Arquitectura de processos não deve ser dependente da estrutura orgânica, dos pacotes aplicacionais, Reparações Serviço Central dos intervenientes, etc. Associa OpLog ao Operador Artigo e Loja Logístico Exemplo da notação proposta (BPMN) Eventos Actividades Informação usada Informação produzida Pontos de decisão Origem Transporte Artigo com Agendamento Automático? Identificação Artigo, Solicitar Op erador Origem, Destino e Op Não Logístico para o Log transporte Sim Informar Prep arar Artigo para intervenientes no Levantamento transporte e recepção Destino Transporte Guia de transporte Ordem de Reparação Recepção do artigo Registo Recepção Artigo Intervenientes Operador Logístico Fluxos entre actividades Log Levantamento Regista o Levantamento do Artigo na Origem Confirma a entrega no Destino Fecho Recep ção Artigo Log entrega Agendar Transporte BPMN: Business Process Modeling Notation (www.bpmi.org). Permite especificar graficamente um processo de negócio utilizando as seguintes primitivas: Actividades representam serviços ou elementos operacionais, permitindo ilustrar decomposição funcional através de sub-actividades. Fluxo de controlo sincronização entre actividades, e.g. sequência, ciclos, decisões. Acontecimentos assíncronos representam acontecimentos de negócio. Objectos de dados representam os objectos consumidos ou produzidos pelas actividades. Fluxo de dados/mensagens associação entre objectos dados e actividades. O BPMN pode ser traduzido automaticamente ou semi-automaticamente para linguagens de execução, e.g. BPEL, BPELJ, BPEL4WS.
Como definir os Processos de Negócio? A representação de Processos de Negócio tem assistido a avanços importantes. O estado da arte está na Na BPML/BPMN proposta pela BPMI.org Na WS-BPEL proposta da BEA, IBM e Microsoft O BPML e o WS-BPEL são descrições em XML. O BPMN é uma descrição gráfica BPML (bpmi.org) BPSS (ebxml) BPMN (bpmi.org) WSCI (Sun et al) WS-Choreography (W3C) 2000/05 2001/03 2001/05 2001/06 2002/03 2002/06 2002/08 2003/01 2003/04 XLang (Microsoft) WSFL (IBM) WSCL (HP) BPEL4WS 1.0 (IBM, Microsoft) BPEL4WS 1.1 (OASIS) BPML Visão SOA
Service Oriented Architecture Serviços representam um agregado de funções de negócio que estão fortemente relacionadas. Encapsulam o nível das componente Correspondem a uma reestruturação das aplicações que expõem uma API contratualizada Podem ser agregados e factorizados Modelo dos Serviços Service Registry Find Publish Service Requestor Request Bind /Response Service Provider
SOA: Web Services (standards) Management Choreography - CDL4WS Orchestration - BPEL4WS Transactions WS-Reliability WS-Security Coordination Web Services são tecnologia Context UDDI WSDL SOAP XML HTTP, JMS, SMTP Business Processes Quality of Service Discovery Description Message Transport Granularidade Service Layer Component Layer Class Layer Service Oriented Design Component Oriented Design Object-Oriented Design
Visão SOA Figura do CBDI Forum, SOA: Consideration for Agile Systems. MS Journal2 SOA: na aplicação Workflow Multiple Devices Application Layer Process Layer Business Service Bus Process Management Access Management Adaptors and Transformation Directory Service and Integration Layer Technical Service Bus Messaging, COM, CORBA, Etc Legacy Apps Packaged Apps New Components 3 rd Party Services Implementation Layer
Arquitectura de Informação para a Integração Metadata A informação e os dados são a base de qualquer projecto de integração Na descrição da informação tem se considerar duas importantes facetas Sintáctica que permite a validação, a transformação e a entrega de dados entre sistemas heterogéneos Semântica que define o contexto, relações e dependências A vertente sintáctica é a mais habitual nos vários modelos de integração e o XML tem vindo a ser utilizado como mecanismo de representação canónico
Normas para Metada OMG Model Driven Architecture (MDA) define uma arquitectura com 4 níveis Level 0 informação e os respectivo valor Level 1 descrição sintáctica dos dados Level 2 metamodelo que incorpora a semântica Level 3 Linguagem abstracta para definir metada Semantic Web e as ontologias. Uma ontologia define um conjunto de termos que permitem descrever e representar um dado domínio. As ontologias são geralmente expressas numa linguagem lógica que exprime de uma forma detalhada, consistente e com significado a distinção entre classes, propriedades e relações. As aproximações são RDF Resource Description Framework ontologia simplificada para troca de informação na Web Web Ontology Language OWL Arquitectura Tecnológica
Pilha de Tecnologias de Integração Infelizmente a tecnologia não se apresenta numa pilha tão bem estruturada Na maioria dos casos a infra-estrutura tecnológica encontrase em diversas plataformas de múltiplos fabricantes Arquitectura genérica
Modelo da Infra-estrutura tecnológica de Integração Intranet Enterprise Portal Gestão Sistemas Serviço Arquivo Gestão dos Computadores Pessoais Gestão Segurança Repositório Meta Data Broker Mensagens/ Integration Server Portais/ Web servers externos Directório Organização B2B Messaging Gestão Conhecimento Modelo da Infra-estrutura de Integração Gestão de Nomes - Organização do Directório LDAP e Active Directory DNS Gestão de Segurança - Responsável pela segurança Autenticação single sign on Emissão de certificados Gestão de firewalls Gestão de VPN Gestão dos Sistemas Gestão dos sistemas centrais Help desk Gestão dos Computadores Pessoais Aplicações locais Segurança
Modelo da infra-estrutura de Integração Broker de Mensagens Mecanismos de store e forward de mensagens entre aplicações Arquivo Sistemas responsáveis pelo arquivo de longa duração da informação dos processos de negócio Repositório de Metadata Repositório da especificação dos dados usados nos vários domínios de negócio Modelo da infra-estrutura de Integração Portais Externos Corporativos e de Negócio Portais que permitem a comunicação com clientes, parceiros, fornecedores externos à empresa. Exemplos: Portal Informativo Portal de Serviços para clientes Portal para parceiros Web services disponibilizados exteriormente Serviço de interligação de processos com parceiros externos Mensagens para B2B - Mecanismos seguro e fiável de mensagens store e forward acessível da Internet Normas de formatação de mensagens
Modelo da infra-estrutura de Integração Gestão de Conhecimento Serviço para capturar e pesquisar o conhecimento em toda a organização Intranet - Portal de comunicação e interligação dos sistemas internos E-mail Gestão documental Portal de colaboradores Sistemas Internos Directório de Serviços Serviço de Nomes Servidores de Sistemas Periféricos de Negócio Filas Mensagens Directório da organização Utilizadores Internos Message Queues Message Broker B2B Message Queues Intranet Intranet Privada Privada Firewall Acesso Remoto de Colaboradores Aplicações Servidor Web Public Application(s) B2B Web Server(s) Enterprise Web Server Public Web Applications 8/28/2003 Clientes/Parceiros José Alves Marques Internet Internet Pública Pública Parceiros de Negócio Colaboradores
IB M Identificação dos Sistemas de Informação Web Servers IVR Server, Altitude Easyphone HTTP IE Caso BES XML Nível Apresentaçã o BackOffice Application Servers Nível "Lógica Negócio" Multi Aplicação/Media Arquitectura Física (2) XML Personalização Marketing 1-2-1 Propostas Comerciais Broker Msg MVS Sv Cotações cluster SGBD Nível Dados SMS e-mail GTF Caso Porto de Sines
Caso Porto de Sines Arquitectura Tecnológica Visão baseada no Enterprise Service Bus
Visão que incorpora na arquitectura tecnológica o suporte aos conceitos SOA Explicitar o Bus de Serviços Os workflows e as orquestrações de processos