• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Palestra sobre a SOA foi destaque no Ciasc
 

Palestra sobre a SOA foi destaque no Ciasc

on

  • 1,653 views

 

Statistics

Views

Total Views
1,653
Views on SlideShare
1,650
Embed Views
3

Actions

Likes
1
Downloads
88
Comments
0

1 Embed 3

http://www.slideshare.net 3

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Meu objetivo é apresentar o estágio atual e as tendências na utilização de e-business para gestão de canais de distribuição e revenda no Brasil. Este panorama é traçado com base no resultado de uma pesquisa envolvendo 100 das maiores empresas atuando no Brasil em diferentes setores. Também são apresentados os principais desafios e o cenário de convergência esperado para as diversas iniciativas relacionadas ao mercado B2B .

Palestra sobre a SOA foi destaque no Ciasc  Palestra sobre a SOA foi destaque no Ciasc Presentation Transcript

  • Workshop SOA (Service Oriented Architecture)
  • Plano de Aula
    • Introdução a Componentização, Reúso e SOA
    • BPM (Business Process Management)
    • Infraestrutura SOA
    • Serviços SOA
    • Web Services
    • Governança SOA
    • Roadmap SOA
  • Referências
    • Livros:
      • Service Orient or Be Doomed!: How Service Orientation Will Change Your Business
        • Jason Bloomberg, Ronald Schmelzer, mar 2006
      • SOA: A Planning and Implementation Guide for Business and Technology
        • Erik A. Marks, Michael Bell, abr 2006
      • Measuring Software Reuse
        • Principles, Practices and Economic Models Jeffrey S. Poulin, 1996
      • Managing Software Reuse
        • Wayne Lim, 1998
      • Service-Oriented Architecture: A Field Guide to Integrating XML and Web Services
        • Thomas Erl, abr 2004
  • Aquele Blog de SOA www. aquele blog de soa .com.br
  • Atuação da DigitalAssets Produtos • Repositório de Ativos Reutilizáves • Identificação Automática de Ativos Consultoria • Design e Implantação de SOA • Arquitetura de Referência • Governança e Infra-estrutura • Programas de Reúso de Software Educação • Treinamentos In Company • Parcerias Educacionais
  • Alguns Clientes
  • Educação
      • Cursos de Extensão Acadêmica, Pós-graduação e Educação Corporativa em Arquitetura de Software, Componentização, Reúso, SOA e WebServices
      • “ Consultores DigitalAssets são responsáveis pelas principais disciplinas nos módulos SOA, WebServices, Componentização e Reúso”
      • Cursos e Workshops em parceiras com instituições
    Treinamentos In-Company Parcerias Educacionais (www.ibta.com.br) (igdnbrasil.com) SOA & WebServices 3 Componentização e Reúso 3
  • Integração dos Produtos DigitalAssets Asset Production And Consumption 3 Eclipse Platform 3 IBM Rational RSA/RSM 3 MS VisualStudio 3 Oracle JDeveloper 3 Borland JBuilder Source Code Management Asset Runtime Publication 3 UDDIs 3 ESBs IBM Rational ClearCase CVS/Subversion Existing Assets Discovery DA Discoverer J2EE 3 MS.NET 3 Asset Management DA Manager Metadata Searches Reuse Metrics Promotion Collaboration Workflow
  • Arquitetura Orientada a Serviços
    • Flexibilidade
      • Soluções devem se adaptar a novos contextos de utilização para acompanhar a evolução do negócio
    Cenário Competitivo
  • Cenário Competitivo
    • Agilidade
      • As soluções devem atender a prazos cada vez mais agressivos com redução do ciclo de desenvolvimento e aumento de produtividade
    Fazer mais com menos!
  • Motivação
    • Top-Down Enterprise Drivers:
    • Agilidade
    • Flexibilidade dos processos
    • Inovação contínua
    • Fusões & Arquisições
    • Bottom-Up Business Unit Drivers:
    • Integração de processos
    • B2B Real-time
    • Outsourcing de atividades não-chave
    • Desafios constantes de TI:
    • Fazer mais com menos
    • Alinhamento TI x Negócio
    • Qualidade
    • Time-to-delivery
  • Arquitetura Tradicional Muito difícil de entender, manter e evoluir
  • SOA NÃO é:
    • 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 ≠ WebServices ≠ XML ≠ BPM
    • SOA não é “Puro Marketing”
  • “ Service Orient or Be Doomed” Jason Bloomberg, Ronald Schmelzer, mar 2006 “ Because SOA Comes From So Many Places, SOA Will Happen to Everyone” Frank Kenney, Gartner, abr 2007 Não há como evitar SOA:
  • O que é SOA? Service-Oriented Architecture SOA é uma abordagem arquitetural corporativa que permite a criação de serviços de negócio interoperáveis que podem facilmente ser reutilizados e compartilhados entre aplicações e empresas.
  • Novidades da Abordagem SOA
      • O Mundo é Orientado a Serviços!!
        • Vocabulário aderente às demandas de negócios dos clientes
      • Baseado em tecnologias padronizadas
        • Integração de aplicações intra e entre empresas é um fardo pesado
      • Construído sobre o existente usando uma abordagem incremental
        • O legado é muito importante
  • Abordagem Corporativa
    • Application Infrastructure
    • Application Development
    • Service Enablement
    • Execution Environment
    • Reliability
    • Service Infrastructure
    • Composite Application Framework
    • Business Service Orchestration
    • Cross-platform management
    • Governance and control
    • Service discovery, publishing and security
    • Message routing and transformation
  • 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 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
  • Conceitos-chave: Baixo Acoplamento
    • Alto Acoplamento
    • Baixo Acoplamento
      • Capacidade dos ativos de TI trabalharem integrados embora existam independentemente
  • Conceitos-chave: Abstração
      • Permite que agentes humanos interajam com sistemas complexos de uma forma simples:
  • Conceitos-chave: Assets
      • Elemento de software que encapsula conhecimento e que pode ser reusado: Quais são os seus?
  • Dimensões de uma estratégia SOA Metodologia Processos e Governança Capacitação Estruturação Organizacional Arquitetura Tecnológica: Padrões, Frameworks, Boas práticas Ferramentas em Design-time e Run-time Fator Crítico de TI: Reutilização
  • Benefícios e Desafios
  • Benefícios Esperados de SOA
    • Redução de Custo em novos projetos
    • Time-to-Market / Agilidade
    • Facilidade / Flexibilidade de Manutenção
    • Melhoria da Qualidade de serviço
    • Otimização dos processos
    • Transformação dos negócios / Oportunidades de Receita
  • SOA: Manutenção vs. Inovação
  • SOA: Alguns números Interessantes Survey conducted by IDG Research Services Group January 2006. Sample population was composed of 1,040 IT Managers in organizations of 500 or more Top 5 business needs that companies are looking to address with SOA React quickly to changes in market dynamics Intra- and inter-company business models and processes Real-time information to make decisions Customer service initiatives New and evolving regulatory requirements Agilidade
  • SOA: Alguns números Interessantes Survey conducted by IDG Research Services Group January 2006. Sample population was composed of 1,040 IT Managers in organizations of 500 or more More flexible architecture Integration to existing applications Data integration Service integration Composite application development Top 5 IT needs that companies are looking to address with SOA Arquitetura
  • Nem tudo são flores...
  • Principais Desafios Organização e Pessoas
    • Papéis e Responsabilidades
    • Mudança de Cultura, Treinamentos
    • Promoção, Acompanhamento e Enforcement
    Tecnologia e Ferramentas
    • Arquiteturas Padronizadas
    • Middleware de Integração
    • Padrões de Classificação e Documentação
    • Repositório de Ativos Reutilizáveis
    Processos e Políticas
    • Ciclo de Vida dos Ativos
    • Metodologia de Desenvolvimento Revisitada
    • Processos de Manutenção
  • Organização e Pessoas
    • Requer mudança de mentalidade
    • Apoio executivo
    • Capacitação nos conceitos-chave
    • Política de incentivos
    • Divulgação e visibilidade dos ativos existentes: é necessário um trabalho de endo-marketing
    Um excelente componente ou serviço, flexível, bem documentado e que resolve um problema recorrente só pode ser considerado um bom ativo se as pessoas conseguirem encontrá-lo, entendê-lo, avaliá-lo e reusá-lo, caso contrário, será um ótimo segredo!!
  • Organização e Pessoas
    • Estrutura organizacional / Papéis:
      • Administração de componentes
        • Perfil semelhante à Administração de Dados
        • Conhecimento de negócio
      • Gestão da Arquitetura de Referência
      • ICC (Integration Competency Center) ou SOA CoE (Center of Excelence)
      • Desenvolvimento/suporte de componentes
        • Perfil: Desenvolvedores seniors com ampla capacitação em orientação a objetos, design patterns
        • Conhecimento de ofertas de componentes de mercado
  • Processos e Políticas
    • Adaptações no processo de desenvolvimento atual para tornar SOA uma prática sistemática
    • Como as atividades abaixo se encaixam no processo de desenvolvimento de software atual?
      • Identificação de serviços;
      • Modelagem de serviços;
      • Publicação dos serviços;
      • Definição das interfaces dos serviços; Testes;
      • Deploy de serviços
  • Dificuldades relacionadas a Tecnologia
    • Volatilidade Tecnológica
    • Falta de padronização de arquitetura
    • Repositório de Assets
    • Massa crítica de serviços
    • Middleware para invocação dos serviços
  • Tecnologia Repositório de Assets
    • Repositório de Serviços:
      • “ Embora a adoção de uma ferramenta de administração de ativos focada em reúso não garanta por si só o sucesso da iniciativa de reutilização da empresa, ela irá aumentar significativamente suas chances”
    Fonte: Enterprise Unified Process The Strategic Reuse Discipline Scott Ambler, John Nalbone e Michel J. Vizdos
  • Rítimo de Adoção
    • “ Em 2010, menos de 25% das grande empresas terão desenvolvido as habilidades técnicas e organizacionais necessárias para implantar SOA de forma corporativa.”
    “ Through 2010, fewer than 25 percent of large companies will have developed the technical and organizational skills needed to deliver enterprisewide SOA (0.8 probability).”
  • Quando NÃO usar SOA
    • 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 e baixo acoplamento, para os casos que necessitem de desempenho real-time, SOA pode não ser a melhor abordagem
  • Funcionamento Básico SOA
  • Dinâmica de Funcionamento Ex.: Correios Tracking de Pacotes Ex.: Submarino Loja Virtual Query Service Bind Service Register Service 1 Service Contract and Address Service Response 2 3 4 5 Provedor do Serviço Consumidor do Serviço Diretório de Serviços
  • Dinâmica de Funcionamento Ex.: Correios Tracking de Pacotes Ex.: Submarino Loja Virtual Bind Service Service Response 4 5 É muito mais comum encontrar integração com ligação ponto-a-ponto usando Web Services Provedor do Serviço Consumidor do Serviço
  • Desenvolvendo apenas o Código de Cola.... Selecionar Itinerário Reservar Bilhete Aéreo Reservar Hospedagem Reservar Carro Alugado Confirmar Viagem Realizar Pagamento
  • Como SOA vem Transformando Negócios
  • Alguns (bons) Exemplos
    • Algumas empresas já vêm destacando-se e reinventando sua forma de realizar negócios
    • Alguns destaques globais:
      • Amazon.com
      • Strike Iron
      • HP
  • Amazon.com Webservices Marketplace at 1’click
  • Strike Iron It’s all about information
  • O Fenômeno Web 2.0
  • Serasa Estamos começando?
  • Posição de Estoque na Cadeia de Distribuição Portal de relacionamento entre fabricante, seus distribuidores, revendas e consumidores finais Fabricante Cadeia de distribuidores e revendas Consumidor final
  • BPM (Business Process Management)
  • De onde vêm os serviços?
    • “ Empresas que montarem seus programas organizacional e cultural de transformação em BPM terão mais que o dobro de chances de se tornarem líderes em suas indústrias m 2010.”
    “ Enterprises that aggressively begin their organizational and cultural transformation for BPM in 2007 will double their chances of becoming industry leaders by 2010.”
  • BPM - Conceitos
    • Processo
      • Atividades que empregam e consomem recursos (humanos ou não), para alcançar um resultado (bem ou serviço).
    • Processo de negócio
      • Processo que segue políticas e princípios de negócio (regras de negócio e critérios de decisão), para produzir valor para a empresa.
  • BPM - Conceitos
    • Macro processos
      • Processos
        • Sub-Processos
          • Atividades
            • Tarefas
  • Pilares de BPM EAI Workflow Monitoração Gerenciamento BPM EAI / SOA
  • Pilares de BPM - Workflow
    • Ordem das atividades
    • Diferentes executores
    • Informações que fluem entre executores
  • Pilares de BPM - EAI / SOA
    • Soluciona problemas de incompatibilidade de sistemas
    • É mais simples integrar do que reconstruir
    • Estilos de integração
      • File Transfer
      • Shared Database
      • Remote Procedure Invocation
      • Messaging
  • Pilares de BPM - Monitoração
    • Acesso em tempo real de indicadores de performance críticos para o negócio
      • Melhoria na velocidade e eficácia das operações
    • Business Activity Monitoring (BAM)
      • Possibilita os usuários a agir sobre os eventos, tomar as ações corretas e monitorar, medir e melhorar a eficiência dos processos de negócio.
  • Pilares de BPM - Gerenciamento
    • Gerenciamento
      • Planejamento
        • imaginar o que está para vir no futuro e planejar ações para este cenário
      • Organização
        • otimizar o uso dos recursos necessários para o sucesso da execução dos planos
      • Liderar/Motivar
        • tirar o melhor do time para alcançar os objetivos planejados
      • Controle
        • acompanhar o andamento real em relação ao planejado para detectar mudanças necessárias
  • What is Business Process Management? Order Management Process Enterprise Infrastructure Services (Portal, SOA, IDRS, LDAP, EAI, E-mail, IT Operations) Customer Relationship Management Sales and Marketing Production Planning Manufacturing Inventory & Logistics Finance & HR SFA Product LMS Inv MGMT B2B product ERP. SCM productinfo. MES DB ERP CRM BPM models, simulates, executes, manages, monitors, & optimizes those Business Processes. Customer Relationship Management Sales and Marketing Production Planning Manufacturing Inventory & Logistics Finance & HR SFA Product LMS Inv MGMT B2B Enterprise Infrastructure Services (Portal, SOA, IDRS, LDAP, EAI, E-mail, IT Operations) product ERP SCM product MES DB ERP CRM Organizational Units Real-World Business Processes span organizations, systems, and applications. Product Configuration Order Management Warranty & Returns Management Processes
  • Padrões de BPM SOA BPEL BPMN
  • BPEL / BPEL4WS
    • Business Process Execution Language (for Web Services)
      • Seja chique: fale "bi-pél“ ou “bípou“ (beeple)
      • Uma linguagem baseada em XML para padronização de processos de negócio em computação distribuída que possibilita negócios conectarem suas aplicações e compartilharem dados.
      • Desenvolvida a partir de WebServices Flow Language da IBM e da especificação de XLANG da Microsoft, BPEL permite empresas manter diferentes protocolos de negócios internamente e entre empresas.
  • BPMN
    • Business Process Modeling Notation.
      • Notação gráfica entendível por pessoas técnicas e não-técnicas para expressar processo de negócio, e semântica para os Business Process Diagrams
      • A especificação de BPMN provê um mapeamento entre os elementos da notação gráfica e a construção de processos de blocos nas linguagens BPEL/BPEL4WS
      • Mantida pela BPMN.org
  • Exemplo de Processo Interface WebMethods
    • Exemplo de BAM:
    • Interface WebMethods
    Inventory Level
  • Em poucas palavras...
    • BPM tem o potencial para trazer grande agilidade e flexibilidade para gestão dos processos de negócio das empresas
    • A estratégia SOA é fundamental para conseguir entregar os benefícios de BPM
    • As áreas de negócio das empresas ainda encontram-se bastante imaturas para colher benefícios tangíveis
    • As ferramentas ainda estão amadurecendo
  • Infra-estrutura SOA
  • Quais Classes de Ferramentas estão relacionadas a SOA?
    • Design Time:
        • Foco em usabilidade, produtividade, controle, ...
      • Modelagem de Negócio: BPM (BPMN, ...)
      • Catálogo de Ativos Reutilizáveis
    • Run Time:
        • Foco em robustez, escalabilidade, ...
      • 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
  • BPMS
    • BPM Suites
      • Pilha de tecnologias em evolução
      • Unifica softwares previamente independentes de infraestrutura:
        • Human workflow mgmt.
        • Integration servers
        • Portals
        • BI tools
        • Runtime containers
        • Message-oriented middleware
        • Business rule engines
        • Modeling tools
        • App. servers/IDEs
  • Mercado de BPM
  • Alguns Exemplos: WebSphere Business Modeler
  • Alguns Exemplos: Savvion Business Modeler
  • Infra-estrutura SOA ESB (Enterprise Service Bus)
  • ESB: Nova Classe de Produtos?
    • Objetivo:: Integrar!
    • O que existe por aí?
      • Enterprise Service Bus (ESB)
      • 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
  • Abordagem Tradicional Conexões Ponto-a-Ponto ERP Aplicação .NET WebService (Externo) Aplicação JEE Legacy (C/C++) Mainframe (CICS Transaction Gateway) Pacote CRM (proprietário) Custom point-to-point connections
  • Barramento Corporativo de Serviços (ESB – Enterprise Service Bus) Enterprise Service Bus ERP Aplicação .NET WebService (Externo) JCA J MS SOAP / HTTP SOAP / HTTP SOAP / HTTP SOAP / HTTP JCA Aplicação JEE Legacy (C/C++) Mainframe (CICS Transaction Gateway) Pacote CRM (proprietário)
  • Seleção Dinâmica ESB Cliente Serviço Provedor Serviço (5) ESB executa o match client-provider aplicando as transformações, policies etc. (1) Provedor registra o serviço no Registry e no ESB. Regras/Policies podem ser incluídas (3) ESB solicita informações sobre o serviço a ser executado (4) Registry responde com as informações básicas e os metadados (port type, endpoint, policies, etc.) (2) Cliente invoca o serviço chamando a infra-estrutura de ESB (6) A mensagem é transformada e roteada para o provedor correto Diretório Serviços
  • Principais Players
      • IBM WESB, MessageBroker
      • Oracle ESB
      • BEA ESB
      • Sonic ESB
      • Tibco
      • SoftwareAG/Webmethods
      • Microsoft (BizTalk)
      • ...a cada dia surgem novos...
  • E opções Open Source?
    • Apache Service Mix
      • incubator.apache.org/servicemix/home.html
    • IONA FUSE
      • baseado no Apache Service Mix - open.iona.com
    • WSO2
      • wso2.com/products/esb
    • JBOSS ESB
      • labs.jboss.com/jbossesb
    • MULE SOURCE ESB
      • mule.codehaus.org/display/MULE/Home
  • Registry / Repository
    • Classe de produtos que ainda causa confusão
    • Classificação funcional que atende a diversos propósitos
    • Mercado em consolidação (com diversas aquisições)
    • ...
    “ SERIOUS ABOUT SOA? MAKE A REPOSITORY PART OF YOUR STRATEGY ”
  • Exemplo
  •  
  • Principais Funcionalidades
    • Promovendo os ativos:
      • Indexação e Busca (full text)
      • Mecanismos de colaboração:
        • - Notícias/RSS
        • - Fóruns de discussão
        • - Notificação
      • Envio automático de Notificações
      • Buscas remotas em repositórios alternativos como SourceFORGE, Google e ComponentSource
    • Gerenciando o acervo:
    • Metadados com categorização flexível
    • Mapeamento das dependências
    • Gerenciamento dos documentos e artefatos relacionados
    • Perfis de Acesso
    • Import/export para Excel, XML e RAS
    • Análise de impacto com visualização gráfica das dependências entre ativos
    • Controle do Fluxo de aprovação
    • Medindo os resultados:
      • Economia e Retorno (Cost Avoidance e ROI)
      • Componentes e documentos mais consultados, acessados e baixados
      • Novos ativos catalogados
      • Gráficos com estatísticas
    • Acelerando o reuso:
      • Acervo inicial (Starting Library)
      • Integração com Ambiente de Desenv.:
      • - Plug-ins para plataforma Eclipse, Oracle JDevelopmer e MS VisualStudio
      • - Integração com repositório de fontes ClearCase e CVS/Subversion
  • DA Manager Information Model Asset version Artifacts User’s guide API docs Release notes Samples ... Asset Types Components Services Applications Business Process ... Relationship Types Depends on Invokes ...
    • Metadata
    • Classification
    • Security
    • Workflow
    • Collaboration
  •  
  •  
  • Em poucas palavras...
    • A oferta de infra-estrutura para SOA está crescendo a uma velocidade nunca antes vista
    • É preciso conhecer as ferramentas/middleware com suas características funcionais e comparar os overlaps existentes
    • Algumas ferramentas são muito importantes para a entrega dos benefícios SOA: destaque para Repositório de Serviços (design-time) e ESB (run-time)
  • Serviços SOA: Identificação, Modelagem, Granularidade, Anti-Patterns...
  • Identificação de Serviços
    • Top-Down
      • Identificando as necessidades de negócio e modelando essas necessidades em serviços de alto valor agregado
    • 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
  • Identificação dos Serviços
    • Top-Down, algumas técnicas:
      • BPM – Business Process Modeling
      • PBS – Product Breakdown Structure
      • Análise/Design de Domínio
    • Bottom-Up, algumas técnicas:
      • Bases de dados existentes
      • Aplicativos existentes
      • Funcionalidades existentes
  • Identificação de Serviços Top-Down Bottom-Up
  • Anatomia de um Serviço New Service Wrapped Legacy Composite Service Service costumer Interface proxy Service interface Service Implementation
  • De onde vêm os serviços?
    • “ Em 2008, pelo menos 65% dos serviços desenvolvidos em projetos SOA serão implementados através do encapsulamento ou reengenharia de aplicações já existentes.”
    “ Through 2008, at least 65 percent of custom-developed services for new SOA projects will be implemented via wrapping or re-engineering of established applications (0.8 probability).”
  • Granularidade
    • Discussão:
      • Qual o tamanho correto dos serviços?!
      • Quais aspectos devem ser levados em consideração para a empresa definir a granularidade correta para seus serviços?
  • Trade-off da Granularidade Tudo em função de decisões de design  Pode ser muito detalhado  Representa melhor um conceito de negócio Valor para o negócio  O número de serviços pode explodir  Melhor pois haverá um número menor de serviços Gerenciamento  Grãos menores são mais facilmente reutilizados  É mais difícil surgirem oportunidades de reúso para os grãos maiores Reusabilidade  Permite composição e orquestração  Menos flexível Flexibilidade  Testar é mais desafiador pois o fluxo é desconhecido  Simplificado pois o controle do caminho de execução é limitado Testabilidade  Requer mais troca de mensagens  Melhor pois o número de troca de mensagens é menor Performance Fine-Grained Coarse-Grained
  • Anti-Patterns
  • Anti-Patterns*
    • Googando “SOA Anti-Pattern”
    * Andrew Koenig, 1995 – http://en.wikipedia.org/wiki/Antipattern “ Experience is the name every one gives to their mistakes.” Oscar Wilde “ Experience is what causes a person to make new mistakes instead of old ones.” Unknow
  • Erros mais comuns em SOA** (anti-patterns)
    • Try to Boil the Ocean
    • Vamos implementar alguns Web Services
    • Pensaremos em governança mais tarde
    • “ Governar” vs. “Ser Governado”
    • A nossa empresa é diferente
    • Vamos às Compras
    ** Compilação livre baseada em experiências, segundo Kleber Bacili Top 6 Concerns
  • 1. (don’t) Try to Boil the Ocean
    • As estratégias SOA devem ser corporativas (não se deve pensar apenas em um projeto ou uma área apenas)
      • Dicas:
        • Reflita sobre o todo
        • Determine escopo para aplicação (Pilotos)
        • Aceite e se planeje para mudanças
    vs. Tratar como corporativo, patinar e não sair do lugar! Avançar rápido com risco de negligenciar áreas e pessoas
  • 2. Vamos implementar alguns Web Services
    • SOA é muito mais que “Um punhado de Web Services”
    • Principais perspectivas:
      • Arquitetura (não podemos esquecer “A” do SOA)
        • Padrões (WS-I, etc), Frameworks e Boas Práticas
      • Metodologia / Processos / Governança
      • Estruturação Organizacional
      • Capacitação
      • Ferramentas em Design-time
      • Infraestrutura em Run-time
  • 3. Pensaremos em Governança mais tarde
    • Quantos serviços eu preciso ter para me preocupar com governança?
    • A Governança deve ser desenhada para o nível de maturidade e a necessidade da empresa
    • O básico:
      • Ciclo de vida dos serviços
      • Papéis e responsabilidades
      • Classificação e visibilidade
    It’s all about ownership!! “ Em 2010, a carência de planejamento relacionado a governança será a razão mais comum dos fracassos em SOA” 1
  • 4. “Governar” vs. “Ser Governado”
    • “ Governar” é bom, “Ser Governado” é ruim
    • Suporte executivo é necessário para garantir o cumprimento das políticas de governança
    • Dicas para resolução de conflitos:
      • Políticas claras
      • Matriz de responsabilidades
  • 5. A nossa empresa é diferente
    • Todas as empresas possuem peculiaridades, mas acreditem, muitas outras possuem problemas muito parecidos com os seus!
    • Dicas:
      • Participe de conferências
      • Ouça as histórias de outras empresas (cases)
      • Conheça o mercado e as ofertas dos players
  • 6. Ir às Compras
    • Começar por onde?
    SOA Products Business Process Management
    • Modeling
    • Simulation
    Orchestration / Choreography
    • Execution
    • Monitoring
    SOA Services DigitalAssets expertise Enterprise Service Bus Registry / Repository Services Monitoring Police Enforcement Security / Identity Modeling and Development Consulting / Mentoring Business Process Modeling Integration Development
  • Web Services: Especificações Emergentes
  • WS-* Um oceano de especificações Business Process Management Metadata Transaction Security Messaging and Transport XML Interoperability Presentation Reliability Resource
  •  
  • Interoperabilidade
    • Composta por cerca de 130 empresas (70% vendors; 30% end-user organizations)
    • 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
  • Governança SOA
  • Evitando os acidentes...
  • 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
    • 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
  • Governança?
    • “ Em 2010, a carência de planejamento relacionado a governança será a razão mais comum dos fracassos em SOA.”
    “ Through 2010, lack of working SOA governance arrangements will be the most common reason for SOA failure (0.8 probability).”
  • Definição
    • Governança SOA é um subset da Governança de TI relacionada ao estabelecimento de políticas, controles e obrigações relacionados aos serviços SOA.
    • Governança SOA deve endereçar como os serviços reusáveis são definidos, modelados, criados, acessados, executados e mantidos (papéis e responsabilidades)
    • Governança SOA identifica:
      • Business Processes and Service Ownership
      • Alocação de custos em modelos compartilhados
  • Mais grupos e papéis
    • É necessário definir os papéis que atuarão em cada etapa do ciclo de desenvolvimento
    • Novamente há a sobreposição com o Processo de Desenvolvimento de Software
    • Exemplo de organização:
      • RACI Tables
        • (R)esponsible
        • (A)ccountable
        • (C)onsulted
        • (I)nformed
  • Definindo a RACI Table
  • Qualificando os Assets
    • Algumas formas possíveis:
      • Classificação / Taxonomia / Ontologia
    • Passos importantes:
      • Determinar os tipos de assets que serão gerenciados / governados
      • Para cada tipo de asset:
        • Determinar os atributos que melhor representam/documentam o asset
        • Levantar amostragem dos domínios das informações
        • Verificar o que é comum a todos
      • Determinar os relacionamentos possíveis entre os assets
  • Discussão
    • Quais são os assets e quais informações são necessárias para melhor documentá-los e governá-los?
      • Que facilitem sua descoberta
      • Que facilitem a reutilização
      • Que facilitem a gestão
    • Gerais:
      • Nome / Versão
      • Descrição
      • Categorização
      • Release notes
    • Para o reuso:
      • Palavras-chave para busca
      • Documentos (requisitos, exemplos, binários)
      • Referências (pessoas e projetos / sistemas)
      • Dependências
      • Compatibilidades
    • De controle:
      • Tracking de utilização (quais áreas / sistemas / projetos com seus contatos utilizam quais versões de quais componentes)
      • Número de linhas de código
      • Esforço de implementação
      • Situação do componente
      • Formas de licenciamento (preço)
    Alguns exemplos de Informações
  • Ciclo de Vida de Serviços Em Desenvolvimento Disponível Aposentado Identificado Em Aprovação ? Qual o ciclo de vida de um ativo
  • Adoção e Maturidade SOA
  • Colocando para Rodar...
    • Vários conceitos:
      • Níveis de Maturidade
      • Estágios de Adoção
      • Processo de Implantação
      • Abordagem Incremental
      • Fatos críticos para o sucesso
      • ... E agora?
      • “ Don’t try to boil the ocean”
  • Visão Estratégica
    • Definição do processo de governança formal para SOA
        • Centro de Excelência
        • Papéis / Responsabilidades de governança
        • Metodologia de desenvolvimento “ Designed For SOA”
    • Estratégia de integração arquitetural
        • Padrões
        • Mecanismos
        • Boas práticas
        • Infra-estrutura
    Implantação estruturada de SOA de maneira corporativa
  • Plano de Trabalho Visão Geral 1 2 3 4
    • Assessment:
    • - Processos
    • - Perfis x Pessoas
    • - Arquitetura de Referência
    • - Boas práticas
    • - Estratégia BPM
    • - Níveis de maturidade
    • Capacitação conceitual
    • Iniciar estratégia de integração
    Diagnóstico SOA Design Governança SOA (nível 1) + Mentoring Melhoria Contínua + Mentoring Design Governança SOA (nível 2) + Mentoring
  • Plano de Trabalho Visão Geral 1 2 3 4
    • Governança - nível 1:
    • - Centro de Excelência SOA – Perfis e responsabilidades
    • - Processo de governança
    • - Metodologia “Design For SOA”
    • L Processo de Identificação, modelagem e deploy de serviços
    • - Catálogo de serviços
    • L Identificação de serviços existentes
    • L Classificação e taxonomia
    • - Modelagem de Processos - BPM
    • Estratégia de integração – nível 1
    • - POCs Independentes ESBs
    • - Estrutura de mapeamento de ativos L Análise de impacto e rastreabilidade
    • - Modelagem de integração
    • L Padrões de interface e protocolos
    Diagnóstico SOA Design Governança SOA (nível 1) + Mentoring Melhoria Contínua + Mentoring Design Governança SOA (nível 2) + Mentoring
  • Plano de Trabalho Visão Geral 1 2 3 4
    • Governança – nível 2:
    • - KPIs SOA
    • - Definição e implantação do Services Life Cycle
    • - Definição de padrões para serviços
    • L Runtime Policies
    • L Transação, Segurança
    • - BPM e SOA (identificação de serviços )
    • Estratégia de integração – nível 2
    • - Padrão de implantação de serviços
    • - Mentoring em projeto piloto
    • Skill transfer aplicado
    • - Metodologia SOA (área de processos e desenvolvimento)
    • - Padrões (Arquitetura de sistemas)
    Diagnóstico SOA Design Governança SOA (nível 1) + Mentoring Melhoria Contínua + Mentoring Design Governança SOA (nível 2) + Mentoring
  • Plano de Trabalho Visão Geral 1 2 3 4
    • Ciclo de Melhoria:
    • - Coleta de Indicadores
    • - Análise Crítica e Propostas de Melhoria
    • - Quality Assurance Arquitetural
    • - Quality Assurance Processos SOA
    Diagnóstico SOA Design Governança SOA (nivel 1) + Mentoring Melhoria Contínua + Mentoring Design Governança SOA (nível 2) + Mentoring
  • O mais importante: Abordagem Incremental Nível de Reuso Ativos Reutilizáveis Aplicações Identificados Reutilizados A 1 2 B 3 1 4 5 1 5 D 2 7 3 8 2 3 E 3 5 6 F 1 2 6 8 1 1 2 3 4 6 7 5 8 2 3 5 6 8 C 1 6 5 6 9
  • Mas... Qual a visibilidade dos serviços hoje? Meu mundo Imagino Conheço Eu fiz
  • Níveis de Maturidade
  •  
  • Algumas estatísticas (1)
  • Algumas estatísticas (2)
  • Algumas estatísticas (3)
  • Em poucas palavras...
    • Pensar Grande
    • Começar Pequeno
    • Avançar Rápido
  • Faça parte do time! www. aquele blog de soa .com.br
  • Copyright (C) 2007 DigitalAssets 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. Venha nos visitar! www.digitalassets.com.br ? Obrigado! marcilio.oliveira@digitalassets.com.br
  • Apêndice ROI Medindo o Reuso
  • Ganho Economia Investimento $ Sem reúso
  • Ganho Com reúso Economia Investimento ... RCA = (Tam * %reuso) – Overhead. ROA = Σ RCA ativo reúsos $
    • Principais barreiras:
      • Falta de padronização nas contagens
      • Falta de confiabilidade nos valores
    • Literatura de referência:
    Métricas de Reuso na Indústria Measuring Software Reuse Principles, Practices and Economic Models Jeffrey S. Poulin White Paper: The Return on Investment on COTS Software Components Chris Brooke, ComponentSource White Paper: Calculating The Value of Your Asset Portifolio Sharon Fay, Flashline
    • Percentual de Reuso
      • Padrão “de facto”
      • Facilidade de cálculo
    • Modelos Econômicos de Reuso
      • Cost Avoidance
      • ROI
    Métricas de Reuso na Indústria x 100%
      • Software Reusado
      • Software Total
    • Para componentes com características específicas, um Fator de Ajuste pode tornar o índice de reuso mais real
    • Exemplo: (variação conforme a intensidade de uso)
      • Básico: 30% ; Médio: 60% ; Completo: 100%
    Extensão do Modelo
  • Métricas
    • Percentual de reuso:
    • RSI = Reused Source Instruction
    • LOC = Lines of Code
  • Métricas
    • Análise Econômica:
    • RCA = Reuse Cost Avoidance
    • RSI = Reused Source Instruction
    • RCR = Relative Cost of Reuse
    • $/LOC = Custo por linha de código
    Quantidade de Linhas de código reusadas Custo por linha de código (extraído da produtividade da empresa) LOC $ Ajuste" de Fator " RCR) - (1 RSI RCA    
  • Métricas
    • RCA = Reuse Cost Avoidance
    • Nhs = Número de horas
    • RCR = Relative Cost of Reuse
    • $/hs = Custo por hora
    hr $ Ajuste" de Fator " RCR) - (1 Nhs RCA    
  • Economia em Projeto: Projeto Exemplo (caso real)
    • OBS: Análise baseada em linhas de código
    • Reuse% (se calculado sem ajuste): 81%
    • RCA = R$ 22K (Considerando RCR = 20% e $/LOC = R$1,00)
  • Copyright (C) 2007 DigitalAssets 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. Venha nos visitar! www.digitalassets.com.br ? Obrigado! marcilio.oliveira@digitalassets.com.br